Attempting to read a cursed spellbook fails with a nasty effect. But a non-cursed book can become cursed while being read (malignant aura after Wizard has been killed). Assuming no interruption for other reasons, the read would finish, the spell be learned, and then the nasty effect would be given. This changes things so that if the book being read becomes cursed and the hero notices (book's bknown flag is set), the read-in-progress will be interrupted. Resuming will take the attempting-to-read-a-cursed-book path. Unfortunately, if the hero doesn't notice, the old behavior still applies. Maybe the new behavior should happen even if bknown isn't set (but then player won't be told why the interruption occurred).
218 lines
12 KiB
Groff
218 lines
12 KiB
Groff
$NHDT-Branch$:$NHDT-Revision$ $NHDT-Date$
|
|
|
|
General Fixes and Modified Features
|
|
-----------------------------------
|
|
doc/*.6 man pages and corresponding doc/*.txt text copies were out of date
|
|
data.base entry for "lava" had wrong first name for Don Woods' attribution
|
|
cursed genocide of "none" sent in monsters, but "that's enough tries" didn't
|
|
update MAXPLAYERS documentation in sysconf file and accept 0 for 'no limit'
|
|
wizard mode: don't include feedback about named fruit for ^X and enlightenment
|
|
looking at distant objects while wearing the Eyes of the Overworld made their
|
|
up-close descriptions known when not intended
|
|
message when cursed wand zapped by a monster happens to explode was suppressed
|
|
if hero was deaf, even though that message has no audible component
|
|
support explicit 'symset:default' and 'symset:Default symbols' in options
|
|
crash during startup if player name set as 'player' in defaults
|
|
crash during startup if defaults file has a long line
|
|
any existing vampire shape-shifted into critter (fog cloud, bat, wolf) became
|
|
an unkillable critter if vampires were genocided
|
|
unlike in previous versions, an uncursed scroll of enchant armor failed to
|
|
uncurse the piece of armor being enchanted (change was unintentional)
|
|
slice of {pizza,cake,&} pluralized as "slouse of ..." due to false match
|
|
with "lice" (discovered pre-3.6.0-release)
|
|
change dipping prompt to not ignore 'called' and 'named' attributes of item
|
|
to be dipped
|
|
avoid 'the unlabeled {scroll,spellbook} fades' when blank item is hit by water
|
|
wrong message given when high priest on astral plane rejects being assigned a
|
|
name (got the one for unique monsters instead of the one for priests)
|
|
negative intrinsic protection shouldn't confer MC=1, "you are warded" (not
|
|
possible from divine protection but is possible from eating rings)
|
|
make a slight adjustment to the quickmimic() sense wording
|
|
fix typo in passage 1 of The Colour of Magic
|
|
falling asleep when reading dull spellbook ignored sleep resistance
|
|
getpos() complaint about invalid movement keystroke didn't describe meta-chars
|
|
accurately
|
|
'realtime' value in xlogfile was incorrect if 'checkpoint' option was active
|
|
make a previously-discovered scroll written with marker while blind have its
|
|
label known so it can be read while blind
|
|
#name or C for discoveries list that spanned multiple pages would exit on
|
|
space instead of advancing to next page (workaround: use '>' instead)
|
|
don't show the old level when you die going down the stairs because of an
|
|
iron ball
|
|
new high score with ", while helpless" attribute appended would erroneously
|
|
result in ", while helpless" being appended to all scores
|
|
allow bright aliases for colors in menucolors
|
|
avoid hearing yelps when you are deaf
|
|
make corpse visible if stethoscope told you about it being there
|
|
sceptre of might database entry word change
|
|
avoid "spellbook of novel" on discoveries list after object ID of novel
|
|
add novel to discoveries list after reading one
|
|
putting gold into hero-owned container on shop floor gave free credit
|
|
stack splitting for dipping large quantities of potions was done poorly
|
|
dipping fruit juice into enlightenment gave different result than the inverse
|
|
make travel walk up to a trap and stop when the trap blocks the only
|
|
way forward, instead of trying to go straight line
|
|
travel will displace pets rather than stop
|
|
do not autopickup unpaid items in shops
|
|
death due an unseen gas spore's explosion resulted in "killed by a died"
|
|
allow optional parameter "true", "yes", "false", or "no" for boolean options
|
|
actually make the castle chest not trapped
|
|
level-drain resistance wasn't shown during enlightenment if it was conferred
|
|
by worn/wielded equipment or by lycanthropy
|
|
wizard mode enlightenment now shows more reasons for various intrinsics
|
|
rehumanizing after being poly'd into vampire left hero with ability to sense
|
|
humans and elves
|
|
Warn_of_mon wouldn't have been able to sense giant ants if any creature were
|
|
to have that ability, caused by using 0 instead of NON_PM for 'none'
|
|
tone down energy vortex's drain energy attack
|
|
fix message typo if tame mind flayer dies trying to eat Medusa's brains
|
|
use alternate rejection message if attempting to name an unnameable monster
|
|
with the name it already has
|
|
cockatrice corpse no longer leaves multiple statues for shape-shifted vampire
|
|
alter name of monster causing hero's death if name contains characters that
|
|
could cause confusion when using record, logfile, or xlogfile later
|
|
teleporting or polymorphing a sink via ring drop shouldn't depend upon being
|
|
able to see it happen
|
|
change "unlockable chest" to "broken chest" so that it won't be misunderstood
|
|
("capable of being unlocked" vs intended "not capable of being locked")
|
|
use doname instead of xname when using '/' or ';' to look at objects on map
|
|
when a pet moves reluctantly, name the top item of the pile it is reluctant
|
|
to step on if the hero sees or remembers any object(s) at that spot
|
|
ensure sufficient messages are given to clarify the transition from detected
|
|
vampire bats to fog clouds in Vlad's tower
|
|
fix "killing by kicking something weird" when kicking an object causes death
|
|
guard macros available for mextra fields similar to those for oextra fields
|
|
compile-time option for an alternate paniclog format for public server use
|
|
make monsters forget where they stepped when fleeing or teleporting
|
|
requiver pickup_thrown objects if quiver is empty
|
|
make mimics mimicing walls or trees also block light
|
|
stepping onto lava destroyed non-fireproof water walking boots but left other
|
|
vulnerable boot types intact
|
|
damage and death reasons when eating globs referred to them as corpses
|
|
fix death reason when petrified (avoid redundant 'while getting stoned')
|
|
use appropriate place name for drum of earthquake shakes
|
|
fix unmapped branch stairs on sokoban level
|
|
redraw map when hilite_pile is toggled to display the highlighting
|
|
make commands that accept a count prefix for item selection
|
|
show "Count:" like command repeating does
|
|
make vault guard accept names starting with number
|
|
fix weight of containers in special levels
|
|
make the raven medusa level shortsighted
|
|
fix possible segfault in lev_comp when map was too tall
|
|
fix "the ice is bridged with ice" when freezing castle's moat or Medusa's sea
|
|
make monsters and pets avoid poison gas clouds if it would damage them
|
|
covetous monsters may choose to teleport to downstairs or ladders
|
|
doppelganger posing as Rider would never change shape
|
|
since doppelganger posing as Rider could never revert to innate form,
|
|
protection from shape changers turned it into genuine Rider
|
|
don't create globs of ooze/slime/pudding with bknown flag set so pre-known to
|
|
be "uncursed"
|
|
do allow globs with same curse/bless state to merge even when that state is
|
|
known for one and unknown for the other; result will have bknown clear
|
|
make glob merging on floor behave the same as glob merging in inventory
|
|
track age of merged globs
|
|
support globs for edibility temporary intrinsic
|
|
restore ability to gain intrinsics from black puddings (pass globs to cpostfx)
|
|
eating tainted black pudding (glob in 3.6.0, corpse in 3.4.x and 3.3.x)
|
|
referred to it as "meat" (because it's not vegetarian food)
|
|
fix pile mark after killing a monster carrying a potion which is destroyed
|
|
don't list suit as likely candidate for Take-off if cloak blocks it
|
|
only list known blank scrolls and known blank spellbooks as likely candidates
|
|
when choosing an item to write on for applied magic marker
|
|
make status hilites use same color names as menucolors
|
|
limit monster spell aggravate monsters to either outside or inside of the
|
|
Wizard's tower
|
|
prevent revived unique from inheriting a user-defined name
|
|
make hurtling out of water bubble on the Plane of Water handle entering water
|
|
fix floor descriptions on the Planes when levitating
|
|
fix warning glyph description when monster symbol coincided the warning symbol
|
|
allow the same color names for status hilites and menucolors
|
|
override MSGTYPE=norep while executing the ':' command
|
|
if a chameleon took vampire form, it would stop periodically changing shape
|
|
corpses obtained from tipping an ice box wouldn't rot away
|
|
suppress "you climb up the stairs" message if verbose option is off
|
|
physical damage from mind flayer attack was being inflicted twice
|
|
adjust pending movement points when polymorphing into a slower creature
|
|
damage inflicted by burning glob of green slime gave wrong messages
|
|
monsters fleeing up the upstairs on level 1 were supposed to escape the
|
|
dungeon but ended up arriving on Plane of Earth
|
|
monster hitting fire-dealing monster with weapon triggered passive damage to
|
|
weapon every time, when hero doing so only had 1/6 chance per hit
|
|
hitting steam vortex with flammable weapon would damage the weapon with fire
|
|
if a non-cursed spellbook being read becomes cursed and hero recognizes that
|
|
(bknown is set), interrupt reading
|
|
if a non-cursed spellbook being read becomes cursed and hero doesn't notice,
|
|
don't leave it flagged as in-use (hence to be deleted during the
|
|
next save/restore cycle) if contact-poison cursed book effect occurs
|
|
|
|
|
|
Platform- and/or Interface-Specific Fixes
|
|
-----------------------------------------
|
|
tty: M-N gave "Unknown command 'M-" with "'." finishing the sentence on the
|
|
line below it, leaving bogus '.' displayed on the top row of the map
|
|
tty: specifying all four of role, race, gender, and alignment still prompted
|
|
for confirmation with "Is this ok?" before starting play
|
|
tty: responding with <return> or <enter> during role, race, &c selection
|
|
behaved same as <escape> to quit; now it will pick [random] instead
|
|
unix/X11: in top level Makefile, some commented out definitions of VARDATND
|
|
misspelled pilemark.xbm (as pilemark.xpm)
|
|
unix: options file with CR+LF line ends and an invalid option line resulted in
|
|
"ad option line: "whatever-the-line-was
|
|
because embedded carriage return character changed cursor's position
|
|
win32gui: getversionstring() was overflowing the provided Help About buffer
|
|
win32gui: guard against buffer overflow in in mswin_getlin()
|
|
win32gui: handle menu_color attribute
|
|
MacOSX: initial binary release was built from out of date source code that
|
|
had 'BETA' and 'DEBUG' inappropriately enabled
|
|
MacOSX: force TIMED_DELAY build option on so that 'runmode' run-time option
|
|
is functional
|
|
X11: core bug for '`' (backtick) and #terrain commands was only noticed by
|
|
X11 interface: impossible "add_menu: called before start_menu"
|
|
X11: enable a scroll bar in menu windows
|
|
X11: support pre-selected entries in menu windows
|
|
X11: make the extended command menu be easier to use and look a little nicer
|
|
X11: make the getline text entry widget display a bigger text entry area
|
|
|
|
|
|
General New Features
|
|
--------------------
|
|
naming Sting or Orcrist now breaks illiterate conduct
|
|
different feedback for reading a scroll of mail created by writing with marker
|
|
reading non-cursed scroll of enchant weapon uncurses welded tin opener
|
|
if hero has no jumping ability but knows the jumping spell, the #jump command
|
|
will attempt to cast the spell
|
|
allow moving cursor to monsters with 'm' (nearest first) and 'M' (furthest
|
|
first) when asked for map location, or to objects with 'o' and 'O'
|
|
allow picking a used inventory letter from menu when #adjusting
|
|
zapping wand of opening at yourself, unlock carried boxes
|
|
dissolve iron bars by force-fighting with wielded potion of acid
|
|
poison breath leaves a trail of poison gas
|
|
allow knife and stiletto as possible tin opening tools
|
|
wizard mode #wizintrinsic command
|
|
additional tribute passages for The Colour of Magic, The Light Fantastic,
|
|
Equal Rites, Mort, Sourcery, Wyrd Sisters, Snuff, and Raising Steam
|
|
compile-time options SIMPLE_MAIL and SERVER_ADMIN_MSG for public server use
|
|
database entries for Cleaver, Sunsword, Frost and Fire brands, and
|
|
polymorph trap
|
|
allow showing coordinates when picking a position on the map and
|
|
autodescribe option is on
|
|
new status line conditions Stone Strngl Deaf Lev Fly Ride
|
|
allow some extra color name aliases for menucolors and status hilites
|
|
add extended command #kick
|
|
|
|
|
|
Platform- and/or Interface-Specific New Features
|
|
------------------------------------------------
|
|
tty: menu_overlay -option to clear screen and align menus to left
|
|
tty: compile-time option to output escape codes for tile data hints
|
|
unix: compile-time option MSGHANDLER to pass messages to external program
|
|
|
|
|
|
NetHack Community Patches (or Variation) Included
|
|
-------------------------------------------------
|
|
Malcolm Ryan's improved tin opener
|
|
|
|
|
|
Code Cleanup and Reorganization
|
|
-------------------------------
|