Commit Graph

437 Commits

Author SHA1 Message Date
nethack.rankin
cd62daa465 fix U88 - invisible hero didn't sense self via ESP
If the character was invisible without being able to see invisible,
his location on the map showed any object there or underlying topology
instead of the hero even when monsters could be seen with infravision,
ESP, or sustained monster detection.  The ESP case required an amulet
or helm or quest artifact to be noticeable because being blind overrides
being unable to see invisible, so the more common form of telepathy
didn't exhibit this behavior.
2002-10-04 02:46:02 +00:00
nethack.rankin
075425a9ac unicorn horn dipping
Implement <Someone>'s suggestion for addressing <Someone>'s
complaint about the inadequate feedback given when dipping a unicorn
horn into a potion to convert it into water.  (Mainly, if the potion
has already been given a name, you won't be prompted to give it one
when dipping transforms it; if that was the last one you had, getting
"The potion clears." isn't sufficient to let you keep track of what
type of potion was cleared.  You still have to keep track of such
stuff yourself, but now you'll get "The swirly potion clears." so you
at least don't have to start remembering or recording the type prior
to dipping.)

     The hallucination handling isn't very useful; the description is
given will full accuracy by the immediately following inventory update.
2002-10-02 21:33:08 +00:00
nethack.rankin
b541bbef1d sleeping shopkeeper
Fix the reported problem of a sleeping shopkeeper advising you
to be careful about digging.
2002-10-01 08:51:28 +00:00
nethack.rankin
c3a9637ba7 touchstone use
Make touchstones more convenient to use after they're identified
by only listing unknown gems as likely candidates.  This doesn't prevent
other stuff from being rubbed on them, just alters the prompt string and
the subset of inventory shown for '?'.
2002-10-01 07:23:10 +00:00
nethack.rankin
db9f82bed4 removing forgotten rings
Removing a ring of protection/strength/constitution/charisma
which has been made unknown by amnesia might reveal what it is due
to status line changes, so relearn it when that happens.  This also
consolidates the three characteristic enhancing types into one case.
2002-10-01 06:20:36 +00:00
cohrs
eb86874a71 Guidebook.txt sync 2002-09-30 03:42:29 +00:00
nethack.allison
d64759dd6c B12007 yellow light animal parts
Uses "ray" for arm-related parts, "beam" for everything else.
2002-09-29 16:41:16 +00:00
nethack.rankin
abf1ee5797 fix B08011 - request for "wield" change
Implement's <Someone>'s suggestion that the currently wielded
weapon be included among the list of inventory candidates for the
wield command.  It affects the list of letters shown in the prompt
and the subset inventory displayed if you respond with '?'; it doesn't
change how wielding works or what item you can pick to wield.

     Do the same thing for quivering:  include any currently quivered
item among the choices.  Also include the secondary weapon as a choice
if you're not actively two-weaponing.
2002-09-28 06:48:25 +00:00
nethack.rankin
889e2164b5 another dungeoneers update
Add <Someone> this time.
2002-09-26 07:37:12 +00:00
nethack.rankin
ef14456b3d eucalyptus leaf whistles
Add <Someone>'s patch that enables using the apply command
on eucalyptus leaves to produce a whistle effect.  Blessed leaves
behave like magic whistles; I added a chance for the blessing to be
used up in the process.

     The invent.c diff is almost all reformatting.
2002-09-26 07:26:03 +00:00
nethack.rankin
bd6f5b87bf "eye of newt"
Add <Someone>'s "eye of newt" patch, which confers energy
when eating a newt corpse.  Consumed energy is restored by up to 3
points, and if that takes the character past max energy there's a
chance to boost the latter by 1 point.  I introduced randomization
so that level 1 characters can't just kill and eat all the newts on
the first couple of levels to unconditionally boost their initial
mana (22% chance per newt to increase max energy now instead of his
original 100% chance).
2002-09-26 07:13:10 +00:00
nethack.rankin
846de96a4a two figurine tweaks
Fix the reported problem of applying a figurine while swallowed
and getting a message about setting the figuring on the ground.  Rather
than coming with special messages, just prevent it would activating if
you're swallowed at the time.

     Also prevent figurines from creating the 4th erinys or 10th Nazgul.
I'm not sure whether to bother doing similar handling for stone-to-flesh
cast on statues.
2002-09-26 04:05:54 +00:00
nethack.rankin
c9799a4231 update dungeoneers list 2002-09-24 09:42:53 +00:00
nethack.rankin
4d251c6688 fix B10003 - GOLDOBJ: BUC gold; identification
Curse and bless status has no meaning for gold.  Likewise
for erosion and other object flags controlling whether an item is
considered to be fully identified.
2002-09-24 03:20:22 +00:00
nethack.rankin
b0f2478b51 check_leash's handling of 2nd leash
Noticed by code inspection:  the inventory scan to find leashes
in use didn't reset the monster traversal loop for each leash, so
with more than one active it wouldn't necessarily find and check the
monster attached to the second one.
2002-09-24 02:11:10 +00:00
nethack.allison
183e450b1b B12004 polymorphing into minotaur
Polymorphing into creature with horns such as a minotaur,
will cause your helmet to fall off if it is made of a hard material.

Only minotaurs pass the has_horns() test in include/mondata.h
because the complaint specifically referred to them, but that
should perhaps be reviewed at some point by someone who is
certain which creatures have horns growing from their
head (some demons?)
2002-09-22 15:59:46 +00:00
nethack.rankin
ce4bfb6a1a fix B12005 - polyself and gender
The ^X attributes were always showing "neuter" when polymorphed
into a non-humanoid creature.  This fix also suppresses the extra
"gender (base)" entry when that has the same value as the preceding
"gender" entry, it eliminates the redundant label "deity" from the
three entries in the deities section, and it capitalizes the alignment
names that nethack uses as proper nouns.

     This patch also introduces the capability of skipping the second
screen of enlightenment attributes (given for explore and wizard modes)
by terminating the first screen with ESC (or however else menus can be
explicitly cancelled for any given interface).  That has no noticeable
effect during normal play.
2002-09-21 07:17:14 +00:00
nethack.rankin
c42c14e5a6 running across vibrating square
Some newsgroup discussion has reminded me something I've meant
to do for a long time.  Stop running when you get the special message
about the floor vibrating under your feet.  Also vary it when you're
not actually stepping on the ground.
2002-09-20 07:26:12 +00:00
nethack.rankin
709748234d fix B12003 - kicking a box embedded in a wall
Move a block of kicking code so that freeing items stuck inside
solid work takes precedence over breaking open containers.  Now the
box has a chance to fall out like other types of objects (and if it
fails that chance, there's just the normal message about not coming
loose--no attempt to actually kick open the box will occur).
2002-09-20 05:05:46 +00:00
nethack.rankin
651e886d66 fix B12001 - ?--More--single line menu
From a bug report:
3.4.0 broke the ability to pick the only listed inventory letter when
user typed '?' during object selection and one candidate was listed on
the top line followed by --More--.

What do you want to throw? [b or ?*] ?
b - 7 +0 daggers (alternate weapon; not wielded).--More--b
<behaved as if user hit ESC instead of 'b' but didn't say "Never mind.">

(Dismissing --More-- the normal way and getting a new selection prompt
worked as usual.)  The problem was caused by changes in getobj's count
handling; the message_menu() routine isn't able to handle counts but
display_pickinv left the count as 0 while caller expects -1 for "count
not specified".

     This was a core bug but I put the fixes entry under "tty" since
no other interfaces are affected.
2002-09-17 06:35:49 +00:00
nethack.rankin
b789a08f94 disclosure after sink fall
From the newsgroup:  if you die from the fall when losing
levitation while moving over a sink, the final attributes still
said you were levitating.
2002-09-14 13:24:22 +00:00
nethack.rankin
ba8d740500 treasure detection
Expert and skilled detect treasure was changed to behave like
blessed object detection in 3.3.1, but it didn't work as intended.

> Subject: [patch] skilled detect treasure doesn't detect object types
> <email deleted>
> Date: 13 Sep 2002 09:58:41 -0400
> <email deleted>
>
> It looks like the detect treasure spell when cast with skilled or expert
> ability in divination is supposed to detect the type of an object ("a
> scroll of identify" rather than "a scroll"), but this doesn't actually
> work in 3.4.0.  Here is a fix.
2002-09-14 13:00:20 +00:00
nethack.rankin
6772c3973c more starving pets
The fact that a pet was starving to death got recorded with its
corpse; if that corpse was revived via undead turning, the resulting
monster would immediately starve again if it stayed tame.  Similarly,
if one got petrified while nearly starved, reanimating the statue would
produce a starving pet.  Make revival and reanimation use the same code
as life-saving, where hunger status gets reset.
2002-09-14 05:48:40 +00:00
nethack.rankin
6f63f81b86 pet fodder
Allow starving pets to consume items they wouldn't ordinarily
eat.  Carnivores will eat fruits and vegetables--such as they are--
and herbivores will eat assorted rations.  Even though eating such
rations doesn't violate vegetarian conduct for the character, horses
would never eat them.

     This change should allow players to keep mundane steeds alive
much longer.  The new behavior doesn't kick in until the pet has
been classified as starving though; it doesn't affect ones who are
merely hungry.

     This also gives the reason why a starving pet has died instead
of just saying "<pet> dies" whenever it starved with hit points left.
2002-09-13 05:31:54 +00:00
nethack.rankin
ce71bfb593 cursed levitation prayers
Noticed while testing something recently:  if you're wearing
a non-cursed ring of levitation but can't remove it because of
some other cursed item, you'll never get the high priority result
of TROUBLE_LEVITATION when praying.  This remedies that.
2002-09-10 08:01:18 +00:00
nethack.rankin
786ed93751 intrinsics of dead monsters
Monster traits that are used to revive some corpses or statues
with their old attributes were retaining intrinsics conferred by worn
items.  To prevent that, strip such attributes at time of a monster's
death before the traits are recorded.  Statue handling needs to some
more work; now that extra speed is lost, there's an out of place
message if/when a revived statue gets to put on its old speed boots.
2002-09-09 09:02:21 +00:00
nethack.rankin
b8f368ced4 bandaid for #U49
Partially deal with the reported silly message combination

> Also, when unwielding a weapon using 'A', you get the messages
> "You are empty handed.  You finish disrobing."

by saying "disarming" rather than "disrobing" when manipulating
just the three weapon slots.  Handling weapons in combination
with armor or accessories or both still says "disrobing" though.
The case when dealing with just accessories should pick something
else, but the closest I've thought up so far is "divesting" and
I don't think that works very well.  Is there a better term for
taking off jewelry?  If so, would it end up being out of place
when applied to nethack's selection of eyewear?
2002-09-09 07:36:13 +00:00
nethack.allison
1620f9e44e USER_SOUNDS follow-up
Make the support of user sounds apparent in the
#version command.  Also add a small section on
them to the Guidebook.

(The doc/Guidebook.mn version of this section
needs testing)
2002-09-03 02:36:16 +00:00
cohrs
15240f55cd purple worms affected by corpses
Forwarded from the newsgroup as noting that dropping a chameleon corpse
into a purple worm did not cause polymorph nor will the digestion attack.
Added code to dropy and mdamagem to include special corpse effects like
those in dog_eat and meatobj.
2002-09-01 14:57:28 +00:00
nethack.rankin
c33417fc05 B10002 - enlightenment grammar bug
>       In my final attributes;
>       "You had +1 bonus to hit."
>       Surely "You had a ..." ?

Also moves the hit and damage bonus feedback from the "troubles"
section to the "physical attributes" section and delivers it for
every enlightenment rather than just after the game is over.
2002-09-01 09:56:55 +00:00
nethack.allison
304ac1488b message when trying to wear HoOA on quest 2002-08-31 20:47:04 +00:00
nethack.allison
47f4cf21aa doomed quest
Your quest leader would tell you to return later, even after you
were converted, which would be futile, and could mislead new
players.

This patch:
1. Causes the quest leader to banish you the first time you
encounter him/her following a conversion, since you cannot ever
complete the quest anyway in the current game.
2. Adds a new general QT_BANISHED message to be delivered, in
which you are told that you won't be able to get the Amulet without
the Bell now.

This helps resolve the complaint about not knowing that your game
cannot be won.
2002-08-31 20:14:17 +00:00
nethack.rankin
5088492cf6 speed of petrified monsters
Someone posted in the newsgroup about using stone-to-flesh
to reanimate a petrified pet and having it come back to life with
boosted speed intact.  When the character gets petrified, stripping
speed is one of the first things which happens, so now do that for
monsters too.  I decided not to make monsters who have normal speed
become slow; there isn't any analogous case for the player.

     Possible bug:  while testing this, I zapped a wand of probing
at a hill orc which had just eaten a lizard corpse to save itself
from stoning.  The feedback said "eating" but the orc immediately
hit and killed me as if it wasn't affected by any movement delay.
2002-08-31 09:24:08 +00:00
cohrs
36905aaf96 U29 - mounting steed gets thru tight spots
Mounting a steed would work even when done diagonally at a doorway,
such as a shop door.  Use test_move to check for all such moves and disallow
the mount in this case.
2002-08-30 06:17:41 +00:00
nethack.allison
eb2503deac bees from trees
<email deleted> wrote in the newsgroup:
> "You've attracted the tree's former occupants!"
> (nothing happens)
>
> Yes, it's _zero_ to four bees, depending on your luck.  I think it's meant
> to be one to five, though.
>
2002-08-30 02:55:21 +00:00
nethack.allison
510ae5b5f2 take_gold() crash with GOLDOBJ
Possible fix for B10001.
When the code went into case 3 in cursed_book(),
the game hung in an endless loop in take_gold().
The call stack was:
    take_gold() line 22 + 10 bytes
    cursed_book(int 2) line 124
    study_book(obj * 0x00968860) line 421 + 19 bytes
    doread() line 130 + 9 bytes
    rhack(char * 0x005b8eac in_line) line 1813 + 3 bytes
    moveloop() line 405 + 7 bytes
    main(int 3, char * * 0x00962ac0) line 93
2002-08-29 02:23:47 +00:00
nethack.allison
d4cdca6c86 win32tty ALT+CTRL entry for fixes34.1 2002-08-24 15:24:09 +00:00
nethack.allison
ba5640ce9a window.doc update
Nethack doesn't like zero,
or zero with the meta bit set.
2002-08-23 18:30:01 +00:00
cohrs
c3125ec0f9 hitting and mhurtle
Fix part of the buglist entry regarding hitting and mhurtle.  Flag if
mhurtle already killed the monster, and don't call killed again in this case.
One of the new checks for this already_killed flag is just futureproofing.
2002-08-23 05:47:54 +00:00
nethack.allison
2ce6152d63 B08021 scroll_amount wincap option
> - I'd like to see another option added: scroll_amount. In
>   combination with scroll_margin, this would control the amount
>   of squares the screen is scrolled when the scroll_margin is
>   reached (currently, this amount is 1, but if I recall
>   correctly, it used to be more). For example, if both were 5,
>   when you came within 5 spaces of the left screen border, the
>   screen would shift 5 spaces to the right).
2002-08-23 01:03:59 +00:00
nethack.allison
36978c60fd const and char* to char[]
contributed by <Someone>
2002-08-22 07:31:44 +00:00
nethack.rankin
b840adcb62 trickery bulletproofing
Prevent the pardoning of trickery in wizard mode from attempting
to continue when there's no longer any current level.  Also prevent
the ZEROCOMP configuration from trying to read from file descriptor -1
in case there're any other places which still let that slip through.
And fix an oddity in the VMS port's error() routine which has gone
unnoticed for years.
2002-08-22 03:05:18 +00:00
nethack.rankin
f13035aa48 B09001 - mhp > mhpmax after life drain
A monster hit by Stormbringer could take less damage to current
HP than it took to max HP if attacker had sufficient penalties, so
end up being healthier than its new maximum.  This only applies to
attacks by the player; attacks by monsters don't include the sorts of
modifiers that can trigger it.
2002-08-22 01:44:24 +00:00
nethack.rankin
d5c2438652 bad "cad" message
From the newsgroup:  taking a shop-owned pick-axe out of a
container inside a shop gave a misleading message telling the
player to take the pick-axe out of the shop.  It was caused by
using the object's `unpaid' field before addtobill() had set it.
2002-08-22 01:23:31 +00:00
cohrs
59a96452ff B04006 - Grayswandir and unicorn horns
Implement a check in make_hallucinated similar to the check in make_blinded
to handle the case where your hallucination is cured but Grayswandir is
suppressing its effects anyway.
2002-08-22 00:13:03 +00:00
cohrs
5d492abf6f R1049 - various wand of digging bugs
- Breaking wand of digging dug through rock which should be undiggable.
Checks assumed pits would never show up in solid rock.
- Breaking wand of digging near shop walls wouldn't anger the shopkeeper
Checks assumed pits would never show up in walls, also, added a special
case to pay_for_damage to handle the case where you're falling thru and
can't be asked to pay.
- Shop walls wouldn't be restored if there are pits in the way.
Checks assumed pits would never show up in walls.
- If there was a hole outside the shop, you could kick stuff out of the
door into the hole without shopkeeper noticing.  Added the missing check.
2002-08-21 23:06:58 +00:00
cohrs
aedda43f38 tearing spellbooks while confused
Reported to the newsgroup, the code in study_book for the effect of
confusion on studying a book was never reached.  Removed the deprecated
check from read.c
2002-08-21 16:42:10 +00:00
nethack.allison
411195c75f suggestions from <Someone> 2002-08-21 11:02:56 +00:00
nethack.allison
ab393cd0d6 fixes34.1: SELF_RECOVER for win32, chdir 2002-08-21 03:42:36 +00:00
nethack.allison
6578eb1884 B07004 camera breaks on shade 2002-08-20 00:03:17 +00:00