]> granicus.if.org Git - nethack/log
nethack
21 years agocmdassist enhancement again
nethack.rankin [Sat, 10 Jan 2004 03:29:30 +0000 (03:29 +0000)]
cmdassist enhancement again

>      [...] it also suppresses the message about how to disable
> cmdassist in this case.

     Well it would have done so if I'd used the right diff....

21 years agocmdassist enhancement
nethack.rankin [Sat, 10 Jan 2004 03:23:55 +0000 (03:23 +0000)]
cmdassist enhancement

     Implement the patch sent by <email deleted>
to make responding with '?' at the "what direction?" prompt ask again
after giving the `cmdassist' direction display.  I did it slightly
differently than was done in the submitted patch but the result is the
same except that it also suppresses the message about how to disable
cmdassist in this case.

21 years agopit access
nethack.rankin [Sun, 4 Jan 2004 08:54:16 +0000 (08:54 +0000)]
pit access

     Fix the recently reported problem:

" If there is a corpse in a pit, you have to enter the pit in order to pick
" it up, however you are can eat it without being in the pit.

If pit bottoms aren't reachable, then can_reach_floor() needs to know
about it.  I suspect that this change is likely to create some other
bugs though.

21 years agopat wrote:
nethack.allison [Wed, 31 Dec 2003 20:11:02 +0000 (20:11 +0000)]
pat wrote:
> In the development code, two status types have gotten reversed.
> Hallucinating shows up as "Stun" and being stunned shows up as "Hallu".

21 years agofix steed-in-trap message grammar when hallucinating
nethack.rankin [Sat, 27 Dec 2003 02:45:47 +0000 (02:45 +0000)]
fix steed-in-trap message grammar when hallucinating

     Fix the recently reported bug about the wording of trap messsages
when hero's steed has a name but hallucination prevents that name from
being used, yielding "You lead poor wombat into a pit!" and the like.

     I accidentally deleted the message so can't reply to the sender.

[Before applying this patch, take a look at the POLY_TRAP case of the
switch statement in steedintrap().  A misplaced brace has drawn the
default case into one of its `if' statements.  Evidently it's valid C
syntax, but someone among us must have access to a compiler or lint
checking tool which is capable to diagnosing such things.]

21 years agofix incorrect plural of Nazgul
nethack.rankin [Tue, 23 Dec 2003 02:32:17 +0000 (02:32 +0000)]
fix incorrect plural of Nazgul

     Incorporate <Someone>'s patch to skip adding of a final "s" to
"Nazgul" when pluralizing.

21 years agoteetering on edge of pit
nethack.allison [Mon, 22 Dec 2003 19:09:39 +0000 (19:09 +0000)]
teetering on edge of pit

- when you're teetering on the edge of a pit you can use '>' to enter the pit
- pull the numerious teetering checks into a new function

21 years agofix U796 - minor wording 'bug'
nethack.rankin [Thu, 18 Dec 2003 05:00:47 +0000 (05:00 +0000)]
fix U796 - minor wording 'bug'

     "You push the boulder into the pool" should be "Your steed pushes
the boulder into the pool" if done while riding since that's how other
boulder pushing messages are handled.

21 years agoRe: #U800: possible bug regarding pits
nethack.allison [Tue, 16 Dec 2003 02:58:55 +0000 (02:58 +0000)]
Re: #U800: possible bug regarding pits

<email deleted> wrote:
> Not sure what exactly should occur, but this seems funny: If
> you escape a pit and there is an object in the pit, you can
> not reach it to pick it up. Nor can you go down into the pit
> to get it, but sitting gives the message "you sit on the
> (object) it's not very comfortable. How can the character sit
> on it if it's in the bottom of the pit?

21 years agoback into test mode
nethack.rankin [Sat, 13 Dec 2003 15:01:49 +0000 (15:01 +0000)]
back into test mode

     Post-release, reset to BETA status to indicate development since
there's no ALPHA.  And use BETA to enable the latent RNG checks.

21 years agowizard mode ^V crash in endgame
nethack.rankin [Sat, 13 Dec 2003 14:51:38 +0000 (14:51 +0000)]
wizard mode ^V crash in endgame

     Mentioned in passing in the newsgroup:  level teleporting in the
endgame--which is only possible in wizard mode--can crash if you're
confused.  The change to make confusion sometimes override teleport
control means that sometimes a random destination will be chosen, and
the routine to choose a random level can call rn2() with a value less
than 1 in the endgame, possibly resulting in attempt to divide by 0.

     There's something fishy about the min_/max_depth stuff for the
endgame, but I haven't attempted to figure that out.  This just makes
the random destination always be the current level when in the endgame
so that the problem can't come up.

21 years agoU778 wielded silver arrows
nethack.allison [Thu, 11 Dec 2003 11:43:18 +0000 (11:43 +0000)]
U778 wielded silver arrows

21 years agoMac Carbon updates
kmhugo [Wed, 10 Dec 2003 19:36:49 +0000 (19:36 +0000)]
Mac Carbon updates

21 years agomontraits usage (trunk only)
nethack.rankin [Wed, 10 Dec 2003 06:33:25 +0000 (06:33 +0000)]
montraits usage (trunk only)

     Move a couple of recently added corpse revival/statue animation
fixups into montraits() so that its callers don't have to worry about
them anymore.

21 years agoapply Janet's lint catches to trunk
nethack.allison [Wed, 10 Dec 2003 01:23:14 +0000 (01:23 +0000)]
apply Janet's lint catches to trunk

21 years agovms version bit (trunk only)
nethack.rankin [Tue, 9 Dec 2003 02:54:08 +0000 (02:54 +0000)]
vms version bit (trunk only)

     Corresponding change for the development code:  make the Makefile
comment match the recently revised code.

21 years agoadd fixes34.4
nethack.allison [Mon, 8 Dec 2003 02:28:50 +0000 (02:28 +0000)]
add fixes34.4

21 years agono message
nethack.allison [Mon, 8 Dec 2003 02:27:34 +0000 (02:27 +0000)]
no message

21 years agofix "You hear The food ration tumbles downwards."
nethack.allison [Mon, 8 Dec 2003 02:25:11 +0000 (02:25 +0000)]
fix "You hear The food ration tumbles downwards."

21 years agoOS2 bits
cohrs [Sun, 7 Dec 2003 20:20:59 +0000 (20:20 +0000)]
OS2 bits
Ronald Van Iwaarden wrote:
... lines 1845 and 1846 of cmd.c generate a 'value out of range
warning' due to the compiler making 0x80 an integer rather than a character
and '|'ing it with the argument.  This requires a minor change to micro.h.
[ Makefile.os2 rev does not currently make sense in the trunk. ]

21 years agovms version bit (trunk only)
nethack.rankin [Sun, 7 Dec 2003 19:10:31 +0000 (19:10 +0000)]
vms version bit (trunk only)

     Similar to the branch change; partial version number update for
the vms default build configuration.

21 years agoFiles update, part 2
cohrs [Sun, 7 Dec 2003 18:07:28 +0000 (18:07 +0000)]
Files update, part 2
While looking thru the whole list, I found a few sorting mistakes which
confused my inspection and one misspelling.  I didn't inspect the derived
file list.

21 years agoFiles update
nethack.allison [Sun, 7 Dec 2003 17:41:41 +0000 (17:41 +0000)]
Files update

21 years agofix message when were_summoning
nethack.allison [Sun, 7 Dec 2003 09:45:34 +0000 (09:45 +0000)]
fix message when were_summoning

21 years agowince build fix (from <Someone>)
nethack.allison [Sun, 7 Dec 2003 01:33:25 +0000 (01:33 +0000)]
wince build fix (from <Someone>)

[this is not meant to trigger re-packaging for 3.4.3]

Windows CE defines leave as part of exception handling (__leave)
It confilicts with existing sources and since we don't use exceptions
it is safe to undefine it

21 years agolast minute Linux README bits
cohrs [Sat, 6 Dec 2003 20:55:15 +0000 (20:55 +0000)]
last minute Linux README bits

21 years agoWe only had an entry for plain water.
jwalz [Sat, 6 Dec 2003 15:34:44 +0000 (15:34 +0000)]
We only had an entry for plain water.

21 years agofix the "big abuse" reported a few days ago
nethack.rankin [Sat, 6 Dec 2003 14:08:51 +0000 (14:08 +0000)]
fix the "big abuse" reported a few days ago

     It was possible to get a shopkeeper to carry the Amulet from the
bottom of the dungeon up to the location of his shop, thereby bypassing
the usual labor of lugging it up yourself.  [Drop the Amulet somewhere;
rob a shop so that the Kops are summoned and the shk comes after you;
when shk is next you, level teleport to the Amulet (probably two hops,
one to the Valley and another deeper into Gehennom); walk to the vicinity
of the Amulet; shk will eventually pick it up (shopkeepers like to pick
up magic items); now, pay him for the stolen goods--he'll be pacified
and migrate back to his shop, taking his inventory with him; lastly,
return to his shop and relieve him of his burder.]  This patch makes
shopkeepers drop the Amulet or invocation tools if/when they set set to
migrate to their normal location.

     Also fix another long standing risk that a monster that is sent
away (nurse when healing, Kops when you pacify a shopkeeper) might be
carrying the Amulet or one of the invocation tools and make the game
unwinnable.  I doubt that that's ever actually happened but I think it'd
be possible if a monster that likes magic items ever got polymorphed
into a Kop.  Such dismissed monsters will now drop the same stuff as
the shk above prior to leaving the game.

21 years agopatchlevel sync
nethack.allison [Sat, 6 Dec 2003 13:15:55 +0000 (13:15 +0000)]
patchlevel sync

21 years agotainted meat did not invoke cannibalism
nethack.allison [Sat, 6 Dec 2003 05:11:40 +0000 (05:11 +0000)]
tainted meat did not invoke cannibalism

21 years agotypo pluralizing tengu
cohrs [Fri, 5 Dec 2003 16:27:04 +0000 (16:27 +0000)]
typo pluralizing tengu

21 years agoprevent infinite recursion in impossible
nethack.allison [Fri, 5 Dec 2003 12:30:18 +0000 (12:30 +0000)]
prevent infinite recursion in impossible

21 years ago#U770 part II - lack of "miss" message when throwing gold at monster
nethack.rankin [Fri, 5 Dec 2003 11:37:37 +0000 (11:37 +0000)]
#U770 part II - lack of "miss" message when throwing gold at monster

     There was no feedback when gold was thrown or kicked at monsters
who weren't interested in catching it.  Now it'll give the same "<obj>
misses <monster>" message as other thrown or kicked items objects which
don't hit.

21 years agofix U770 - grammar bug: The gold pieces hits the [monster]
nethack.rankin [Fri, 5 Dec 2003 08:54:32 +0000 (08:54 +0000)]
fix U770 - grammar bug: The gold pieces hits the [monster]

     Report was for scattering gold during a land mine explosion, but the
message was delivered by the widely used hit().  Bug was caused by a typo
in vtense() when handling a subject containing a space.

21 years agoloadstone dropping fix
nethack.rankin [Wed, 3 Dec 2003 07:10:24 +0000 (07:10 +0000)]
loadstone dropping fix

     Fix the reported problem of bad inventory management if the user
specified a count (with traditional menu style) when attempting to drop
part of a stack of cursed loadstones.  After the "you can't drop that"
message, it tried to undo the stack split, but splitobj was changed
sometime back and the undo hack wasn't adjusted to account for the fact
that it needed to merge with the previous object instead of the next one.
The result was that it would incorrectly increment the count of the next
item instead of the original loadstone, or crash in canletgo() if the
split off stone was the last item in the list.

     This prevents cursed loadstones from being split (via getobj()'s
count handling) in the first place, so there's nothing to undo later.
It still uses a similar kludge so that the "can't drop that" message can
be adjusted, but it's now a simpler kludge and I hope a more robust one.

21 years agobits
nethack.allison [Wed, 3 Dec 2003 02:58:16 +0000 (02:58 +0000)]
bits
- update an existing fixes34.3 to reflect a recent autopickup_exception change.

-  beta tester complaint about the Guidebook.

21 years agofix B03001 - spelling mistakes in Guidebook
nethack.rankin [Tue, 2 Dec 2003 15:08:59 +0000 (15:08 +0000)]
fix B03001 - spelling mistakes in Guidebook

      Minor problems <Someone> pointed out about the shop section.
[I've only tested the LaTeX variant this time.]

21 years agoB02005 and B02006
nethack.allison [Tue, 2 Dec 2003 05:00:02 +0000 (05:00 +0000)]
B02005 and B02006

B02006 autopickup_exception documentation

>Should the documentation say what priority order is used if two conflict?
>(For example, how ">*orcish" and "<*arrow" handle an orcish arrow; from
>experimentation, > always takes precedent over < , but I could be
>missing something.)

B02005 autopickup_exception option menu

> It'd be nice if you were returned to the menu after adding an exception
> via O so that you can set several with one command.

21 years agoautopickup_exception doc update
nethack.allison [Tue, 2 Dec 2003 03:29:38 +0000 (03:29 +0000)]
autopickup_exception doc update

21 years agoautopickup_exception
nethack.allison [Tue, 2 Dec 2003 03:14:50 +0000 (03:14 +0000)]
autopickup_exception

use doname() instead of xname()

21 years agosync trunk patchlevel.h with branch
nethack.allison [Tue, 2 Dec 2003 00:42:32 +0000 (00:42 +0000)]
sync trunk patchlevel.h with branch

21 years agolint bits
nethack.rankin [Mon, 1 Dec 2003 14:42:37 +0000 (14:42 +0000)]
lint bits

and some reformatting.

21 years agobotl.c followup bits
nethack.allison [Mon, 1 Dec 2003 03:57:42 +0000 (03:57 +0000)]
botl.c followup bits

21 years agobotl.c followup bits
nethack.allison [Mon, 1 Dec 2003 03:48:32 +0000 (03:48 +0000)]
botl.c followup bits

21 years agocorpse revival and statue animation (trunk only)
nethack.rankin [Sun, 30 Nov 2003 21:19:01 +0000 (21:19 +0000)]
corpse revival and statue animation (trunk only)

     Try to address the problem From a bug report:  turning the Wizard
of Yendor to stone preserves monster information with his statue and
presence of that information overrides the statue animation check
intended to prevent players from creating the Wizard (or other unique
monsters).  That's ok for the current game--the monster had to have been
in play in order to be turned to stone--but is a problem if the statue
is found in a bones file.  The report was for placing such a statue at
the location of an untriggered statue trap by a player who leaves bones,
but stone-to-flesh by the player who loads bones is a simpler way to
trigger this.  (Aside from getting unique monsters earlier than usual
under some degree of player control they won't have their starting
inventory so special items like the Candelabrum might not get created.)
Using undead turning to revive corpses found in bones was another way to
get into the same trouble (I thought corpses of special monsters were
already excluded from bones?).

     It looks like it's also possible to get strange quest behavior if
a corpse or statue of the leader or nemesis is brought into the dungeon,
left in bones, then revived by the second player, but I didn't attempt
to reproduce it.  More work is probably needed; this tightens up leader
handling a bit but doesn't do anything about the nemesis.  This patch
has already been spreading tentacles and I've got to cut it off....

     The patch discards saved monster traits for corpses and statues of
unique monsters while saving bones; reviving or reanimating them will
produce doppelgangers instead of the original monsters, same as stone-to-
flesh on wished-for statues behaves.  It also discards saved traits for
shopkeepers (also temple priests and vault guards--their traits weren't
saved in 3.4.2 though).  That info might be useable when the corpse or
statue is on the same level as the monster started (ie, where its special
room is located), but that's a complication I'm going to bypass.  This
patch also adds chameleon handling for statue activation--it wouldn't
have mattered in 3.4.2 since shapechangers didn't get their traits saved;
it does matter now but was omitted when trait-saving was extended to all
statues a while back.  (It adds chameleon handling to corpse revival too,
but they still don't get their traits saved with corpses so that's just
protection in case of future modifications.)

     Other bits:  `cant_create()' is renamed to `cant_revive()' since
the latter is a more signicant use than wizard mode <ctrl/G> handling.
Now save traits with nymph corses so that cancellation can be propagated
if they're revived; that doesn't matter much but matches statue handling
(where it was more important since it dealt with succubi as well as with
nymphs).  Explicitly initialize the shape-changer field of all monsters
instead of relying on implicit initialization to 0 (CHAM_ORDINARY).

     There'll be a *much* shorter patch for 3.4.3 which will have to get
by with most of these obscure problems--fortunately they're unlikely to
impact many (any?) players.

21 years agofigurine transform message
nethack.allison [Sun, 30 Nov 2003 19:20:01 +0000 (19:20 +0000)]
figurine transform message

The trunk patch differs from branch patch.
Both patches get rid of the "it", but the trunk patch addresses
other concerns brought to light today.

21 years agopatch reversal - figurines (was egg hatching message bug)
nethack.allison [Sun, 30 Nov 2003 12:33:53 +0000 (12:33 +0000)]
patch reversal - figurines (was egg hatching message bug)

The fix was directed at figurines; report was actually for eggs.

21 years agostatus bits
nethack.rankin [Sun, 30 Nov 2003 11:04:54 +0000 (11:04 +0000)]
status bits

     Declare structure before using it in prototypes, and declare atol()
for configurations which don't have or don't use <stdlib.h>.  (Some
#ifdef MICRO code for atoi at the end of system.h might need to be done
for atol too.)

21 years agounintentional change removal
nethack.allison [Sun, 30 Nov 2003 05:54:02 +0000 (05:54 +0000)]
unintentional change removal

A recursive guard check was accidentally checked in with the
status field stuff. Remove it.

21 years agocore support for status field highlighting (trunk only)
nethack.allison [Sun, 30 Nov 2003 05:51:53 +0000 (05:51 +0000)]
core support for status field highlighting (trunk only)

This provides the core support needed for status field highlighting.
This patch doesn't actually perform status field highlighting for any port,
but provides the core hooks for doing so.

The syntax is:
OPTIONS=hilite_status:{fieldname}/{threshold}/{below}/{above}
where {fieldname} is the name of a status field.
           {threshold} is the value used as the threshold to trigger a display
                             change.  It can also be set to "updown" to trigger
                             a display change whenever it rises or whenever it falls.
                             If you end the threshold value with %, then it signifies
                             that you want to trigger the display change based on the
                             percentage of maximum.
         {below}, {above}
                        are the color or display attribute that you want to use when
                        the field value is underneath the threshold. Supported display
                        fields are:  normal, inverse, bold, black, red, green,
                                         brown, blue, magenta, cyan, gray, orange,
                                         bright-green, yellow, bright-blue, bright-magenta,
                                         bright-cyan, or white.
Valid field names are:
        alignment, armor-class, carrying-capacity,
        charisma, condition, constitution, dexterity,
        dungeon-level, experience-level, experience,
        gold, HD, hitpoints-max, hitpoints, hunger,
        intelligence, power-max, power, score,
        strength, time, title, wisdom

Refer to window.doc for details. Guidebook updates to come later.

21 years agoegg hatching message bug
nethack.allison [Sat, 29 Nov 2003 18:48:13 +0000 (18:48 +0000)]
egg hatching message bug

>     From the newsgroup:  an egg carried by the hero hatched and the
> resulting monster was placed in hiding underneath an adjacent object.
> The silly hatching message given was "You see it drop from your pack."
> (Player said he was using 3.4.1, but the relevant code hasn't changed
> since then.)

21 years agoB02002 - drawbridge vs longworm
cohrs [Thu, 27 Nov 2003 17:37:38 +0000 (17:37 +0000)]
B02002 - drawbridge vs longworm
If a long worm's head is on the drawbridge and a tail segment is at the
portcullis and you raise the drawbridge, bad monster handling occurs
because of some recursion that occurs before set_entity is called again.
Not sure when this last worked; it's broken in 3.4.2 as well.  Modified
e_died to ensure both entity objects for the same monster get cleaned up
so subsequent e_at calls behave as expected.

21 years agoU761 - Sitting as a hider and other related is_hider behavior
cohrs [Thu, 27 Nov 2003 07:03:56 +0000 (07:03 +0000)]
U761 - Sitting as a hider and other related is_hider behavior
While looking at the behavior of sitting hiders, I noticed other related
odd behavior.
- player hiding while poly'd as a hider that hangs on the ceiling now drops to
  the floor before sitting (similar to the behavior of movement commands).
- trappers, as per data.base, don't hang on the ceiling.  Changed the
  mattacku case dealing with hiders to not treat trappers as ceiling hiders.
- updated can_reach_floor to also exclude ceiling hiders.  This covers a
  bunch of cases, such as pickup, look-here-while-blind, and so on.  Another
  alternative would have been to automatically unhide for all such cases.
trunk only, it's a minor bug IMO and we appear to be close to a release.

21 years agocompilation bit
cohrs [Thu, 27 Nov 2003 06:25:46 +0000 (06:25 +0000)]
compilation bit

21 years agopoison messages (trunk only)
nethack.rankin [Thu, 27 Nov 2003 05:00:29 +0000 (05:00 +0000)]
poison messages (trunk only)

     <Someone> reported something along the lines of

  "You are hit by a little dart."
[ "The dart was poisoned." -- this expected message was missing ]
  "The poison doesn't seem to affect you."

Remove the overloading of ``chance for fatal poison'' and ``thrown weapon''
(which reduces that chance, among other things) for the arguments passed to
poisoned() and change how it decides whether feedback about being poisoned
is needed.  Also, move poisoned() and poisontell() from mon.c to attrib.c.

21 years agointerim status support for X11 and gnome
cohrs [Wed, 26 Nov 2003 23:42:10 +0000 (23:42 +0000)]
interim status support for X11 and gnome
so these window ports can compile with STATUS_VIA_WINDOWPORT defined

21 years agocompilation and warnings bits for new botl code
cohrs [Wed, 26 Nov 2003 21:54:07 +0000 (21:54 +0000)]
compilation and warnings bits for new botl code
- gcc warned that the "anything" initializer needed more braces
- gcc also warned of a couple unused variables
- WIN_STATUS, when STATUS_VIA_WINDOWPORT is not defined, had no type

21 years agoGuidebook update: "Shops"
nethack.rankin [Wed, 26 Nov 2003 08:37:08 +0000 (08:37 +0000)]
Guidebook update: "Shops"

     Add a new section about shops to the Guidebook.  I don't think any
significant spoilers are revealed.

21 years agomore status_via_windowport (trunk only)
nethack.allison [Tue, 25 Nov 2003 00:31:19 +0000 (00:31 +0000)]
more status_via_windowport (trunk only)

It was possible for status_finish to get called twice, therefore free() could end up called twice.

Add a macro symbol for the argument to status_initialize().

Adjust some field widths so that there is a little bit of breathing space.

21 years agostatus change followup (trunk only)
nethack.allison [Mon, 24 Nov 2003 03:35:33 +0000 (03:35 +0000)]
status change followup (trunk only)

- Get the HD display working right when Upolyd.
- add a couple of comments.

21 years agoB02003 - spelling of subkeyvalue option in Guidebook
cohrs [Sun, 23 Nov 2003 21:51:15 +0000 (21:51 +0000)]
B02003 - spelling of subkeyvalue option in Guidebook

21 years agoUnix CLI option to set windowtype
cohrs [Sun, 23 Nov 2003 21:36:36 +0000 (21:36 +0000)]
Unix CLI option to set windowtype
Add the ability to select the windowtype on the command line on Unix using
a new -wwindowtype option.  I had thought the proposed patch could core
dump, but the default windowtype selection occurs earlier and ensures
that raw_print will always work.  So, the only problem with the proposed
patch was it didn't move the linux and sco special-case code until after
the selection was made.  That special-case code really should be moved to
to wintty.c, IMO since it doesn't affect other windowtypes.

21 years agolit and unlit corridors
cohrs [Sun, 23 Nov 2003 21:24:16 +0000 (21:24 +0000)]
lit and unlit corridors
The default symbol for lit and unlit corridors are the same.  This makes
the lit_corridor option a no-op where the defaults are used and also means
that using a light scroll/spell a corridor has no obvious effect.  To
address that, I special-cased the lit corridor symbol and change its color
to bright white when its the same symbol as the unlit corridor symbol (I
didn't change the default color since I thought that made the lit corridor
look strange using the windows console interface).

21 years agounused variables
cohrs [Sun, 23 Nov 2003 20:54:41 +0000 (20:54 +0000)]
unused variables
remove unused variables gcc warned about

21 years agoU751 coordinate typos
nethack.allison [Sun, 23 Nov 2003 17:19:33 +0000 (17:19 +0000)]
U751 coordinate typos

apply.c:   if (cansee(rx,ry)) newsym(mtmp->my,mtmp->my);
mon.c:         (distu(mtmp->my, mtmp->my) <= 5) ?
wizard.c:        (distu(mtmp->my, mtmp->my) <= 5) ?

21 years agopaniclog enhancement
nethack.rankin [Sun, 23 Nov 2003 10:01:58 +0000 (10:01 +0000)]
paniclog enhancement

     Include the version number in paniclog entries, so there'll be more
information whenever someone forwards them to us.

21 years agobuild fix (trunk only)
nethack.rankin [Sun, 23 Nov 2003 09:47:34 +0000 (09:47 +0000)]
build fix (trunk only)

     DEC C warned about a problem and that caused make to quit.

|        idx = (++idx % 2);
|........^
|%CC-W-UNDEFVARMOD, In this statement, the expression "idx=(++idx%2)"
|modifies the variable "idx" more than once without an intervening
|sequence point.  This behavior is undefined.

21 years agostatus display - new file (trunk only)
nethack.allison [Sun, 23 Nov 2003 06:50:48 +0000 (06:50 +0000)]
status display - new file (trunk only)

Introduction of a new set of window port status display
routines.  The new routines are conditional on
STATUS_VIA_WINDOWPORT
being defined in config.h. See the experimental section,
where the #define resides for the time being.

21 years agostatus display - port modules (trunk only)
nethack.allison [Sun, 23 Nov 2003 06:47:13 +0000 (06:47 +0000)]
status display - port modules (trunk only)

Introduction of a new set of window port status display
routines.  The new routines are conditional on
STATUS_VIA_WINDOWPORT
being defined in config.h. See the experimental section,
where the #define resides for the time being.

21 years agostatus display - core modules (trunk only)
nethack.allison [Sun, 23 Nov 2003 06:43:17 +0000 (06:43 +0000)]
status display - core modules (trunk only)

Introduction of a new set of window port status display
routines.  The new routines are conditional on
STATUS_VIA_WINDOWPORT
being defined in config.h. See the experimental section,
where the #define resides for the time being.

21 years agomore El-bereth
nethack.rankin [Sat, 22 Nov 2003 04:25:26 +0000 (04:25 +0000)]
more El-bereth

     Make the same change to Guidebook.tex, although it turns out not to
be needed here.

21 years agoEl-bereth
cohrs [Fri, 21 Nov 2003 16:17:03 +0000 (16:17 +0000)]
El-bereth
add a troff control to ensure Elbereth is not hyphenated.

21 years agoredundant "you finish disrobing" messages
nethack.rankin [Fri, 21 Nov 2003 08:08:49 +0000 (08:08 +0000)]
redundant "you finish disrobing" messages

     Just From a bug report:  getting interrupted and then
resuming would sometimes produce two instances of the "You finish" message
(and evidently consumed an extra turn in the process).  I think this is
an old problem and that it's just coincidence that it showed up right after
the patch dealing with avoidance of stale context for 'A'; the interruption
has to occur when there is just one turn left in removing the final item
so doesn't happen very often.

21 years agostethoscope use on corpses & statues (trunk only)
nethack.rankin [Thu, 20 Nov 2003 04:54:39 +0000 (04:54 +0000)]
stethoscope use on corpses & statues (trunk only)

     Prompted by the report that it was possible to check a corpse at an
adjacent spot while levitating:  substantially revamp the handling of
applying a stethoscope to corpses and/or statues.  Aside from the missing
reachability check, the old code suffered from grammar problems when
multiple corpses were present and it didn't try to figure out the gender
of the monster who left the corpse.

     This now lets non-healers check corpses and statues at any time
(previously that only worked for them while hallucinating).  For healers
it gives some new feedback:  when listening to a corpse, they'll be given
a hint if it (actually any corpse in the pile at that location) is going
to revive, and when listening to a statue they'll be given a hint if it
contains any items.  The existing hint when a statue is actually a trap
is still only given to healers.

21 years agocouple of new routines (trunk only)
nethack.rankin [Thu, 20 Nov 2003 04:40:46 +0000 (04:40 +0000)]
couple of new routines (trunk only)

     Groundwork for forthcoming stethoscope fix:  add an object list
traveral routine (there must be something like this already, but I
couldn't find it...) and a couple of timer access routines.

21 years agono rest_on_space in sample config
nethack.allison [Tue, 18 Nov 2003 12:35:49 +0000 (12:35 +0000)]
no rest_on_space in sample config

21 years agono rest_on_space in sample config
nethack.allison [Tue, 18 Nov 2003 12:30:48 +0000 (12:30 +0000)]
no rest_on_space in sample config

21 years agodisenchanter database entry
nethack.allison [Tue, 18 Nov 2003 02:52:32 +0000 (02:52 +0000)]
disenchanter database entry

21 years agomonsters moving other monsters (trunk only)
nethack.allison [Sun, 16 Nov 2003 20:10:30 +0000 (20:10 +0000)]
monsters moving other monsters (trunk only)

For now, the code is conditional on BARGETHROUGH
being defined, while it gets tested further. While behavior is
different with and without BARGETHROUGH defined, savefiles
are the same either way.

After this patch is applied, only the riders have the M3_DISPLACES
bit set, but the Wizard and Vlad probably should too. Any others?

21 years agodatabase pyrolisk entry
nethack.allison [Sun, 16 Nov 2003 16:39:24 +0000 (16:39 +0000)]
database pyrolisk entry

21 years agowin32: opthelp unavailable
nethack.allison [Sun, 16 Nov 2003 04:54:58 +0000 (04:54 +0000)]
win32: opthelp unavailable
Address a recent complaint from <Someone>.

21 years agohealth food store (trunk only)
nethack.allison [Sun, 16 Nov 2003 04:36:27 +0000 (04:36 +0000)]
health food store (trunk only)

21 years agomore Guidebook bits
nethack.allison [Sun, 16 Nov 2003 04:20:29 +0000 (04:20 +0000)]
more Guidebook bits

21 years agono message
nethack.allison [Sun, 16 Nov 2003 03:59:54 +0000 (03:59 +0000)]
no message

21 years agonewsgroup bit
nethack.allison [Sun, 16 Nov 2003 03:00:21 +0000 (03:00 +0000)]
newsgroup bit

21 years agoGuidebook typo
nethack.allison [Sat, 15 Nov 2003 23:26:18 +0000 (23:26 +0000)]
Guidebook typo

Oops, I spotted a typo that I made in the new text.
For the branch, there is no need to re-synch, as the
the generated .txt version is also patched with this patch.

21 years agomore autopickup_exception
nethack.allison [Sat, 15 Nov 2003 23:15:01 +0000 (23:15 +0000)]
more autopickup_exception

An optimization.

Split the patterns into two chains, one for things you want "always picked up", and one for things you want "never picked up".  That way, the
entire exception list isn't being checked twice, once for each type of
check.  The check for things to "always pick up" only checks the
chain at the AP_GRAB index, and the check for things to "never
pick up" only checks the chain at the AP_LEAVE index.

- Also modifies the toggle autopickup '@' message
appropriately for the AUTOPICKUP_EXCEPTIONS build.
(it just tacks on ", with some exceptions" if there are some)

21 years agoGuidebook bits
cohrs [Sat, 15 Nov 2003 21:01:46 +0000 (21:01 +0000)]
Guidebook bits
Guidebook used both "behavior" and "behaviour".  I think this was the
only word not using the US-English spelling.  Also fixed a spacing bit
in Michael's latest rev to the .mn version.

21 years agoFREE_ALL_MEMORY build fix
nethack.allison [Sat, 15 Nov 2003 19:33:36 +0000 (19:33 +0000)]
FREE_ALL_MEMORY build fix

21 years agoautopickup_exceptions docs and tweak
nethack.allison [Sat, 15 Nov 2003 18:47:32 +0000 (18:47 +0000)]
autopickup_exceptions docs and tweak

- document it
-added a goto (shudder) to return to the menu choices after getting
a list of the autopickup_exceptions

21 years agoresuming interrupted 'A' command
nethack.rankin [Sat, 15 Nov 2003 10:25:09 +0000 (10:25 +0000)]
resuming interrupted 'A' command

[ Caveat:  compiles ok on branch code but only play tested on trunk code;
  the do_wear.c diff is a lot different between the two variants and the
  trunk one includes some whitespace cleanup. ]

     <email deleted> reported that having a spellcasting monster
destroy some armor while you're in the midst of using 'A' to take that
armor off would result in a crash.  The problem was actually more
widespread than that:  having a nymph steal worn items (accessories as
well as armor), or a succubus remove them, or being interrupted by monster
activity and then reading a scroll of destroy armor prior to resuming 'A'
could all produce a similar crash.  'A' relied on stale context and could
attempt to manipulate an equipment slot which had become empty, ultimately
leading to an attempt to dereference a null pointer.

     The 'R' command didn't have this problem since any accessory gets
removed immediately.  The 'T' command already had handling for this:
there's only one item to deal with and multi-turn take off only applies
to some of the slots; the donning() check followed by cancel_don() took
care of those.  Only 'A' was vulnerable to the problem and it wouldn't
necessarily need to be interrupted and resumed; loss of the current
multi-turn item or any pending item would be enough--but I'm not sure
whether such item loss could occur without also interrupting the current
activity, so resumption of previous 'A' was probably a requirement for
triggering the crash.

     This makes shield and shirt handling be similar to other types of
armor instead of relying on the fact that none of them need to have any
attribute adjustments when put on or taken off.  However, there are
still assumptions (the `cancelled_don' stuff) that some slots don't have
any eligible items requiring more than a single turn to use; that should
probably be changed.

21 years agoautopickup exceptions
nethack.rankin [Sat, 15 Nov 2003 08:09:18 +0000 (08:09 +0000)]
autopickup exceptions

     External names longer than 31 characters trigger a compiler warning
for me about truncation, and that causes make to quit.  So shorten the
two long names.  Also, call the cleanup routine for the FREE_ALL_MEMORY
configuration.

21 years agoautopickup_exceptions enhancement
nethack.allison [Sat, 15 Nov 2003 02:49:07 +0000 (02:49 +0000)]
autopickup_exceptions enhancement

An enhancement to the original to allow
two types of exceptions:
      always pickup
      never pickup

To specify "never pickup", begin the pattern string with '>'
which is NetHack's down direction symbol (for "leave it down")

To specify "always pickup", begin the pattern string with '<'
which is NetHack's up direction symbol.

For example, to pick up all arrows, regardless of the pickup_
types setting:
autopickup_exception = "<*arrows"

21 years agoautopickup_exceptions build followup
nethack.allison [Sat, 15 Nov 2003 01:17:44 +0000 (01:17 +0000)]
autopickup_exceptions build followup

- correct an obsolete, incorrect comment

21 years agoautopickup_exceptions build option
nethack.allison [Sat, 15 Nov 2003 01:05:32 +0000 (01:05 +0000)]
autopickup_exceptions build option

Add config.h experimental option AUTOPICKUP_EXCEPTIONS.

It's an interface-only change which allows you to add lines to your
config file to selectively avoid autopickup of items based on their
text description that is displayed when you pick them up. It does
it by matching a pattern against the xname singular return value.

For example:

autopickup_exception = "*corpse" will avoid picking up corpses, even if
food (%) is in your pickup_types.

autopickup_exception = "*brown*"
will avoid picking up any brown items (why, I do not know)

autopickup_exception = "*loadstone"
will NOT avoid picking up loadstones, unless they are already
identified, because the xname string will be "gray stone", so no
match there.

The matching has no knowledge of in-game objects, it is just
a text pattern match, thus it is an interface change, not a gameplay
change, and it is meant as a convenience for players.

21 years agowin32tty: Fix an early error message crash
nethack.allison [Sat, 15 Nov 2003 00:38:59 +0000 (00:38 +0000)]
win32tty: Fix an early error message crash

21 years agono message
nethack.allison [Sat, 15 Nov 2003 00:23:15 +0000 (00:23 +0000)]
no message

21 years agoB01004 No mimic corpse effect on pet (trunk only)
nethack.allison [Wed, 12 Nov 2003 03:28:26 +0000 (03:28 +0000)]
B01004 No mimic corpse effect on pet (trunk only)

Make a mimic effect that lasts only as long as the
pet is still consuming the corpse.

21 years agodeafness fix (trunk only)
nethack.rankin [Mon, 10 Nov 2003 08:09:15 +0000 (08:09 +0000)]
deafness fix (trunk only)

     Evidently the trunk code isn't undergoing much testing lately;
"you hear <blah>" messages have been broken for a couple of weeks now.

21 years agosilver wands followup
nethack.allison [Mon, 10 Nov 2003 01:39:38 +0000 (01:39 +0000)]
silver wands followup

There was code higher up that could destroy the obj,
so this eliminates any risk of trying to dereference a
bad pointer in the deferred silver message by saving
a copy of the name earlier on.