Guest User

Nethack 3.6 Changes

a guest
Dec 7th, 2015
1,543
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 77.15 KB | None | 0 0
  1. $NHDT-Branch$:$NHDT-Revision$ $NHDT-Date$
  2.  
  3. General Fixes and Modified Features
  4. -----------------------------------
  5. change the dreaded "Stop eating?" to "Continue eating?" with default "no"
  6. setmangry should not be called when a monster enters a bones region
  7. bad capitalization of msg when charging for something that catches light
  8. missing opthelp for use_inverse
  9. Never say "It moves only reluctantly"
  10. expert fireball/cone of cold could not target a monster seen only with
  11. infravision or ESP
  12. display "lotus juice", not "lotu juice" for the fruit juice name
  13. only humanoid angelic minions should get/use sword and armor
  14. paper, straw and wood golems resist cold
  15. the options lootabc, showrace, travelcmd, and runmode are now saved
  16. use mons[] array offsets in mnum field in save file rather than storing
  17. the ptr and calculating the distance from beginning of array
  18. two-weapon combat makes two attacks instead of having one attack hit with
  19. each weapon
  20. apply weapon skill to-hit bonus or penalty to bare-handed attacks
  21. only give monk's "cumbersome armor" message when the armor penalty causes
  22. an attack to miss
  23. dust vortex-induced blindness should kick in immediately when blindfold
  24. is removed or glop is wiped off
  25. prayer/unicorn-horn won't fix blindness while still engulfed in a dust
  26. vortex since it will just return immediately
  27. being confused and reading cursed scroll of charging drains your energy
  28. class genocide recognizes species name as an example of the class to
  29. genocide (Martin Snyder)
  30. internals: use Is_box rather than explicitly checking what it checks
  31. fix some unreachable messages (either make then reachable or remove them)
  32. can quiver coins when GOLDOBJ is defined
  33. make #loot behave same for GOLDOBJ as for !GOLDOBJ
  34. for GOLDOBJ, can pick gold up into $ when all 52 letters are in use, and
  35. can pick non-gold up into unused letter when gold uses one of 52 slots
  36. grammar, spelling and other typos
  37. keep various delayed killers separate to avoid mixed up messages
  38. don't place randomly-placed aquatic monsters in lava on special levels
  39. hiding monsters don't hide under cockatrice/chickatrice corpses
  40. "sound" option renamed to "acoustics"
  41. deafness now a full-fledged attribute
  42. water should flow into pits from broken wand of digging and drum of earthquake
  43. objects that fall thru trapdoors, et al, can break on impact
  44. support engraving in blood in special level files
  45. many instances of physical damage were not taking Half_physical_damage
  46. into account when reducing your hitpoints
  47. make it possible for the code to recognize your starting pet throughout the
  48. game via is_starting_pet(mon) macro
  49. healers notice when a wand of undead turning revives a monster so the
  50. wand is then identified
  51. update display if bestowed a spellbook while unable to see invisible self
  52. use small pool of static buffers for mon_nam() and Monnam()
  53. Acknowledge Schroedinger's cat at end of game
  54. grammar fixes for applying stethoscope to corpses and statues
  55. player polymorphed as a ceiling hider cannot reach the floor, but
  56. automatically unhide on #sit
  57. trappers do not hide on the ceiling
  58. fix "You hear The food ration tumbles downwards" for blinded pit dropping
  59. silver arrows weren't causing silver damage on some silver-haters when wielded
  60. wizard mode: avoid division by 0 crash for level teleport in the endgame if
  61. confusion overrides teleport control
  62. don't #sit on an object in a pit if you're only on the precipice
  63. fix message when pushing a boulder into a pool while riding
  64. plural of "Nazgul" is "Nazgul" not "Nazguls"
  65. trap messages referring to named steed were awkwardly worded when hallucination
  66. overrode use of the name
  67. some actions such as eating corpses off the floor didn't check whether hero
  68. could reach the bottom of a pit
  69. usmellmon() instead of "It turns into it" during monster polymorph
  70. grammar of messages regarding eating artifacts
  71. avoid a message about an invisible monster looking much better
  72. player polymorphed as a xorn could not pick up items in pits
  73. non-magical whistles do not work underwater
  74. try to restrict whistles and musical instruments to monsters that can blow
  75. don't display "turns to flee" message for a mimicing mimic
  76. don't display "turns to flee" message for a monster who has just died
  77. dipping acid in a fountain could cause an explosion but not destroy the potion
  78. thrown potions can sometimes hit a steed's saddle
  79. if your blindfold glows and you're not otherwise blinded, you can see it
  80. sync default documentation of "null" option with the code
  81. tripping over a cockatrice corpse didn't petrify, even when not wearing boots
  82. do not call swamps on the Juiblex level "moat" when freezing or drowning;
  83. likewise for Plane of Water when drowning
  84. keep score from wrapping around and becoming negative by capping it
  85. kicked objects do not slide when on the air or water levels
  86. added strsubst() to hacklib
  87. be consistent with use of "removing" rather than "lifting" for encumber
  88. messages associated with taking things out of a bag of holding
  89. when a giant carrying a boulder dies in a pit, ensure that the corpse is
  90. buried under the filled pit
  91. cursed scroll of destroy armor damaging cursed armor didn't adjust attributes
  92. add passive() flag that indicates uwep was destroyed during the turn
  93. polymorphed or shapechanged monster sometimes got erroneous hit points
  94. when blind and levitating > shouldn't say "stairs" if player has not seen them
  95. a slow-moving monster hidden under a rotting corpse was not immediately
  96. displayed when the corpse rotted away
  97. mimic that ends up on the rogue level should not mimic a closed door
  98. mimic should not mimic a boulder while on a pit or hole or closed door
  99. calculate weight of corpses on special levels correctly
  100. Sting could trigger premature display of orcs during savegame restore
  101. Sting now glows light blue again
  102. prevent "offering" or other words with similar ending from matching ring quote
  103. make cleric cast lightning blind as other lightning does
  104. change the wording slightly to use "one of " when a monster wielding
  105. multiple daggers thrusts them
  106. if you didn't see a rolling boulder fall into a pit, you only heard the sound
  107. of it doing so if you were blind
  108. fire trap was triggered twice in the same turn when melting ice was involved
  109. abandon the specialized djinn and ghost counters used for potion tuning and
  110. use the mvitals[].born field instead
  111. if you were Poison_resistant, only a *blessed* potion of sickness caused
  112. loss of hitpoints
  113. reviving invisible troll could appear visible until it moves
  114. adjust some of the shop repair messages
  115. shopkeeper removal of trap from shop doorway yields an open door instead of
  116. a closed one if an intact open door is present
  117. guarantee that hostile djinn released from bottles really are hostile
  118. handle lava when removing or losing water walking boots
  119. fix incomplete sentence occurring when unique monster's corpse fell down stairs
  120. fractured boulders or statues produced inconsistent object settings on the
  121. resulting rocks
  122. really fix rolling boulder bug C340-18, the previous "fix" reversed the test
  123. monster throwing greased weapon has same chance for slip/misfire as player
  124. killing a pet by displacing it into a trap now yields experience
  125. prevent a rolling boulder that is in motion from vanishing in bones files
  126. ensure that a sleeping steed doesn't answer a #chat
  127. eliminate two very minor anomalies when using Luck to adjust random numbers
  128. destroying a worn item via dipping in burning oil would not unwear/unwield
  129. the item properly, possibly leading to various strange behaviors
  130. avoid a panic splitbill when shopkeeper is trapped by the door
  131. grammar tidbit for message given when eating tainted meat is also cannibalism
  132. gas spores shouldn't be described as "unable to attack" while hero is praying
  133. incorrect screen display if engulfer gets turned to stone when trying to
  134. swallow while hero is poly'd into cockatrice
  135. panic on subsequent move if engulfer gets turned to stone and poly'd hero
  136. also has attached ball&chain
  137. give more specific messages when dropping weapons due to slippery fingers
  138. various helmet messages changed to distinguish between "helm" and "hat"
  139. helmets don't protect against cockatrice eggs thrown straight up
  140. breaking container contents in a shop didn't always charge for them
  141. some types of shop theft of a stack of items only charged for a single one
  142. some thefts weren't charged at all even though shopkeeper noticed
  143. wizard mode: WIZKIT wish for own quest artifact triggered crash at startup
  144. avoid "your steed is still eating" message when going through a magic portal
  145. cannot drink from fountain, sink or surrounding water while swallowed
  146. don't hallucinate anything for an exploding black light as it dies
  147. give blindness feedback when moving into/through stinking cloud
  148. fix case on monster name when monster reflects floating eye's gaze
  149. monsters "shrieking in pain" from a potion didn't wake anything up
  150. charge for reviving a shop owned corpse or reanimating a shop owned statue
  151. filled trap doors on castle can be re-dug
  152. message order when swapping places with a pet (e.g. into a trap), also use
  153. different term instead of "displace"
  154. flyers can get out of pits more easily than non-flyers
  155. allow use of the < command to try to exit a pit
  156. Master of Thieves as Tourist Nemesis still had STRAT_CLOSE
  157. co-aligned unicorns in bones could be hostile
  158. finding "something" posing as a statue while Blind should map_invisible()
  159. adding more candles than required to total 7 to a candelabrum which
  160. already had between 1 and 6 gave an ungrammatical message
  161. give correct message when a spellcasting monster summons other monsters
  162. correct experience calculation for monsters that cause nonphysical damage
  163. clean up messages when you stop levitation while riding a flying steed
  164. monsters evading a kick on noteleport levels would cause a "teleports" message
  165. interrupt current activity during certain stages of petrification or vomiting
  166. warning about bad food didn't recognize tin of Medusa meat
  167. eating tainted Medusa corpse caused food poisoning instead of petrification
  168. avoid potential stale pointer use after magic bag explosion
  169. nymphs and monkeys can't steal rings worn under gloves
  170. monkeys can't steal rings worn under cursed weapon
  171. succubi will remove hero's gloves before taking worn ring; incubi will do
  172. so before forcing ring to be put on
  173. mbodypart should return forehoof, not foreclaw, for horselike monsters;
  174. rear paws instead of rear claws for feet of d, f, r, and owlbear;
  175. hand, arm, leg, foot for yeti, sasquatch, monkey, ape, carnivorous ape
  176. further digging of an existing hole finishes in a single turn
  177. only prefix shopkeeper names with "Mr." or "Ms." when not a personal name
  178. account for all attacks when determining max_passive_dmg
  179. green slime should not affect noncorporeal monsters
  180. land mine explosion will destroy a drawbridge at same location
  181. avoid some more buffer overflows in query buffers containing object names
  182. avoid giving extra information about things that break out of sight
  183. dipping in acid can erode the dipped object
  184. avoid giving away wand type for near misses while blind
  185. avoid excessive repetition of "monsters are aware of your presence"
  186. monster's aggravation spell now affects meditating monsters
  187. handle pets sooner at end-of-game to avoid message delivery anomalies
  188. busy pet won't miss out upon ascension
  189. fix various places that "finally finished" could be displayed after the hero
  190. stopped doing something other than eating
  191. fix some cases where movement was disallowed but the hero was still conscious
  192. after destroying drawbridge, hero could appear to be in the wall
  193. sometimes shop items which hero is forced to buy could be sold back twice
  194. non-empty container dropped but not sold in a tended shop and then picked up
  195. after that shop became untended could be sold twice in another shop
  196. vision was not updated when polymorphing a statue into a boulder
  197. various actions--such as enchanting--performed on an unpaid shop object
  198. either force the hero to buy the item (when its value is lowered) or
  199. increase the current bill (when its value is raised)
  200. `I u' when carrying single unpaid item listed its cost twice
  201. armor which auto-curses when worn by hero should do same if worn by monster
  202. limit how high accuracy, damage, or protection can become via eating rings
  203. when blinded hero detects a trap by touch, make sure it shows up on the map
  204. confused remove curse will cause loss of knowledge of items' curse/bless state
  205. with astral vision, the ";" command should only display "normal vision"
  206. for things that could be seen without astral vision
  207. reanimating a statue containing gold produced double gold
  208. probing the resulting double-gold monster caused "static object freed" panic
  209. cursed wand might explode if used to engrave
  210. fatal wish from magic lamp left functional magic lamp in bones data
  211. fatal wish granted by monster left that monster in bones data
  212. death due to dipping potion of acid into a pool left the potion in bones data
  213. clear prompt from screen after ESC is used to abort "In what direction?"
  214. minor interface changes for interactively manipulating autopickup exceptions
  215. chatting with quest leader who was brought back from the dead gave warnings
  216. becoming green slime or mimicking gold violates "never changed form" conduct
  217. when a monster grew into a higher form which had previously been genocided,
  218. the message explaining its fate was only given if it was sensed via ESP
  219. hero could still see for brief period after being blinded by potion vapors
  220. avoid crash when thrown potion hits bars before a monster
  221. don't give messages about seeing things happen while asleep
  222. adjust health threshold where wounded hero will be healed by successful prayer
  223. protect hero from mind flayer's remote mental blast during successful prayer
  224. recognize if hero has already entered Gehennom by means other than usual route
  225. so that prompt can be skipped if Valley's stairs are subsequently used
  226. once you've passed the Valley, drawbridge tune is no longer a prayer reward
  227. fix up grammar and punctuation in variants of shopkeeper's price message
  228. regression, bug fixed in 3.4.1 reintroduced in 3.4.3: Sunsword continued to
  229. emit light after monster who was wielding got killed
  230. weaken "farming" strategies
  231. don't suppress corpse if you kill your own steed
  232. fix typo in tourist quest leader's greeting
  233. fix grammar for graveyard sounds when polymorphed
  234. avoid divide by zero crash if Luck drops below -1 while a prayer is in progress
  235. make hero inflicted with lycanthropy immune to level drain just like monsters
  236. describe locomotion method accurately when flyers traverse ladders or holes
  237. when there were multiple boulders at a location, moving one of them sometimes
  238. resulted in line-of-sight anomalies
  239. unicorn can't catch gems if it is asleep or paralyzed
  240. fix grammar when choking on gold
  241. prevent lose-level+regain-level cycle from arbitrarily boosting HP and Pw
  242. prevent polymorphing into "new man" at low level from magnifying HP and Pw
  243. some messages which referred to "mirror" ought to have used "looking glass"
  244. incubi react to mirrors
  245. losing a level while polymorphed affects hero's current monster HP as well as
  246. underlying normal HP
  247. mind flayer brain eating is subject to certain fatal targets and to cannibalism
  248. mind flayer can't eat brains of ghost or shade
  249. alignment of Angels was handled inconsistently
  250. corpses of unique monsters in bones behaved incorrectly if revived or eaten
  251. pets capable of digging could pass through walls and stone on the Rogue level
  252. don't generate mimics pretending to be closed doors when making Rogue level
  253. fix pluralization for "this tin smells like mother-in-laws" when hallucinating
  254. force user-specified fruit name to be singular
  255. avoid false matches when looking up fruit names ("grapefruit" isn't "grape")
  256. handle pluralization of man-at-arms and singularization of men-at-arms
  257. avoid inappropriate "the corridor disappears" when vault guard gets killed
  258. avoid inappropriate "the guard calms down" if vault guard's magic corridor
  259. reaches a spot where gold is embedded in the rock
  260. avoid having vault guard ask hero's name when hero is swallowed
  261. assigning an artifact name is rejected on objects with similar description to
  262. corresponding artifact's type rather than just those of the same type
  263. adjust feedback for gas spore explosion when hallucinating
  264. adjust message for gas effect from chest trap if hero resists hallucination
  265. cancelling non-shop objects in a shop's entrance would upset the shopkeeper
  266. traps detected by scroll or crystal ball overlooked carried or buried chests
  267. can't wish for a trapped box/chest/tin by specifying "poisoned"
  268. grammar bit if killed by stealing a cockatrice corpse from a monster
  269. identified touchstone can rub on gold like the data.base entry says
  270. restore the capability of rubbing any object against known touchstone
  271. being petrified by swallowing a cockatrice violates foodless conduct
  272. devouring Medusa whole is fatal
  273. tombstone's reason for death after being killed by mis-returning Mjollnir
  274. varied depending upon whether it was fully identified
  275. tombstone's reason for death from kicking an object could include so much
  276. detail about the object that is was too verbose
  277. several quest messages were worded inappropriately if the hero was blind
  278. a samurai quest guardian message used "ninja" where "ronin" was intended
  279. revive from fainting if vault guard or bribe-demanding demon approaches
  280. tame flaming spheres and shocking spheres shouldn't pick up items
  281. eating pet won't continue eating after becoming paralyzed or falling asleep
  282. can hear the opening or closing of an unseen drawbridge
  283. prevent "object lost" panic caused by accessing freed memory after worn
  284. non-fireproof water walking boots are destroyed by lava
  285. stop multi-turn running, searching, or resting early if levitation ends
  286. randomize shopkeeper names when hallucinating
  287. fix wording for "leprechaun steals gold from between your feet" when mounted
  288. Call command could be used to remotely identify which high priest is which
  289. large amorphous, whirly, noncorporeal, or slithy creatures can fit through
  290. tight diagonal gaps despite their size
  291. avoid "You summoned it!" for unseen monster produced by same-race offering
  292. fix monsndx panic which happened after currently moving monster expelled
  293. swallowed hero onto magic trap and was made tame by its effect; taming
  294. no longer replaces monster
  295. reduced message verbosity when re-entering a temple
  296. reduced message verbosity when monster with multiple attacks missed wildly
  297. recognize "mindflayer" as an alternative spelling for "mind flayer"
  298. putting on a never seen ring while blinded won't make the ring a discovery
  299. zapping a never seen wand while blinded won't make the wand a discovery
  300. zapping an unID'd wand of teleportation at self will discover it (usually)
  301. zapping unlocking magic at self while punished will remove attached chain
  302. treat mattock as blunt object when forcing locks
  303. restore capability to force locks with wielded statue
  304. only count successful statue creations against the monster limit in sp_lev.c
  305. don't see objects or read engraving when hero changes location (random
  306. teleport) or position (levitation timeout) while asleep or fainted
  307. unseen wand of striking zapped by unseen monster became known if it hit a door
  308. tweak knight quest messages
  309. guidebook grammar bits
  310. special level loader wasn't able to place random door in 1x1 room; could
  311. trigger divide-by-0 crash for user-developed custom levels
  312. polymorphed spellbooks may turn blank or be too faint to read
  313. make gender of quest leaders and nemeses consistent with data.base and
  314. quest messages
  315. Orion and Norn should be giant sized
  316. Orion, Norn, Cyclops and Lord Surtur should be able to tear webs
  317. avoid inappropriate message when using a cursed lamp while blind
  318. player polymorphed as a guardian naga spit the wrong kind of venom
  319. ensure monsters cannot teleport to or be created outside nonpassable bounds
  320. of special levels
  321. candles should not be fireproof
  322. put #define for potion occupant chance and cursed wand zap chance in one place
  323. recognize most instances where hallucinatory monster name should be treated
  324. as a personal name (to avoid "the Barney") instead of a description
  325. avoid giving misleading or redundant feedback when reading scrolls
  326. monsters could end up off the left side of the Ranger quest start level
  327. custom arrival message for special levels could be delivered too soon
  328. custom arrival message for special levels now supports quest text substitution
  329. prevent scroll of charging that has already disappeared from showing in the
  330. picklist of things to charge
  331. doors break instead of absorbing the blast of a broken wand of striking
  332. worms don't have scales, krakens have tentacles, stalkers have a head
  333. you no longer "fry to a crisp" as a water elemental
  334. change leather spellbook to leathery; pertains to appearance, not composition
  335. more precise probing/stethoscope feedback when engulfed
  336. make baby long worms have lower level than full grown ones
  337. use "your kraken" instead of "a kraken" when searching reveals a tame
  338. hidden monster
  339. Magicbane should not produce "<something> are confused" message
  340. handle antholes more sensibly when ants aren't available
  341. avoid "Something's in the way" message with unidentified wand of locking
  342. cancelled nurses shouldn't say "Relax, this won't hurt a bit"
  343. check for hero location in digactualhole() before clearing u.utrap
  344. clear any pits that the hero digs in the vault guard's temporary corridor
  345. better handling for Fort Ludios and endgame in wizard mode's `^V ?' menu
  346. no free lunch for gelatinous cubes eating scrolls of mail
  347. eating gold in front of the vault guard will make the guard angry
  348. calculate engulf time differently for non-digestion attacks than for digestion
  349. preform autopickup and/or report on objects at the spot when a failed #untrap
  350. attempt causes the hero to move onto a trap's location
  351. shattering a monster's weapon didn't work as intended for stack of N>1
  352. thrown silver weapon hitting silver-hating poly'd hero got double silver damage
  353. wielded silver weapon hitting silver-hating poly'd hero lacked silver message
  354. don't reveal surface information that you can neither feel or see
  355. if the hero or a monster is already in a pit don't have them "fall into a chasm"
  356. from drum of earthquake
  357. monsters who ate lizard corpses to cure confusion would lose intrinsic speed
  358. monsters couldn't eat lizard corpses to cure being stunned
  359. code handling a monster's use of potion or food to cure stoning or confusion
  360. was accessing freed memory after the object had been used up
  361. properly handle destruction of equipment carried by monsters hit by
  362. disintegration breath; life-saving retained conferred properties of
  363. formerly worn items (loss of steed's saddle caused much confusion)
  364. don't exercise or abuse wisdom when rumors get used for random graffiti
  365. don't exercise wisdom twice for each minor oracle consultation
  366. don't welcome the hero to Delphi if the Oracle was angered before first entry
  367. create_object() created lizard corpses without timers and troll corpses with
  368. their revive timers, then changed the corpsenm field
  369. when a potion of acid was dropped into water and exploded, nethack would
  370. continue to use already freed memory and later might panic or crash
  371. when jumping over an already seen trap, use an() to get appropriate grammar
  372. fix bad grammar when putting on not-yet-seen Eyes of the Overworld while blind
  373. don't "walk quietly" while levitating
  374. shopkeeper polymorphed into animal form can no longer speak
  375. don't give attribute adjustment messages ("you feel wise") unless the current
  376. value actually changes
  377. fix message handling when multiple shopkeepers are present at end of game
  378. 'C' command can't name shopkeepers or temple priests and other minions
  379. when "of <deity>" is intentionally being suppressed, an aligned or high
  380. priestess would be described as an aligned or high priest
  381. specifying role and/or race along with an invalid alignment for it/them in
  382. NETHACKOPTIONS or config file would yield a prompt which misleadingly
  383. mentioned the rejected alignment when asking player to pick alignment
  384. temple donation can recover protection previously stolen by attrcurse attack
  385. even when protection amount is so big that no increment would be given
  386. meditating monsters stop meditating when affected by something which wakes
  387. sleeping monsters
  388. monsters capable of hiding can't do so when trapped or while holding you
  389. limit recursive calls to spoteffects (poly'd hero fell into water, reverted
  390. to human because of it, fell into same water, then crawled out twice)
  391. ensure that the punishment ball and chain make it into save file after being
  392. temporarily orphaned from the normal chains in the swallowing code
  393. display the invisible monster glyph ('I') whenever an unseen monster forces
  394. poly'd hero out of hiding
  395. charge for thrown wand that shatters into a thousand pieces in a shop
  396. wielded light source susceptible to water gets extinguished when weapon rusts
  397. don't discover unknown bag of tricks when monster it releases is undetected
  398. escape the deleted trap after performing the invocation while trapped
  399. use alternate phrasing when life drain attack affects non-living creature
  400. bypass "wait! there's a creature hidden there" when attacking a hidden monster
  401. sensed by ongoing monster detection
  402. remove makedefs.c dependency that time_t and long are the same size
  403. terminal window set to 21 lines can cause a crash during player selection
  404. menus; have bot() check for valid youmonst.data
  405. make region ttl field a long instead of short to get rid of lint warnings
  406. about a possible loss of data
  407. free storage used to hold region messages in free_region()
  408. honor pushweapon when applying a tool or weapon causes it to become wielded
  409. in the quest, if the locate level hasn't been reached yet, don't fall or
  410. randomly teleport past it
  411. fix phrasing in monster against monster attack feedback when attacker is
  412. wielding stacked weapons
  413. pushing a boulder onto a level teleporter trap could issue repeat messages
  414. if shopkeeper or priest gets teleported while inside his shop or temple,
  415. give locations inside that room preference when choosing destination
  416. don't place hero on top of monster when arriving on level which is so full
  417. that the monster can't be moved out of the way
  418. tame/peaceful grabber/engulfer will release hero after conflict ends
  419. any grabber will release hero if it moves away while confused/stunned/afraid
  420. make changes in hallucination be reflected by changes in mimickery feedback
  421. have to see a divine gift in order to have it become a discovery
  422. honor the never-in-hell flag when selecting random monster type for corpses,
  423. eggs, figurines, and statues created in Gehennom
  424. hero is not subject to light-based blindness while fainted from hunger
  425. add Unaware pseudo-property to suppress various messages while unconscious
  426. engraving while underwater should use surface() which handles that case
  427. prevent obj_is_local panic during bones creation when splattered burning oil
  428. from a thrown potion of oil kills the hero
  429. don't leave lit potion intact when splattered burning oil from broken floor
  430. potion kills the hero
  431. fix region timeout detection, caused strange display of stinking cloud
  432. while wearing the Eyes of the Overworld
  433. try to keep migrating monsters from escaping the wizard tower
  434. affected monsters should always respect "Elbereth"
  435. try harder to keep dragged chain between ball and hero
  436. fireproof containers should not burn in lava
  437. missile which kills engulfer will now be placed prior to hero's return to map
  438. fix invalid pointer dereference after applying a wielded cream pie
  439. avoid drowned in a drowning and burned by burning if life-saving is inadequate
  440. bugles affect all monsters to some extent
  441. nurses are affected if player is polymorphed as a cockatrice
  442. getting a particular rotten food result can't make attempting to eat a
  443. corpse of one of the Riders be survivable
  444. pad shortest rumors to improve distribution of delivered rumors
  445. wake up sleeping steed when putting on saddle or mounting
  446. reveal hidden monsters who change levels or are magically summoned
  447. hero can't carry an unlimited number of boulders when poly'd into a giant
  448. stop wielding cockatrice corpse which triggered own death followed by life-save
  449. format various prompts to avoid "Query truncated" entries in paniclog
  450. prevent very large number of objects in # inventory slot from causing
  451. buffer overflow
  452. !fixinv config was using arbitrary characters instead of # for invent overflow
  453. for inventory display, include cost info on hero-owned containers holding
  454. shop goods
  455. shops now claim ownership of items created by using an unpaid horn of plenty
  456. shopkeepers shouldn't refer to non-male character as "cad"
  457. tweak levitation timeout if trap is being triggered on same turn it is to end
  458. don't report death by petrification if cockatrice kills hero via HP loss
  459. Riders are immune to green slime
  460. Rider corpses can't be engulfed by gelatinous cubes
  461. if Rider corpse revival fails, usually try again later instead of rotting away
  462. wielding a cloak of magic resistance or gray dragon scales, or carrying one in
  463. alternate weapon or quiver inventory slot, conferred magic resistance
  464. to polymorphed hero
  465. wielding a potion of blindness or carrying one in alternate weapon or quiver
  466. slot conferred resistance against light-based blindness to any hero
  467. worn item transformed by polymorph remains worn if feasible
  468. zapping closing or breaking magic up or down from beneath an open drawbridge's
  469. portcullis failed if bridge orientation was north-to-south (Valk quest)
  470. can't dip or apply grease to a worn item that's covered by another worn item
  471. sinking into lava didn't track passage of time properly
  472. sinking into lava eventually burns away slime; sitting in it always does
  473. after escaping lava by foot, if hero doesn't move he'll fall back in
  474. suppress corpse from bones data if death is due to being dissolved in lava
  475. suppress "you rise from the dead" if game ends due to be turned into slime
  476. hero poly'd into stone golem and wielding cockatrice corpse casts stone-to-
  477. flesh at self to become flesh golem will revert to stone if no gloves
  478. don't give erroneous "<mon> disappears" message for hero poly'd into quantum
  479. mechanic who hits engulfer while swallowed and blinded
  480. demon lords/princes can't be summoned to the elemental or Astral planes
  481. feedback from casting spell of protection was wrong in some situations
  482. can't engrave on floor while inside solid rock, wall, or closed door
  483. same-race sacrifice can't damage high altars
  484. allow corpses on floor to be offered at high altars
  485. allow hero to attempt to offer the Amulet at ordinary altars
  486. shooting range for crossbow isn't affected by strength; multi-shot volley is
  487. remove engravings at drawbridge location when it is opened, closed, or wrecked
  488. monster killed in midst of multi-shot volley throwing/shooting might cause
  489. freed memory to be accessed, potentially triggering a crash
  490. right-handed boomerang throw travels counterclockwise
  491. can't arm bear traps or land mines on Planes of Air or Water
  492. statues that "come to life" when trap activates shouldn't start out sleeping
  493. shopkeepers and priests wouldn't step on graves put in their rooms by bones
  494. can't throw if poly'd into form which lacks hands
  495. monsters can use ranged attacks over/around boulders, same as hero
  496. can't eat an artifact you're unable to touch
  497. attempting to kick beyond map edge performed an out of array bounds memory
  498. access; symptom seen was "show_glyph: bad pos" warning when blind
  499. attempting to engrave with an empty wand should always use a turn
  500. don't access freed memory after engraving "wrests one last charge" from wand
  501. a magic portal could be rendered inactive for the hero if a successful
  502. hangup save took place during level change; leaving the level by any
  503. means other than triggering the portal would reactivate it
  504. can't drop part of a stack of N weapons welded to hero's hand
  505. pickup still accepts m as command prefix, but now rejects F,g,G,M,numpad 5
  506. scatter piles of kicked gold rather than move the entire pile at once
  507. hero wasn't allowed to affix candles to the candelabrum while underwater
  508. non-unicorn horn healing magic which cures sickness now also cures vomiting
  509. vomiting/nauseated state is included in enlightenment feedback
  510. vomiting countdown actually triggered the final vomit code twice
  511. rats aren't capable of vomiting
  512. fireproof, non-rustable weapon would be revealed as fireproof by hitting a
  513. rust-causing target; ditto for fixed crysknife
  514. surviving choking while eating various foods (cockatrice egg, fortune cookie,
  515. wolfsbane, others) didn't carry through to those foods' side-effects
  516. shapechangers who take on mimic or hider form will mimic or hide when feasible
  517. avoid War message if tinning a Rider corpse fails
  518. prevent long messages from triggering access violation or segmentation fault
  519. due to buffer overflow in pline()
  520. cursed corpse wielded by a monster isn't welded to its hand or paw
  521. fix grammar errors in samurai quest, wakarimasu ka?
  522. fix spelling of Dr Dolittle
  523. hero's sleep resistance shouldn't protect steed from sleeping gas trap
  524. #jump attempt fails if mounted on sleeping steed; jumping spell still works
  525. dropped wielded, in use leash should remain in inventory, since it's in-use
  526. wielded, in use leash can't be snatched by whip-wielding monster
  527. when using two weapons at once, whip-wielding monster can target either one
  528. if normal game save file is restored via `nethack -X', restore in normal
  529. mode--with save file deletion--and require confirmation ala 'X'
  530. command to make deferred switch into explore mode
  531. can't #force floor item while engulfed, levitating, or unskilled riding
  532. can't lock or unlock doors while engulfed
  533. if hero or monster standing on opened drawbridge survives its destruction,
  534. fall into water or lava instead of remaining on top
  535. don't give a speed change message when an immobile monster is seen to be hit
  536. by a wand of speed or slow monster
  537. when shopkeeper "gratefully inherits possessions" of hero who dies in shop
  538. doorway without owing the shop, move those items inside shop for bones
  539. dying in a shop while wielding two weapons could cause "Setworn: mask" warning
  540. make score file processing more bullet proof to avoid potential security issue
  541. stethoscope applied to hiding mimic will bring it out of hiding
  542. rephrase "<artifact> evades your grasp" message if artifact is already held
  543. artifacts which subsequently evade your grasp/control after already being
  544. worn or wielded become unworn/unwielded
  545. towel equipped in weapon, alternate weapon, or quiver slot can be applied
  546. lit candle or potion of oil which burned out while equipped would leave stale
  547. weapon/alternate-weapon/quiver pointer that could cause panic or crash
  548. wielded/worn figurine which auto-transformed had same stale pointer bug
  549. likewise with casting stone-to-flesh on self for figurine of non-veggy monst
  550. format names of not yet id'd artifacts such that obj type shows for non-weapons
  551. hero with lycanthropy is vulnerable to silver in both human and beast form
  552. changing alignment or shape triggers a check for equipment evading hero's grasp
  553. passive fire effects can damage attackers' weapons
  554. make quest leader and nemesis be unlikely to be affected by traps
  555. wielded bow shouldn't affect outcome of kicked arrows
  556. ranged polearm hit can divide puddings and can use confuse monster effect
  557. charge for kicked shop-owned food if it gets used up taming a monster
  558. give better feedback when thrown shop-owned food gets used up taming a monster
  559. effect of negative AC on damage received was calculated differently than
  560. normal when deciding whether hero poly'd into pudding would split
  561. use a more precise jumping path for far, non-straight line destinations
  562. unicorn horn produced by revived monster will polymorph as if non-magic
  563. stone-to-flesh on any golem statue or golem figurine creates flesh golem
  564. stone-to-flesh which activates shop-owned figurine entails shop charges
  565. make giants be less likely to be randomly generated in Sokoban
  566. bear traps dish out some damage on initial entrapment
  567. bear traps and webs are harmless to water elementals
  568. hero with polymorph control and inflicted with lycanthropy can specify own
  569. werecritter or human werecritter monster types as polymorph target
  570. hero undergoing semi-controlled polymorph won't also undergo sex change
  571. when doppelgangers taking on new shape don't specifically pick nasty monster
  572. or role monster, bias the random form towards humanoid
  573. salamanders can use green slime corpses to cure themselves of petrification
  574. increase damage bonus applies when kicking while polymorphed into a monster
  575. form which has a kicking attack, just like for other kicks
  576. feedback about summoned monsters may use singular when it should use plural
  577. if magically removing steed's saddle is fatal, don't leave it saddled in bones
  578. charging prompt used wrong criteria when deciding whether to list rings
  579. rogue's backstab bonus doesn't apply for throwing attacks
  580. hiding monsters who are unhidden when hero leaves a level can hide upon return
  581. touching a pile of objects while blind affects hero even when the pile is
  582. big enough to give "there are many objects here" and not list them
  583. explosion while engulfed only affects engulfer and hero, not adjacent monsters
  584. eliminate case-sensitivity when converting words from singular to plural and
  585. vice versa, so some failing wishes like "Gauntlets of Power" now work
  586. breath attack directed at self by poly'd hero always hits
  587. an orc (or gnome) will respond to #chat if hero is also an orc (or gnome)
  588. override non-silver vs shades for artifacts which deal extra damage to undead
  589. assorted mirror fixes--mainly visibility issues
  590. kicking at "empty space" has side-effects so should use current turn
  591. using weapon to kill tame engulfer from inside triggered "placing defunct
  592. monster onto map?" warning
  593. some monsters can't be strangled; self-polymorph can stop/restart strangulation
  594. nymphs could steal carried boulders
  595. amnesia of object discoveries would never forget the very last one
  596. re-adjust gem generation probabilities when revisiting existing dungeon levels
  597. kick evasion shouldn't move monsters through walls
  598. kick evasion and jousting/staggering blows shouldn't move grid bugs diagonally
  599. #untrap didn't check whether hero could reach the ground
  600. digging/chopping a closed drawbridge message mentioned digging a "wall"
  601. attacking via applied polearm now honors the "confirm" option
  602. engulfer under influence of conflict or confusion could swallow monster at
  603. water/lava/trap spot and not be affected by destination til next move
  604. unicorn horn restoration no longer overrides sustain ability characteristic
  605. hider monster revived from corpse would start out hidden (even if own corpse
  606. was only object around to hide under)
  607. fix sequencing issues with dropping #invoked Heart of Ahriman
  608. applying an unpaid stack of potions of oil forced hero to buy all of them
  609. instead of just the one which got split off and lit
  610. sometimes when hero is forced to buy an unpaid shop item its price changed
  611. monster could attack with a polearm even after attempt to wield that failed
  612. sometimes got "you trip over it" after intervening messages following the
  613. one which described "it"
  614. wizard mode: WIZKIT wishes could overflow inventory's 52 slots
  615. code controlling item drops by small monsters still used pre-3.1.0 weight
  616. monsters who want the Amulet won't attack the Wizard to try to get it
  617. when loading bones files, censor suspect characters from player-supplied
  618. strings such as pet and fruit names
  619. opening or closing the castle drawbridge via music consumes a turn
  620. can't swap places with tame grid bug when moving diagonally
  621. can't move diagonally through a long worm's body (can still fight that way)
  622. require confirmation to read a scroll of mail if doing so will be the first
  623. violation of illiteracy conduct
  624. could get "suddenly you cannot see the <mon>" while invisible mon remained
  625. displayed due to telepathy or extended detection
  626. cutting a long worm in half would trigger segfault/accvio crash if the hit
  627. took parent down to 1 hit point or if long worms had become extinct
  628. cutting a level 0 long worm in half produced a new worm with 0 hit points
  629. using F to force an attack towards a boulder gave "you attack thin air"
  630. random "treasure drop" upon monster's death bypassed dropping side-effects
  631. melted ice on Valkyrie quest should be pool, not moat
  632. some variations of attempting to use open or close commands on a drawbridge
  633. didn't give drawbridge-specific feedback
  634. tin contents can now sometimes be accessed on the same turn that the tin
  635. starts being opened; when not, the opening feedback is more accurate
  636. Nth adjustment of feedback when observing a pet eating
  637. monsters who want the Amulet won't attack temple priests to try to get it
  638. blinded invisible hero can't see self as invisible via ';' or '/'
  639. it was possible to generate an object of 0 gold pieces by dropping 2**32 gold
  640. wizard mode's sanity_check option missed nested containers and migrating mons
  641. always update map display and use up turn if open or close command attempted
  642. while blind reveals change in door state or discloses non-door spot
  643. a hangup save while picking up gold from shop floor could duplicate that gold
  644. secret door detection's trap finding is no longer blocked by water or clouds
  645. on the Planes of Water and Air
  646. potion thrown by monster which hit a long worm's tail gave feedback about
  647. hitting its head
  648. implement energy vortex's previously unused energy drain attack
  649. changing alignment type resets alignment record to 0 (nominally aligned)
  650. jellyfish do not technically have a head
  651. while polymorphed, suppress attribute gain/lose earned by pre-poly exercise
  652. wizard mode #monpolycontrol prompting asked about "it" when monster was unseen
  653. reprompt if player fails to make a menu choice during inventory identification
  654. potion explosion during failed alchemy should awaken nearby monsters
  655. seen eels who were stuck in isolated pools would never re-hide
  656. can no longer get both strength and resistance from eating one giant corpse
  657. aborting key/lock pick usage via ESC at direction prompt no longer uses a move
  658. lit south wall of C quest leader's room contained dark gap at secret door spot
  659. when probing from inside an engulfer, "not carrying anything" overlooked hero
  660. archeologist shouldn't start with sling skill by carrying slingable touchstone
  661. wearing or removing an amulet of restful sleep clobbered permanent sleepiness
  662. if attempt to select a co-aligned artifact for first divine gift fails because
  663. none is available, choose one from among nonaligned artifacts
  664. ensure current_fruit gets set to the correct index when setting fruit
  665. option to existing entry whose fid is not the highest
  666. monsters already wearing suits can't put on shirts
  667. if breaking a wand of polymorph causes hero to drop items, don't transform them
  668. give "shuddering vibrations" feedback if breaking a poly wand uses up items
  669. if polymorph causes a monster to drop items, they won't be used up via
  670. shuddering vibrations or as golem creation fodder
  671. monsters who ate green slime corpses weren't turned into green slime
  672. "hand slip" while naming an object would never pick 'z' as a substitute letter
  673. hero would "gladly take off <armor>" for nymph or succubus even while asleep
  674. concealed mimic wasn't revealed if kicking attempt yielded a clumsy miss
  675. too accurate feedback given to a blinded hero when a monster summons insects
  676. if life-saved steed became untame, repeated "placing steed onto map?" warnings
  677. would be given as long as the hero remained mounted
  678. message sequencing for fatal explosions was confusing if feedback was given
  679. for carried items being destroyed
  680. when dipping something in holy/unholy water, only learn its new bless/curse
  681. state if hero sees it glow
  682. describe lit Sunsword as shining rather than glowing
  683. prevent poly'd shopkeepers from taking on forms that can't handle objects
  684. attempting to move direction 'u' as a grid bug performed #untrap command;
  685. the other diagonals reported "unknown command" instead of "you can't"
  686. mimic posing as statue or corpse now picks and maintains particular monst type
  687. trying to move down while levitating said "you are floating high above floor"
  688. even when being stuck in floor or lava blocked full levitation
  689. when levitating, don't show '>' as a likely direction for digging
  690. poly'd or mimicking hero who was hidden from monsters would still be treated
  691. as a normal target for their ranged attacks
  692. hero would remain stuck to an adjacent monster after rehumanizing if he had
  693. been attacked while hiding via #monster when poly'd into a small mimic
  694. hero poly'd into mimic and hiding as an object via #monster didn't unhide
  695. when polymorphing into non-mimic
  696. attacking via applied polearm never scuffed engraving underneath hero
  697. auto-wielding a polearm took no time if ESC was used to cancel target choice
  698. applying a bullwhip while at very edge of map could target beyond edge,
  699. potentially leading to a panic or crash
  700. prevent temple priests and minions from wearing helms of opposite alignment
  701. 'D' drop command didn't handle 'u' choice correctly if the only unpaid items
  702. were inside containers
  703. pearl rings shouldn't rust
  704. shouldn't be able to read a worn T-shirt when it's covered by a worn suit
  705. simplify hero placement on Castle level when climbing up stairs from Valley
  706. spell attack by low-Int hero could inflict negative damage
  707. some wand/spell/breath zaps that hit a secret door failed to reveal it
  708. wand explosion feedback about adjacent door was phrased as if for a wand zap
  709. improve the message sequencing when a thrown poisoned weapon loses is poison
  710. message "You hit the with all your might." could be issued if a boulder
  711. went away while it was being dug/broken with a pick-axe
  712. prevent "object lost" panic if/when drinking a wielded potion of polymorph
  713. causes hero's new form to drop weapon
  714. documentation tidbit: change Guidebook and in-game help for pickup_burden
  715. option to match game's 'O' command ("Unencumbered", not "Unburdened")
  716. writing while blind no longer possible for books, might fail for scrolls
  717. blanking items in pools while blind shouldn't reveal new obj description
  718. for ones which had been seen before becoming blind
  719. avoid infinite loop in topten output when killed by long-named monster
  720. grid bug could move diagonally 1 step using travel command
  721. attempting to open, close, or lock/unlock a door while confused or stunned
  722. uses up a move regardless of whether direction choice finds a door
  723. grammar fixes for vault guard messages given after player assigns guard a name
  724. wearing cloak of displacement auto-discovered it even when hero couldn't see
  725. wearing elven cloak auto-discovered it even when already stealthy
  726. putting on ring of stealth never auto-discovered it
  727. forgetting spells due to amnesia now sets memory retention to zero instead
  728. of removing them from hero's list of known spells
  729. shouldn't have been able write scrolls by guessing type name when they're
  730. only partly known via name assignment
  731. scrolls given names can be written by assigned name as well as by description
  732. fix writing feedback "the spellbook warps strangely, then turns parchment"
  733. make stone artifacts usually resist stone-to-flesh
  734. when reading an unknown scroll and learning it, discovery of teleportation was
  735. too late if hero happened to land on another scroll of teleportation
  736. using an unlocking tool on a closed door which was actually a mimic reported
  737. that there was no door to unlock instead of exposing the mimic
  738. purple worm could end up in wall or solid rock when swallowing ghost or xorn
  739. unpaid shop items stolen from hero by a monster remained on hero's shop bill
  740. #untrap toward known trap location containing concealed mimic would yield
  741. "{The mimic|It} {is in the way|isn't trapped}." but not reveal mimic
  742. some actions taken when blind would yield "Wait! That's a monster!" (for a
  743. mimic posing as a door) but not display the unseen monster glyph
  744. enhance life-saving by preventing subsequent poison from being fatal upon
  745. rescue from death due to spiked pit, dart trap, or poisoned missile
  746. don't create mail daemons when populating special levels with random demons
  747. teleport control and polymorph control are ineffective while hero is stunned
  748. don't report "fried to a crisp" for disintegration from divine wrath
  749. when polymorphed into an opposite sex monster, if you then become a new
  750. human while failing to polymorph into something else, you'd be told
  751. "you feel like a new man" for female or "a new woman" for male
  752. spellcasting monsters' spell selection became less likely to choose harder
  753. spells as their level got higher (including Wizard's "double trouble")
  754. Eye of the Aethiopica, Eyes of the Overworld, and Sceptre of Might must be
  755. worn or wielded rather than just carried to convey magic resistance
  756. Mitre of Holiness and Tsurugi of Muramasa convey Protection when worn/wielded
  757. effectiveness of magic cancellation by worn armor has been reduced
  758. Protection improves the effectiveness of magic cancellation
  759. the weight of a non-cursed bag of holding was sometimes off by 1 unit
  760. for number_pad:2 (MSDOS compatibility), M-5 (Alt+5, or Shift+keypad5 using
  761. MSDOS/Windows keystroke hackery) didn't function as G movement prefix
  762. if an angry shopkeeper chased the hero to a different level and then got paid
  763. off, he'd dismiss kops on that other level but not on his shop level
  764. objects inside the Wizard's Tower can't be teleport to outside and vice versa
  765. dying in lava and being life-saved or leaving bones would destroy ring of
  766. fire resistance if it happened to be made of wood, and also burn up
  767. scrolls of fire and spellbook of fireball
  768. surviving in lava boils away carried potions, but dying in lava and being
  769. life-saved or leaving bones would keep them intact
  770. when applicable, give "your body rises from the dead as an <undead>..."
  771. even when bones data isn't being saved
  772. unlit candelabrum would become unlightable if its candles had exactly 1 turn
  773. of fuel left and it was applied anywhere other than the invocation spot
  774. have shk claim ownership of worn saddle dropped by dying pet if hero is
  775. not within the same shop at the time of the drop
  776. temporary loss of Dex from wounded legs will become permanent if it occurs
  777. while mounted and hero dismounts before steed's legs have healed
  778. for poly'd hero hiding on ceiling who gets attacked, make attacker's position
  779. be an eligible location for hero when vacating hero's spot for attacker
  780. to prevent ending up far away under crowded conditions
  781. for poly'd hero hiding on ceiling, attack by sea monsters won't move them
  782. into hero's position unless it is over water or they're already on land
  783. for poly'd hero hiding on ceiling, attack by long worm might fill hero's
  784. destination with worm's tail, so double check and maybe choose again
  785. poly'd hero can't hide on floor or ceiling when on Planes of Air or Water
  786. when shop prices are adjusted, handle roundoff (integer truncation) better
  787. for hero poly'd into a monster form that lacks a weapon attack but has a claw
  788. attack, use wielded weapon even when claw attack isn't the very first
  789. rename the SLEEPING property and Sleeping attribute to SLEEPY and Sleepy, resp.
  790. character escape sequence handling during options processing was vulnerable
  791. to malformed escapes and could potentially be abused to clobber the
  792. stack and launch a buffer overrun attack
  793. give alternate message for "<mon> turns to flee" when mon can't move
  794. all statues in a cockatrice nest were for giant ant if 'record' was empty
  795. when dying outside all shops on a level with multiple shopkeepers and one takes
  796. hero's stuff, choose one who is owed money over first one on fmon list
  797. hero poly'd into a critter without hands could still open tins
  798. if a vault guard was killed, his inventory would be dropped at <0,0>
  799. throwing gold to/at a vault guard will no longer be treated as an attack
  800. non-pit traps created in vault guard's temporary corridor would remain after
  801. the location reverted to solid rock
  802. using magic to light vault guard's temporary corridor would produce lit solid
  803. rock after reversion, and then yield lit corridor if dug out again
  804. if hero was blind, killing the vault guard while in his temporary corridor
  805. would leave hero encased in solid rock without informing player
  806. if hero dragged iron ball into temporary corridor and then killed vault guard,
  807. the portion of corridor currently in existence would become permanent
  808. on Plane of Water, restrict levitation and flying to air bubbles;
  809. elsewhere, restrict them such that they don't work inside solid rock
  810. wand/scroll/spell of light now hurts gremlins (lamp/candle light doesn't)
  811. ditto for hero in gremlin form (camera too)
  812. autosearch finds and transforms secret doors and corridors even while blind,
  813. but it wasn't updating the map to show them unless the hero could see
  814. fix message typo, "you sold some items inside <container> for N gold piecess"
  815. hangup save made during magic mapping or <foo> detection performed while
  816. underwater could put hero on top of the water after restore
  817. fix bug preventing stone-resistant monster w/o gloves from wielding cockatrice
  818. items conferring life drain resistance were affected by drain life spell
  819. 'a'pply command could be used to recognize undiscovered potions of oil
  820. fix replacing an existing bones file in wizard mode [load?y, unlink?n, die?y,
  821. save?y, replace?y] for configurations using external file compression
  822. theft of worn armor with wear/unwear delay would interfere with completion of
  823. wearing or unwearing some other armor which also imposed a delay
  824. (disrupted wear attempt for +N helm of brilliance would result in loss
  825. of N points of Int and Wis; gauntlets of dexterity had similar problem)
  826. #sit while swallowed would give the wrong message
  827. alchemical explosion or evaporation only used up one potion instead of all
  828. the potions being dipped
  829. feedback for reverse-genocide was plural even when just one monster was created
  830. fix message given when part of a stack of items in a monster's inventory is
  831. being destroyed
  832. add "Boing!" message when hero zaps resistant monster with striking/force bolt
  833. adjust gaze reflection message when your scales are embedded in your skin
  834. adjust turning-to-stone or -slime messages when you have no limbs
  835. wizard mode ^F on Plane of Water marked portal as seen but didn't display it
  836. magic mapping now displays furniture in preference to known or remembered traps
  837. or objects and known traps in preference to remembered objects
  838. restrictions on diagonal movement were ignored when crawling out of water
  839. when using magic whistle, prevent steed from being affected (trap interaction)
  840. declining to attack a peaceful monster via movement used up nutrition even
  841. though no action took place
  842. declining to attack a peaceful monster via kicking woke nearby monsters and
  843. scuffed engraving at hero's location even though no action took place
  844. make hero be immune from stinking cloud damage during successful prayer
  845. very fast hero would sometimes take two consecutive moves with very fast
  846. monsters then getting two moves, instead of interleaving the activity
  847. when a monster zapped by polymorph drops inventory because of its new form,
  848. don't let that same zap hit the dropped item(s)
  849. entering an untended shop while blind gave an inappropriate message
  850. engraving feedback about partial text when weapon became too dull to finish
  851. was lacking sentence-ending period
  852. impossible() might display inaccurate feedback after updating paniclog
  853. fix crash which occurred if hero was teleported onto a sink while busy putting
  854. on or taking off levitation boots
  855. fix "object lost" panic (or even crash) when dropping multiple items while
  856. levitating and a lit potion of oil explodes and destroys some inventory
  857. fix "object_is_local" panic when saving bones after hero is killed by explosion
  858. produced by dropped or thrown lit potion of oil
  859. gold dropped on altar by hero wouldn't stack with gold dropped there by monster
  860. if lava burns up the player's water walking boots, the player falls in
  861. the messages for lava burning items up are always printed
  862. fix used-up magic trap trying to hit steed.
  863. messages are now printed when objects on the ground are eroded
  864. object erosion now always identifies fooproof objects
  865. grease protects from all types of erosion
  866. all sources of erosion now affect objects the same way
  867. passive attacks no longer erode armor covered by other armor
  868. dipping a fooproof item into acid no longer forgets that it's fooproof
  869. dipping a container into uncursed water now gets its contents wet
  870. sanitize petnames and fruit to prevent escape codes
  871. data.base "bat" overrode later "combat" entry
  872. data.base "gelatinous cube" and "jack boot" have their own entries
  873. data.base "vampire bat" matched twice; use the bat entry
  874. data.base dagger attribution started with spaces instead of tabs
  875. remove 'if (Deaf)' guards preceding You_hear which already checks deafness
  876. use a menu to loot multiple containers
  877. do_look() in post-3.4.3 used glyph prior to setting it in pager.c
  878. charge for a boulder that fills a pit in shop
  879. abuse wisdom in keeping with Rider eating message
  880. message inconsistency: death message "swallowed <mon> whole" was preceded
  881. by "You bite into"
  882. improve the messaging when a monster you can't see is causing an obstruction
  883. add option mention_walls, which gives feedback when bumping against a wall
  884. fix invalid pointer dereference in morguemon if ndemon returns NON_PM
  885. after object loss through polyshudder don't get left hiding under nothing
  886. if you're polymorphed into a hider
  887. show object symbols in menu headings in menus where those object symbols
  888. act as menu accelerators, toggleable via "menu_objsyms" option
  889. show t-shirt text at end of game inventory disclose
  890. hitting with a polearm remembers the position of the last monster you hit
  891. add messages for trying to pick up some terrain features
  892. boomerang makes noise when hitting a sink
  893. non-pet rust monsters would eat rust-proofed non-digestibles but ignore
  894. those non-digestibles otherwise
  895. kicking a grave may topple the gravestone
  896. allow showing legal positions for stinking cloud, jumping and polearms
  897. when asked for a location
  898. cloned creatures (of any type) don't deathdrop items
  899. pudding corpses behave somewhat differently than before
  900. mithril armor should have silver color
  901. lichen corpse is an acid indicator
  902. camera may contain a picture-painting demon
  903. some monsters can eat through iron bars
  904. inaccessible niches occasionally have iron bars in front
  905. sinks may teleport or polymorph
  906. shopkeepers give honorifics to vampires and elves
  907. when commands (D, A, object identify) mix object class filtering with BUCX
  908. filtering, take the intersection rather than the union (so ?B picks
  909. blessed scrolls rather than all scrolls plus blessed everything)
  910. bmask is stored with the objects on the Plane of Water to prevent segfault
  911. engraving on drawbridge with wand of digging should produce appropriate
  912. message instead of referring to gravel
  913. engraving Elbereth is less efficient as protection
  914. scare monster scroll now provides a better effect
  915. monsters without hands can no longer pick up piles of objects (with
  916. certain exceptions)
  917. uncursed enchant weapon now correctly fixes erosion
  918. scroll of earth messages cleaned up
  919. long worms can no longer be leashed
  920. the chest in the Castle containing the wishing wand can never be trapped
  921. the vibrating square is now a trap
  922. mimics wouldn't take on the form of "strange object"
  923. add an option to prevent omitting the uncursed status from inventory
  924. show prices when walking over the shop merchandise
  925. you shouldn't see Sting glow light blue if you're blind
  926. when jumping, bumping into something is noisy
  927. flesh golems hit by electricity healed by wrong amount
  928. fleeing monsters couldn't use stairs that lead to different dungeon branch
  929. casting spell of protection when previous casting(s) hadn't time out yet
  930. miscalculated the new AC increment
  931. remaining monsters continued to move after hero conceptually left the level
  932. when a monster knocked him onto a level-changing trap (this bug made
  933. it be feasible--but not practical--to level teleport with the Amulet)
  934. #turn for non-priest/non-knight attempts to cast "turn undead" spell, but
  935. was forcing the spell to target self rather than choose a direction
  936. potions of gain energy are more useful for recovering hero's spell energy
  937. spellcasting attempt of any spell while stunned now always fails
  938. spellcasting attempt of expired spell while confused will increase confusion
  939. duration rather than replace it
  940. add ways to get out of inaccessible niches in one of the minetown layouts
  941.  
  942.  
  943. Platform- and/or Interface-Specific Fixes
  944. -----------------------------------------
  945. FreeBSD: compilation problems on FreeBSD 6.1
  946. linux: compile support for TIOCGWINSZ by default
  947. smartphone: do not translate input when command helper is hidden (fixes
  948. Motorola Q keyboard bug)
  949. smartphone: new keypad layouts
  950. smartphone: wizard mode command layout
  951. smartphone: option to feed arbitrary text as a command to nethack core
  952. tty: when loading user's run-time configuration, explicitly negating one of
  953. {DEC,IBM,MAC}graphics options after enabling another of them switched
  954. to regular ASCII and left the earlier option inaccurately set to "on"
  955. tty: various bugfixes for very wide and/or tall screens
  956. tty+GOLDOBJ: dropping or looting by menu wouldn't honor a count for gold
  957. tty: fix crashing when a location has more than 32k items
  958. tty: fix segfault when MD termcap is not defined
  959. tty: do not cut off statuslines at 80 characters for wider term
  960. tty: prevent accidental escapes from string entries
  961. tty: hilight object piles
  962. unix: remove use of parentheses in nethack man page usage that confused a
  963. man page conversion tool
  964. unix: new -wwindowtype option
  965. unix: don't clobber old level files if 2nd hangup/disconnect occurs while
  966. reconnected user is responding to the "destroy old game?" prompt
  967. unix/Qt: saved games were not found if nethack was built with prefixes in use
  968. unix,vms: allow digits after first character in name at "Who are you?" prompt
  969. unix: implement fcntl(2) locking on systems that can handle it
  970. vms: the DLB configuration could fail to build if a file without a dot
  971. in its name happened to match a logical name
  972. Windows: starting a game with nethack.exe (tty) and saving, then restoring
  973. and finishing with nethackW.exe (win32) would display the high scores
  974. output in a series of popup windows, one for each line of text
  975. Windows, probably MSDOS and OS/2: attempting to use very first false rumor
  976. for cookie fortune or random engraving could produce garbled text
  977. when rumors.tru had CR+LF line ends instead of Unix-style LF lines
  978. #if CLIPPING: during teleport or hurtle, re-clip the map immediately instead
  979. of waiting until hero's next move
  980. winCE: disable processing of double-click messages if the first click
  981. causes map to scroll
  982. winCE: help text windows close immediately after open (unhandled WM_KEYDOWN
  983. in mhtext.c)
  984. winCE: correct coordinates used by action button
  985. winCE: wrap/unwrap text option for text windows
  986. winCE: hardware keyboard detection
  987. winCE: hide keypad when hardware keyboard is present
  988. winCE: backport message window highlighting from winnt port
  989. winCE: new icon with recommended image sizes
  990. pocketpc: menu window closes on up/down keys from first/last position
  991. win32gui: better handling of "more" prompt for messages that would have
  992. scrolled off the window
  993. win32gui: set correct checkmark on "Lock Windows" menu item on startup
  994. win32gui: redraw message window on resizing (it does not update properly otherwise)
  995. win32gui: fixed copy/paste error in read registry settings function
  996. win32gui: improved calculation of the size of the menu window
  997. win32gui: made auto-arrange windows on/off option (it was reset automatically
  998. which was unintuitive and in some cases annoying
  999. win32gui: fix a possible crash with AltGr-4 WM_KEYDOWN handling
  1000. win32gui: use whatever alternate tile set is loaded in the menus
  1001. win32tty: prevent early error messages from flashing by too fast and not seen
  1002. win32tty: work around problem where display symbols were wrong or
  1003. unrecognizable on systems where the default language for non-Unicode
  1004. programs was not set to "US English" - courtesy Ray Chason
  1005. win32tty: work around problem where some characters did not show up if the
  1006. console code page was other than 437
  1007. X11: support dynamic switching of map mode via tiled_map option
  1008. X11: added support for hilite_pet to text map mode
  1009. X11: ensure vertical scrollbar shows up in text display windows
  1010. X11: fix typo in mouse click sanity check; result might have pointed to
  1011. spurious location after window resizing
  1012. X11: use a plus sign to mark piles of objects
  1013. platforms that support hangup: SAFERHANGUP to avoid losing objects in transit
  1014. between lists when hangup occurs, and also avoid cheats due to
  1015. well-timed hangups to stop a long melee
  1016. build-from-source: dlb utility can handle arbitrary number of files
  1017.  
  1018.  
  1019. General New Features
  1020. --------------------
  1021. when you're teetering on the edge of a pit you can use '>' to enter the pit
  1022. when you're flying over a pit you can use '>' to enter the pit
  1023. when asked for a direction, a response of '?' yields help and then asks again
  1024. when adding an item to inventory, try to stack it with the quiver slot
  1025. before trying against other carried objects
  1026. #adjust can be used to split an inventory stack
  1027. cockatrice meat has a distinct flavor to some
  1028. wish request for "<something> armor" will match item named "<something> mail"
  1029. Fire Brand and Frost Brand have a chance to avoid taking rust damage
  1030. support ^R (and ^L in numpad mode) to request display repaint during direction
  1031. choosing and location choosing prompting modes
  1032. intelligent pets will use keys to unlock doors
  1033. destroyed drawbridge leaves some iron chains
  1034. give feedback when a nearby monster grows into a stronger form
  1035. familiars are now created without any starting inventory
  1036. using the 'f' command when quiver is empty will fill quiver with player's
  1037. response to the "what to throw?" prompt
  1038. breaking a wand with the apply command has a chance to wrest an extra charge
  1039. burying a punishment ball no longer ends your punishment
  1040. #tip command (with M-T shortcut) to empty a container's contents onto floor
  1041. add clicklook option to allow looking at things on the display by clicking
  1042. right mouse button when floating mouse pointer over them
  1043. Izchak's lighting store is now able to stock oil for your lamp
  1044. provide core support for saving of message history in save file
  1045. the following actions can now be continued after save/restore: digging,
  1046. eating, studying, removing armor
  1047. hero-created and monster-created ice will eventually melt away
  1048. extend Warning to include ice danger
  1049. wishing for particular variety of tin contents (deep fried, broiled, etc.)
  1050. debug-mode wishing for random monster(s) via '*'
  1051. debug-mode viewing of fully identified object descriptions without
  1052. actually identifying the objects
  1053. health-food store that stocks monk-appropriate foods in mine town when monk
  1054. give more information about your attributes in debug mode
  1055. polywarn to give intrinsic monster detection of limited species while poly'd
  1056. rocks can skip on water sometimes allowing them to pass over water creatures
  1057. vampires can now shapeshift into bats and fog clouds; the latter can be done
  1058. at will to slip through locked doors
  1059. shapeshifted vampire will transform back to vampire form after you defeat it
  1060. and continue to fight in its native form
  1061. container lknown flag for locked/unlocked/broken awareness
  1062. container cknown flag for container content awareness
  1063. plname is stored in the save file on all platforms now
  1064. introduce support for negation of role, race, align, gender values to eliminate
  1065. them from random selection and the pick list of startup choices
  1066. some intelligent pets will avoid cannibalism
  1067. keep track of which monsters were cloned from other monsters
  1068. cloned and revived monsters become worth fewer points than ordinary ones
  1069. number_pad:3 run-time option to use inverted phone keypad layout for movement
  1070. number_pad:-1 to swap function of y and z keys; z to move NW, y to zap wands
  1071. display spell retention information in the spell menu
  1072. tame ghouls can eat old eggs
  1073. new effect for reading a scroll of light while confused
  1074. allow digging an adjacent pit with wand of digging while trapped in a pit
  1075. #terrain command to show unobstructed view of map (w/o mons, objs, traps)
  1076. digging can activate or disarm some types of traps
  1077. some monsters can eat tins in addition to corpses to cure some ailments
  1078. add ability to sort the list when viewing known spells with '+' command
  1079. describe magic cancellation from worn armor in enlightment/end-of-game feedback
  1080. disclose half physical and/or spell damage in enlightment/end-of-game feedback
  1081. rephrase see invisibility enlightenment feedback when unable to see at all
  1082. add atmospheric sound messages for temples
  1083. sometimes give announcement message when monsters teleport to hero's vicinity
  1084. obsolete config file keywords: GRAPHICS, OBJECTS, TRAPS, EFFECTS
  1085. deprecated options: IBMGraphics, DECGraphics, boulder
  1086. new options: symset, roguesymset for choosing a symbol set from symbols file
  1087. new config file keyword: SYMBOLS for overriding character symbol values by name
  1088. opening magic frees from bear traps and webs, activates trap doors
  1089. closing magic activates bear traps and webs
  1090. locking converts a hole into a trap door; striking does the opposite
  1091. lembas and cram never rot unless cursed
  1092. multiple squeaks for squeaky boards
  1093. include time, user ID, and play mode in paniclog entries
  1094. add oracle and rumor regarding priestly donations
  1095. anti-magic traps have alternate effect on targets who have magic resistance
  1096. the Amulet can be offered to Moloch
  1097. javelins and spears now share the same weapon skill
  1098. all stackable weapons are capable of being thrown/shot for multi-shot volleys
  1099. worm teeth and crysknives have become stackable
  1100. improved container interface
  1101. acid can destroy iron bars
  1102. OPTIONS=playmode:normal|explore|debug to choose mode without command-line
  1103. score bonus for ascending is reduced or denied for changing alignment
  1104. player can give a monster class when asked for type of monster to poly into
  1105. likewise when asked about type for #monpolycontrol
  1106. both controlled self-polymorph and #monpolycontrol accept ESC, "*" or "random"
  1107. when asking for type of monster; ESC aborts #polyself command
  1108. scroll of taming/spell of charm monster now gives some feedback
  1109. doppelgangers can take on the shape of alternate roles' quest guardians
  1110. pile_limit option to control when to switch to "there are objects here"
  1111. vs listing objects on floor when hero goes over objects while moving
  1112. some monsters will use fire to prevent selves being turned into green slime
  1113. add `#vanquished' debug mode command
  1114. C and #name commands are now same and use menu to choose monster vs object
  1115. hallucination provides partial protection against gaze attacks
  1116. attempting to read "dull" spellbook might cause hero to fall asleep
  1117. dipping prompt is more precise
  1118. using F to attack wall/boulder/statue while wielding pick digs/breaks target
  1119. shapechangers shouldn't receive starting inventory of their initial shape
  1120. streamline old ^X output and integrate it with enlightenment feedback;
  1121. new ^X output includes expanded form of abbreviated bottom line info
  1122. "killed by X" becomes "killed by a chameleon imitating X" when appropriate
  1123. eating disenchanter corpses is now considered risky
  1124. make '[' command more precise when poly'd hero has embedded dragon scales/mail
  1125. fainting while wielding a cockatrice corpse will be fatal
  1126. Sunsword's light radius depends on its curse/bless state
  1127. Add M-C and M-R meta-key shortcuts for #conduct and #ride, respectively
  1128. can now use ESC to cancel out of prompts for playing musical instruments
  1129. being crowned gives an additional benefit: one extra skill slot/credit
  1130. chatting to a gecko or shopkeeper while hallucinating gives alternate message
  1131. mimic posing as door might steal hero's key when [un]locking is attempted
  1132. polymorphing into a dragon while wearing dragon scale mail will cause that
  1133. mail to revert to dragon scales
  1134. flexibility for specifying "detect <foo>" vs "<foo> detection" when wishing
  1135. when a sokoban puzzle has been completed (last pit or hole filled in),
  1136. stop assessing luck penalties and lift most movement restrictions
  1137. '`' command to show discoveries for one class of objects
  1138. add "about nethack" to '?' menu as an alternate way to view 'v'+'#version'
  1139. display version and build information at startup
  1140. repeatedly setting the fruit option will check to see if fruits have been
  1141. created, so the user can't easily overflow the maximum this way
  1142. bones files now include extra data to identify dead hero and reason for death
  1143. dipping multiple potions in another potion may only dip part of their stack
  1144. make being inside a stinking cloud (when not immune or resistant) become a
  1145. major trouble which is fixable by prayer
  1146. introduce some variation in monster movement rates
  1147. add database entry for shuriken and make it match throwing star
  1148. add database entries for fedora, land mine, cream pie, bullwhip, blue jelly,
  1149. and boomerang
  1150. change command X to twoweapon toggle
  1151. pressing @ when cursor positioning moves cursor on top of hero
  1152. pressing # when cursor positioning toggles automatic description of features
  1153. under the cursor
  1154. cursor positioning ignores uninteresting dungeon features
  1155. allow reading many more items
  1156. when you're hiding under something a zap downward should not hit that
  1157. something, while a zap upward should
  1158. show more explicit reason why player was helpless at death
  1159. added new hallucinatory-only gods
  1160. options to create the character blind or nudist
  1161. moving clouds on the plane of air
  1162. disclose extinct species alongside genocided ones
  1163. a tribute to Terry Pratchett
  1164. some levels in Gehennom now use the old corridor-style maze instead of the
  1165. new room-style. Beelzebub's level always does this and the
  1166. "beetle legs" are restored.
  1167. gnomes will occasionally have a candle
  1168. stop travel or run when you get hungry
  1169. 'I' command can accept 'B','U','C',or 'X' as an alternative to normal object
  1170. class character to show inventory of items known to be blessed,&c
  1171. debug-mode viewing of object weight
  1172. prizes on various levels now protected by ?oSM scrolls as well as Elbereth
  1173. regexes now use system libraries consistently for all pattern-matching systems
  1174. wet towels deal more damage
  1175.  
  1176.  
  1177. Platform- and/or Interface-Specific New Features
  1178. ------------------------------------------------
  1179. pcmain: check for dlb_init failure rather than relying on dungeon open failure
  1180. win32gui: support perm_invent
  1181. win32gui: menu option to add/remove windows captions
  1182. win32gui: support for saving/restoring message history
  1183. win32gui: added menu options "Copy ASCII Screenshot To Clipboard" and "Save
  1184. ASCII Screenshot To File"
  1185. win32gui, win32tty: add support for looking for sysconf in %COMMONPROGRAMFILES%
  1186. first and for user config file in %USERPROFILE% (improves support for
  1187. multi-login Windows environments)
  1188. win32tty: support for 'selectsaved' option for menu of existing save files
  1189. to choose from at game startup
  1190. tty: add window port routines for saving/restoring message history
  1191. tty: enhanced role, race, &c selection at start of new game
  1192. tty: implement : (menu_search) command
  1193. smartphone: added "Type Cmd" command that allows to type arbitrary commands
  1194. using phone keypad
  1195. smartphone: added Q(quiver) command to "Attack" layout
  1196. smartphone: fixed F command to prompt for direction
  1197. unix,vms: altmeta option to handle terminals which send "ESC c" for Alt+c
  1198. tty,win32gui,win32tty: add menucolors
  1199. MSVC: send debugpline output to 'debug' window to declutter game screen
  1200.  
  1201.  
  1202. NetHack Community Patches (or Variation) Included
  1203. -------------------------------------------------
  1204. Roderick Schertler's pickup_thrown patch
  1205. adopt/adapt/extend Malcolm Ryan's Statue Glyphs patch to work for tty and tiles
  1206. adopt/adapt/improve the Paranoid_Quit patch; default is paranoid_confirm:pray
  1207. paranoid_confirm:Confirm when requiring "yes" instead of y to confirm,
  1208. also require explicit "no" to reject
  1209. paranoid_confirm:quit yes vs y to quit or to enter explore mode
  1210. paranoid_confirm:die yes vs y to die in explore or wizard mode
  1211. paranoid_confirm:bones yes vs y to save bones when dying in wizard mode
  1212. paranoid_confirm:attack yes vs y to attack a peaceful monster
  1213. paranoid_confirm:pray y to confirm #pray; supersedes prayconfirm
  1214. paranoid_confirm:Remove always pick from inventory for 'R' and 'T'
  1215. adopt/adapt/improve Dungeon Overview
  1216. Aardvark Joe's Extended Logfile
  1217. Michael Deutschmann's use_darkgray
  1218. Clive Crous' dark_room
  1219. sortloot by Jeroen Demeyer and Jukka Lahtinen
  1220. Auto open doors by Stefano Busti
  1221.  
  1222.  
  1223. Code Cleanup and Reorganization
  1224. -------------------------------
  1225. removed OVLx section dividers previously used for TRAMPOLINE overlay system
  1226. move all flags that are system or port specific from flag struct to sysflags
  1227. struct which is used only if SYSFLAGS is defined
  1228. all fields in flags struct are unconditionally present
  1229. monst cham field now a short and uses mons[] index
  1230. rearrange some monster ordering to follow rule #2 listed at top of monst.c
  1231. change region player_flags to more appropriate unsigned int instead of boolean
  1232. remove remains of sync_hunger, which has been ifdef'd out for years
  1233. new mextra structure housing pointers to mname, egd, epri, eshk, emin, edog
  1234. consolidate vault.h, epri.h, eshk.h, emin.h and edog.h into new mextra.h
  1235. new oextra structure housing pointers to oname, omonst, omid, olong, and omailcmd
  1236. drawing symbols for DECGraphics, IBMGraphics, MACgraphics are now stored in an
  1237. external symbol file that can be changed without rebuilding
  1238. new hints-based configuration system
  1239. allow documentation to be specialized to the options in the game binary
  1240. add param to winsys ini routines to allow cleaner shifting during startup
  1241. make STEED, EXP_ON_BOTL, REDO, AUTOPICKUP_EXCEPTIONS, GOLDOBJ, WIZARD, SINKS,
  1242. REINCARNATION, TOURIST, KOPS and ELBERETH unconditional
  1243. make SEDUCE compile-time unconditional but still removable through SYSCF
  1244. clean up some DEBUG conditional code
  1245. allow defining of generic usernames in config.h instead of hard-coding in role.c
  1246. set indentation to 4 spaces in most source files
Add Comment
Please, Sign In to add comment