baalz hack fixup fix...
[aNetHack.git] / doc / fixes36.1
blob492c522c82c27dd90d278baae9ce34a7d0b402ed
1 $NHDT-Branch$:$NHDT-Revision$ $NHDT-Date$
3 General Fixes and Modified Features
4 -----------------------------------
5 doc/*.6 man pages and corresponding doc/*.txt text copies were out of date
6 data.base entry for "lava" had wrong first name for Don Woods' attribution
7 cursed genocide of "none" sent in monsters, but "that's enough tries" didn't
8 update MAXPLAYERS documentation in sysconf file and accept 0 for 'no limit'
9 wizard mode: don't include feedback about named fruit for ^X and enlightenment
10 looking at distant objects while wearing the Eyes of the Overworld made their
11         up-close descriptions known when not intended
12 message when cursed wand zapped by a monster happens to explode was suppressed
13         if hero was deaf, even though that message has no audible component
14 support explicit 'symset:default' and 'symset:Default symbols' in options
15 crash during startup if player name set as 'player' in defaults
16 crash during startup if defaults file has a long line
17 any existing vampire shape-shifted into critter (fog cloud, bat, wolf) became
18         an unkillable critter if vampires were genocided
19 unlike in previous versions, an uncursed scroll of enchant armor failed to
20         uncurse the piece of armor being enchanted (change was unintentional)
21 slice of {pizza,cake,&} pluralized as "slouse of ..." due to false match
22         with "lice" (discovered pre-3.6.0-release)
23 change dipping prompt to not ignore 'called' and 'named' attributes of item
24         to be dipped
25 avoid 'the unlabeled {scroll,spellbook} fades' when blank item is hit by water
26 wrong message given when high priest on astral plane rejects being assigned a
27         name (got the one for unique monsters instead of the one for priests)
28 negative intrinsic protection shouldn't confer MC=1, "you are warded" (not
29         possible from divine protection but is possible from eating rings)
30 make a slight adjustment to the quickmimic() sense wording
31 fix typo in passage 1 of The Colour of Magic
32 falling asleep when reading dull spellbook ignored sleep resistance
33 getpos() complaint about invalid movement keystroke didn't describe meta-chars
34         accurately
35 'realtime' value in xlogfile was incorrect if 'checkpoint' option was active
36 make a previously-discovered scroll written with marker while blind have its
37         label known so it can be read while blind
38 #name or C for discoveries list that spanned multiple pages would exit on
39         space instead of advancing to next page (workaround: use '>' instead)
40 don't show the old level when you die going down the stairs because of an
41         iron ball
42 new high score with ", while helpless" attribute appended would erroneously
43         result in ", while helpless" being appended to all scores
44 allow bright aliases for colors in menucolors
45 avoid hearing yelps when you are deaf
46 make corpse visible if stethoscope told you about it being there
47 sceptre of might database entry word change
48 avoid "spellbook of novel" on discoveries list after object ID of novel
49 add novel to discoveries list after reading one
50 putting gold into hero-owned container on shop floor gave free credit
51 stack splitting for dipping large quantities of potions was done poorly
52 dipping fruit juice into enlightenment gave different result than the inverse
53 make travel walk up to a trap and stop when the trap blocks the only
54         way forward, instead of trying to go straight line
55 travel will displace pets rather than stop
56 do not autopickup unpaid items in shops
57 death due an unseen gas spore's explosion resulted in "killed by a died"
58 allow optional parameter "true", "yes", "false", or "no" for boolean options
59 actually make the castle chest not trapped
60 level-drain resistance wasn't shown during enlightenment if it was conferred
61         by worn/wielded equipment or by lycanthropy
62 wizard mode enlightenment now shows more reasons for various intrinsics
63 rehumanizing after being poly'd into vampire left hero with ability to sense
64         humans and elves
65 Warn_of_mon wouldn't have been able to sense giant ants if any creature were
66         to have that ability, caused by using 0 instead of NON_PM for 'none'
67 tone down energy vortex's drain energy attack
68 fix message typo if tame mind flayer dies trying to eat Medusa's brains
69 use alternate rejection message if attempting to name an unnameable monster
70         with the name it already has
71 cockatrice corpse no longer leaves multiple statues for shape-shifted vampire
72 alter name of monster causing hero's death if name contains characters that
73         could cause confusion when using record, logfile, or xlogfile later
74 teleporting or polymorphing a sink via ring drop shouldn't depend upon being
75         able to see it happen
76 change "unlockable chest" to "broken chest" so that it won't be misunderstood
77         ("capable of being unlocked" vs intended "not capable of being locked")
78 use doname instead of xname when using '/' or ';' to look at objects on map
79 when a pet moves reluctantly, name the top item of the pile it is reluctant
80         to step on if the hero sees or remembers any object(s) at that spot
81 ensure sufficient messages are given to clarify the transition from detected 
82         vampire bats to fog clouds in Vlad's tower
83 fix "killing by kicking something weird" when kicking an object causes death
84 guard macros available for mextra fields similar to those for oextra fields
85 compile-time option for an alternate paniclog format for public server use
86 make monsters forget where they stepped when fleeing or teleporting
87 requiver pickup_thrown objects if quiver is empty
88 make mimics mimicing walls or trees also block light
89 stepping onto lava destroyed non-fireproof water walking boots but left other
90         vulnerable boot types intact
91 damage and death reasons when eating globs referred to them as corpses
92 fix death reason when petrified (avoid redundant 'while getting stoned')
93 use appropriate place name for drum of earthquake shakes
94 fix unmapped branch stairs on sokoban level
95 redraw map when hilite_pile is toggled to display the highlighting
96 make commands that accept a count prefix for item selection
97         show "Count:" like command repeating does
98 make vault guard accept names starting with number
99 fix weight of containers in special levels
100 make the raven medusa level shortsighted
101 fix possible segfault in lev_comp when map was too tall
102 fix "the ice is bridged with ice" when freezing castle's moat or Medusa's sea
103 make monsters and pets avoid poison gas clouds if it would damage them
104 covetous monsters may choose to teleport to downstairs or ladders
105 doppelganger posing as Rider would never change shape
106 since doppelganger posing as Rider could never revert to innate form,
107         protection from shape changers turned it into genuine Rider
108 don't create globs of ooze/slime/pudding with bknown flag set so pre-known to
109         be "uncursed"
110 do allow globs with same curse/bless state to merge even when that state is
111         known for one and unknown for the other; result will have bknown clear
112 make glob merging on floor behave the same as glob merging in inventory
113 track age of merged globs
114 support globs for edibility temporary intrinsic
115 restore ability to gain intrinsics from black puddings (pass globs to cpostfx)
116 eating tainted black pudding (glob in 3.6.0, corpse in 3.4.x and 3.3.x)
117         referred to it as "meat" (because it's not vegetarian food)
118 fix pile mark after killing a monster carrying a potion which is destroyed
119 don't list suit as likely candidate for Take-off if cloak blocks it
120 only list known blank scrolls and known blank spellbooks as likely candidates
121         when choosing an item to write on for applied magic marker
122 make status hilites use same color names as menucolors
123 limit monster spell aggravate monsters to either outside or inside of the
124         Wizard's tower
125 prevent revived unique from inheriting a user-defined name
126 make hurtling out of water bubble on the Plane of Water handle entering water
127 fix floor descriptions on the Planes when levitating
128 fix warning glyph description when monster symbol coincided the warning symbol
129 allow the same color names for status hilites and menucolors
130 override MSGTYPE=norep while executing the ':' command
131 if a chameleon took vampire form, it would stop periodically changing shape
132 corpses obtained from tipping an ice box wouldn't rot away
133 suppress "you climb up the stairs" message if verbose option is off
134 physical damage from mind flayer attack was being inflicted twice
135 adjust pending movement points when polymorphing into a slower creature
136 damage inflicted by burning glob of green slime gave wrong messages
137 monsters fleeing up the upstairs on level 1 were supposed to escape the
138         dungeon but ended up arriving on Plane of Earth
139 monster hitting fire-dealing monster with weapon triggered passive damage to
140         weapon every time, when hero doing so only had 1/6 chance per hit
141 hitting steam vortex with flammable weapon would damage the weapon with fire
142 if a non-cursed spellbook being read becomes cursed and hero recognizes that
143         (bknown is set), interrupt reading
144 if a non-cursed spellbook being read becomes cursed and hero doesn't notice,
145         don't leave it flagged as in-use (hence to be deleted during the
146         next save/restore cycle) if contact-poison cursed book effect occurs
147 stolen_value, used when breaking shop items from outside the shop among other
148         times, could describe the shopkeeper as "it" when not seen
149 when two or more shopkeepers were visible at once, 'p' command could be used
150         to probe map for locations of other shopkeepers and arbitrary monsters
151 vortexes and other unsolid monsters need not avoid webs
152 barbarian and samurai can achieve basic in their special spell's skill
153 scalpel and tsurugi can now split puddings; bashing with darts or arrows can't
154 jumping while punished could leave ball and chain in the wrong place
155 improve Deaf message handling for the minetown watch and shops
156 issues with Warning when you're adjacent to an undetected hider; clearly you
157         are aware a monster is present so this causes you to search it out
158 allow lookup of names like Hachi when selecting monsters from the map
159 lookup "More Info?" prompt will now tell you what it will look for on 'y'
160 using 'R' on armor would bypass some restrictions imposed by 'T' (inner layer
161         could be taken off from under outer layer, embedded scales could be
162         attempted but triggered "select_off" impossible)
163 when examining hidden monsters (probing, persistent monster detection), tell
164         how they're hidden (under an object, on the ceiling, etc)
165 some quest text corrections
166 use a much tighter upper bound when summoning nasties; old method could
167         theoretically create 200 critters at a time
168 if a long worm inherited inventory from a previous shape, and if an egg or
169         figurine in that inventory hatched or auto-activated, messages were
170         given when hero could see any tail segment even if head was unseen,
171         making it seem as if worm's inventory was kept in the visible segment
172 Wizard will now steal any quest artifact from hero, not just own role's
173 prevent a hostile renegade Angel of <lawful god> from delivering taunt
174         messages which mention threats of retribution from that god
175 a few types of monster (barrow wight, Nazgul, erinys) have weapon attacks that
176         don't deal physical damage, so special damage like stoning via wielded
177         cockatrice corpse wouldn't be inflicted
178 non-item-using monsters who happened to be carrying scroll or wand of fire or
179         a fire horn could use it to cure themselves of being turned into slime
180 when looting multiple containers, add 'n' for "loot next container", change
181         'q' and ESC from "done with this container" to "done looting"
182 change looting to choose ":iobrs nq" action from a menu for menustyle:Partial
183 wand/spell/breath zaps that reached the edge of the level on the Plane of Air
184         and "vanished into the aether" left temporary display effects on screen
185 stop amulets and other items which aren't affected by erosion damage from
186         being subjected to erosion damage
187 grammar bit: polyself w/ gender change yielded "you turn into a Elvenking"
188 some blindness cures ignored u.ucreamed
189 some instances of stun or confusion timers were being overridden rather than
190         incremented when new stun or confusion damage was suffered
191 female gnome who gains level can grow up into male-only gnome lord; give an
192         an alternate message instead of prohibiting the promotion
193 kicked weapon which successfully hits monster vanishes from play
194 unseen landmine explosion could result in "The <monst-type> statue crumbles."
195 when using the 'O' command for regexp options (autopickup exceptions,
196         menucolors, message types), provide opportunity to add more than one
197         at a time [after 'add', return to add/list/remove menu]
198 commands invoked by uppercase meta characters: M-A, M-C, M-N, M-O, M-R, M-T
199         were missing from '? c' list of game commands (dat/hh)
200 tweak Baalzebub's lair and clean up the map display for it
201 symbol set definitions didn't recognize S_darkroom and S_vibrating_square
202 wizard mode enlightenment was reporting "very fast innately" (which is not
203         possible) for very fast hero who was innately fast
204 when attacking a monster with a rust or corrosion or acid passive
205         counter-attack, grease wasn't protecting the attacker's weapon
206 the Bell of Opening now correctly reports when it opens a trapdoor/hole
207 knocking can no longer send a monster through a trapdoor/hole and desaddle it
208 game no longer gets confused when you break an unpaid shop item while inside
209         a different shop
210 shopkeepers now correctly handle nested containers and gold in containers
211 for menustyle traditional, 'D' followed by (B|U|C|X)&m presented a menu of
212         everything, not just invent subset matching specified BUCX categories
213 for menustyles traditional or combination, 'A' (or object ID) followed by i
214         displayed an inventory of everything rather than just worn items (or
215         not fully identified items)
216 exploding chest trap would destroy uchain while still worn if uball carried
217 if monster shapechange message "<foo> turns into <bar>!" was given, <bar>
218         could be "it" (if <foo> sensed telepathically and <bar> is mindless)
219 automatic annotation for Ft.Ludios level got applied when a drawbridge became
220         mapped, but entry there is a secret door rather than a drawbridge
221 sortloot changed to group holy water and unholy water with water instead of
222         placing them among the h- and u-named items
223 digging down on a grave converted the terrain to floor but did not create a
224         pit and uncover the grave's contents; digging again--on floor--did
226 post-3.6.0: fix "object lost" panic during pickup caused by sortloot revamp
227 post-3.6.0: more sortloot revisions
228 post-3.6.0: fix inventory menu for response of '?' to getobj (more sortloot
229         revamp fallout)
230 post-3.6.0: rings covered by non-cursed gloves not listed as 'R' candidates
231 post-3.6.0: in baalz_fixup, move any monster away from the two fake pool spots
234 Platform- and/or Interface-Specific Fixes
235 -----------------------------------------
236 tty: M-N gave "Unknown command 'M-" with "'." finishing the sentence on the
237         line below it, leaving bogus '.' displayed on the top row of the map
238 tty: specifying all four of role, race, gender, and alignment still prompted
239         for confirmation with "Is this ok?" before starting play
240 tty: responding with <return> or <enter> during role, race, &c selection
241         behaved same as <escape> to quit; now it will pick [random] instead
242 tty: rename struct variable 'filter' (role.c) and function 'winch()' (wintty.c)
243         to avoid conflicts with <curses.h>
244 tty: skip selector letter and selection indicator (-,+,#) during menu coloring
245 tty: '>' no longer closes a menu window
246 unix/X11: in top level Makefile, some commented out definitions of VARDATND
247         misspelled pilemark.xbm (as pilemark.xpm)
248 unix: options file with CR+LF line ends and an invalid option line resulted in
249         "ad option line: "whatever-the-line-was
250         because embedded carriage return character changed cursor's position
251 unix: race condition with parallel make: src/Makefile might start building
252         makedefs before finishing monst.o and objects.o; if so, util/Makefile
253         can build them too, and they might be clobbered by simultaneous write
254 unix: Makefile.{src,utl} ignored CPPFLAGS which is expanded by the default .c
255         rule by GNU make so if user had a value for that in the environment,
256         it would apply to some files but not others; explicitly override it
257 win32gui: getversionstring() was overflowing the provided Help About buffer
258 win32gui: guard against buffer overflow in in mswin_getlin()
259 win32gui: handle menu_color attribute
260 MacOSX: initial binary release was built from out of date source code that
261         had 'BETA' and 'DEBUG' inappropriately enabled
262 MacOSX: force TIMED_DELAY build option on so that 'runmode' run-time option
263         is functional
264 X11: core bug for '`' (backtick) and #terrain commands was only noticed by
265         X11 interface: impossible "add_menu: called before start_menu"
266 X11: enable a scroll bar in menu windows
267 X11: support pre-selected entries in menu windows
268 X11: make the extended command menu be easier to use and look a little nicer
269 X11: make the getline text entry widget display a bigger text entry area
270 X11: color didn't work when the map was displayed as text rather than tiles
273 General New Features
274 --------------------
275 naming Sting or Orcrist now breaks illiterate conduct
276 different feedback for reading a scroll of mail created by writing with marker
277 reading non-cursed scroll of enchant weapon uncurses welded tin opener
278 if hero has no jumping ability but knows the jumping spell, the #jump command
279         will attempt to cast the spell
280 allow moving cursor to monsters with 'm' (nearest first) and 'M' (furthest
281         first) when asked for map location, or to objects with 'o' and 'O'
282 allow picking a used inventory letter from menu when #adjusting
283 zapping wand of opening at yourself, unlock carried boxes
284 dissolve iron bars by force-fighting with wielded potion of acid
285 poison breath leaves a trail of poison gas
286 allow knife and stiletto as possible tin opening tools
287 wizard mode #wizintrinsic command
288 additional tribute passages for The Colour of Magic, The Light Fantastic,
289         Equal Rites, Mort, Sourcery, Wyrd Sisters, Pyramids, Guards! Guards!,
290         Eric, Moving Pictures, Reaper Man, Witches Abroad, Snuff, and
291         Raising Steam
292 compile-time options SIMPLE_MAIL and SERVER_ADMIN_MSG for public server use
293 database entries for Cleaver, Sunsword, Frost and Fire brands, and
294         polymorph trap
295 allow showing coordinates when picking a position on the map and
296         autodescribe option is on
297 new status line conditions Stone Strngl Deaf Lev Fly Ride
298 allow some extra color name aliases for menucolors and status hilites
299 add extended command #kick
300 when choosing an inventory item and '-' for bare-hands/fingers/no-ammo is a
301         choice, include that in the inventory menu if player types '?' or '*'
302 feedback from probing of long worm now includes number of segments it has
303 monk starts with 'shuriken' pre-discovered (despite language issue...)
304 item-using monster on or next to a fire trap can use it to be cured of
305         turning into slime
306 wizard mode ^G can now specify "male" or "female" when creating a monster
307 REPRODUCIBLE_BUILD is new config.h setting to fetch build date+time from
308         environment instead of using current date+time, so that later rebuild
309         could duplicate the original (disabled by default; tested for Unix)
310 default value for vibrating square symbol changed from yellow '^' to purple '~'
311 allow symbol set values to be specified via char within single quotes
312 add symbols set "plain", same as default except it uses '+' for corner walls
313 extend wizard-mode '#stats' command
316 Platform- and/or Interface-Specific New Features
317 ------------------------------------------------
318 tty: menu_overlay -option to clear screen and align menus to left
319 tty: compile-time option to output escape codes for tile data hints
320 unix: compile-time option MSGHANDLER to pass messages to external program
321 unix: add CHECK_PLNAME-option to sysconf to make WIZARDS, EXPLORERS, and
322         SHELLERS check player's character name instead of login name
323 X11: new NetHack*highlight_prompt resource to control whether the persistent
324         prompt line between the map and message windows for the NetHack*slow
325         configuration will be highlighted when it's expecting input
326 X11: NetHack*extcmd_height_delta resource can be used to adjust initial size
327         of the extended commands menu
328 X11: status display split into three columns to accomodate Stone/Deaf/Lev/&c;
329         NetHack*status_condition.foreground, .background, and .showGrip
330         resources replaced by status_condition[1-3].*
333 NetHack Community Patches (or Variation) Included
334 -------------------------------------------------
335 Malcolm Ryan's improved tin opener
336 Ray Chason's keyboard may stop responding after locking or unlocking a door when
337         using altkeyhandler=nhraykey.dll 
338 Ray Chason's fix: window interfaces that support transparency may give away unseen
339         parts of the map
340 Ray Chason's xprname should honor iflags.menu_tab_sep
341 Ray Chason's punctuation for "That foo is really a mimic."
342 Ray Chason's proper background tiles for lava and water
343 Ray Chason's MS-DOS port restored to functionality with credit to Reddit user 
344         b_helyer for the fix to sys/share/pcmain.c
345 Ray Chason's MSDOS port support for some VESA modes
348 Code Cleanup and Reorganization
349 -------------------------------
350 removed some unused variables and dead code
351 the level generator no longer uses the native pRNG