Source:NetHack 3.4.0/patchlevel.h

From NetHackWiki
Revision as of 13:36, 4 March 2008 by Kernigh bot (talk | contribs) (NetHack 3.4.0/patchlevel.h moved to Source:NetHack 3.4.0/patchlevel.h: Robot: moved page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Below is the full text to patchlevel.h from the source code of NetHack 3.4.0. To link to a particular line, write [[NetHack 3.4.0/patchlevel.h#line123]], for example.

Warning! This is the source code from an old release. For the latest release, see Source code

The NetHack General Public License applies to screenshots, source code and other content from NetHack.

This content was modified from the original NetHack source code distribution (by splitting up NetHack content between wiki pages, and possibly further editing). See the page history for a list of who changed it, and on what dates.

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