Commit Graph

2063 Commits

Author SHA1 Message Date
nethack.rankin
9327d35592 gameover
The recent bones panic included "program initialization failed"
during final rundown.  The cause of the panic has already been fixed;
this fixes the silly message that was delivered with it.

     Also, disclose the contents of carried statues along with normal
containers when the game ends.
2003-03-10 23:43:28 +00:00
nethack.rankin
7350d4fc98 tune notes hint
Add <Someone>'s suggestion for the expected input value to the prompt for
playing a tune, and implement handling for alternate note "H" which seems
to be used as a variation of "B" by some Europeans.  The Amiga part is
untested but "can't be wrong"(tm).
2003-03-10 23:36:01 +00:00
cohrs
1a428307f3 non-humanoid lawful minions wearing armor
<Someone> reported that couatl and ki-rin could wear boots and gloves.
Two problems: 1. all minions were created with a sword and armor, even those
that couldn't use them.  2. couatl and ki-rin were missing some important
bits in their M1 flags.
Now neither couatl or ki-rin are created with armor, and they won't try
to wear any armor they cross in the dungeon.
2003-03-10 20:57:49 +00:00
nethack.allison
4e1c4a5f74 move fixes entries
Move the entries that match fixes34.2 entries into fixes34.2 on the trunk
rather than in fixes35.0 as per earlier discussion.
2003-03-10 15:17:13 +00:00
arromdee
6cbff0150f invisible pets
Invisible pet fix for the recently reported bug, as well as another one found
in the process.
2003-03-10 04:13:05 +00:00
nethack.allison
956c9727b0 more golem stone-to-flesh
Since all golem statues are stone, make them all become flesh.
2003-03-09 22:24:19 +00:00
nethack.allison
30d81e9097 statue of stone golem animates as flesh golem 2003-03-09 18:39:26 +00:00
cohrs
8de1ed25c0 yet another grammar bit
<Someone> mentioned a bad grammar bit in the newsgroup.  Backported
to 3.4.2 as well to save us from many repeat bug reports.
2003-03-09 17:47:05 +00:00
nethack.allison
662688508a fixes34.2 put back blank line I accidentally removed 2003-03-09 16:17:16 +00:00
nethack.allison
e7d9a5901e fixes34.2 win32tty update 2003-03-09 16:14:56 +00:00
nethack.allison
daed1ff394 win32tty distinguish between black/gray/white 2003-03-08 23:47:14 +00:00
cohrs
baa912fa61 U319 - lotu juice
Valid fruit names like lotus would result in funny fruit juice names, eg
"lotu juice".  Looking at a long list of words ending in "us", the ones one
might reasonbly use for a fruit name were all singular, as were almost all
of the unreasonable words.  Changed the logic to prefer to leave "us" words
alone, except for 2 monster types that might be entered with "s" at the end.
Tengus is not correct, according to makeplural, but I put that in to be nice.
2003-03-05 05:45:45 +00:00
cohrs
4d6cfb01a7 U313 - crash applying figurine, cursed bell or candles
Reported for applying a figurine that was used up, but I found the same
problem could affect cursed bells and candles.  Modified all three helper
functions to indicate when the object is gone, and modified doapply to
deal with this before doing the artifact check.
2003-03-04 06:53:25 +00:00
nethack.allison
27977b7c15 win32 stuff held until after bugfix release (from <Someone>)
-better handling of "more" prompt for messages that would have      scrolled off the window
-support perm_invent
-menu option to add/remove windows captions
2003-03-03 23:31:36 +00:00
cohrs
b83d8d3b5d U58 - Targetting problem with infravision/ESP
A skilled/expert caster of fireball/cone of cold was not able to target
a location with a monster seen only by infravision/ESP.  Since you can
focus on the monster there, targetting shouldn't fail in this case.
Attempting to lock onto a monster inside stone still won't work.
2003-03-03 05:56:58 +00:00
cohrs
77c538e164 B20008 - seeing pet move
The cansee() checks are not really correct for seeing your pet move.
Changed them to a pair of canseemon() checks, one before the move, one after.
I can see an argument for canspotmon(), but decided to keep it based on sight.
If your pet is unseen in both locations, you won't get any messages, which
I think is more correct.  If you do get the message, use noit_Monnam to
ensure no more "it" message.
2003-03-02 21:54:37 +00:00
cohrs
ab5ab8e580 remove duplicated fixes
Un-list fixes also listed in fixes34.2.  This causes the fixes files to
still reflect all the changes since the last one, from the point of view of
someone seeing a release tarball.
2003-03-02 15:46:20 +00:00
nethack.allison
f566eb2b4e W341-2 Finnish and international keyboard arrangements 2003-03-02 13:45:56 +00:00
cohrs
be0ad1b8ab opthelp for use_inverse
<Someone> (beta) noticed while 3.4.1 was in the process of releasing
that use_inverse wasn't documented in the opthelp.
2003-03-02 07:25:46 +00:00
cohrs
bfd5856d4f Yname2 vs yname
<Someone> noticed a capitalization mistake in a new message.
2003-03-02 07:02:00 +00:00
cohrs
94d4c78bdf data.base typo
<Someone> noticed that we didn't thoroughly spellcheck data.base.
2003-03-02 06:49:35 +00:00
cohrs
f60f576727 Building src objects via Makefile.utl
<Someone> noticed that if one builds something in util and the required .o
files aren't already built in src, the .o gets placed in the wrong place.
Added the missing '-o $@' to the compilation command.
2003-03-02 06:21:29 +00:00
cohrs
b6da412ef1 U277 - Gnome compilation on Redhat 7.2 & 8.0
Reported on RH 7.2 and 8.0.  Compilation failed because system headers that
needed _GNU_SOURCE on these Redhat versions got included before it was
defined.  To ensure _GNU_SOURCE is defined, added an autodetect for it to
config1.h and removed the need to set it in unixres.c.  __linux__ is also
checked elsewhere.
2003-03-02 06:07:19 +00:00
cohrs
a9a7ffe18f U295 - bones file creation cursing secondary weapon caused panic
As reported, if you're twoweaponing and die, your secondary weapon may
become cursed and drop.  But, the bones file code is dropping everything
and tries to drop it again, causing a panic.  drop_upon_death just clears
things out, so follow suit for uswapwep.
2003-03-02 05:41:00 +00:00
cohrs
0e3d283508 C341-1 - don't make monsters angry if they enter non-hero regions
this currently affects only regions created created by deads heros
found in bones files
2003-03-02 05:33:45 +00:00
cohrs
0f03444261 new 3.5.0 fixes file, for trunk changes until further notice 2003-03-02 03:33:55 +00:00
nethack.allison
4b36eda755 fixes34.2 2003-02-24 01:39:41 +00:00
nethack.rankin
7aeaeac8e3 fix B20003 - hallucination and warning
> Why does warning work normally while hallucinating?  I'd like to see
> random numbers.

     It's just a one-liner, although it has pointed out problems in the
symbol lookup code.  "0" won't work at present, so this doesn't use it,
but warning symbols "1" through "5" also have trouble--regardless of
hallucination--if someone overloads them to represent any feature aside
from warning.
2003-02-20 00:19:49 +00:00
nethack.rankin
8d6d715f8d teleporting monster strategy
Reported last spring and again last week:  monsters who teleport to
your location (named demons, master liches, and so forth) continue to do
that even if they've just used a scroll or wand of teleportation to get
away from you.  This doesn't prevent that situation but does make it be
much less likely to occur.
2003-02-19 09:55:17 +00:00
nethack.allison
0f51c0174f undead turning of ghost on bones level
<email deleted>
Newsgroups: rec.games.roguelike.nethack
Subject: Re: Other ways to destroy the Amulet

<Someone> wrote:
>>> Zapped undead turning at his _corpse_, which brought the corpse
>>> back to life and also destroyed the ghost. The revived
>>> character was not carrying anything.
>>
>> Hmm, didn't the Amulet fall to the floor like when you genocide
>> something that's carrying something?
>
> Nope.
>
> That's because undead turning does mongone(ghost). The mongone
> function destroys the inventory of the monster:
> discard_minvent(mdef); /* release monster's inventory */
>
> Whereas genocided monsters are removed with mondead, which calls
> m_detach, which calls relobj, which drops the monster's inventory
> on the floor.
2003-02-19 04:31:46 +00:00
cohrs
7c937d2186 B20001 - shopkeeper angry at unnamed customer
The "following" flag could get set in several places where it was not
obvious that the customer name would be remembered.  Since the shopkeeper
should always get angry at the current player, set the name at the same
place that the flag is set.
2003-02-18 17:08:04 +00:00
nethack.allison
9ac4afe46e fixes update SELF_RECOVER on winCE 2003-02-15 13:53:24 +00:00
nethack.rankin
4496ca3d85 fix B18012 - Werebane
Make wielding Werebane confer defense against catching lychanthropy
from monster bites.  It doesn't protect against catching that from eating
lycanthrope corpses and might blast the character if wielded at such time.

     Also fix artifact handling to recognize the character as lycanthrope
while in normal human/elf/whatever form--rather than only when in beast
form--just like it does for monsters.
2003-02-14 01:06:08 +00:00
nethack.rankin
a20dc69dee fix U206 - cursed leash/pacifist conduct
Treat strangling a pet with a cursed leash like a regular monster
kill; you'll get experience, lose pacifism conduct, and suffer various
pet-killer effects.  Also do some minor damage and reduce tameness for
the case where the pet is described as being choked but isn't killed.
2003-02-13 23:32:48 +00:00
cohrs
d1fdc497d2 U162 - killing shopkeeper with unpaid thrown objects
While an object is being thrown, it isn't on any list.  This means that
killing a shopkeeper with an unpaid object wouldn't be able to clear the
unpaid bit.  By the time the object lands, the shopkeeper is gone, and then
it's too late.  Added a new global to track a thrown object, set it and later
clear it in throwit(), also clear it as needed in dealloc_obj(), and check
it in setpaid().  It should be possible to use this global to avoid losing
thrown objects during hangup saves as well.  But that can wait.
2003-02-13 07:52:49 +00:00
cohrs
6885f18bb1 steeds don't remember traps
<Someone> reported to the list that steeds didn't remember traps
encountered while mounted.  When not mounted, a monster will remember
traps, even when they don't damage the monster.  To that end, added code to
set the steed's mtrapseen mask.
2003-02-13 05:23:46 +00:00
cohrs
07ba201768 B17007 - ctrl/p documentation
mention msg_window in the Guidebook and long online help.  I didn't update
hh since that only has one-liners.  Also made the msg_window default clear
in the Guidebook and opthelp.  Plus, an update to Guidebook.txt in hopes
that it won't need another before release.
2003-02-13 04:55:29 +00:00
cohrs
b48b6addf3 U260 - waiting times out for no reason while in were form
The initial report thought this was related to summoning help.  It's not.
moveloop would attempt to call you_were() even when you_were() would not
actually change your form.  Certainly there's a layering problem here, but
for now, just put in the same check peffects() uses to avoid calling
you_were() unnecessarily.
2003-02-12 02:07:22 +00:00
nethack.rankin
fe05bcf52d falling into water while asleep
Try to fix the reported bug of not waking up if sleeping on ice
that gets melted out from under you.  This fixes the straightforward
case but I suspect there are other permutations that it doesn't cover.
Teleporting out of water is now blocked if asleep; waking up occurs
after the chance for that has passed.
2003-02-11 11:57:14 +00:00
cohrs
8930e5b442 nethack -s buffer overflow fix
When printing invalid player names in -s mode, it was possible to overflow
the output buffer due to a missing buffer size check.  On shared Unix-like
systems with executable stacks, this could be used as a security exploit,
eg to obtain a shell running as user or group games.
While I was at it, removed a dead block of "#if 0" code
2003-02-10 19:01:58 +00:00
nethack.rankin
6c1d28753c magicbane fixes
Revamp the Magicbane code so that it won't result in "<monster>
turns to flee" followed by "the magic-absorbing blade scares <monster>".
In the process I noticed that resistance checks for its scare and purge
effects were based on the character's experience level regardless of who
was wielding it or who its target was.

     I didn't try to retain the exact behavior it had before, but the
new behavior is pretty close.  The main differences are that the "purge"
effect is now called "cancel" and that the stun effect will be less
common now and always gives feedback when it occurs.  It used to combine
stun with scare and/or purge in some cases, now it won't; and it used to
always scare when purging, now it will pick one or the other.
2003-02-10 11:08:29 +00:00
nethack.allison
c75490f67f win32tty fixes34.1 catch up 2003-02-09 11:35:38 +00:00
nethack.allison
c2c72d11e7 B18009 animate figurine over water
>More worrying is the fact that applying a figurine over water lets
>the monster wait until its next move before it drowns (giving
>you time to teleport it to safety, or whatever) [...]
>Should there be a minliquid() check as part of make_familiar()?

Applying at the water location next to you was easy. But
applying it at your own location (triggering BY_YOU)  could
end up placing the figurine at the far side of the level if
there was lots of water.

Correcting that required the ability to pass a flag from
make_familiar to makemon() telling it to not rule out
water locations as good positions.  The flag had to
be passed on down to goodpos() and enexto().

The bulk of this patch is just adding an additional
argument to goodpos() in all of the callers.
2003-02-09 05:39:32 +00:00
nethack.allison
0a0c4dde30 xorns sink when drawbridge is raised
From <Someone>'s list: Xorns don't sink if the drawbridge they're standing on is
raised.
2003-02-09 02:05:02 +00:00
nethack.allison
9033b80719 fix B18011 warning loss
> If you remove a ring of warning, see_monsters() is called to make
> sure that the numbers get removed from the display. However, if
> your only source of warning is experience level and you get
> drained and feel "less sensitive", it isn't, and they're not.
2003-02-09 00:36:33 +00:00
nethack.allison
7dbed130dc fix B18010 fatal exploding chest at ball & chain 2003-02-08 22:00:58 +00:00
nethack.rankin
02d9ab252d fix B18007 - travel cmd forces extra keystroke
I don't know whether there were any other odd situations besides moving
onto known traps being caused by the out of date value in flags.run; several
places do check to see whether it's 8.
2003-02-07 10:04:27 +00:00
nethack.allison
2eeb979497 port-specific debug-mode command
Provide a way to have a port-specific debug-mode commands
if PORT_DEBUG is defined at build time.

Add a win32 keystroke checking routine to assist debugging
of international keyboards.

Fix a problem with the way NetHack was handling
international keyboards by letting ToAscii() come
up with an input character based on the virtual key,
and the shift and caps lock state.
2003-02-06 03:07:43 +00:00
nethack.allison
4c03322d92 Crunched to crunched
<email deleted>
> comments: When dieing from an iron ball landing on your head, the death is
> listed as: "Crunched in the head by an iron ball"
> However no other deaths start with a capital letter.
2003-02-04 00:14:08 +00:00
nethack.rankin
02d784f039 fix U242 - bug with monks
Monks get a big penalty to hit when wearing a suit; otherwise they
get a bonus when not wielding a weapon.  But as reported, that lets them
have their martial arts bonus even while wearing a shield which does seem
rather unexpected.  This change makes them only get their to-hit bonus
while shieldless as well as weaponless.  Impact on play balance is likely
to be quite small; late game characters hardly ever miss due to high luck
bonus and very early game ones won't have found a shield yet.

     Shouldn't the "your armor is cumbersome" message be ``if (verbose)''?
2003-01-31 06:41:56 +00:00