cohrs [Wed, 21 Aug 2002 04:48:17 +0000 (04:48 +0000)]
B08018 - vision when breaking closed doors
Do vision_recalc immediately when blasting a door so that all the
subsequent messages for the same blast hitting other things are all
evaluated with the same vision in effect.
nethack.allison [Tue, 20 Aug 2002 11:43:16 +0000 (11:43 +0000)]
Remove www link for coyote names
The link is no longer valid. I found another
link, http://tultw.com/bios/latin.htm
but this doesn't seem like something we
want to direct maintenance effort towards.
So this removes the link altogether.
nethack.allison [Tue, 20 Aug 2002 08:05:20 +0000 (08:05 +0000)]
string constants
<Someone> wrote:
> Linux, Redhat 7.1 nethack 3.4.0
>
>Please see attached patch file.
>
>I'm attempting to move more stuff into the "read-only" area, in
>preparation for a port to another OS.
cohrs [Mon, 19 Aug 2002 17:10:34 +0000 (17:10 +0000)]
B08012 - tweaking travel and closed doors
- when testing travel locations, don't treat diagonal moves thru closed
doors as possible, unless player can go/dig thru door
- treat closed doors and boulders as expensive for travel, preferring open paths
nethack.allison [Mon, 19 Aug 2002 01:12:23 +0000 (01:12 +0000)]
more win32 recover
It turns out that the processentry32 structure contents
are slightly different on 2000/XP than they are on
95/98/Me according to the docs.
szExeFile
Pointer to a null-terminated string that specifies the name
of the executable file for the process.
Windows 2000/XP: The file name does not include the path.
Windows 95/98/Me: The file name includes the path.
Ensure that we check for the target values at the end of
the string.
nethack.allison [Mon, 19 Aug 2002 00:00:52 +0000 (00:00 +0000)]
gas colors while blind
<email deleted> on Sunday, August 18, 2002 at 15:28:18
> comments: player is blind, and not hallucinating (initially). On #loot:
>
> You trigger a trap!
> A cloud of ultraviolet gas billows from the large box.
> You stagger and get dizzy...
nethack.rankin [Sat, 17 Aug 2002 10:24:35 +0000 (10:24 +0000)]
rolling boulder hitting pit which holds monster
From a bug report, a rolling boulder
trap could report that the boulder had fallen into the pit with you
and then let it keep rolling. flooreffects() only returns true
when it uses up the object being manipulated but it doesn't use up
boulders that hit pits which hold monsters or the hero. Its caller
needs to handle the cases where the boulder ends up sharing the pit
with a monster.
nethack.rankin [Thu, 15 Aug 2002 02:48:34 +0000 (02:48 +0000)]
compatibility checks fix for TIMED_DELAY
makedefs has been listing TIMED_DELAY as one of the options which
affects save file contents even though that hasn't been the case for
a long time. Unfortunately, simply fixing that by itself would break
save file compatibility for anyone who has been building with it set.
This workaround prevents the fix from doing that. And now folks can
rebuild after toggling TIMED_DELAY without unnecessarily invalidating
save and bones files.
cohrs [Wed, 14 Aug 2002 07:04:19 +0000 (07:04 +0000)]
B07005 - opthelp cleanup
<Someone> of the PC window group noticed that lootabc & showrace were documented
twice and travel was documented in the wrong section. Also, a couple
default syntax bits.
warwick [Wed, 14 Aug 2002 06:12:37 +0000 (06:12 +0000)]
Support for 2 tile sizes ("zooming"). Still needs rc file support.
Make non-rest-on-space space and Enter do the sam as clicking on
current location. On handhelds, this is the button on thumbpad.
warwick [Wed, 14 Aug 2002 05:01:56 +0000 (05:01 +0000)]
Allow arrowkeys to move player, including diagonals by pressing multiple
keys before releasing. Works well on handheld's thumbpad, perhaps less
useful on a fullsize keyboard.
Also some Qtopia-only fixes for Qt windowport.
arromdee [Tue, 13 Aug 2002 03:49:11 +0000 (03:49 +0000)]
mind flayers growing up into master mind flayers, etc.
While one could argue that giant rats aren't just grown up forms of sewer
rats, we already have bat/giant bat in there.
(This with a pruned 'egrep '^[[:alnum:]]+ .*\(.*\)$' *.c' in src/; I
haven't looked outside that directory, but generally speaking once you
go beyond there you're widening your search anyway.)
nethack.allison [Mon, 12 Aug 2002 11:19:04 +0000 (11:19 +0000)]
win32 message window (from <Someone>)
three new features for the message window we discussed:
- Graying out lines that are old -- slightly cleaner than <Someone>'s version.
- Message concatenation.
- --More-- prompt if there are more messages this turn than fit in the
window.
As a by-product of these changes, some other things have changed, too:
- The message lines array is now used in a round-robin way, i.e. the
messages are no longer copied one line up when adding a new message.
- clear_nhwindow no longer redraws the window, which significantly
reduces screen flicker.
- A caret bug was fixed.
- The last line is no longer highlighted, as this seems unnecessary
since the most recent messages are in a different colour
- A bug was fixed that caused two lines too many to be drawn on each
paint.
nethack.rankin [Mon, 12 Aug 2002 08:25:48 +0000 (08:25 +0000)]
B07002 - hiding under nothing?
Clear the uundetected status during level changes in case
the character was hiding under something immediately prior to the
change. Don't set hidden status at the destination even when
there's something to hide under--it'll take a turn to hide again.
cohrs [Mon, 12 Aug 2002 05:57:40 +0000 (05:57 +0000)]
forcefighting an undetected monster
Fix the case <Someone> saw, where forcefighting an undetected monster
would still leave it undetected, resulting in an odd message sequence unless
you kept forcefighting on the next turns. This also left the monster at a
disadvantage, since it wouldn't fight back. Added a check to wakeup() for this
case, cutting off the possibilities and allowing the monster to fight back.
nethack.allison [Mon, 12 Aug 2002 01:57:02 +0000 (01:57 +0000)]
B07001 healed, undetected mimic
> [Cast a healing spell in a shop where no mimic was visible] So,
> "The small mimic looks better.". However, my picture still looks
> the same. Either the mimic should be shown, *or* I shouldn't get
> any message about the mimic healing. Both solutions seem equally
> valid to me.
If the mimic was mimicing the "strange object", then the healing causes
them to start mimicing something else with no message (the observant
player could notice however).
If the mimic was already mimicing a real object, a message similar
to this one results:
"The crude dagger seems a more vivid black than before."
cohrs [Sun, 11 Aug 2002 23:17:23 +0000 (23:17 +0000)]
B06005 - cancelling getdir prompt
- Changed a cancelled chat direction to abort the chat -- it seemed odd
that the old behavior would sometimes take time, sometimes not, depending
on the previous direction.
- Documented the current spelleffects behavior of re-using the last
direction after a cancelled getdir() & added a message.
cohrs [Sun, 11 Aug 2002 17:40:08 +0000 (17:40 +0000)]
cut trees and dug walls replaced by corridor symbols
- In various places, cutting down a tree would result in a corridor symbol
showing up, although trees are generally found in room-like areas. Added
the missing checks.
- Trees were diggable except on mazelike levels. Added the missing check.
- In a cavernous town like minetn-6, digging a wall would result in a
corridor symbol being displayed instead of a doorway. This looked strange,
especially in the town. Added a check for this, making use of the new
meaning of in_town(); non-town parts of this level still do CORR
replacement as expected.
cohrs [Sun, 11 Aug 2002 17:32:47 +0000 (17:32 +0000)]
B02001 - trees and monster
<Someone> noticed that the change to require axes for trees (and allow them for
doors) did not extend to monsters. Now it does.
- added 2 new weapon check flags to handle the new cases
- added some detailed digging flags to mfndpos, based on ALLOW_DIG, and
moved some common logic regarding that flag into mfndpos
- made the ARMS check consistent for 2-handed weapons
I also noticed that simply carrying a pick was enough to allow a monster to
dig a door; wielding wasn't required. This is fixed as well.
cohrs [Fri, 9 Aug 2002 04:06:38 +0000 (04:06 +0000)]
R1037 - digging secret doors in town
I saw no secret doors in any of the towns, but in 340 (fixed in 341),
guards would patrol the entire level, so they might complain about secret
doors elsewhere. Fix the check for future use. Also, I noticed trees, eg
on minetn-6, weren't checked at all. Now they are.
nethack.rankin [Fri, 9 Aug 2002 02:35:30 +0000 (02:35 +0000)]
blindness vs vault guards
I implemented this before seeing <Someone>'s forwarded report.
It makes guards come to vaults when you can't see them, but does
have one odd side-effect: if the vault has boulders in the way
then you might not be able to follow the guard out. (Usually you
can alternately search and step in order to successfully follow
him out when unable to see.)
nethack.rankin [Wed, 7 Aug 2002 08:04:27 +0000 (08:04 +0000)]
wishing fixes for "* glass"
The wishing code intended to make a wish for "blue glass" yield
a "worthless piece of blue glass" (and similarly for other specific
colors) but it didn't work right. Also, wishing for "looking glass"
tripped up on that same code and didn't work either. (Several other
permutations for worthless gems such as "worthless blue glass" and
"piece of glass" already do work.)
arromdee [Wed, 7 Aug 2002 05:17:45 +0000 (05:17 +0000)]
eating rings
Found on the newsgroup: someone pointed out that you don't get a message
when you eat a ring of increase damage. They thought it was intentional--
it's not.
nethack.rankin [Mon, 5 Aug 2002 09:54:07 +0000 (09:54 +0000)]
armor & busy hands
Fix some inconsistencies in armor handling. The 'T' command
wouldn't let you take off a suit or shirt if you were wielding a
cursed two-handed weapon, which makes sense; however, the 'A'
command neglected to impose the same restriction. Also, the 'W'
command had some code intended to prevent you from donning a suit
or shirt while wielding such a cursed weapon, but it didn't work.
This patch fixes the 'A' command's checks for whether an
item can be removed and it makes the 'T' and 'R' commands use the
same code as 'A' instead of maintaining multiple sets of checks.
It also fixes the trivial 'W' problem and attempts to prevent the
sequence of 1) get interrupted while removing a set of equipment
including suit and/or shirt; 2) wield a cursed two-handed weapon
or have already wielded one become cursed; 3) resume removing
armor via 'A' but I haven't tried to trigger that situation to
confirm the bug or this fix.
cohrs [Mon, 5 Aug 2002 00:57:21 +0000 (00:57 +0000)]
Magic portals and levitation boots
From a bug report. Removing levitation boots while hovering over
a magic portal causes the portal to be delayed since it takes time to
remove the boots. This causes the portal to be taken via unmul in allmain.
At that point, the will activation message display but you won't teleport
until you type something. Handle the delayed goto after unmul completes.
cohrs [Sun, 4 Aug 2002 23:39:42 +0000 (23:39 +0000)]
R06008 - Ludios level in score list
<Someone> reported that the Ludios level is shown on death. It's not
shown on the tombstone, but it was displayed in the topten list.
Now it's not shown in the topten list either.
cohrs [Sun, 4 Aug 2002 23:04:56 +0000 (23:04 +0000)]
R06006 - travel command infinite loop
The problem was caused by a test that was added to test_move() to test the
move as a regular move if it was the next step. This case affected
boulders and closed doors, both of which are handled in later in do_move().
Remove the check. I think this was something I thought was needed for an
intermediary version of the travel command fix, but turned out to be
detrimental in the current version.
nethack.allison [Sun, 4 Aug 2002 22:14:02 +0000 (22:14 +0000)]
Generalize cmdassist direction help
to work with any call to getdir().
When cmdassist is set, instead of the
message:
"What a strange direction!"
you get a screen of help showing the valid direction keys.
!cmdassist will suppress the extra help information.
nethack.allison [Sun, 4 Aug 2002 16:48:15 +0000 (16:48 +0000)]
newbie in-game assistance with Guidebook notation
Provide some command assistance for newbies, but
suppress it with !cmdassist in the config file.
If someone misinterprets the Guidebook ^D, ^T
type command notation, this will pop up some
further information to possibly assist them and
explain the notation.
nethack.rankin [Thu, 1 Aug 2002 23:20:34 +0000 (23:20 +0000)]
artifact manipulation
Fix an item from <Someone>'s list: invoking or applying an
artifact might blast you; if it evades your grasp, the intended
action won't take place but will still use up a turn.
nethack.rankin [Thu, 1 Aug 2002 20:58:39 +0000 (20:58 +0000)]
dragon scale mail is magical
This reclassifies dragon scale mail as magic and leaves dragon
scales as non-magic. Changing the latter would make it be easier
to obtain magic armor via polymorph; just kill some dragons and toss
their scales on the pile. Unfortunately the logic used suggests that
unicorn horns ought to be non-magic too, but I left them as magic.
(Making them become non-magic would actually be a good idea as far
as balancing polypiling goes, but it's awfully hard to justify when
they produce should a wide-ranging magical effect when applied.)
R1024 - Eyes of the Overworld effect delayed
The effect of the EOTO did not take effect until the next move.
Added a vision_full_recalc as suggested to resolve the problem.
Several flags added since 3.4.0 were destined for flags
(to be saved with the game) but were placed in iflags for
savefile compatibility. These include:
boolean lootabc; /* use "a/b/c" rather than "o/i/b" when looting */
boolean showrace; /* show hero glyph by race rather than by role */
boolean travelcmd; /* allow travel command */
int runmode; /* update screen display during run moves */
This patch has no effect unless you define this in your port's
XXconf.h file.
#define SAVEFILE_340_CONVERT /* allow moving of some iflags fields to flags
without destroying savefile compatibility */
Without it, the new flags remain in "iflags." With it, the flags are moved to
"flags" and the structures are converted when the save file is read. There
is no reverse compatibility. If you save the game after conversion, you
can't load the savefile on 3.4.0, only 3.4.1.
Provide user control over screen updating for multi-step movement
(run via shift, control, &c and also travel). [See cvs history for
fixes34.1 for more details.]
<Someone>'s submittal of his `showrun' option has goaded
me to finally finish something I tried to implement some time back.
This adds a new run-time option called "runmode" which gives the
user control over how much screen udpating takes place during run
and travel movement. It has four settings:
teleport - update the map after movement has finished (this is
the old behavior and also <Someone>'s !showrun behavior);
run - update the map periodically (this is the new default);
it uses (`moves' mod 7) to control the updating; it may
need to have its own counter so that the updates are
sync'd with the start of current movement rather than
with `moves', but perhaps that won't matter;
walk - update the map after each step (this is the behavior
when <Someone>'s showrun is enabled);
crawl - like walk, but with a longer delay after each step.
This option won't work well on configurations where delay_output()
doesn't produce a pause of reasonable duration, but I don't think
there's much we can do about that.
The option setting ought to be stored in struct flags so that
it's maintained across save/restore cycles, but I put it into the
iflags structure with the other new options so that it won't cause
3.4.0 save files to be invalidated.
I can't test the changes to Guidebook.mn; the corresponding
changes to Guidebook.tex process ok and don't show any obvious
glitches when viewed with xdvi.
"It was hidden under a green mold corpse! It bites!"
Never seen corpse from a never seen monster can be
revealed by the hider.
-problem is that the corpse of the monster is
always created with dknown set to 1 when make_corpse() finishes,
even in the case where you never knew what it was while alive.
From the newsgroup, there was a discussion about how you
can't just blind yourself with a cream pie in your inventory
directly by applying it or by throwing it.
On 27 Jul 2002 14:11:06 GMT, <Someone> wrote:
> <email deleted> wrote:
>> <email deleted> (<Someone>) hypothesised:
>>
>> [cream pie]
>>> So I a)pply the pie. What I want to do is to hit MYSELF in the
>>> face with the pie, thereby blinding me and giving me T-P for
>>> just a few turns.
>>
>> Not a bad TTDTDTO ("Thing The DevTeam Didn't Think Of," which is
>> subtly different to a YANI, and not a bug; sorry, I seem to be
>> on a neologismathon today.)
> I tried throwing a cream pie upwards, hoping it would blind me,
> but no luck:
>
> "A cream pie hits the ceiling. What a mess!"
>
Change the message for paying off consumed items to
"You paid for a xxxx at a cost of nnn gold pieces."
to distinguish it from objects that you still have in your inventory which is
"You bought a xxx for nnn gold pieces."