1 NetHack Fixes List Revision 2.2 2 3Fixes and Modified Features 4--------------------------- 5Guidebook.mn New file "Guide to the Mazes of Menace". By Eric Raymond. 6Guidebook A file for preparation using the "mn" macros supplied with 7 the 2.11 news release, as well as an ascii version of the 8 same. 9 10NetHack.cnf Sample configuration file for the PC. (creps@silver) 11 12Makefiles Corrected problem in which the linking was done on build and 13(unix/xenix) on install. (Contributed by Janet Walz - walz@mimsy) 14 15Makefile.att Added a makefile for the AT&T Unix PC using shared libraries. 16 (Contributed by ahby@umn-cs) 17 18Makefile.pc Streamlined compilation of main.o, tty.o, and unix.o 19Makefile.tcc (Contributed by polder@cs.vu.nl). 20 21data.base deletion of duplicate lines and spelling fixes. (sweet@scubed) 22 23invent.c REDO problem with "What do you want to..." text fixed. 24 down stairway identification fixed. 25 Alloc "buf" to allow for variable length HI/HE. (tom@uw-warp) 26 27engrave.c Correction to "feel" code. (mike@genat) 28 Corrected switch for message determination. (patrickm@hpisof0) 29 BURN'ed engravings made un-erasable again. (kyrimis@princeton) 30 31pri.c Added colour highliting functions (sweet@scubed) 32 33prisym.c changed "symbol.room" to "ROOM_SYM" (one I missed) 34 (Ralf.Brown@b.gp.cs.cmu.edu) 35 Changed "dirlet()" to return an int. (maartenj@cs.vu.nl) 36 37msdos.c Changed "symbol" to "showsyms" (Ralf.Brown@b.gp.cs.cmu.edu) 38 Fixed up REDO & IBMBIOS stuff. (Kevin Sweet - sweet@scubed) 39 40do.c Dropping gold asked for only when gold posessed. (walz@mimsy) 41 Potential unsigned value problem fixed (u.ucreamed) 42 Added leash dropping code. (maartenj@cs.vu.nl) 43 Blind modifications for blindfolding. (eric@snark) 44 Value wrap fixed for u.ucreamed 45 46fight.c Dog's name now used in hitting avoidence message. (walz@mimsy) 47 Variable initialization fixed w.r.t. #ifdef / #else. 48 (Reported by Erwin Unruh - unruh@infbs) 49 Added giant rats and kobolds back into code. (sweet@scubed) 50 51spell.c Potential unsigned value problem fixed (u.ulevel). 52 Typos corrected. (Tom May - tom@uw-warp) 53 Blind modifications for blindfolding. (eric@snark) 54 55shk.c "inshop" crash bug corrected (many sources). 56 extern declaration of carrying() moved to avoid a Turbo-C 57 type mismatch msg. (Ralf.Brown@b.gp.cs.cmu.edu) 58 Added new "online()" which executes faster. (tom@uw-warp) 59 Blind modifications for blindfolding. (eric@snark) 60 Added item pricing shopkeeper talk. 61 (Idea from a hacked up 1.0.1 source sent in by michael@stb) 62 Cleaned up Kops code. (sweet@scubed) 63 64mhitu.c Argument mismatches fixed. (walz@mimsy) 65 Scorpion/spider mixup fix. (William LeFebvre - phil@rice.edu) 66 Blind modifications for blindfolding. (eric@snark) 67 68potion.c Argument mismatch fixed. (walz@mimsy) 69 Blind modifications for blindfolding. (eric@snark) 70 Poison handling made more dependant on poison resistance. 71 (From an idea by Steve Creps - creps@silver) 72 73mklev.c Fixed up installation of vamp traps. (sweet@scubed) 74 75makemon.c Monster creation location bug fixed. (walz@mimsy) 76 Monster creation crash fixed. (many sources) 77 Monster posessions bug fixed. (S. Wrammerfors stewr@obelix) 78 Added giant rats and kobolds back into code. (sweet@scubed) 79 80hack.c "Elbereth" effectiveness increased under "HARD" option to 81 be reasonable. (walz@mimsy) 82 Declaration of "register struct monst *m_at()" fixed. (many) 83 Typo fixed. (tom@uw-warp) 84 Fixed scroll of scare monster pickup problems (and giveaway) 85 (polder@cs.vu.nl) 86 Documentation modifications for blindfolding. (eric@snark) 87 88ioctl.c ioctl call for SET changed to function properly under 89 90unixtty.c Sys V R3 mods. (tom@uw-warp) 91 92decl.c in_doagain initialized. (many sources) 93 94wield.c Ability to remove cursed weapons w. w- removed. (many sources) 95 96options.c Major rewrite of options help. Now uses pager. (mike@genat) 97 Rewrote GRAPHICS setup. (maartenj@cs.vu.nl) 98 Allowed reassignment of inventory order #ifdef DGK 99 (polder@cs.vu.nl) 100 101pray.c Fixed mk_obj of spellbook under all conditions to make book 102 if "SPELLS" defined, and scroll otherwise. (unruh@infbs) 103 Fixed typo in "gods angry" text. (tom@uw-warp) 104 Fixed blessing code. (Simon Brown - simon@its63b) 105 Blind modifications for blindfolding. (eric@snark) 106 107zap.c Potion of invis. breakage message improved. (unruh@infbs) 108 Added WAN_PROBING to "zapyourself". 109 Changed "dirlet()" to return an int. (maartenj@cs.vu.nl) 110 Fixed cancellation code to work properly on wands (spe 111 set to -1 instead of 0) this means no infinite wands of 112 wishing. (Ron Wessels - ron@utcsri) 113 Fixed bug in "buzz()" causing crash when destroying a 114 trapper from inside with a wand/spell. (mike@genat) 115 Added fcn to destroy wands with zero charges. (sweet@scubed) 116 117pcmain.c Added a routine to zero out the fileinfo array in order to 118 prevent crashes on level change. (ralf@b.gp.cs.cmu.edu) 119 Added chdir to HACKDIR before looking for .CNF file. 120 Added call "uptodate(savefile)". (polder@cs.vu.nl) 121 122pager.c changed "cornline()" to use xputs for HI/HE. (tom@uw-warp) 123 added choice for dowhatis() to allow letter or cursor object 124 selection. (polder@cs.vu.nl) 125 126cmd.c Added ^W (wish) and ^I (ident-all) commands for WIZARD-mode. 127 (Paul Polderman - polder@cs.vu.nl) 128 Added "Z" as alternate to "# cast" (Eric Raymond - eric@snark) 129 130u_init.c Expanded a tab which didn't show in raw mode. 131 Changed trobj.trotyp to "unsigned short" to avoid >255 132 problems. (Maarten Jan Huisjes - maartenj@cs.vu.nl) 133 Removed wand of wishing from WIZARD's inventory (due to 134 the above cmd additions). (polder@cs.vu.nl) 135 Fixed declaration of leash. (simon@its63b) 136 Beefed up Wizard class. 137 Added Wakizashi for Samurai. 138 Added holy water for Priest(ess)es. 139 Modifications to provide blindfolds. (eric@snark) 140 141end.c changed inventory identification on death to list form. 142 (polder@cs.vu.nl) 143 added hallucination effects to done_in_by() 144 added posession of amulet flag for scoreboard (sweet@scubed) 145 146wizard.c corrected "nasties" decl. (maartenj@cs.vu.nl) 147 Blind modifications for blindfolding. (eric@snark) 148 149do_wear.c Prot. from shape changers logic fixed. (maartenj@cs.vu.nl) 150 151lev.c Prot. from shape changers logic fixed. (maartenj@cs.vu.nl) 152 153mon.c Inserted cast to fix compiler warning. (maartenj@cs.vu.nl) 154 Nymphs now leave potions of object detection when killed. 155 Kops now don't leave treasure behind. (sweet@scubed) 156 157topl.c Changed size of "toplines" to avoid overflow in "parseoptions" 158 when help is asked for. (probably n/a) (maartenj@cs.vu.nl) 159 160topten.c Added longer death descriptions, including name of 161 shopkeeper who killed character. (many sources) 162 163termcap.c Changed allocation of HI/HO for copying SI/SO to allow room 164 for null. (maartenj@cs.vu.nl) 165 Added PCHack 3.61 termcap stuff. 166 Added colour highliting code. (sweet@scubed) 167 168version.c Expanded a tab for rawmode io. (maartenj@cs.vu.nl) 169 170objnam.c Allow the WIZARD to wish for really excessive objects. 171 (polder@cs.vu.nl) 172 173makedefs.c Added "freopen" which works (MSC 4.0 drops first couple 174 of lines). Solves missing #define AMULET... problem. 175 (Nathan Glasser - nathan@mit-eddie) 176 177rnd.c Changed around random number generation: 178 BSD uses "random()". (Paul Eggert - eggert@grand) 179 SYSV uses "lrand48()". (mike@genat from above) 180 181eat.c Changed "choke()" code to waste food rather than choke on 182 it #ifndef HARD. (Allan Pratt - apratt@atari) 183 Blind modifications for blindfolding. (eric@snark) 184 185objects.h added blindfold object (tool). (eric@snark) 186 187you.h changed Blind/BLIND to Blinded/Blinded 188 added Blindfolded/BLINDFOLDED 189 redefined Blind in terms of above parameters. (eric@snark) 190 191apply.c added blindfold code. (eric@snark) 192 193timeout.c Blind modifications for blindfolding. (eric@snark) 194 195sit.c Blind modifications for blindfolding. (eric@snark) 196 197trap.c Blind modifications for blindfolding. (eric@snark) 198 Level teleportation to hell fixed so that it will not 199 do so unless character has Fire_resistance. (many sources) 200 Added polymorph trap. (many sources) 201 202monmove.c added check on presence of "fobj" before atl() call 203 to avoid potential segmentation problem with ROCKMOLE. 204 (Reported by Doug Rudoff - doug@wiley) 205 206various files Fixed typos. Also converted British English words to 207 American English for uniformity. (Original list of typos 208 submitted by Steve Creps - creps@silver) 209 210 211New Features 212------------ 213 1) New flags in "config.h" (some of these were included in 1.4f): 214 215 COM_COMPL Command line completion by John S. Bien 216 GRAPHICS Funky screen character support (Eric S. Raymond) 217 HACKOPTIONS Support DGK-style HACKOPTIONS processing (ESR) 218 RPH Various hacks by Richard P. Hughey 219 KJSMODS Various changes made by Kevin Sweet 220 BVH Additions by Bruce Holloway 221 222 In addition, in an MSDOS enviornment, when GRAPHICS is defined: 223 224 MSDOSCOLOR Colour highlighting of monsters, etc. 225 226 Of the above, I haven't tested HACKOPTIONS and MSDOSCOLOR. If you 227 find bugs in these, send me the reports. 228 229 2) New objects: 230 231 blindfold - allows you to avoid the gaze of a Floating Eye and to 232 use your telepathy on command if you have it. 233 234 mirror - scares monsters if you use it on them (and other uses). 235 236 ring of polymorph - (usually cursed) forces random polymorphs. 237 238 ring of polymorph control - prevents system shock and allows choice of 239 creature to polymorph into. 240 241 3) New Files: 242 243 - A new set of documentation, the "Guidebook to the Mazes of Menace" 244 has been supplied by Eric S. Raymond. The guidebook is written for 245 nroff using the "mn" macro set supplied with Bnews 2.11 or greater. 246 Since not everyone has these macros, I have run the guidebook through 247 nroff, and supplied it in flat ascii format as well. [Moderator's 248 note: because of past problems, I ran the formatted version 249 through "col -b" before passing it on to remove ^H's, etc. -br] 250 251 - A copy of "HACK.CNF" which has been renamed "NetHack.cnf" was 252 supplied by Steve Creps. The file decl.c has been updated to reflect 253 this change. 254 255 - A new "Makefile" for the AT&T Unix machines has been added. 256 257 - I was hoping to get documentation on "NANSI.SYS" as well, but got 258 no responses to the mail I sent the author, direct and via Bill 259 Randle at tekred. As per usual, I will gladly publish any relevant 260 documentation I get. 261 262 4) Major game changes: 263 264 - Shop generation has been significantly changed. A new structure 265 has been introduced which allows shops (except the "general" type) 266 to have up to three different types of object inside. There is also 267 a new "distribution pattern" parameter which tells the generation 268 code how to lay out the shop (this is preliminary to the addition of 269 two new types of shop, the temple and barracks - more on this later). 270 271 - Shopkeepers will now tell you how much they expect for each object 272 you pick up. This gives you the ability to haggle with the merchant 273 in question by dropping and picking up objects until you are more or 274 less satisfied with the price. I have re-written "getprice()" in 275 shk.c in an attempt to make sure that you cannot actually sell any 276 particular object for more than the shopkeeper will charge for it. 277 278 - Another change to shopkeepers has them potentially getting angry if 279 you stay beside them after not paying your bill. Each they time they 280 ask you to pay up, there is a chance they will decide they don't like 281 people who don't pay... 282 283 - A new monster, the hydra, has been added (as you have probably seen 284 on the net). I haven't had much chance to test out this feature of 285 the game. Mirrors have also been added, and seem to work quite well. 286 287 - Changes have been made to the object ocurrence chances in objects.h, 288 so that the relatively rare tools, etc. have at least a 1% chance of 289 showing up. 290 291 - Throwing and zapping code has been modified so that there is a 292 chance that said can be done through a doorway. Bolts can still 293 bounce however... 294 295 - The infamous and dreaded makemon() bug has been eliminated. In 296 addition to this, "r"ats and "K"obolds have been added back into the 297 game. "K"ops no longer leave treasure (just what they were carrying, 298 plus maybe a club or whistle). 299 300 - Two new "super"swords have been added. They are the katana named 301 "Snickersnee" which is +5 on damage (due to sharpness), and the long 302 sword "Excalibur" which is +rnd(10) to hit, +5 on damage, and has a 303 couple of other features I won't go into right now. The only way 304 for a character to get "Excalibur" is as a gift from someone. You 305 cannot write the word "Excalibur" on things for some reason... 306 307 - There have been two additions to disallow infinite wand charges. 308 First of all, wands with less than zero charges will automatically 309 turn to dust (thanks to Kevin Sweet). Next, a wand of cancellation 310 will set the number of charges in the wand to -1, which will make it 311 forever useless, (thanks to Ron Wessels). 312 313 5) Minor game changes: 314 315 - The fountain code has been tightened slightly so you can no longer 316 dip objects into a fountain or drink from one while you are floating 317 in mid-air due to levitation. 318 319 - Teleporting to hell via a teleportation trap will no longer occur 320 if the character does not have fire resistance. I found this just 321 too arbitrary a way to die (and so did several other people who com- 322 plained about it). 323 324 - A new trap, the "polymorph" trap has been added by Richard Hughey. 325 It's inclusion is dependant on having "KAA" defined. 326 327 - In wizard mode, the wizard player has infinite wishes, and the 328 ability to instantly identify everything (s)he is carrying. The wizard 329 player is also no longer limited by the standard multiple / bonus res- 330 trictions on objects wished for. 331 332 - Random number generation has been changed around to make it (I hope) 333 more unpredictable. 334 335 - A large number of typos have been fixed, and all of the British 336 spellings converted to American. I would like to see a shell script 337 to allow conversion back (or something like that) in the future. 338 339 - I have done a "make depend" for the makefiles to reflect a slight 340 restructuring in the order of inclusion of header files. 341 342 6) Future additions: 343 344 - Steve Creps is working on "barracks" and "soldier" code which is 345 now ready for addition. I have added the "soldier" side into the 346 game, but haven't really tested it. Steve will be adding the 347 "barracks" section in and sending me the resulting patches. There 348 will be a minor (read patch) release as soon as he can get the code 349 integrated into this release and sent up here to me. 350 351 - There are also several other new room projects in the works which 352 should be able to be included in that minor release, along with any 353 bug reports that are made in the interim. 354