- if a mimic mimics a boulder (top sokoban) or a door atop
a closed door the closed door didn't block your vision after
the mimic is sensed.
- also, make mondied consistent with xkilled WRT corpses on inaccessible
locations: no corpse
Well, this proved rather annoying. Problems included:
-- the solid rock problem that was noticed
-- teleporting to a spot two spaces away but on the other side of solid rock
could also leave the chain in solid rock
-- in one place I said chainx instead of ballx, which could cause problems with
teleporting
-- the teleport code moved the player before moving the ball, violating the
assumption that the player hasn't been moved yet (which only caused problems
after I added the solid rock fix).
Ball movement still isn't quite right, though the cases are really rare. I
may fix them later.
This adds a generic feature_toggle mechanism to
the game. Code that wants to offer two different
ways of doing something can add an entry to
feature_toggles[] (in decl.c), and create a
preprocessor macro for its array index in decl.h.
Then the code can test it using
if (feature_toggle(FEATURE_NAME))
..do_this..
else
..do_that..
The player can toggle the alternate code path
on using OPTIONS=feature_toggle:feature_name_1 feature_name_2 ...
This seems better than creating brand new options
for controlling features (ala prayconfirm, which
could switch to this single option feature_toggle
mechanism as well)
My first use of it is to allow toggling of the selectors
on the loot menu, which I'm hesitant to just change back
because now people are actively using the new selectors and
the complaints would be really loud if the interface were
to just switch back after they adjusted.
The default behaviour is the new behaviour "iob", but with an
OPTIONS=feature_toggle:loot_menu_selectors
in your config file, it will revert to using "abc" as it did
in 3.3.1. I'll add a Guidebook page of "features/behaviour
that can be toggled" later.
The toggles can only be done in defaults.nh, and are
not saved with the game.
Fix the reported problem of incorrect conditional logic
making it impossible to bump into closed doors when moving while
impaired for the #if STEED configuration.
- report: twoweapon mode, eat fried food, get messages like:
Your sword slips from your hands.
Your sword also slips from your hands.
- the fix tracks the kind of the 1st weapon, and adds "other" to the 2nd
message if necessary
Date: Sun, 24 Mar 2002 15:40:30 -0800
<email deleted>
Subject: patch: nethack-graphical - menu window colors
- W340-4 (menu checkboxes have a hard-coded white inner part)
- use windowcolors settings for menu backgroud/foreground color
<Someone>
(from <Someone>)
>The tile size is actually set just once in mhmap.c so validation can be done
>in one place. The patch is attached.
>
><email deleted>
on Sunday, March 24, 2002 at 16:15:50
---------------------------------------------------------------------------
mailversion: 1.10
nhversion: 3.4.0
nhfrom: 3.4.0 Official binary release for Windows 95/98/NT/2000/Me/XP
(nh340win.zip)
hardware: 1 Ghz AMD Athlon, 512 MB RAM etc. etc.
I don't think that the hardware is related to the problem because I found it.
software: I used Win 98 (1st edition) and MS VC++ 6.0 to find/fix the bug in
Nethack 3.4.0.
comments: steps to crash: start nethackw.exe - start a game - select "fit to
sreen" in the map menue - rezize the map until it is very very small -> crash
#649
<email deleted> on Friday, March 22, 2002 at 13:27:03
software: os: w2k workstation
nh: stock tty nethack.exe
comments: When you move onto a space and your pet moves onto the space
next to you on your left, your @ is displayed w/ normal attributes
instead of bright.
hilite_pet option is enabled
IBMGraphics option is disabled
#656
<email deleted> on Friday, March 22, 2002 at 16:59:37
nhfrom: 3.4.0 Official binary release for Windows 95/98/NT/2000/Me/XP
software: Windows 98 SE playing the ASCII version
comments: Sometimes when I'm standing next to my pet the @ turns grey, it goes
back to white after I move.
This was a tricky one. While the error was ultimately because
he was specifying a non-existant directory in defaults.nh, the
error message lead me to the wrong area until I traced through
with a debugger.
It turns out that an fqn buffer was being re-used before it
was finished being used with the original information in
sys/share/pcunix.c, so the error message listed the
wrong file!
This adds one more buffer and fixes the problem.
Note that it could only affect plaforms with
PREFIXES_IN_USE defined (NOCWD_ASSUMPTIONS
or VAR_PLAYGROUND)
It also alters the WIN32 error message to give them a
hint as to what the problem might be.
<email deleted>
<email deleted>
Sent: Saturday, March 23, 2002 9:27 AM
Subject: #R668: Windows 2000 Lock File Creation Error
> nhfrom: 3.4.0 Official binary release for Windows 95/98/NT/2000/Me/XP
> I get an error after unzipping nethack to c:\nethack, and changing the
> configuration (defaults.nh) to reflect this in the hackdir, levels and save
> configuration items.
>
> The error I get is "cannot creat lock file (C:\nethack\NHPERM_lock.)" after
> entering nethack at the command line and answering the Who are you? question.
- change the way the tile sizes are calculated, based on the image size,
so non-square tiles can once again be supported.
- fix Gnome port so it can actually display non-square tiles, several
height/width uses were backwards
- update Install.X11 to note the number of tiles per row in the XPM image
- this was a betabug I think, but not recorded as such
- if you kicked a throne, any GEM_CLASS item could be generated, including rocks
- changes behavior to be consistent with gems from fountains
- forgot to apply this change before making the 3.4.0 binary (it was
actually built using these settings). It's safer for the game itself to be
non-group writable so that someone on a public server can't exploit a
bounds checking or similar error to infect the executable itself with
a trojan horse.
Format multiple bad wizkit items a little better. It will scroll off the screen
if there are more than a screen of bad items, but that's probably not too
likely.
You could still get a panic. To reproduce:
- wizwish for a statue, and drop it
- wizwish for a landmine, and apply it at same location as statue
- move one square and wish for a boulder, drop it (automatically likely)
- push the boulder on the landmine to trigger it.
- the panic came from the statue this time.
<email deleted>
<email deleted>
Sent: Saturday, March 23, 2002 6:01 AM
Subject: Bug in 3.4.0: spellbook fading
> Dip a spellbook in a fountain:
> "The spellbook fadefades."
>
> In get_wet (potion.c), otense is used, which returns "fades",
> redundantly, as a suffix to "fade".
Document the way to decline a wish or genocide, and allow both
actions to accept both "none" and "nothing" so that players don't
have to remember which response goes with which prompt.
The shop billing code assumes that food marked partly eaten
is worthless, but the eating code was changed to make sure that any
eating attempt will never leave food marked as not partly eaten.
The end result is that non-corpse food which is consumed in a
single byte can be eaten off shop floors for free, and if eaten
from inventory--so already on shop bill--the "Ix" display of used
up goods lists the item as partly eaten (with right price though).
This fix makes single-byte food be handled the same as other
food: the first byte taken causes the food to be auto-purchased
immediately instead of waiting until it's used up to add it to the
shopping bill.
Fix one of the problems From a bug report: Mjollnir is only
giving the intended feedback when it is thrown. Against ordinary
monsters the problem isn't too bad--you get a lightning message
without the preceding hit message--but against resistant ones there
is no message at all when you hit hand-to-hand. (There is a similar
bug for artifacts which add magic missile damage, but since no such
artifacts exist that isn't much of a problem. :-)
> <email deleted>
> Oops! [...]
> Suddenly, the dungeon collapses.
> place_object: obj not free
>
> The crash is reproducible in wizmode by wishing for a landmine, arming it and
> pushing a wished-for boulder onto it.
Fix a documentation inaccuracy pointed out by Michael. Intended for
the 3.4.0 source tarball, even though it was submitted after the
code freeze. Does not affect compiled binaries.
This patch implements two things:
- space now dismisses a menu, text or menutext window when you are
at the bottom of that window
- Page scrolling in menus now works as follows:
pressing PgDn (or Space in NH mode) moves the focus down one page,
and moves the scroll position down one page. The effect of this
is that you always get a full new page of items (which is what
NetHack players expect), and that the focus moved down one page
(what Windows users expect.)
The same (revers) goes for scrolling up a page.
A Windows user will still be a bit surprised when the focus is on
the top item, and he presses '>': he gets a new page of things instead
of the focus moving to the bottom of the page.
However, the PgUp/PgDn keys (which he probably uses) still have the
old Windows behaviour.
This band adds handling for the "5" key in the numeric keypad. This is
called VK_CLEAR in the VK_ constants. Using this band, and with
NumLock off, doing 5 will send NetHack the letter 'g'. Doing SHIFT-5 will
send 'G'. Without this band and with NumLock off, 5 does nothing. With
NumLock on, 5 sends 5.
Changes to the resource file used for the Macintosh port.
Specifically, remove hardcoded version string and popup dialogs.
This is formatted with BinHex so it can be stored on non-Mac
systems without losing the resource fork. Though it is text,
it is not intended to be human-readable.