1    | /*	SCCS Id: @(#)patchlevel.h	3.3	2000/07/22	*/
2    | /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
3    | /* NetHack may be freely redistributed.  See license for details. */
4    | 
5    | /* NetHack 3.3.1 */
6    | #define VERSION_MAJOR	3
7    | #define VERSION_MINOR	3
8    | /*
9    |  * PATCHLEVEL is updated for each release.
10   |  */
11   | #define PATCHLEVEL	1
12   | /*
13   |  * Incrementing EDITLEVEL can be used to force invalidation of old bones
14   |  * and save files.
15   |  */
16   | #define EDITLEVEL	0
17   | 
18   | #define COPYRIGHT_BANNER_A \
19   | "NetHack, Copyright 1985-2000"
20   | 
21   | #define COPYRIGHT_BANNER_B \
22   | "         By Stichting Mathematisch Centrum and M. Stephenson."
23   | 
24   | #define COPYRIGHT_BANNER_C \
25   | "         See license for details."
26   | 
27   | #if 0
28   | /*
29   |  * If two successive patchlevels have compatible data files (fat chance),
30   |  * defining this with the value of the older one will allow its bones and
31   |  * save files to work with the newer one.  The format is
32   |  *	0xMMmmPPeeL
33   |  * 0x = literal prefix "0x", MM = major version, mm = minor version,
34   |  * PP = patch level, ee = edit level, L = literal suffix "L",
35   |  * with all four numbers specified as two hexadecimal digits.
36   |  */
37   | #define VERSION_COMPATIBILITY 0x03030000L
38   | #endif
39   | 
40   | /*****************************************************************************/
41   | /* Version 3.3.1 */
42   | 
43   | /*  Patch 1, August 9, 2000
44   |  *  Many, many general fixes, including a number for riding, twoweapon,
45   |  *	and invisible monsters
46   |  *  A security fix for a couple of potentially exploitable buffer overflows
47   |  *	in previous versions
48   |  *  Redo Ranger quest
49   |  *  Introduction of differentiation between different causes of blindness
50   |  *  Overhaul of warning
51   |  *  Functionality restored to Amiga (courtesy Janne Salmijarvi) and Atari
52   |  *	(courtesy Christian "Marvin" Bressler) ports
53   |  *  Mac: multiple interface fixes
54   |  *  win32: fixed bug that caused messages to stop displaying after escape
55   |  *  tty: use ANSI color (AF) over standard color (Sf) when given the choice
56   |  *  several ports: offer for player selection only choices consistent with
57   |  *	those already made by config file/command line (e.g., only offer roles
58   |  *	that are compatible with specified race)
59   |  */
60   | 
61   | /*
62   |  *  NetHack 3.3.0, December 10, 1999
63   |  *
64   |  *  Implement the differentiation of character class or role from the
65   |  *  character race.
66   |  *  Removal of the Elf class, in preference to the Elf as a race.
67   |  *  Introduction of Dwarves, Elves, Gnomes and Orcs as distinct races in
68   |  *  addition to the Human "norm".
69   |  *  Addition of the Monk and Ranger classes.
70   |  *  Integrate some of the features of several branch versions of the game,
71   |  *  notably NetHack--, NHplus, SLASH, and Slash'em.
72   |  *  Adopt "the wizard patch" spellcasting system.
73   |  *  Support for the Qt widget set.
74   |  *  Y2K fix: use 4 digit year values for the dates in the score file
75   |  *  updated COPYRIGHT_BANNER_A to reflect year of release.
76   |  *  Dozens of other bug fixes, and minor improvements.
77   |  */
78   | /* Version 3.3 */
79   | 
80   | /*****************************************************************************/
81   | /* Version 3.2.3 */
82   | 
83   | /*  Patch 3, December 10, 1999
84   |  *  Released simultaneously with 3.3.0 for the benefit of
85   |  *  ports and platforms that were unable to get working
86   |  *  versions of 3.3.0 ready prior to the year 2000. It
87   |  *  consisted of just a few bug fixes and offered no new
88   |  *  functionality changes over 3.2.2.
89   |  *
90   |  *  Y2K fix: use 4 digit year values for the dates in the score file
91   |  *  updated COPYRIGHT_BANNER_A to reflect year of release
92   |  *  Fatal Mac bug removed
93   |  *  DOS Makefile problem removed
94   |  *  several bugs that could potentially trigger crashes removed
95   |  */
96   | 
97   | /*  Patch 2, December 10, 1996
98   |  *  fix the `recover' utility
99   |  *  fix priest/minion name overflow which could cause Astral Plane crashes
100  |  *  avoid crash when hit by own thrown boomerang
101  |  *    "     "	 "   worn blindfold pushed off by applying cursed towel
102  |  *  handle returning live Wizard correctly in deep dungeon levels
103  |  *  don't occasionally display unseen areas of new levels during level change
104  |  *  other minor display fixes
105  |  *  fix several minor reason for death inconsistencies and shop bugs
106  |  *  high dexterity doesn't guarantee that thrown eggs & potions will hit
107  |  *
108  |  *  Selected platform- or configuration-specific changes:
109  |  *  Mac: update `mrecover'
110  |  *  MSDOS: don't switch into tiles mode when resuming play on rogue level
111  |  *  tty: support object class characters for 'I' command in menu mode
112  |  *  Unix: work around several <curses.h> compilation problems
113  |  *  X11: as tty above, plus implement tty-style count handling in menus;
114  |  *	better window placement support for old window managers
115  |  */
116  | 
117  | /*  Patch 1, May 28, 1996
118  |  *  eliminate `#qualifications'; fix weapon proficiency handling for missiles
119  |  *  keep Medusa from continuing to move after she's been killed by reflection
120  |  *	of her own gaze (fixes relmon panic)
121  |  *  make monsters a little smarter; assorted eating and chatting changes
122  |  *  fix object amnesia for spellbooks; fix Nazgul's sleep gas attack
123  |  *  fix bullwhip usage for case of having recently been in a trap
124  |  *  egg hatching fixes, oil potion fixes, magic marker fixes
125  |  *  support object class chars as selection accelerators for some menus
126  |  *  stricter parsing of run-time options at startup time
127  |  *  interactive setting of options via menu (courtesy Per Liboriussen)
128  |  *
129  |  *  Selected platform- or configuration-specific changes:
130  |  *  Amiga: fix panic for tiles display in Gnomish mines
131  |  *  BeOS: preliminary support for new BeBox platform; initially tty only
132  |  *  DLB: avoid excessive fseek calls (major performance hit for MSDOS)
133  |  *  HPUX: workaround for gcc-2.6.3 bug adversely affecting monster generation
134  |  *  Mac: avoid MW 68K struct copy optimization bug which caused crashes;
135  |  *	fix dragging of scrollbar; boost partitions to 2MB minimum
136  |  *  MSDOS: wasn't safe to enter endgame for MFLOPPY configuration;
137  |  *	fix re-entry into game after "!" (shell escape) + chdir + EXIT;
138  |  *	F3/F4/F5 display interface swapping improvements;
139  |  *	add support for preloading all tiles in protected mode environment
140  |  *  TERMINFO: colors were wrong for some systems, such as Linux
141  |  *  X11: display help files properly
142  |  */
143  | 
144  | /*
145  |  *  NetHack 3.2.0, April 11, 1996
146  |  *  enhancements to the windowing systems including "tiles" or icons to
147  |  *	visually represent monsters and objects (courtesy Warwick Allison)
148  |  *  window based menu system introduced for inventory and selection
149  |  *  moving light sources besides the player
150  |  *  improved #untrap (courtesy Helge Hafting)
151  |  *  spellcasting logic changes to balance spellcasting towards magic-using
152  |  *	classes (courtesy Stephen White)
153  |  *  many, many bug fixes and abuse eliminations
154  |  */
155  | 
156  | /* Version 3.2 */
157  | 
158  | /*****************************************************************************/
159  | /* Version 3.1.x */
160  | 
161  | /*
162  |  *  Patch 3, July 12, 1993
163  |  *  further revise Mac windowing and extend to Think C (courtesy
164  |  *	Barton House)
165  |  *  fix confusing black/gray/white display on some MSDOS hardware
166  |  *  remove fatal bugs dealing with horns of plenty and VMS bones levels,
167  |  *	as well as more minor ones
168  |  */
169  | 
170  | /*
171  |  *  Patch 2, June 1, 1993
172  |  *  add tty windowing to Mac and Amiga ports and revise native windowing
173  |  *  allow direct screen I/O for MS-DOS versions instead of going through
174  |  *	termcap routines (courtesy Michael Allison and Kevin Smolkowski)
175  |  *  changes for NEC PC-9800 and various termcap.zip fixes by Yamamoto Keizo
176  |  *  SYSV 386 music driver ported to 386BSD (courtesy Andrew Chernov) and
177  |  *	SCO UNIX (courtesy Andreas Arens)
178  |  *  enhanced pickup and disclosure options
179  |  *  removed fatal bugs dealing with cursed bags of holding, renaming
180  |  *	shopkeepers, objects falling through trapdoors on deep levels,
181  |  *	and kicking embedded objects loose, and many more minor ones
182  |  */
183  | 
184  | /*
185  |  *  Patch 1, February 25, 1993
186  |  *  add Windows NT console port (courtesy Michael Allison)
187  |  *  polishing of Amiga, Mac, and X11 windowing
188  |  *  fixing many small bugs, including the infamous 3.0 nurse relmon bug
189  |  */
190  | 
191  | /*
192  |  *  NetHack 3.1.0, January 25, 1993
193  |  *  many, many changes and bugfixes -- some of the highlights include:
194  |  *  display rewrite using line-of-sight vision
195  |  *  general window interface, with the ability to use multiple interfaces
196  |  *	in the same executable
197  |  *  intelligent monsters
198  |  *  enhanced dungeon mythology
199  |  *  branching dungeons with more special levels, quest dungeons, and
200  |  *	multi-level endgame
201  |  *  more artifacts and more uses for artifacts
202  |  *  generalization to multiple shops with damage repair
203  |  *  X11 interface
204  |  *  ability to recover crashed games
205  |  *  full rewrite of Macintosh port
206  |  *  Amiga splitter
207  |  *  directory rearrangement (dat, doc, sys, win, util)
208  |  */
209  | 
210  | /* Version 3.1 */
211  | 
212  | /*****************************************************************************/
213  | /* Version 3.0 */
214  | 
215  | /*
216  |  *  Patch 10, February 5, 1991
217  |  *  extend overlay manager to multiple files for easier binary distribution
218  |  *  allow for more system and compiler variance
219  |  *  remove more small insects
220  |  */
221  | 
222  | /*
223  |  *  Patch 9, June 26, 1990
224  |  *  clear up some confusing documentation
225  |  *  smooth some more rough edges in various ports
226  |  *  and fix a couple more bugs
227  |  */
228  | 
229  | /*
230  |  *  Patch 8, June 3, 1990
231  |  *  further debug and refine Macintosh port
232  |  *  refine the overlay manager, rearrange the OVLx breakdown for better
233  |  *	efficiency, rename the overlay macros, and split off the overlay
234  |  *	instructions to Install.ovl
235  |  *  introduce NEARDATA for better Amiga efficiency
236  |  *  support for more VMS versions (courtesy Joshua Delahunty and Pat Rankin)
237  |  *  more const fixes
238  |  *  better support for common graphics (DEC VT and IBM)
239  |  *  and a number of simple fixes and consistency extensions
240  |  */
241  | 
242  | /*
243  |  *  Patch 7, February 19, 1990
244  |  *  refine overlay support to handle portions of .c files through OVLx
245  |  *	(courtesy above plus Kevin Smolkowski)
246  |  *  update and extend Amiga port and documentation (courtesy Richard Addison,
247  |  *	Jochen Erwied, Mark Gooderum, Ken Lorber, Greg Olson, Mike Passaretti,
248  |  *	and Gregg Wonderly)
249  |  *  refine and extend Macintosh port and documentation (courtesy Johnny Lee,
250  |  *	Kevin Sitze, Michael Sokolov, Andy Swanson, Jon Watte, and Tom West)
251  |  *  refine VMS documentation
252  |  *  continuing ANSIfication, this time of const usage
253  |  *  teach '/' about differences within monster classes
254  |  *  smarter eating code (yet again), death messages, and treatment of
255  |  *	non-animal monsters, monster unconsciousness, and naming
256  |  *  extended version command to give compilation options
257  |  *  and the usual bug fixes and hole plugs
258  |  */
259  | 
260  | /*
261  |  *  Patch 6, November 19, 1989
262  |  *  add overlay support for MS-DOS (courtesy Pierre Martineau, Stephen
263  |  *	Spackman, and Norm Meluch)
264  |  *  refine Macintosh port
265  |  *  different door states show as different symbols (courtesy Ari Huttunen)
266  |  *  smarter drawbridges (courtesy Kevin Darcy)
267  |  *  add CLIPPING and split INFERNO off HARD
268  |  *  further refine eating code wrt picking up and resumption
269  |  *  make first few levels easier, by adding :x monsters and increasing initial
270  |  *	attribute points and hitting probability
271  |  *  teach '/' about configurable symbols
272  |  */
273  | 
274  | /*
275  |  *  Patch 5, October 15, 1989
276  |  *  add support for Macintosh OS (courtesy Johnny Lee)
277  |  *  fix annoying dependency loop via new color.h file
278  |  *  allow interruption while eating -- general handling of partially eaten food
279  |  *  smarter treatment of iron balls (courtesy Kevin Darcy)
280  |  *  a handful of other bug fixes
281  |  */
282  | 
283  | /*
284  |  *  Patch 4, September 27, 1989
285  |  *  add support for VMS (courtesy David Gentzel)
286  |  *  move monster-on-floor references into functions and implement the new
287  |  *	lookup structure for both objects and monsters
288  |  *  extend the definitions of objects and monsters to provide "living color"
289  |  *	in the dungeon, instead of a single monster color
290  |  *  ifdef varargs usage to satisfy ANSI compilers
291  |  *  standardize on the color 'gray'
292  |  *  assorted bug fixes
293  |  */
294  | 
295  | /*
296  |  *  Patch 3, September 6, 1989
297  |  *  add war hammers and revise object prices
298  |  *  extend prototypes to ANSI compilers in addition to the previous MSDOS ones
299  |  *  move object-on-floor references into functions in preparation for planned
300  |  *	data structures to allow faster access and better colors
301  |  *  fix some more bugs, and extend the portability of things added in earlier
302  |  *	patches
303  |  */
304  | 
305  | /*
306  |  *  Patch 2, August 16, 1989
307  |  *  add support for OS/2 (courtesy Timo Hakulinen)
308  |  *  add a better makefile for MicroSoft C (courtesy Paul Gyugyi)
309  |  *  more accomodation of compilers and preprocessors
310  |  *  add better screen-size sensing
311  |  *  expand color use for PCs and introduce it for SVR3 UNIX machines
312  |  *  extend '/' to multiple identifications
313  |  *  allow meta key to be used to invoke extended commands
314  |  *  fix various minor bugs, and do further code cleaning
315  |  */
316  | 
317  | /*
318  |  *  Patch 1, July 31, 1989
319  |  *  add support for Atari TOS (courtesy Eric Smith) and Andrew File System
320  |  *	(courtesy Ralf Brown)
321  |  *  include the uuencoded version of termcap.arc for the MSDOS versions that
322  |  *	was included with 2.2 and 2.3
323  |  *  make a number of simple changes to accommodate various compilers
324  |  *  fix a handful of bugs, and do some code cleaning elsewhere
325  |  *  add more instructions for new environments and things commonly done wrong
326  |  */
327  | 
328  | /*
329  |  *  NetHack 3.0 baseline release, July, 1989
330  |  */
331  | 
332  | /* Version 3.0 */
333  | 
334  | /*****************************************************************************/
335  | 
336  | /*patchlevel.h*/