OSDN Git Service

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