Source:Patchlevel.h

Below is the full text to include/patchlevel.h from NetHack 3.4.3. To link to a particular line, write [[patchlevel.h#line123 ]], for example. 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. */ 4.

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