> - I'd like to see another option added: scroll_amount. In > combination with scroll_margin, this would control the amount > of squares the screen is scrolled when the scroll_margin is > reached (currently, this amount is 1, but if I recall > correctly, it used to be more). For example, if both were 5, > when you came within 5 spaces of the left screen border, the > screen would shift 5 spaces to the right).
285 lines
17 KiB
Groff
285 lines
17 KiB
Groff
$RCSfile$ $Revision$ $Date$
|
|
|
|
General Fixes and Modified Features
|
|
-----------------------------------
|
|
prevent panic() obj_not_free when pushing a boulder over a landmine
|
|
there was no feedback when successfully hitting shock resistant monsters
|
|
with Mjollnir via hand-to-hand attack
|
|
unbought single-bite food eaten in shops was not billed properly
|
|
charge for shop contents inside "no charge" containers
|
|
add wishing for "nothing" and genociding "none" to the conduct section
|
|
of the Guidebook
|
|
allow both wishing and genocide to accept either "none" or "nothing" when
|
|
the player wants to decline
|
|
left word in format string in get_wet() causing "The spellbook fadefades"
|
|
two bad wizkit items in a row shouldn't make the user hit space many times
|
|
kicking thrones no longer loosens rocks
|
|
wall symbol not replaced when digging while blind and levitating
|
|
increment FQN_NUMBUF from 2 to 3 to prevent premature reuse of a buffer
|
|
that caused a level creation error to be reported as a lock file error
|
|
print regular death message when leashed, mounted steed dies of starvation
|
|
fix more funny messages, new and old
|
|
restore the behavior of bumping into closed doors when moving while impaired
|
|
fix iron ball cases that could put the chain in solid rock
|
|
discovering a mimic on a closed door location should not unblock the location
|
|
don't drop corpse when a monster kills another monster on an inaccessible
|
|
location (i.e. behave like xkilled behaves)
|
|
half-physical-damage from gas spore explosion should only affect you
|
|
Sunsword didn't stop glowing when hero killed a monster wielding it
|
|
mimics caught in explosions with messages printed about them are discovered
|
|
let lev_comp and dgn_comp accept optional carriage return character prior to
|
|
the terminating newline in special level and dungeon description files
|
|
Wizard of Yendor will start harassing you after the invocation if you've
|
|
managed to get that far without ever killing him
|
|
characters polymorphed into centaurs can't wear boots
|
|
if an unknown rolling boulder trap kills a monster, you shouldn't be a murderer
|
|
touchstone entry in data.base
|
|
specific message for engraving headstone with wand of digging
|
|
wielded/quivered chained ball should be unwielded when thrown
|
|
polymorphing into a form that cannot twoweapon should immediately disable
|
|
twoweapon mode; likewise when reverting from a monster form which
|
|
can use two weapons to a normal form which can't
|
|
taking partial count of merged objects from a container while your pack
|
|
was full split the object and did not re-merge
|
|
animal_parts are not always appropriate for ravens
|
|
prevent panic if tombstone window cannot be created
|
|
clarify travel command behavior in the Guidebook
|
|
touch_artifact checks needed when snagging w/bullwhip and stealing
|
|
cannot trip over submerged objects if you're water walking
|
|
wand of striking was not identified if it activated a statue trap
|
|
cannot sacrifice while you're swallowed
|
|
player polymorphed into an eel cannot drown breathless/amphibious monsters
|
|
avoid dmonsfree impossible message due to migrating a dead monster via
|
|
mhurtle causing the monster to end up in a hole or other trap
|
|
avoid temporary disappearing Burdened message due to updating status line
|
|
midway thru in_container
|
|
don't credit player's wisdom when makelevel creates random Elbereth engravings
|
|
reduce insect/monster creation from monster spells and limit chain summons
|
|
avoid "couldn't place lregion type 5" warning when arriving at Plane of Fire
|
|
avoid crash due to delayed poly or were change no longer being valid
|
|
ensure that Priest's ability to recognize B/U/C is considered in B/U/C menus
|
|
can't push boulders through iron bars; traps can't roll such through either;
|
|
likewise for objects thrown by monsters
|
|
thrown objects susceptible to breaking might do so when they hit iron bars
|
|
assorted monsters can pass through iron bars; ditto for polymorphed character
|
|
attempting to dig iron bars will wake nearby monsters instead of yielding
|
|
"you swing your pick-axe through thin air"
|
|
autodig won't accept iron bars as candidate location
|
|
allow knight to retaliate for all thefts except those "you gladly hand over..."
|
|
randomize starting position on goal level for M, P, and S quests
|
|
prevent the Wizard of Yendor from displacing the high priest of Moloch out of
|
|
the Sanctum's temple
|
|
ATR_BOLD on spell menu header
|
|
travel command should restrict its shortest paths to areas of the map the
|
|
hero knows about or might reasonably guess
|
|
non-altar prayer should limit god action, not maximize it
|
|
potions of acid explode, not dilute, so make water_damage behave this way
|
|
lookat monster notes if you see monster is trapped
|
|
don't crash when angry shopkeeper re-enters the shop and you pick up something
|
|
monsters with WAITFORU strategy should act if successfully attacked by
|
|
non-damaging attacks (e.g. seduction, rust damage)
|
|
don't summon kops if credit covers cost of unpaid goods taken out of shop
|
|
update swallowed display immediately if an engulfing monster polymorphs
|
|
into another engulfing monster
|
|
undo xname FAKE_AMULET_OF_YENDOR AD_DRIN check, the_unique_obj checks this case
|
|
axes should chop trees; picks shouldn't
|
|
chance to aim grappling hook when skilled or better
|
|
level limit of monsters like naga hatchlings should be high enough to grow up
|
|
scroll of enchant weapon will become discovered when read in some cases
|
|
don't crash when using lookat on a boulder an BOULDER sym is unique
|
|
attaching a single candle to fill candelabrum's last slot gave message with
|
|
poor grammar: "The candelabrum now has seven candle attached."
|
|
vault guards won't ask who you are if you're unconscious or paralyzed
|
|
monsters should not repeatedly try to teleport on noteleport levels
|
|
crocodiles legs are not designed for kicking open doors, chests, et al.
|
|
walls of one of the luckstone locations in minend-3 were diggable
|
|
minetn-6 could place downstairs in a cut-off location
|
|
corpses in bones files don't retain their role characteristic
|
|
boulder was not displayed if blind and discovered with a monster known via
|
|
ESP behind it
|
|
don't claim that statue comes to life if the monster it turns into is invisible
|
|
fix goodpos() so worm segments don't get placed on top of each other (causing
|
|
a possible display problem if the worm is cut in two)
|
|
fix fountain noises on some special levels (castle, valk home, various mines)
|
|
disallow mounting a trapped steed to avoid inappropriate trap effects
|
|
#chat with meditating monster will rouse it
|
|
suppress redundant message when stoning effect transforms a golem
|
|
clear worn bits of any object grabbed by shopkeeper to avoid extract_nobj panic
|
|
looting any container on a location should suppress looting nearby monsters
|
|
give more specific message when forbidden role attempts to use twoweapon mode
|
|
avoid double billing if #loot causes a shop's bag of holding to explode
|
|
when polymorphed, player killing a paper or straw golem via fire damage
|
|
would kill the golem twice, resulting in an impossible error
|
|
usually stop mimicing if you polymorph while using #monster mimic capability
|
|
under !GOLDOBJ, gold shouldn't disappear if you try to throw it at yourself
|
|
under !GOLDOBJ, remove temp gold from inventory during restore
|
|
Staff of Aesculapius did not always cure sliming
|
|
correct singularization of fungi, liches, vortices
|
|
prevent "remove_object: obj not on floor" panic for iron ball placement if
|
|
riding while punished leads to a fall off steed when changing levels
|
|
specifying -D (or -X) to enter explore mode while restarting from a save
|
|
file was lost in the restore process
|
|
fix crash when using lookat on an known invisible monster with monster syms set
|
|
prevent getting stuck in infinite loop when using wizard mode #levelchange
|
|
command to reduce level while having level-drain resistance
|
|
naming an already wielded elven dagger "Sting" activates warning against orcs
|
|
naming either of the wielded weapons unintentionally ends two-weapon combat
|
|
Various nemesis monsters must resist stoning so their death messages make sense
|
|
don't call DEBUG impossible in rn2 when a level 0 monster tries to cast a spell
|
|
GOLDOBJ: don't call money2mon with 0 zero when killed by shopkeeper
|
|
headstone writing was using the adjective "weird" when engraving with a wand
|
|
of digging.
|
|
don't report "you were riding" if you die as a result of dismounting
|
|
allow #untrapping of chests that are co-located with floor traps and hero
|
|
unmap "I" symbols when searching while blind and levitating
|
|
monsters that are frozen or sleeping cannot be grateful for untrapping
|
|
grammar of blessed-detection eating warning messages when eating 1 of N objects
|
|
message for charging for items lost in a cursed magic bag wasn't always shown
|
|
dropping gold on an altar printed no message and didn't change gnostic conduct
|
|
don't allow cursed daggers thrown by monsters to go thru closed doors
|
|
hero polymorphed into an exploding monster should explode when attacking
|
|
thin air, just like the monster itself
|
|
don't mark holes/trapdoors as seen if you levitate over them while blind
|
|
player polymorphed as rust monster would lose gold in inventory by
|
|
attempting to eat it, even though the eat failed
|
|
no messages were printed when dowaterdemon or dowaternymph failed to create
|
|
a monster doe to the G_GONE check
|
|
knights should be able to avenge attacks from covetous monsters
|
|
eating various rotten food items would not break vegan/vegetarian conduct
|
|
unaligned special levels should inherit alignment from the dungeon
|
|
Samurai quest was missing several doors
|
|
Cancelled while polymorphed and Unchanging should provide feedback
|
|
stone to flesh on a statue with contents would lose the contents if a
|
|
monster was on the same location as the statue
|
|
steed movement would use your speed if walking step by step
|
|
kicking a known, unseen monster would sometimes leave behind an extra I symbol
|
|
applying a lance against a long worm could cause an impossible
|
|
a knight applying a lance did not do a caitiff check
|
|
blessed gain level when already at level 30 won't reduce experience points
|
|
keep counting spell skill exercise even after expert status is reached
|
|
when a fountain dries up or a throne vanishes, make sure it really happens
|
|
allow player to name polymorph potion if nothing seems to happen
|
|
avoid crash when drinking a potion causes the hero to float up over a fire
|
|
trap, for example, which might try to destroy the in-use potion
|
|
in some situations, if hero stood still, a hostile dwarf would switch back
|
|
and forth between weapon and pick-axe and never move
|
|
uncontrolled teleports did not handle leashed pets
|
|
minetown fountain warnings shouldn't prevent finding gems/coins in fountain
|
|
order of container and objects was different for mazelike and roomfilled levels
|
|
minetown guards only enforce town rules inside the town proper
|
|
electric damage heals hero polymorphed into flesh golem rather than iron golem
|
|
fix bug preventing wishing for bear traps (not beartrap objects) in debug mode
|
|
be notified about cessation of hallucinations even if blind and the time
|
|
when using '/' to examine multiple map items in succession, don't mislabel
|
|
some with "or a splash of venom" after having looked at a '.' item
|
|
martial arts kick that knocks a monster into a trap would result in warning
|
|
"dmonsfree: 1 removed doesn't match 2 pending" if the trap was fatal
|
|
if you can't see or sense a monster when it dies, don't set dknown on corpse
|
|
effect of wearing or removing the Eyes of the Overworld took effect on the
|
|
next move, but should take effect immediately.
|
|
dragon scale mail is magic armor
|
|
invoking or applying an artifact must pass a touch_artifact check
|
|
document 'D'rop BUCX behavior in the Guidebook
|
|
remove levitation boots over a portal, the portal teleport is delayed until
|
|
your next command is typed.
|
|
armor vs cursed two-handed weapon anomalies: with 'T', couldn't remove armor,
|
|
but with 'A', could remove it, and with 'W', could put it on
|
|
don't print ape data.base description for other words that end in "ape"
|
|
prevent crash after animating a statue via stone_to_flesh by avoiding use
|
|
of the obj in newsym() after it was deleted
|
|
print "magic spreads" message when eating ring of increase damage, etc.
|
|
grammar tid: "The looking glass miss the <monster>."
|
|
fix wishing for "looking glass" and "<color> glass"
|
|
Archeologists suffer same alignment penalty for statue destruction by
|
|
stone_to_flesh as they do by other means of statue destruction
|
|
being unable to see a vault guard doesn't prevent him from arriving
|
|
in town, secret doors should be called "wall", not "fountain"
|
|
in town, watch should not allow trees to be cut down
|
|
cancel chat direction cancels the chat
|
|
prevent "the mimic looks better" on an unrecognized mimic hit with
|
|
healing spell
|
|
after forcefighting a concealed lurker, the lurker wouldn't fight back
|
|
when polymorphed into a hider, cease hiding during level changes
|
|
let mind flayer grow up into master mind flayer; also giant/sewer rat and
|
|
cave/large spider
|
|
engulfing green slime as a purple worm was causing stoning not sliming
|
|
zero entries in DUNGEON, MONSTERS, et al, of config file are now treated
|
|
as preserving the default rather than being ignored
|
|
enlightenment: don't misreport polymorphed lycanthrope as "in beast form"
|
|
remove TIMED_DELAY from the features checked for version compatibility
|
|
rolling boulder hitting monster stuck in pit should stop even when mon survives
|
|
don't see chest trap gas colors while Blind
|
|
adjust fruit name in potion juice messages if it has the form "foo of bar"
|
|
wielded camera passes harmlessly through shade
|
|
reading spellbooks while confused should allow tearing the book
|
|
Breaking wand of digging dug through rock which should be undiggable.
|
|
Breaking wand of digging near shop walls wouldn't anger the shopkeeper
|
|
Shop walls wouldn't be restored if there were pits in the way.
|
|
If there were a hole outside a shop, you could kick stuff out of the door
|
|
into the hole without the shopkeeper noticing.
|
|
curing hallucination while wielding Grayswandir should print a message
|
|
removing unowned pick-axe from container in shop gave inappropriate message
|
|
don't let monster end up with more current HP than max HP after life drain
|
|
make sure that missing file trickery in wizard mode which is discovered during
|
|
level change doesn't try to keep going after discarding current level
|
|
contribution by Adam Wozniak adds several const & changes some char* to char[]
|
|
|
|
|
|
Platform- and/or Interface-Specific Fixes
|
|
-----------------------------------------
|
|
wince: added Windows CE port from Alex Kompel
|
|
win32: win32 build no longer defines MICRO
|
|
win32: allow error save files to be generated
|
|
win32: strip illegal file name characters from plname and replace with '_'
|
|
win32: don't let recover build a save file out of level files belonging
|
|
to an active NetHack.exe or NetHackw.exe process
|
|
win32: SELF_RECOVER to let NetHack itself recover aborted games
|
|
win32gui: make error() work; it was essentially non-operative in 3.4.0
|
|
win32gui: fix alignment of columns in menu windows
|
|
win32gui: Window menu File|Save worked during #quit disclosure processing
|
|
win32gui: make mswin_yn_function() case insensitive like the tty version
|
|
win32gui: In msg window, gray out lines that are old and concatenate msgs
|
|
win32gui: --More-- prompt if there are more messages than can fit this turn
|
|
win32gui: flicker reduction because clear_nhwindow no longer redraws window
|
|
win32gui: A caret bug was fixed
|
|
win32gui: fix bug that caused two lines too many to be drawn on each paint
|
|
win32gui: last line no longer highlighted
|
|
win32gui: reduce the number of popups and support for !popup
|
|
win32tty: honour the use_inverse option and default to ATR_BOLD if disabled
|
|
win32tty: respond only to mouse clicks not mouse movement
|
|
win32tty: allow ^C to abort the game at the "Who are you?" prompt
|
|
win32tty: fix truncated score list
|
|
X11: restore support for non-square tiles when USE_XPM is defined
|
|
Gnome: add support for non-square tiles
|
|
tty: remove #define DEBUG that forced debug behavior in production builds
|
|
X11: getlin dialog got steadily narrower each time it was used
|
|
unix: install recover command into GAMEDIR by default
|
|
tty: correctly handle an empty TERM environment variable
|
|
tty: don't lose messages when ESC has canceled their display
|
|
tty: clear topl after pickup_burden prompt
|
|
Gnome: destroy main game windows correctly
|
|
Gnome: Dylan Alex Simon's port of KDE-style worn window
|
|
Gnome: Dylan Alex Simon's port of KDE-style hero cursor color
|
|
tty: support terms where turning off inverse video turns off color too
|
|
Gnome/Linux: more portable getres*id workaround
|
|
msdos: compiling without NO_TERMS resulted in a link-time error
|
|
msdos: reworked Makefile.GCC to get rid of need to duplicate source files
|
|
msdos,win32: stop doing chdir when NOCWD_ASSUMPTIONS is defined
|
|
vms: prevent error() from indirectly triggering hangup save during forced exit
|
|
|
|
|
|
General New Features
|
|
--------------------
|
|
lootabc option
|
|
runmode option
|
|
showrace option
|
|
travel option
|
|
cmdassist option to provide additional error feedback for some commands
|
|
mouse_support wincap option
|
|
scroll_amount wincap option to adjust how many cells to scroll at scroll_margin
|
|
debug mode: #panic routine to test panic() and panic save file generation
|
|
a new PANICLOG optional file to log the reason for panic and impossible messages
|
|
added validate_prefix_locations() for early directory prefix validation
|
|
fire traps are particularly bad for paper and straw golems
|
|
cream pies can be 'a'pplied to cause direct temporary blindness
|