]> granicus.if.org Git - nethack/log
nethack
9 years agoFix some README mistakes that Janet spotted
nhmall [Fri, 6 Mar 2015 01:45:17 +0000 (20:45 -0500)]
Fix some README mistakes that Janet spotted

9 years agoUpdated README
nhmall [Wed, 4 Mar 2015 01:13:51 +0000 (20:13 -0500)]
Updated README

On 3/1/2015 10:37 AM, coppro wrote:
> >>          Sun SPARC based machine running SunOS 4.x, Solaris 2.x, or
> Solaris 7
>
> By release time, I should have access to a BSD flavour installed on a SPARC
> machine. Would out be helpful for me to do cursory tests?

On 3/1/2015 10:41 AM, lorimer wrote:
> I have access to a Borland environment too, so I'll be
> borrowing that at some point.  [Just not soon.]

I didn't include the above, just in case they don't happen.
The README can, of course, be updated again once they have
been tried.

9 years agoFix NHtext when GIT_DIR is not defined.
keni [Mon, 2 Mar 2015 21:32:29 +0000 (16:32 -0500)]
Fix NHtext when GIT_DIR is not defined.

9 years agoFix TTY crashing when a location has more than 32k items
Pasi Kallinen [Mon, 2 Mar 2015 18:34:25 +0000 (20:34 +0200)]
Fix TTY crashing when a location has more than 32k items

9 years agoMake a few fixes to code that was confusing indent
Sean Hunt [Mon, 2 Mar 2015 18:11:24 +0000 (13:11 -0500)]
Make a few fixes to code that was confusing indent

9 years agoFix segfault when MD termcap is not defined
Pasi Kallinen [Mon, 2 Mar 2015 18:21:34 +0000 (20:21 +0200)]
Fix segfault when MD termcap is not defined

9 years agoSanitize petnames and fruit to prevent escape codes
Pasi Kallinen [Mon, 2 Mar 2015 18:10:18 +0000 (20:10 +0200)]
Sanitize petnames and fruit to prevent escape codes

9 years agoPrint lava item destructions only if surviving.
Sean Hunt [Sun, 1 Mar 2015 17:02:38 +0000 (12:02 -0500)]
Print lava item destructions only if surviving.

This partially reverts commit 72c2ae233d35076adece2e8d02a7f8839e4a5aa8
in order to prevent players from using hangups during the destruction
messages to save themselves.

9 years agoMerge fire-based erosion to common codepaths.
Sean Hunt [Sun, 1 Mar 2015 16:54:40 +0000 (11:54 -0500)]
Merge fire-based erosion to common codepaths.

This finally eliminates all direct increases of `oeroded` and `oeroded2`
and moves them all to go via `erode_obj()`. They are still manipulated
directly in a few places, but not to erode objects.

This now merges the `fire_damage()` function to a common codepath, used
for items on lava and burning oil, but fire needs more work. There is
still a duplication between `destroy_item()` and `fire_damage()`; the
two codepaths should eventually be merged in some manner so that there
is only one codepath to say "an object was affected by fire". This path
might require some parameters, such as whether the fire will just erode
objects or burn them outright, but that can happen another day.

9 years agoFold `get_wet()` into `water_damage()`.
Sean Hunt [Tue, 24 Feb 2015 20:26:09 +0000 (15:26 -0500)]
Fold `get_wet()` into `water_damage()`.

This now ensures that dipping into water works like other sources of
water damage. There is a potentially significant gameplay change here:
dipping a container into uncursed water will wet all its contents. If
this is a problem, then we should add another parameter to water_damage
which will suppress this behaviour for dipping.

9 years agoRename `rust_dmg()` to `erode_obj()`.
Sean Hunt [Tue, 24 Feb 2015 20:21:30 +0000 (15:21 -0500)]
Rename `rust_dmg()` to `erode_obj()`.

9 years agoEliminate `erode_obj()` and other erosion.
Sean Hunt [Tue, 24 Feb 2015 20:20:01 +0000 (15:20 -0500)]
Eliminate `erode_obj()` and other erosion.

Now all erosion that isn't fire-based goes through `rust_dmg()`

9 years agoA lot more cleanup to rust and water.
Sean Hunt [Mon, 23 Feb 2015 22:21:11 +0000 (17:21 -0500)]
A lot more cleanup to rust and water.

9 years agoCover a couple of corner cases with `rust_dmg()`.
Sean Hunt [Mon, 2 Mar 2015 17:36:33 +0000 (12:36 -0500)]
Cover a couple of corner cases with `rust_dmg()`.

9 years agoRemove the `victim` argument to `rust_dmg()`.
Sean Hunt [Mon, 23 Feb 2015 20:08:30 +0000 (15:08 -0500)]
Remove the `victim` argument to `rust_dmg()`.

The argument can be calculated from `otmp`.

9 years agoFactor out a new `is_moat` function.
Sean Hunt [Mon, 23 Feb 2015 19:59:24 +0000 (14:59 -0500)]
Factor out a new `is_moat` function.

The fact that Juiblex's swamp is MOAT but not moat is weird and should
probably be looked at at some point.

9 years agoManually fix botched NHDT-Branch expansions.
keni [Mon, 2 Mar 2015 01:32:28 +0000 (20:32 -0500)]
Manually fix botched NHDT-Branch expansions.

9 years agoSwitch NHtext from "git branch" to "git symbolic-ref" to avoid corner cases.
keni [Mon, 2 Mar 2015 01:26:29 +0000 (20:26 -0500)]
Switch NHtext from "git branch" to "git symbolic-ref" to avoid corner cases.

9 years agocatch up fixes with some recent changes; also add 'community patch' section
nhmall [Sun, 1 Mar 2015 14:28:09 +0000 (09:28 -0500)]
catch up fixes with some recent changes; also add 'community patch' section

9 years agoRemove useless dungeon.def mangling
Pasi Kallinen [Sun, 1 Mar 2015 12:33:03 +0000 (14:33 +0200)]
Remove useless dungeon.def mangling

10 years agoRemove mention of compile-time AUTOPICKUP_EXCEPTIONS
Pasi Kallinen [Sun, 1 Mar 2015 10:03:51 +0000 (12:03 +0200)]
Remove mention of compile-time AUTOPICKUP_EXCEPTIONS

10 years agoRemove last mention of EXP_ON_BOTL
Pasi Kallinen [Sun, 1 Mar 2015 08:26:24 +0000 (10:26 +0200)]
Remove last mention of EXP_ON_BOTL

10 years agoRemove last mention of DUNGEON_OVERVIEW
Pasi Kallinen [Sun, 1 Mar 2015 08:16:00 +0000 (10:16 +0200)]
Remove last mention of DUNGEON_OVERVIEW

10 years agoChange NHtext to double the speed of "git checkout"
keni [Sat, 28 Feb 2015 22:52:19 +0000 (17:52 -0500)]
Change NHtext to double the speed of "git checkout"

10 years agoAdd new parameters to makedefs: --debug and --make
Pasi Kallinen [Wed, 25 Feb 2015 20:29:17 +0000 (22:29 +0200)]
Add new parameters to makedefs: --debug and --make

"makedefs --debug --make q" is equivalent to "makedefs -q" with
DEBUG defined.

10 years agoremove and transfer INVISIBLE_OBJECTS to branch
Derek S. Ray [Tue, 17 Feb 2015 18:58:27 +0000 (13:58 -0500)]
remove and transfer INVISIBLE_OBJECTS to branch

10 years agoRemove unused size from questpgr.c
Derek S. Ray [Tue, 17 Feb 2015 18:42:59 +0000 (13:42 -0500)]
Remove unused size from questpgr.c

10 years agoFix some warnings on the unconditionals branch.
Sean Hunt [Mon, 16 Feb 2015 07:09:57 +0000 (02:09 -0500)]
Fix some warnings on the unconditionals branch.

10 years agoRemove experimental Unicode support.
Sean Hunt [Sat, 14 Feb 2015 20:02:50 +0000 (15:02 -0500)]
Remove experimental Unicode support.

This reverts commit 7f0f43e6f98bccab20db7ab3cb509fdbe60a7b2b and some related
subsequent commits.

This compiles, but I have not done extensive testing.

Conflicts:
include/config.h
include/decl.h
include/extern.h
include/global.h
include/tradstdc.h
include/wintty.h
src/drawing.c
src/files.c
src/hacklib.c
src/mapglyph.c
src/options.c
sys/winnt/nttty.c
win/tty/getline.c
win/tty/topl.c
win/tty/wintty.c

10 years agoMake EXP_ON_BOTL unconditional.
Sean Hunt [Sat, 28 Feb 2015 00:24:43 +0000 (19:24 -0500)]
Make EXP_ON_BOTL unconditional.

10 years agoMake REDO unconditional.
Sean Hunt [Sat, 28 Feb 2015 00:24:28 +0000 (19:24 -0500)]
Make REDO unconditional.

10 years agoMake LOADSYMSETS unconditional.
Sean Hunt [Sat, 14 Feb 2015 19:15:27 +0000 (14:15 -0500)]
Make LOADSYMSETS unconditional.

There are some bugs here, but this functionality should make it into the release
in some form.

10 years agoMake AUTOPICKUP_EXCEPTIONS unconditional.
Sean Hunt [Sat, 28 Feb 2015 00:06:17 +0000 (19:06 -0500)]
Make AUTOPICKUP_EXCEPTIONS unconditional.

10 years agoMake BARGETHROUGH unconditional.
Sean Hunt [Sat, 28 Feb 2015 00:06:01 +0000 (19:06 -0500)]
Make BARGETHROUGH unconditional.

10 years agoMake SEDUCE unconditional.
Sean Hunt [Sat, 28 Feb 2015 00:05:01 +0000 (19:05 -0500)]
Make SEDUCE unconditional.

10 years agoApply paxed's DEBUG patch to remove DEBUG/D_DEBUG.
Pasi Kallinen [Mon, 9 Feb 2015 18:56:44 +0000 (20:56 +0200)]
Apply paxed's DEBUG patch to remove DEBUG/D_DEBUG.

    Move debugging output into couple preprocessor defines, which
    are no-op without DEBUG.  To show debugging output from a
    certain source files, use sysconf:

    DEBUGFILES=dungeon.c questpgr.c

    Also fix couple debug lines which did not compile.

This also includes fixes due to Derek Ray to depugpline to work better
on other platforms.

10 years agoMake GOLDOBJ unconditional.
Sean Hunt [Sat, 14 Feb 2015 06:31:22 +0000 (01:31 -0500)]
Make GOLDOBJ unconditional.

10 years agoMake WIZARD unconditional.
Sean Hunt [Sat, 14 Feb 2015 05:31:17 +0000 (00:31 -0500)]
Make WIZARD unconditional.

10 years agoMake DUNGEON_OVERVIEW unconditional.
Sean Hunt [Sat, 14 Feb 2015 04:58:46 +0000 (23:58 -0500)]
Make DUNGEON_OVERVIEW unconditional.

10 years agoMake REINCARNATION unconditional.
Sean Hunt [Sat, 14 Feb 2015 04:46:47 +0000 (23:46 -0500)]
Make REINCARNATION unconditional.

There is a lot of code affected by this, and Pat Rankin correctly
observes that it would be better to store roguelike as a level flag
rather than just using Is_rogue_level. A note for the future.

10 years agoMake TOURIST unconditional.
Sean Hunt [Sat, 14 Feb 2015 04:31:41 +0000 (23:31 -0500)]
Make TOURIST unconditional.

10 years agoMake SINKS unconditional.
Sean Hunt [Sat, 14 Feb 2015 04:30:38 +0000 (23:30 -0500)]
Make SINKS unconditional.

10 years agoMake KOPS unconditional.
Sean Hunt [Sat, 14 Feb 2015 03:01:44 +0000 (22:01 -0500)]
Make KOPS unconditional.

10 years agoMake STEED unconditional.
Sean Hunt [Sat, 14 Feb 2015 02:23:56 +0000 (21:23 -0500)]
Make STEED unconditional.

10 years agoMake ELBERETH unconditional.
Sean Hunt [Fri, 13 Feb 2015 21:58:59 +0000 (16:58 -0500)]
Make ELBERETH unconditional.

10 years agoAnother batch of manual header var additions
keni [Thu, 26 Feb 2015 22:43:47 +0000 (17:43 -0500)]
Another batch of manual header var additions

10 years agoA batch of manual header var additions.
keni [Thu, 26 Feb 2015 22:10:11 +0000 (17:10 -0500)]
A batch of manual header var additions.

10 years agoUpdate .gitignore files.
keni [Thu, 26 Feb 2015 21:35:55 +0000 (16:35 -0500)]
Update .gitignore files.

10 years agoFix lost mode bits.
keni [Thu, 26 Feb 2015 14:22:52 +0000 (09:22 -0500)]
Fix lost mode bits.

10 years agoBulk recovery of file CVS headers and addition of NHDT- headers.
keni [Thu, 26 Feb 2015 14:19:03 +0000 (09:19 -0500)]
Bulk recovery of file CVS headers and addition of NHDT- headers.

10 years agoAdd .gitattribute files.
keni [Thu, 26 Feb 2015 13:54:12 +0000 (08:54 -0500)]
Add .gitattribute files.

10 years agoAdd a missing break
Pasi Kallinen [Fri, 20 Feb 2015 18:26:46 +0000 (20:26 +0200)]
Add a missing break

Stepping on a magic trap while riding could delete the trap and
make the deleted trap hit the steed.

10 years agoAdd fixes notes for the recent lava changes.
Sean Hunt [Fri, 20 Feb 2015 17:59:06 +0000 (12:59 -0500)]
Add fixes notes for the recent lava changes.

10 years agoRemove the 'nul' variable.
Sean Hunt [Thu, 19 Feb 2015 04:51:08 +0000 (23:51 -0500)]
Remove the 'nul' variable.

10 years agoClean up lava messages a little.
Sean Hunt [Thu, 19 Feb 2015 04:24:41 +0000 (23:24 -0500)]
Clean up lava messages a little.

This change has two parts.

First, the Book of the Dead now has a special message in lava. This was
originally added by Steve Melenchuk (aka Grunt) as a precaution against the Book
burning up. While I'm pretty sure that the Book can't burn up in the current
codepath, the message is a nice touch and it doesn't help to add a safety check.

Second, always print the inventory destruction messages. The reason for this is
fairly subtle, but relates to the timing. By not printing the messages when
dying, the visible effect to the player is that if they have lifesaving, the
items burn up before they die, but if they do not, they burn up after they
die---the fact that they do burn up is visible in the dump or bonesfile.

10 years agoClean up the lava code a little.
Sean Hunt [Thu, 19 Feb 2015 04:19:23 +0000 (23:19 -0500)]
Clean up the lava code a little.

10 years agoDestroy water walking boots on lava first.
Sean Hunt [Thu, 19 Feb 2015 04:05:37 +0000 (23:05 -0500)]
Destroy water walking boots on lava first.

This avoids a player being left standing on lava if their boots are burned up and
they survive the damage.

This change is originally due to Steve Melenchuk, fixed up by Derrick Sund.

10 years agoFix warning with verbalize1
Sean Hunt [Thu, 19 Feb 2015 02:48:34 +0000 (21:48 -0500)]
Fix warning with verbalize1

10 years agoFix the X11 hints file.
Pasi Kallinen [Tue, 17 Feb 2015 14:54:38 +0000 (16:54 +0200)]
Fix the X11 hints file.

10 years agoMerge branch 'master' of https://rodney.nethack.org:20040/git/NHsource
keni [Mon, 16 Feb 2015 13:58:20 +0000 (08:58 -0500)]
Merge branch 'master' of https://rodney.nethack.org:20040/git/NHsource

10 years agoFix bug: NHtext adds a space to a substitution value.
keni [Mon, 16 Feb 2015 13:53:52 +0000 (08:53 -0500)]
Fix bug: NHtext adds a space to a substitution value.
Add support for debugging from the command line.

10 years agoReplace && with & in blindness timeout check.
Sean Hunt [Mon, 16 Feb 2015 05:24:05 +0000 (00:24 -0500)]
Replace && with & in blindness timeout check.

Caught by clang.

10 years agoFix a few compiler (clang) warnings.
Sean Hunt [Mon, 16 Feb 2015 05:23:48 +0000 (00:23 -0500)]
Fix a few compiler (clang) warnings.

10 years agomore win32-specific pieces
Derek S. Ray [Sun, 15 Feb 2015 19:45:36 +0000 (14:45 -0500)]
more win32-specific pieces

10 years agoConvert mdgrep from cvs to git.
keni [Sat, 14 Feb 2015 01:32:09 +0000 (20:32 -0500)]
Convert mdgrep from cvs to git.

10 years agoSet up mdgrep for git instead of cvs.
keni [Fri, 13 Feb 2015 22:54:15 +0000 (17:54 -0500)]
Set up mdgrep for git instead of cvs.

10 years agoMerge branch 'master' of https://rodney.nethack.org:20040/git/NHsource
keni [Fri, 13 Feb 2015 22:37:36 +0000 (17:37 -0500)]
Merge branch 'master' of https://rodney.nethack.org:20040/git/NHsource

10 years agoTypo
keni [Fri, 13 Feb 2015 22:37:06 +0000 (17:37 -0500)]
Typo

10 years agoTypofix.
Pasi Kallinen [Fri, 13 Feb 2015 20:32:33 +0000 (22:32 +0200)]
Typofix.

10 years agoMerge branch 'master' of https://rodney.nethack.org:20040/git/NHsource
Derek [Fri, 13 Feb 2015 18:29:23 +0000 (13:29 -0500)]
Merge branch 'master' of https://rodney.nethack.org:20040/git/NHsource

10 years agoExclude all the Win32 build artifacts (Studio and otherwise)
Derek [Fri, 13 Feb 2015 18:26:05 +0000 (13:26 -0500)]
Exclude all the Win32 build artifacts (Studio and otherwise)

Squashed commit of the following:

commit e37c7626f035a29321c9ac12cca83a0af2132abb
commit 86ebb3e66aedb6b5a31d61d57c39cf84c12d2276
commit 6cd677c8fca4102f223fb1708d00a65c2ded6658
Author: Derek <derekray@gmail.com>
Date:   Fri Feb 13 13:24:29 2015 -0500

10 years agoMerge branch 'master' of https://rodney.nethack.org:20040/git/NHsource
keni [Fri, 13 Feb 2015 16:54:28 +0000 (11:54 -0500)]
Merge branch 'master' of https://rodney.nethack.org:20040/git/NHsource

10 years agoadd another note about executable scripts
keni [Fri, 13 Feb 2015 16:54:04 +0000 (11:54 -0500)]
add another note about executable scripts

10 years agoadd note about making PRE file executable
keni [Fri, 13 Feb 2015 16:52:29 +0000 (11:52 -0500)]
add note about making PRE file executable

10 years ago+x .sh files in unix dir; ignore Makefiles
Sean Hunt [Fri, 13 Feb 2015 16:37:49 +0000 (11:37 -0500)]
+x .sh files in unix dir; ignore Makefiles

10 years ago.git* cleanup tids
keni [Thu, 12 Feb 2015 21:39:51 +0000 (16:39 -0500)]
.git* cleanup tids

10 years agoadd DEVEL to the directory list
keni [Thu, 12 Feb 2015 01:24:14 +0000 (20:24 -0500)]
add DEVEL to the directory list

10 years agoinitial git setup MOVE2GIT
keni [Thu, 12 Feb 2015 00:42:57 +0000 (19:42 -0500)]
initial git setup

11 years agoretouch_equipment() bypass handling
nethack.rankin [Thu, 7 Nov 2013 01:03:16 +0000 (01:03 +0000)]
retouch_equipment() bypass handling

     Simplify retouch_equipment (post-3.4.3.code, called when hero
changes alignment or turns into a silver-hating critter; inventory
traversal must cope with the possibility of losing object->nobj when
processing object) by switching to recently added object->bypass code.

11 years agofix #H3039 - panic() when trying to drop destroyed items
nethack.rankin [Tue, 5 Nov 2013 00:57:56 +0000 (00:57 +0000)]
fix #H3039 - panic() when trying to drop destroyed items

     From a bug report, dropping a lit
(burning) potion of oil while levitating can produce an explosion which can
destroy inventory.  If in the process of dropping multiple items, the ones
after the oil might be gone, resulting in use of stale pointers and possibly
triggering an "extract_nobj: object lost" panic or even a crash.  While
testing my fix, I discovered that being killed by an exploding potion of oil
could produce an "object_is_local" panic if bones are saved  (and reproduced
with unmodified 3.4.3).

11 years agofix #H3033 - Crash upon teleport onto a sink while equipping levitation boots
nethack.rankin [Sat, 26 Oct 2013 21:33:47 +0000 (21:33 +0000)]
fix #H3033 - Crash upon teleport onto a sink while equipping levitation boots

     From a bug report, being teleported onto
a sink while busy putting on levitation boots triggered a crash when
Boots_on() was called (as '(*aftermv)()' on the next turn) because
'uarmf' would be null by then.  Not mentioned, but the same problem was
encountered by Boots_off() if the teleport happened while you were busy
taking boots off.  It could be fixed by having having dosinkfall() call
cancel_don() if donning(uarmf) yields true, but this patch does a little
more than that:  cancel donning/doffing of any multi-turn armor if you
fall onto a sink.  It also prevents you from falling if you end up
flying (which will have been blocked while levitating).

     The situation when putting on levitation boots has a sequencing
issue:  setworn() causes you to be flagged as levitating immediately,
but the float_up() feedback doesn't occur until Boots_on() gets called
a turn later.  Teleporting to the sink will tell you that you crash
onto the sink and and that you stop putting on boots, without having
been told that you've floated up into the air.  It's suboptimal but it
doesn't seem to actually be incorrect.

11 years agoMagicbane grammar
nethack.rankin [Sun, 17 Mar 2013 00:17:18 +0000 (00:17 +0000)]
Magicbane grammar

     After newsgroup discussion of C343-162, I noticed that it had fixed
the verb usage in the message for confused and/or stunned, but not in the
one for resisting.  (If a monster name ends in 's', or it has been named
"you", 3.4.3 used the wrong verb because vtense() was fooled about plural
or second person.)  No new fixes entry needed....

11 years agopoly'd hero hiding feedback
nethack.rankin [Sat, 16 Mar 2013 01:44:28 +0000 (01:44 +0000)]
poly'd hero hiding feedback

     When hiding as a monster, say so during the #monster command and
also list being hidden in the status section of enlightenment/^X.

     Also, prevent hiding on the floor or ceiling on the planes of air
and water.  (Didn't apply to monsters, who only hide on ROOM spots.)

     Half the change to dohide() is just revised indentation.

11 years agoflying into pits
nethack.rankin [Thu, 14 Mar 2013 01:58:21 +0000 (01:58 +0000)]
flying into pits

     In the newsgroup recently, someone mentioned that when polymorphed into
a flying monster, he couldn't retrieve items out of pits, even with the '>'
command.  I thought that we had fixed that, but the fix apparently only
covered walk-through-wall creatures (xorns and earth elementals), not flyers
and ceiling clingers.  Now those can also deliberately enter pits via '>'.

     The fixes entry is in the new features section in order to be next to
the xorn one.  '>' at pit locations is new, but it handles something which
was missing so feels more like a bug fix than a new feature to me....
[Keni, the bug page entry C343-12 about '>' (for xorns?) is general enough
to cover this fix, so we don't need to add a new one for flyers.]
I noticed an unrelated fixes35.0 entry mentioning '>' which was duplicated;
this removes one of the copies.

12 years agoimpossible fix - potentially invalid feedback
nethack.rankin [Sat, 9 Feb 2013 01:33:37 +0000 (01:33 +0000)]
impossible fix - potentially invalid feedback

     From a bug report, the message displayed to the screen by
impossible() might be different from the one written into paniclog, if it
had argument subsitution/formatting.  I couldn't reproduce that myself,
but stdarg.h/varargs.h is tricky stuff and I think that passing the va_list
to a routine which steps through it requires that va_start be called again
if you're going to use the va_list a second time.  This changes impossible()
to handle its arguments only once, like panic().

12 years agoengrave phrasing
nethack.rankin [Thu, 20 Dec 2012 01:48:36 +0000 (01:48 +0000)]
engrave phrasing

     Message wording suggested by Michael.

12 years agofix #H2785 - engraving punctuation
nethack.rankin [Wed, 19 Dec 2012 01:26:54 +0000 (01:26 +0000)]
fix #H2785 - engraving punctuation

     Message tidbit when engraving with a weapon which becomes too dull to
finish the whole text:  add missing final period to
  You are only able to write "<partial text>".
I think that proper usage puts the period in front of the quote rather than
after, but that could make it look as if the period ended up inside the
partial engraving.

12 years agofix #H2671 - feedback when entering untended shop while blind
nethack.rankin [Tue, 3 Jul 2012 22:54:49 +0000 (22:54 +0000)]
fix #H2671 - feedback when entering untended shop while blind

     From a bug report, you get the message "this shop
appears to be deserted" when entering a shop whose shopkeeper is not there,
even if you can't see at the time.  Change it to be
 'this shop is deserted'
     when you can see that the shop is empty,
 'this shop is untended'
     when there's no shopkeeper but you can see some other monster(s) inside,
 'this shop seems to be deserted'
     when you can see but there is a monster that you can't see (probably a
     hidden mimic, but possibly an invisible monster or one standing behind
     a boulder that's ended up in the shop), or
 'this shop seems to be untended'
     when you can't see (and don't have active telepathy or persistent
     monster detection).

12 years agowand of polymorph vs monster inventory
nethack.rankin [Fri, 25 May 2012 23:54:59 +0000 (23:54 +0000)]
wand of polymorph vs monster inventory

     From the newsgroup:  inventory dropped by a monster killed by system
shock when zapped by a wand of polymorph is protected against being poly'd
by that same zap, but worn/wielded equipment that's forced to be dropped
due to being unusable in a transformed monster's new form was not.  Not
mentioned in the newsgroup, but also fixed:  boulders dropped when a giant
turns into a non-giant were also subject to the zap instead of protected.

12 years agoaddtional monster movement tweak
nethack.rankin [Wed, 16 May 2012 02:15:10 +0000 (02:15 +0000)]
addtional monster movement tweak

     Introduce some variation in monster movement by adding and substracting
small random amounts to the fixed increment from the main monster table.  The
amount added is potentially bigger (average is +2) than the amount substracted
(average is +1), so monsters will tend to be slightly faster.  Probably not
noticeable except for super-slow monsters not being so glacially slow, since
net +1 is a bigger relative increase for such critters' low movement rates.
In practice, the noticeable effect will be that ordinary speed monsters will
occasionally get an extra move even if/when player keeps the hero unburdened.

     Possible extension (although I'm not planning to do it):  sort the
monster list by pending movement points, so that faster monsters move before
slower ones.  The random variation would become noticeable because groups of
same-speed monsters would alter their movement order depending upon who got
a bigger increment or smaller decrement on that turn.

12 years agofix #H2588 - turn order alternation bug
nethack.rankin [Wed, 16 May 2012 01:47:18 +0000 (01:47 +0000)]
fix #H2588 - turn order alternation bug

     From a bug report, when the hero has
precisely 24 movement points, fast monsters will move twice and then the
hero will move twice, instead of being interleaved.  The hero will get 24
additonal movement points approximately one turn out of three when wearing
speed boots (or when using spell of haste self or potion of speed) and can
also get 18 additional points twice in succession, with a net of 24 after
12 of them are used on the first turn.  But hero might not be starting at
zero at the time, so I'm not sure how often this is actually noticeable.

     He apparently got a report about this for <some variant> and had some
user-contributed instrumentation in place that made it easier to replicate.
This fix is the one he suggested.

12 years agooracle tidbit
nethack.rankin [Fri, 11 May 2012 22:36:33 +0000 (22:36 +0000)]
oracle tidbit

     From the newsgroup, while rehashing our bug page entries someone
mentioned that buying a minor consultation from the oracle exercizes
wisdom twice.  First when getrumor() chooses one, then again when
outrumor(BY_ORACLE) delivers it.

     This also simplifies some #if GOLDOBJ conditional code.

12 years agofix #H2645 - invulnerability during prayer is vulernable to stinking cloud
nethack.rankin [Mon, 7 May 2012 01:44:38 +0000 (01:44 +0000)]
fix #H2645 - invulnerability during prayer is vulernable to stinking cloud

     From a bug report, stinking cloud
harms hero even when u.uninvulnerable is set during successful prayer.
This makes the cloud harmless during prayer as he suggested.

     It also makes being inside a stinking cloud become a major trouble
that prayer can fix.  (With magical breathing such a cloud is harmless and
with poison resistance it is just a nuisance; it won't be considered to be
trouble in such cases.)  The fix is to clear away the cloud, or to teleport
the hero if he's inside multiple overlapping clouds or in one that is
marked as permanent (which I think isn't currently possible).

12 years agofix hider bug
nethack.rankin [Sun, 6 May 2012 02:29:33 +0000 (02:29 +0000)]
fix hider bug

      From a bug report, this turned out to be caused by a fix
I implemented for #H1749 three and a half years ago.  Kicking a hidden
monster's location would bring the monster out of hiding but lacked a
newsym(), so if there was 'I' displayed there it stayed displayed as 'I'
even while subsequent messages referred to the unhidden monster.

     No fixes entry.

12 years agocontainer_impact_dmg
nethack.rankin [Sat, 5 May 2012 23:26:26 +0000 (23:26 +0000)]
container_impact_dmg

     A post-3.4.3 change made the contents of thrown (or dropped while
levitating) containers subject to breakage, but it had sequence issues.
When something was thrown from outside a shop (or from its doorway or
entry spot) and arrived inside, the shopkeeper was taking possession too
soon, charging the hero for any broken contents, and then going ballistic
(summoning kops and attacking) because the hero was outside the shop while
owing money.  We need to break contents before shk claims ownership, which
turned out to be trickier than it sounds since it has to occur after any
item-hits-floor message if such feedback is given.

    Also, clear the container's contents-known flag when contents break.
Conceivably it should stay set when there is only one item, since hearing
something break could only be that item, but this resets container->cknown
unconditionally if anything inside breaks.

12 years agoplayer as eel
nethack.rankin [Fri, 4 May 2012 02:04:34 +0000 (02:04 +0000)]
player as eel

     Four years ago, hit point loss for eels out of water was adjusted, but
the same change wasn't applied to hero polymorphed into an eel.

12 years agofix [rest of] #H2554 - noise when declining to kick peaceful monst
nethack.rankin [Wed, 2 May 2012 23:01:40 +0000 (23:01 +0000)]
fix [rest of] #H2554 - noise when declining to kick peaceful monst

     Reported last December by <email deleted>, attempting to kick
a peaceful monster then declining to attack at the confirmation prompt
uses no time, as expected, but does wake up nearby monsters and scuff an
engraving at the hero's location.

12 years agoGuidebook tweaks
nethack.rankin [Wed, 2 May 2012 00:38:30 +0000 (00:38 +0000)]
Guidebook tweaks

     Use Keni's *roff formatting macros on a few more option lists, and turn
a couple of those into sentences with semi-colon separators and final period.

12 years agofix [part of] #H2554 - hunger when declining to attack peaceful monst
nethack.rankin [Tue, 1 May 2012 02:22:33 +0000 (02:22 +0000)]
fix [part of] #H2554 - hunger when declining to attack peaceful monst

     Reported last December by <email deleted>, attempting to move
into a peaceful monster's position and then declining to attack at the
confirmation prompt uses no time, as expected, but does burn nutrition
the same as if you carried out the attack.  A player could abuse that to
make room to eat an intrinisic-conferring corpse before it rots away.
This fixes that, and also makes attacking a monster via applying a polearm
and via kicking burn the same extra nutrition as ordinary attack.  I didn't
add it for attacking via throwing.

     He/she also reported that kicking at a peaceful monster and declining
to attack at the prompt wakes up nearby monsters even though no actual kick
ultimately takes place.  I can confirm that, but this does not fix it.

12 years agomagic whistle vs steed
nethack.rankin [Mon, 30 Apr 2012 22:00:25 +0000 (22:00 +0000)]
magic whistle vs steed

     From a bug report, using a magic whistle when
you're mounted and standing on a trap location would cause your steed to
trigger the trap even though it didn't move.  Since it is already at the
same place as you, make steed be unaffected by magic whistle so that trap
complications can be avoided.