1 /* SCCS Id: @(#)patchlevel.h 3.4 2003/12/06 */
2 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
3 /* NetHack may be freely redistributed. See license for details. */
6 #define VERSION_MAJOR 3
7 #define VERSION_MINOR 4
9 * PATCHLEVEL is updated for each release.
13 * Incrementing EDITLEVEL can be used to force invalidation of old bones
18 #define COPYRIGHT_BANNER_A \
19 "NetHack, Copyright 1985-2003"
21 #define COPYRIGHT_BANNER_B \
22 " By Stichting Mathematisch Centrum and M. Stephenson."
24 #define COPYRIGHT_BANNER_B2 \
25 "NetHackExpress, Copyright 2011 by Kentaro SHIRAKATA."
27 #define COPYRIGHT_BANNER_C \
28 " See license for details."
31 * If two or more successive releases have compatible data files, define
32 * this with the version number of the oldest such release so that the
33 * new release will accept old save and bones files. The format is
35 * 0x = literal prefix "0x", MM = major version, mm = minor version,
36 * PP = patch level, ee = edit level, L = literal suffix "L",
37 * with all four numbers specified as two hexadecimal digits.
39 #define VERSION_COMPATIBILITY 0x03040000L /* 3.4.0-0 */
42 /*****************************************************************************/
45 /* Patch 3, December 7, 2003
46 * Several dozen general bug fixes including at least one fatal bug
47 * Correct several inconsistencies
48 * Handle level completely filled with monsters better
49 * Performance enhancements for win32tty port on Windows 98 and Me
50 * win32gui player selection fixes
51 * X11 player selection fixes, one of which could be fatal
52 * Eliminated a gold-in-shop-container cheat
53 * Include bones file version compatibility info in options file
56 /* Patch 2, August 30, 2003
57 * Fix a fatal bug that caused a crash when applying figurine, candle, or
58 * bell that gets used up
59 * Fix a fatal bug that triggered a panic when your secondary weapon was
60 * cursed during bones file creation
61 * Several dozen general bug fixes
62 * Fixed some Gnome compilation problems on Redhat 7.2 and 8.0
63 * Fixed a problem in the util Makefile
64 * Use random() by default under linux instead of lrand48()
65 * win32 tty adjustments and support for loading alternative key handlers
68 /* Patch 1, February 22, 2003
69 * Fix a few fatal errors including one for reentering shops, one
70 * involving land mines and boulders/statues, one for delayed
71 * polymorph, and one from a chest trap exploding ball and chain
72 * Fix a buffer overflow that could lead to security problems
73 * Hundreds of general bug fixes
74 * Several message and other glitches corrected
75 * Travel command adjustments and ability to disable travel command
76 * message recall window extensions (by Christian Cooper)
77 * win32: some interface improvements
78 * unix: improved tile support
79 * gnome: some fixes, and some enhancements by Dylan Alex Simon
80 * winCE: Windows CE port included (by Alex Kompel)
84 * NetHack 3.4.0, March 20, 2002
86 * Hundreds of general bug fixes including some for sliming, zapping, conduct,
87 * and several more for riding
88 * Eliminated a few potentially fatal bugs including one for stone-to-flesh,
89 * trouble-fixing during prayer, riding down stairs while punished,
90 * polyd player demon summoning, throwing digging tools into shops, and
91 * a couple from having the vision system enabled at inappropriate times
92 * Corrected some incorrect calculations in final scoring
93 * Enhanced config file processing and alert to duplication of entries
94 * Player selection prompt enhancements for TTY and X11
95 * Objects merge in containers
96 * Wish for "nothing", and genocide "none" to preserve your conduct
97 * Changes to Wizard quest
98 * Added the travel command which works by mouse click or '_' command
99 * Config file BOULDER option to specify the symbol for displaying boulders
100 * Incorporate modified versions of several 3.3.1 patches that have been
101 * in circulation in the NetHack community
102 * New Gnomish Mines levels (courtesy Kelly Bailey)
103 * Mac: command-key shortcuts in the player selection dialog
104 * Amiga: screenmode requester, and several amiga specific bug fixes
105 * Win32 graphical port contributed by Alex Kompel is now included
110 /*****************************************************************************/
113 /* Patch 1, August 9, 2000
114 * Many, many general fixes, including a number for riding, twoweapon,
115 * and invisible monsters
116 * A security fix for a couple of potentially exploitable buffer overflows
117 * in previous versions
119 * Introduction of differentiation between different causes of blindness
120 * Overhaul of warning
121 * Functionality restored to Amiga (courtesy Janne Salmijarvi) and Atari
122 * (courtesy Christian "Marvin" Bressler) ports
123 * Mac: multiple interface fixes
124 * win32: fixed bug that caused messages to stop displaying after escape
125 * tty: use ANSI color (AF) over standard color (Sf) when given the choice
126 * several ports: offer for player selection only choices consistent with
127 * those already made by config file/command line (e.g., only offer roles
128 * that are compatible with specified race)
132 * NetHack 3.3.0, December 10, 1999
134 * Implement the differentiation of character class or role from the
136 * Removal of the Elf class, in preference to the Elf as a race.
137 * Introduction of Dwarves, Elves, Gnomes and Orcs as distinct races in
138 * addition to the Human "norm".
139 * Addition of the Monk and Ranger classes.
140 * Integrate some of the features of several branch versions of the game,
141 * notably NetHack--, NHplus, SLASH, and Slash'em.
142 * Adopt "the wizard patch" spellcasting system.
143 * Support for the Qt widget set.
144 * Y2K fix: use 4 digit year values for the dates in the score file
145 * updated COPYRIGHT_BANNER_A to reflect year of release.
146 * Dozens of other bug fixes, and minor improvements.
151 /*****************************************************************************/
154 /* Patch 3, December 10, 1999
155 * Released simultaneously with 3.3.0 for the benefit of
156 * ports and platforms that were unable to get working
157 * versions of 3.3.0 ready prior to the year 2000. It
158 * consisted of just a few bug fixes and offered no new
159 * functionality changes over 3.2.2.
161 * Y2K fix: use 4 digit year values for the dates in the score file
162 * updated COPYRIGHT_BANNER_A to reflect year of release
163 * Fatal Mac bug removed
164 * DOS Makefile problem removed
165 * several bugs that could potentially trigger crashes removed
168 /* Patch 2, December 10, 1996
169 * fix the `recover' utility
170 * fix priest/minion name overflow which could cause Astral Plane crashes
171 * avoid crash when hit by own thrown boomerang
172 * " " " worn blindfold pushed off by applying cursed towel
173 * handle returning live Wizard correctly in deep dungeon levels
174 * don't occasionally display unseen areas of new levels during level change
175 * other minor display fixes
176 * fix several minor reason for death inconsistencies and shop bugs
177 * high dexterity doesn't guarantee that thrown eggs & potions will hit
179 * Selected platform- or configuration-specific changes:
180 * Mac: update `mrecover'
181 * MSDOS: don't switch into tiles mode when resuming play on rogue level
182 * tty: support object class characters for 'I' command in menu mode
183 * Unix: work around several <curses.h> compilation problems
184 * X11: as tty above, plus implement tty-style count handling in menus;
185 * better window placement support for old window managers
188 /* Patch 1, May 28, 1996
189 * eliminate `#qualifications'; fix weapon proficiency handling for missiles
190 * keep Medusa from continuing to move after she's been killed by reflection
191 * of her own gaze (fixes relmon panic)
192 * make monsters a little smarter; assorted eating and chatting changes
193 * fix object amnesia for spellbooks; fix Nazgul's sleep gas attack
194 * fix bullwhip usage for case of having recently been in a trap
195 * egg hatching fixes, oil potion fixes, magic marker fixes
196 * support object class chars as selection accelerators for some menus
197 * stricter parsing of run-time options at startup time
198 * interactive setting of options via menu (courtesy Per Liboriussen)
200 * Selected platform- or configuration-specific changes:
201 * Amiga: fix panic for tiles display in Gnomish mines
202 * BeOS: preliminary support for new BeBox platform; initially tty only
203 * DLB: avoid excessive fseek calls (major performance hit for MSDOS)
204 * HPUX: workaround for gcc-2.6.3 bug adversely affecting monster generation
205 * Mac: avoid MW 68K struct copy optimization bug which caused crashes;
206 * fix dragging of scrollbar; boost partitions to 2MB minimum
207 * MSDOS: wasn't safe to enter endgame for MFLOPPY configuration;
208 * fix re-entry into game after "!" (shell escape) + chdir + EXIT;
209 * F3/F4/F5 display interface swapping improvements;
210 * add support for preloading all tiles in protected mode environment
211 * TERMINFO: colors were wrong for some systems, such as Linux
212 * X11: display help files properly
216 * NetHack 3.2.0, April 11, 1996
217 * enhancements to the windowing systems including "tiles" or icons to
218 * visually represent monsters and objects (courtesy Warwick Allison)
219 * window based menu system introduced for inventory and selection
220 * moving light sources besides the player
221 * improved #untrap (courtesy Helge Hafting)
222 * spellcasting logic changes to balance spellcasting towards magic-using
223 * classes (courtesy Stephen White)
224 * many, many bug fixes and abuse eliminations
229 /*****************************************************************************/
233 * Patch 3, July 12, 1993
234 * further revise Mac windowing and extend to Think C (courtesy
236 * fix confusing black/gray/white display on some MSDOS hardware
237 * remove fatal bugs dealing with horns of plenty and VMS bones levels,
238 * as well as more minor ones
242 * Patch 2, June 1, 1993
243 * add tty windowing to Mac and Amiga ports and revise native windowing
244 * allow direct screen I/O for MS-DOS versions instead of going through
245 * termcap routines (courtesy Michael Allison and Kevin Smolkowski)
246 * changes for NEC PC-9800 and various termcap.zip fixes by Yamamoto Keizo
247 * SYSV 386 music driver ported to 386BSD (courtesy Andrew Chernov) and
248 * SCO UNIX (courtesy Andreas Arens)
249 * enhanced pickup and disclosure options
250 * removed fatal bugs dealing with cursed bags of holding, renaming
251 * shopkeepers, objects falling through trapdoors on deep levels,
252 * and kicking embedded objects loose, and many more minor ones
256 * Patch 1, February 25, 1993
257 * add Windows NT console port (courtesy Michael Allison)
258 * polishing of Amiga, Mac, and X11 windowing
259 * fixing many small bugs, including the infamous 3.0 nurse relmon bug
263 * NetHack 3.1.0, January 25, 1993
264 * many, many changes and bugfixes -- some of the highlights include:
265 * display rewrite using line-of-sight vision
266 * general window interface, with the ability to use multiple interfaces
267 * in the same executable
268 * intelligent monsters
269 * enhanced dungeon mythology
270 * branching dungeons with more special levels, quest dungeons, and
271 * multi-level endgame
272 * more artifacts and more uses for artifacts
273 * generalization to multiple shops with damage repair
275 * ability to recover crashed games
276 * full rewrite of Macintosh port
278 * directory rearrangement (dat, doc, sys, win, util)
283 /*****************************************************************************/
287 * Patch 10, February 5, 1991
288 * extend overlay manager to multiple files for easier binary distribution
289 * allow for more system and compiler variance
290 * remove more small insects
294 * Patch 9, June 26, 1990
295 * clear up some confusing documentation
296 * smooth some more rough edges in various ports
297 * and fix a couple more bugs
301 * Patch 8, June 3, 1990
302 * further debug and refine Macintosh port
303 * refine the overlay manager, rearrange the OVLx breakdown for better
304 * efficiency, rename the overlay macros, and split off the overlay
305 * instructions to Install.ovl
306 * introduce NEARDATA for better Amiga efficiency
307 * support for more VMS versions (courtesy Joshua Delahunty and Pat Rankin)
309 * better support for common graphics (DEC VT and IBM)
310 * and a number of simple fixes and consistency extensions
314 * Patch 7, February 19, 1990
315 * refine overlay support to handle portions of .c files through OVLx
316 * (courtesy above plus Kevin Smolkowski)
317 * update and extend Amiga port and documentation (courtesy Richard Addison,
318 * Jochen Erwied, Mark Gooderum, Ken Lorber, Greg Olson, Mike Passaretti,
319 * and Gregg Wonderly)
320 * refine and extend Macintosh port and documentation (courtesy Johnny Lee,
321 * Kevin Sitze, Michael Sokolov, Andy Swanson, Jon Watte, and Tom West)
322 * refine VMS documentation
323 * continuing ANSIfication, this time of const usage
324 * teach '/' about differences within monster classes
325 * smarter eating code (yet again), death messages, and treatment of
326 * non-animal monsters, monster unconsciousness, and naming
327 * extended version command to give compilation options
328 * and the usual bug fixes and hole plugs
332 * Patch 6, November 19, 1989
333 * add overlay support for MS-DOS (courtesy Pierre Martineau, Stephen
334 * Spackman, and Norm Meluch)
335 * refine Macintosh port
336 * different door states show as different symbols (courtesy Ari Huttunen)
337 * smarter drawbridges (courtesy Kevin Darcy)
338 * add CLIPPING and split INFERNO off HARD
339 * further refine eating code wrt picking up and resumption
340 * make first few levels easier, by adding :x monsters and increasing initial
341 * attribute points and hitting probability
342 * teach '/' about configurable symbols
346 * Patch 5, October 15, 1989
347 * add support for Macintosh OS (courtesy Johnny Lee)
348 * fix annoying dependency loop via new color.h file
349 * allow interruption while eating -- general handling of partially eaten food
350 * smarter treatment of iron balls (courtesy Kevin Darcy)
351 * a handful of other bug fixes
355 * Patch 4, September 27, 1989
356 * add support for VMS (courtesy David Gentzel)
357 * move monster-on-floor references into functions and implement the new
358 * lookup structure for both objects and monsters
359 * extend the definitions of objects and monsters to provide "living color"
360 * in the dungeon, instead of a single monster color
361 * ifdef varargs usage to satisfy ANSI compilers
362 * standardize on the color 'gray'
367 * Patch 3, September 6, 1989
368 * add war hammers and revise object prices
369 * extend prototypes to ANSI compilers in addition to the previous MSDOS ones
370 * move object-on-floor references into functions in preparation for planned
371 * data structures to allow faster access and better colors
372 * fix some more bugs, and extend the portability of things added in earlier
377 * Patch 2, August 16, 1989
378 * add support for OS/2 (courtesy Timo Hakulinen)
379 * add a better makefile for MicroSoft C (courtesy Paul Gyugyi)
380 * more accomodation of compilers and preprocessors
381 * add better screen-size sensing
382 * expand color use for PCs and introduce it for SVR3 UNIX machines
383 * extend '/' to multiple identifications
384 * allow meta key to be used to invoke extended commands
385 * fix various minor bugs, and do further code cleaning
389 * Patch 1, July 31, 1989
390 * add support for Atari TOS (courtesy Eric Smith) and Andrew File System
391 * (courtesy Ralf Brown)
392 * include the uuencoded version of termcap.arc for the MSDOS versions that
393 * was included with 2.2 and 2.3
394 * make a number of simple changes to accommodate various compilers
395 * fix a handful of bugs, and do some code cleaning elsewhere
396 * add more instructions for new environments and things commonly done wrong
400 * NetHack 3.0 baseline release, July, 1989
405 /*****************************************************************************/