I've been using this for a while; it is occasionally handy. #terrain
is a new wizard mode command which brings up a text display where the map
topology is revealed, similar to the obscure #wmode command but showing
different information. Also, #wmode has been tweaked a little so as to
actually overlay the tty-mode map exactly, rather than being off by one
line and one column. (That shouldn't really matter for other windowing
schemes where the map and a text rendition of it aren't very likely to
have a given location be displayed at the exact same screen position.)
The line of formatted flags info below the terrain display probably
belongs in a separate debugging command altogether where it wouldn't have
to be displayed in such a terse fashion.
226 lines
12 KiB
Plaintext
226 lines
12 KiB
Plaintext
$RCSfile$ $Revision$ $Date$
|
|
|
|
General Fixes and Modified Features
|
|
-----------------------------------
|
|
change the dreaded "Stop eating?" to "Continue eating?" with default "no"
|
|
setmangry should not be called when a monster enters a bones region
|
|
bad capitalization of msg when charging for something that catches light
|
|
missing opthelp for use_inverse
|
|
Never say "It moves only reluctantly"
|
|
expert fireball/cone of cold could not target a monster seen only with
|
|
infravision or ESP
|
|
display "lotus juice", not "lotu juice" for the fruit juice name
|
|
only humanoid angelic minions should get/use sword and armor
|
|
paper, straw and wood golems resist cold
|
|
the options lootabc, showrace, travelcmd, and runmode are now saved
|
|
use mons[] array offsets in mnum field in save file rather than storing
|
|
the ptr and calculating the distance from beginning of array
|
|
two-weapon combat makes two attacks instead of having one attack hit with
|
|
each weapon
|
|
apply weapon skill to-hit bonus or penalty to bare-handed attacks
|
|
only give monk's "cumbersome armor" message when the armor penalty causes
|
|
an attack to miss
|
|
dust vortex-induced blindness should kick in immediately when blindfold
|
|
is removed or glop is wiped off
|
|
prayer/unicorn-horn won't fix blindness while still engulfed in a dust
|
|
vortex since it will just return immediately
|
|
being confused and reading cursed scroll of charging drains your energy
|
|
class genocide recognizes species name as an example of the class to
|
|
genocide (Martin Snyder)
|
|
internals: use Is_box rather than explicitly checking what it checks
|
|
fix some unreachable messages (either make then reachable or remove them)
|
|
can quiver coins when GOLDOBJ is defined
|
|
grammar, spelling and other typos
|
|
oracle and rumor regarding priestly donations
|
|
keep various delayed killers separate to avoid mixed up messages
|
|
don't place randomly-placed aquatic monsters in lava on special levels
|
|
hiding monsters don't hide under cockatrice/chickatrice corpses
|
|
"sound" option renamed to "acoustics"
|
|
deafness now a full-fledged attribute
|
|
water should flow into pits from broken wand of digging and drum of earthquake
|
|
objects that fall thru trapdoors, et al, can break on impact
|
|
support engraving in blood in special level files
|
|
many instances of physical damage were not taking Half_physical_damage
|
|
into account when reducing your hitpoints
|
|
make it possible for the code to recognize your starting pet throughout the
|
|
game via is_starting_pet(mon) macro
|
|
healers notice when a wand of undead turning revives a monster so the
|
|
wand is then identified
|
|
update display if bestowed a spellbook while unable to see invisible self
|
|
use small pool of static buffers for mon_nam() and Monnam()
|
|
Acknowledge Schroedinger's cat at end of game
|
|
grammar fixes for applying stethoscope to corpses and statues
|
|
player polymorphed as a ceiling hider cannot reach the floor, but
|
|
automatically unhide on #sit
|
|
trappers do not hide on the ceiling
|
|
non-magical whistles do not work underwater
|
|
try to restrict whistles and musical instruments to monsters that can blow
|
|
thrown potions can sometimes hit a steed's saddle
|
|
sync default documentation of "null" option with the code
|
|
tripping over a cockatrice corpse didn't petrify, even when not wearing boots
|
|
do not call swamps on the Juiblex level "moat" when freezing
|
|
keep score from wrapping around and becoming negative by capping it
|
|
kicked objects do not slide when on the air or water levels
|
|
when a giant carrying a boulder dies in a pit, ensure that the corpse is
|
|
buried under the filled pit
|
|
when blind and levitating > shouldn't say "stairs" if player has not seen them
|
|
a slow-moving monster hidden under a rotting corpse was not immediately
|
|
displayed when the corpse rotted away
|
|
mimic that ends up on the rogue level should not mimic a closed door
|
|
mimic should not mimic a boulder while on a pit or hole location
|
|
reviving invisible troll could appear visible until it moves
|
|
adjust some of the shop repair messages
|
|
charge for reviving a shop owned corpse or reanimating a shop owned statue
|
|
filled trap doors on castle can be re-dug
|
|
message order when swapping places with a pet (e.g. into a trap), also use
|
|
different term instead of "displace"
|
|
flyers can get out of pits more easily than non-flyers
|
|
allow use of the < command to try to exit a pit
|
|
clean up messages when you stop levitation while riding a flying steed
|
|
account for all attacks when determining max_passive_dmg
|
|
dipping in acid can erode the dipped object
|
|
various actions--such as enchanting--performed on an unpaid shop object
|
|
either force the hero to buy the item (when its value is lowered) or
|
|
increase the current bill (when its value is raised)
|
|
adjust health threshold where wounded hero will be healed by successful prayer
|
|
prevent lose-level+regain-level cycle from arbritrarily boosting HP and Pw
|
|
prevent polymorphing into "new man" at low level from magnifying HP and Pw
|
|
losing a level while polymorphed affects hero's current monster HP as well as
|
|
underlying normal HP
|
|
mind flayer brain eating is subject to certain fatal targets and to cannibalism
|
|
corpses of unique monsters in bones behaved incorrectly if revived or eaten
|
|
fix pluralization for "this tin smells like mother-in-laws" when hallucinating
|
|
try harder to keep pluralization straight when user assigns an already plural
|
|
value for named fruit
|
|
avoid false matches when looking up fruit names ("grapefruit" isn't "grape")
|
|
handle pluralization of man-at-arms and singularization of men-at-arms
|
|
assigning an artifact name is rejected on objects with similar description to
|
|
corresponding artifact's type rather than just those of the same type
|
|
adjust feedback for gas spore explosion when hallucinating
|
|
traps detected by scroll or crystal ball overlooked carried or buried chests
|
|
can't wish for a trapped box/chest/tin by specifying "poisoned"
|
|
grammar bit if killed by stealing a cockatrice corpse from a monster
|
|
being petrified by swallowing a cockatrice violates foodless conduct
|
|
devouring Medusa whole is fatal
|
|
eating pet won't continue eating after becoming paralyzed or falling asleep
|
|
randomize shopkeeper names when hallucinating
|
|
fix wording for "leprechaun steals gold from between your feet" when mounted
|
|
fix monsndx panic which happened after currently moving monster expelled
|
|
swallowed hero onto magic trap and was made tame by its effect; taming
|
|
no longer replaces monster
|
|
reduced message verbosity when re-entering a temple
|
|
reduced message verbosity when monster with multiple attacks missed wildly
|
|
zapping a never seen wand while blinded won't make the wand a discovery
|
|
zapping an unID'd wand of teleportation at self will discover it (usually)
|
|
zapping unlocking magic at self while punished will remove attached chain
|
|
don't see objects or read engraving when hero changes location (random
|
|
teleport) or position (levitation timeout) while asleep or fainted
|
|
polymorphed spellbooks may turn blank or be too faint to read
|
|
avoid inappropriate message when using a cursed lamp while blind
|
|
player polymorphed as a guardian naga spit the wrong kind of venom
|
|
put #define for potion occupant chance and cursed wand zap chance in one place
|
|
candles should not be fireproof
|
|
recognize most instances where hallucinatory monster name should be treated
|
|
as a personal name (to avoid "the Barney") instead of a description
|
|
avoid giving misleading or redundant feedback when reading scrolls
|
|
custom arrival message for special levels could be delivered too soon
|
|
prevent scroll of charging that has already disappeared from showing in the
|
|
picklist of things to charge
|
|
doors break instead of absorbing the blast of a broken wand of striking
|
|
avoid "Something's in the way" message with unidentified wand of locking
|
|
better handling for Fort Ludios and endgame in wizard mode's `^V ?' menu
|
|
no free lunch for gelatinous cubes eating scrolls of mail
|
|
eating gold in front of the vault guard will make the guard angry
|
|
calculate engulf time differently for non-digestion attacks than for digestion
|
|
|
|
|
|
Platform- and/or Interface-Specific Fixes
|
|
-----------------------------------------
|
|
unix: new -wwindowtype option
|
|
win32gui: better handling of "more" prompt for messages that would have scrolled
|
|
off the window
|
|
win32gui: set correct checkmark on "Lock Windows" menu item on startup
|
|
win32gui: redraw message window on resizing (it does not update properly otherwise)
|
|
win32gui: fixed copy/paste error in read registry settings function
|
|
win32gui: improved calculation of the size of the menu window
|
|
win32gui: made auto-arrange windows on/off option (it was reset automatically
|
|
which was unintuitive and in some cases annoying
|
|
win32gui: fix a possible crash with AltGr-4 WM_KEYDOWN handling
|
|
win32gui: use whatever alternate tile set is loaded in the menus
|
|
win32tty: prevent early error messages from flashing by too fast and not seen
|
|
platforms that support hangup: SAFERHANGUP to avoid losing objects in transit
|
|
between lists when hangup occurs, and also avoid cheats due to
|
|
well-timed hangups to stop a long melee
|
|
X11: support dynamic switching of map mode via tiled_map option
|
|
X11: added support for hilite_pet to text map mode
|
|
|
|
|
|
General New Features
|
|
--------------------
|
|
burying a punishment ball no longer ends your punishment
|
|
#tip command--pay a modest gratuity
|
|
add clicklook option to allow looking at things on the display by clicking
|
|
right mouse button when floating mouse pointer over them
|
|
Izchak's lighting store is now able to stock oil for your lamp
|
|
provide core support for saving of messsage history in save file
|
|
the following actions can now be continued after save/restore: digging,
|
|
eating, studying, removing armor
|
|
hero-created and monster-created ice will eventually melt away
|
|
extend Warning to include ice danger
|
|
wishing for particular variety of tin contents (deep fried, broiled, etc.)
|
|
debug-mode wishing for random monster(s) via '*'
|
|
debug-mode viewing of fully identified object descriptions without
|
|
actually identifying the objects
|
|
health-food store that stocks monk-appropriate foods in mine town when monk
|
|
give more information about your attributes in debug mode
|
|
polywarn to give intrinsic monster detection of limited species while polymorphed
|
|
rocks can skip on the water sometimes allowing them to pass over water creatures
|
|
vampires can now shapeshift into bats and fog clouds; the latter can be done at
|
|
will to slip through locked doors
|
|
shapeshifted vampire will transform back to vampire form after you defeat it and
|
|
continue to fight in its native form
|
|
container lknown flag for locked/unlocked/broken awareness
|
|
container cknown flag for container content awareness
|
|
plname is stored in the save file on all platforms now
|
|
introduce support for negation of role, race, align, gender values to eliminate
|
|
them from random selection and the pick list of startup choices
|
|
some intelligent pets will avoid cannibalism
|
|
keep track of which monsters were cloned from other monsters
|
|
number_pad:3 run-time option to use inverted phone keypad layout for movement
|
|
number_pad:-1 to swap function of y and z keys; z to move NW, y to zap wands
|
|
display spell retention information in the spell menu
|
|
tame ghouls can eat old eggs
|
|
new effect for reading a scroll of light while confused
|
|
allow digging an adjacent pit with wand of digging while trapped in a pit
|
|
#terrain command for debug mode
|
|
|
|
|
|
Platform- and/or Interface-Specific New Features
|
|
------------------------------------------------
|
|
win32gui: support perm_invent
|
|
win32gui: menu option to add/remove windows captions
|
|
win32gui: support for saving/restoring message history
|
|
win32gui: added menu options "Copy ASCII Screenshot To Clipboard" and "Save
|
|
ASCII Screenshot To File"
|
|
win32tty: support for 'selectsaved' option for menu of existing save files
|
|
to choose from at game startup
|
|
tty: add window port routines for saving/restoring message history
|
|
smartphone: added "Type Cmd" command that allows to type arbitrary commands
|
|
using phone keypad
|
|
smartphone: added Q(quiver) command to "Attack" layout
|
|
smartphone: fixed F command to prompt for direction
|
|
|
|
|
|
Code Cleanup and Reorganization
|
|
-------------------------------
|
|
removed OVLx section dividers previously used for TRAMPOLINE overlay system
|
|
move all flags that are system or port specific from flag struct to sysflags
|
|
struct which is used only if SYSFLAGS is defined
|
|
all fields in flags struct are unconditionally present
|
|
monst cham field now a short and uses mons[] index
|
|
rearrange some monster ordering to follow rule #2 listed at top of monst.c
|
|
change region player_flags to more appropriate unsigned int instead of boolean
|
|
remove remains of sync_hunger, which has been ifdef'd out for years
|
|
new mextra structure housing pointers to mname, egd, epri, eshk, emin, edog
|
|
consolidate vault.h, epri.h, eshk.h, emin.h and edog.h into new mextra.h
|