]> granicus.if.org Git - nethack/log
nethack
3 years agoExplicitly set the altlabels array size
Pasi Kallinen [Wed, 28 Jul 2021 04:45:21 +0000 (07:45 +0300)]
Explicitly set the altlabels array size

This will allow the compiler to complain after you add new glyphs.

3 years agotypo
nhmall [Tue, 27 Jul 2021 19:56:47 +0000 (15:56 -0400)]
typo

3 years agobe explicit on the array name in tiletext.c
nhmall [Tue, 27 Jul 2021 19:55:04 +0000 (15:55 -0400)]
be explicit on the array name in tiletext.c

3 years agocron daily Guidebook.txt update
nhmall [Tue, 27 Jul 2021 19:40:16 +0000 (15:40 -0400)]
cron daily Guidebook.txt update

3 years agoMerge branch 'NetHack-3.7' of https://rodney.nethack.org:20040/git/NHsource into...
nhmall [Tue, 27 Jul 2021 19:37:18 +0000 (15:37 -0400)]
Merge branch 'NetHack-3.7' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.7

3 years agotile-build follow-up for new CMAP entries
nhmall [Tue, 27 Jul 2021 19:36:04 +0000 (15:36 -0400)]
tile-build follow-up for new CMAP entries

3 years agounfixed bug #H2668 - hitting disenchanter w/ rings
PatR [Tue, 27 Jul 2021 19:31:32 +0000 (12:31 -0700)]
unfixed bug #H2668 - hitting disenchanter w/ rings

From 8 or so years ago, hitting a disenchanter without wielding a
weapon and without wearing gloves while wearing a possitively
'charged' ring should reduce the ring's enchantment.  This doesn't
fix that, it just adds a brief comment about it.

3 years agofix #H2797 - avoid "vision clears" if hero can't see
PatR [Tue, 27 Jul 2021 19:29:46 +0000 (12:29 -0700)]
fix #H2797 - avoid "vision clears" if hero can't see

From 8 years ago, sitting on a throne and getting the confers-see-
invisible result gave "your vision becomes clear" message even when
hero was blind (who stays blind at the time).  Give an alternate
message if hero is blind, with another alternate when the blindless
is due to being poly'd into something without eyes.

3 years agodrowning monster's [lack of] corpse
PatR [Tue, 27 Jul 2021 19:18:55 +0000 (12:18 -0700)]
drowning monster's [lack of] corpse

From the newsgroup 6.5 years ago,
| Subject: Re: Reviving drowned pets impossible
if you displaced your pet into water and it drowned, it would never
leave a corpse.  That seems to be moot these days because a pet or
peaceful monster which would drown will refuse to swap places, but
change corpse handling anyway.

3 years agogaze vs hider
PatR [Tue, 27 Jul 2021 18:58:44 +0000 (11:58 -0700)]
gaze vs hider

From a 7 or 8 year old bug report from a beta tester.  A pyrolisk's
gaze against a mimic didn't unhide that mimic.  Somewhere along the
line that has been fixed, but some apparently redundant code inside
'if (visible)' should be done even when not visible.

3 years agodate bump to match 267ac5 update to Guidebook source
nhmall [Tue, 27 Jul 2021 18:47:46 +0000 (14:47 -0400)]
date bump to match 267ac5 update to Guidebook source

3 years agoaltmeta revisited
PatR [Tue, 27 Jul 2021 18:03:20 +0000 (11:03 -0700)]
altmeta revisited

Put the flag that parse() uses to tell readchar() that the next
keystroke is a command into the program_state structure instead of
having it be a static variable in cmd.c.  Conceivably an interface
could make use of it, and even if none do, it is program state....

More #558

3 years agoIncrement editlevel
Pasi Kallinen [Tue, 27 Jul 2021 15:56:46 +0000 (18:56 +0300)]
Increment editlevel

Added the new branch stairs glyphs, forgot to increment editlevel.

3 years agoAdd colored branch stairs
Pasi Kallinen [Tue, 27 Jul 2021 14:11:02 +0000 (17:11 +0300)]
Add colored branch stairs

Different color for stairs that go to another dungeon branch.

Adds four new glyphs, S_br{up,dn}{stair,ladder}, which use the
same character as normal stairs/ladders, but yellow color.
In tiles, the up/down arrow is yellow-green instead of while-blue.

This feature has been around a lot and is in several different
variants, but this is implemented from scratch so tiles work too.

3 years agoBugle playing should not scare some monsters
Pasi Kallinen [Mon, 26 Jul 2021 18:40:19 +0000 (21:40 +0300)]
Bugle playing should not scare some monsters

Make awaken_soldiers match awaken_monsters in what monsters
it can scare.

3 years agoAdd more shop tests
Pasi Kallinen [Sun, 25 Jul 2021 19:52:42 +0000 (22:52 +0300)]
Add more shop tests

3 years agofix github issue #558 - 'altmeta' input
PatR [Sun, 25 Jul 2021 17:52:11 +0000 (10:52 -0700)]
fix github issue #558 - 'altmeta' input

Setting the 'altmeta' option affects how ESC is handled.  Normally it
is for terminals/emulators which transmit two character sequence ESC c
when the user types Meta+c, but it can also be used to construct meta
characters 'manually' by typing ESC c.  Unfortunately setting this
option has a side-effect of requiring a second character after ESC
before our readchar() will return, so it is only honored when parse()
wants the next command, not for general input.

When readchar() was recently split into two parts, the use of static
variable 'alt_esc' by parse() and readchar() was removed.  That
resulted in requiring the user to type a second character whenever
ESC was typed, instead of just when it was transmitted or typed as
the prefix of a command that uses a meta-character keystroke.

Instead of just putting 'alt_esc' back, do things differently by
adding static 'getting_cmd' flag instead.

Fixes #558

3 years agoHide internal commands from key list
Pasi Kallinen [Sun, 25 Jul 2021 08:57:09 +0000 (11:57 +0300)]
Hide internal commands from key list

3 years agochange NetHack's MACOSX references to MACOS
nhmall [Sat, 24 Jul 2021 21:52:47 +0000 (17:52 -0400)]
change NetHack's MACOSX references to MACOS

3 years agoThis is cron-daily v1-Jan-20-2020. files updated: Files
nhw_cron [Sat, 24 Jul 2021 21:24:08 +0000 (17:24 -0400)]
This is cron-daily v1-Jan-20-2020.  files updated: Files

3 years agoadd .gitattributes to test
nhmall [Sat, 24 Jul 2021 20:27:39 +0000 (16:27 -0400)]
add .gitattributes to test

3 years agoThis is cron-daily v1-Jan-20-2020. files updated: Files
nhw_cron [Sat, 24 Jul 2021 18:24:08 +0000 (14:24 -0400)]
This is cron-daily v1-Jan-20-2020.  files updated: Files

3 years agowizard mode enlightenment tweaks + Glow status fix
PatR [Sat, 24 Jul 2021 18:30:52 +0000 (11:30 -0700)]
wizard mode enlightenment tweaks + Glow status fix

For extended monster detection, show the number of turns remaining
during enlightenment (wizard mode only).  The value is also
available via #timeout but various enlightenment entries already do
something like this.

For confuse monster, show the number of hits left for glowing hands
(again, wizard mode only).

And for the latter, the 3.7 conditional status condition set up was
storing u.umconf, an unsigned int, into contests[bl_glowhands].test,
a boolean, so would yield the wrong value if glowing hands managed
to become high enough to be a multiple of 256 (assumes 8-bit char
for boolean).

3 years agoAdd shop creation test script
Pasi Kallinen [Sat, 24 Jul 2021 17:29:15 +0000 (20:29 +0300)]
Add shop creation test script

3 years agoFix missing Izchak shop
Pasi Kallinen [Sat, 24 Jul 2021 17:18:40 +0000 (20:18 +0300)]
Fix missing Izchak shop

My recent commit broke Izchak's shop in minetn-6.
Fix it as per the suggestion from entrez.
Fixes #555

3 years agoLua: improve level testing
Pasi Kallinen [Sat, 24 Jul 2021 07:28:35 +0000 (10:28 +0300)]
Lua: improve level testing

Add des.finalize_level() used for testing in conjunction with
des.reset_level().
Add nhc.DLB to return 0 or 1 if DLB was defined at compile-time.
Change the test_lev.lua to give more informative messages instead of
just lua error when required file doesn't exist.
Add bigrm-11 to the level tests.

3 years agoPrevent segfault on nonexistent mapseen
Pasi Kallinen [Fri, 23 Jul 2021 18:09:35 +0000 (21:09 +0300)]
Prevent segfault on nonexistent mapseen

Cannot happen on normal play, but with some lua trickery ...

3 years agoPrevent impossible with secret doors in sokoban
Pasi Kallinen [Fri, 23 Jul 2021 17:52:38 +0000 (20:52 +0300)]
Prevent impossible with secret doors in sokoban

Doesn't currently happen as no Soko levels use secret doors,
but handle them anyway gracefully.

Secret doors have their doormask set, but it's overloaded wall_info.
The display routines aren't happy with D_CLOSED in wall_info.

3 years agogold dragon and scales
PatR [Fri, 23 Jul 2021 17:41:57 +0000 (10:41 -0700)]
gold dragon and scales

Add two new monsters and two new objects:
 gold dragon
 baby gold dragon
 gold dragon scale mail
 set of gold dragon scales

A couple of variants seem to have added these already, but this came
off my ancient list of monsters to add and was done from scratch.
It's a clone of silver dragon, but instead of having reflection and
breathing cold, a gold dragon emits light and breathes fire; because
of the latter it can be seen with infravision like a red dragon.
Adult gold dragons are lawful as in the AD&D Monster Manual rather
than chaotic as the wiki pages show for the variant versions.

Worn gold dragon scales operate similar to wielded Sunsword:  when
blessed, radius is 3 (same as a lamp), if uncursed, radius is 2, and
if cursed, radius is 1 (but functions as 2 when worn by the hero,
otherwise there would be no tangible effect).  Gold dragon scale mail
gets an extra +1, making blessed gold DSM have a bigger radius than
lamps.  Embedded scales have radius 1 regardless of BUC state; light
for that case comes from the gold dragon monster form the hero is in.
When not worn, gold scales and scale-mail don't emit any light.

The tiles use a mix of yellow (for gold) and red.  The two object
tiles seem reasonable variations of the corresponding silver dragon
ones.  The two monster tiles definitely need work since the silver
ones were mostly cyan and changing that to red did not produce very
good result; subsequent attempt at a mixture was haphazard at best.

3 years agotribute update: Thief of Time
PatR [Fri, 23 Jul 2021 00:02:06 +0000 (17:02 -0700)]
tribute update: Thief of Time

Add a page citation to passage #1; add six new passages (bringing
total to 14).

3 years agoLua: lit="random" is not allowed anymore
Pasi Kallinen [Thu, 22 Jul 2021 16:38:01 +0000 (19:38 +0300)]
Lua: lit="random" is not allowed anymore

Random is the default lit state, so leave it out.

3 years agoUnix 'make clean' bit
PatR [Thu, 22 Jul 2021 15:32:25 +0000 (08:32 -0700)]
Unix 'make clean' bit

When deleting obsolete generated files (monstr.c, vis_tab.[ch])
for src 'make clean' or clean called from src 'make spotless' or
from top Makefile, don't complain if they aren't present.

Deletion failure wasn't stopping 'make' but did result in looking
like something might be wrong.
Before:
 rm monstr.c vis_tab.c ../include/vis_tab.h  #obsolete generated files
 rm: monstr.c: No such file or directory
 rm: vis_tab.c: No such file or directory
 rm: ../include/vis_tab.h: No such file or directory
 make[1]: [clean] Error 1 (ignored)
After:
 rm -f monstr.c vis_tab.c ../include/vis_tab.h #obsolete generated files
(no extra feedback from rm or make).

3 years agoLua: Allow boolean params in level_init
Pasi Kallinen [Thu, 22 Jul 2021 15:02:58 +0000 (18:02 +0300)]
Lua: Allow boolean params in level_init

3 years agoSplit calculating your movement speed out of moveloop
Pasi Kallinen [Thu, 22 Jul 2021 09:28:15 +0000 (12:28 +0300)]
Split calculating your movement speed out of moveloop

3 years agoSplit moveloop into preamble and core
Pasi Kallinen [Thu, 22 Jul 2021 09:01:26 +0000 (12:01 +0300)]
Split moveloop into preamble and core

3 years agotermcap.c: Don't use hilites[CLR_BLACK] = NULL for ANSI_DEFAULT
Heinrich Kuttler [Thu, 22 Jul 2021 07:42:34 +0000 (09:42 +0200)]
termcap.c: Don't use hilites[CLR_BLACK] = NULL for ANSI_DEFAULT

This didn't crash since xputs is defensive and checks if it got a NULL
string, but it also didn't display black entries (dragons, unicorns,
orcish arrows, ...) as black or otherwise different from gray entries.

3 years agoLua: Make des.monster use boolean params
Pasi Kallinen [Thu, 22 Jul 2021 08:05:40 +0000 (11:05 +0300)]
Lua: Make des.monster use boolean params

4 years agoFix: engraving with dry magic marker
Michael Meyer [Wed, 21 Jul 2021 20:19:58 +0000 (16:19 -0400)]
Fix: engraving with dry magic marker

Engraving with a marker can use up remaining charges to write
semi-permanently in ink, or--if the marker has no remaining charges--can
draw in the dust as with a normal blunt item.  Handling in engrave after
a recent refactor (9c6a5fc423) didn't fully cover this second case, and
as a result using an empty marker to engrave would deduct a charge per
attempt and cause an impossible.  This could be exploited by repeatedly
engraving with the same empty marker to underflow the marker charges.

4 years agoFix: off-by-one error in movecmd
Michael Meyer [Wed, 21 Jul 2021 16:18:40 +0000 (12:18 -0400)]
Fix: off-by-one error in movecmd

The for loop which iterates through the list of movement keys in
movecmd(cmd.c) was updated in 5abf948116 to count down to 0 instead of
up to the end of the list.  This commit inadvertently introduced an
off-by-one error which started the loop one past the actual end of the
array.  On my system this made 'H' stop working as the 'run West' key.

4 years agoGuidebook.txt to July 21, 2021 current (retry)
nhmall [Wed, 21 Jul 2021 18:58:06 +0000 (14:58 -0400)]
Guidebook.txt to July 21, 2021 current (retry)

4 years agoGuidebook.txt update to July 21, 2021 current
nhmall [Wed, 21 Jul 2021 18:33:44 +0000 (14:33 -0400)]
Guidebook.txt update to July 21, 2021 current

4 years agoGuidebook date bump to reflect most recent update
nhmall [Wed, 21 Jul 2021 15:29:35 +0000 (11:29 -0400)]
Guidebook date bump to reflect most recent update

4 years agorecognize vs2019 16.10.4 in sys/windows/Makefile.msc
nhmall [Wed, 21 Jul 2021 15:23:10 +0000 (11:23 -0400)]
recognize vs2019 16.10.4 in sys/windows/Makefile.msc

4 years agoRemove special doinv key
Pasi Kallinen [Wed, 21 Jul 2021 13:26:00 +0000 (16:26 +0300)]
Remove special doinv key

The same thing can be done in config file with BIND=0:inventory

4 years agoMake mouselook use internal extended command
Pasi Kallinen [Wed, 21 Jul 2021 09:23:21 +0000 (12:23 +0300)]
Make mouselook use internal extended command

... instead of faking a key press

4 years agoAdd retravel to Guidebook.tex
Pasi Kallinen [Wed, 21 Jul 2021 08:03:36 +0000 (11:03 +0300)]
Add retravel to Guidebook.tex

4 years agoAdd new command: #retravel
Pasi Kallinen [Wed, 21 Jul 2021 07:55:14 +0000 (10:55 +0300)]
Add new command: #retravel

Retravel travels to the previously selected destination.

Also changes the travel-via-mouse to execute the extended command
instead of faking a special key.

4 years agoAdd some plural/an tests
Pasi Kallinen [Sat, 17 Jul 2021 20:29:30 +0000 (23:29 +0300)]
Add some plural/an tests

4 years agoa uke
PatR [Sat, 17 Jul 2021 19:16:03 +0000 (12:16 -0700)]
a uke

Fix a copy+paste blunder.

4 years agoUse define for wand wresting chance
Pasi Kallinen [Sat, 17 Jul 2021 17:59:40 +0000 (20:59 +0300)]
Use define for wand wresting chance

4 years agofix github issue #552 - "an ukulele"
PatR [Sat, 17 Jul 2021 15:32:07 +0000 (08:32 -0700)]
fix github issue #552 - "an ukulele"

Add "ukulele" to the exceptions that yield "a u<something>" in case
someone names their fruit that.  Add the shortened form "uke" too.

While in there, generalize "one" handling to accept "one", "one<space>
<anything>" and "one<underscore><anything>" as exceptions in addition
to existing "one<dash><anything>", and "eu<anything>" to replace
existing "eucalyptus".

Fixes #552

4 years agoFix heap-use-after-free when attacking monster with potion
Patric Mueller [Sat, 17 Jul 2021 10:44:50 +0000 (12:44 +0200)]
Fix heap-use-after-free when attacking monster with potion

Attacking a monster which has a passive attack (e.g. a red mold) with a
wielded potion that breaks during the attack, the variable weapon would
not be correctly reset and passive() would be called with the pointer to the
freed object.

4 years agotribute update: The Truth
PatR [Sat, 17 Jul 2021 02:08:53 +0000 (19:08 -0700)]
tribute update: The Truth

Add page citations to passages 1 and 2 and missing italics to #1.

Add five new pssages, bringing total to 13.

4 years agoMerge branch 'hoa-aloha' into NetHack-3.7
Patric Mueller [Fri, 16 Jul 2021 16:07:19 +0000 (18:07 +0200)]
Merge branch 'hoa-aloha' into NetHack-3.7

4 years agoDocument "readable" Hawaiian shirt designs in fixes37.0
Patric Mueller [Fri, 16 Jul 2021 16:05:48 +0000 (18:05 +0200)]
Document "readable" Hawaiian shirt designs in fixes37.0

Closes #407

4 years agoAdd 'readable' Hawaiian shirt designs
Michael Meyer [Thu, 29 Oct 2020 21:19:31 +0000 (17:19 -0400)]
Add 'readable' Hawaiian shirt designs

Functionally similar to reading a T-shirt or apron, but rather than
actual text printed on the shirt being displayed, the design of the
Hawaiian shirt is described: for example, "hula dancers on an orange
background" or "tropical fish on an abstract background".  Much like
T-shirts have their text included in the game-end inventory list ('a
blessed +2 T-shirt with text "foo"'), Hawaiian shirts now have a brief
description of their design appended to their item name under the same
circumstances.

Because 'reading' a Hawaiian shirt doesn't actually involve reading
text, using the 'r' command in this way doesn't break illiterate
conduct.

4 years agoFix format-overflow warnings in botl.c
Patric Mueller [Fri, 16 Jul 2021 16:01:17 +0000 (18:01 +0200)]
Fix format-overflow warnings in botl.c

4 years agofix issue #510, pull request #519 - vomit effects
PatR [Thu, 15 Jul 2021 23:10:34 +0000 (16:10 -0700)]
fix issue #510, pull request #519 - vomit effects

Add some vomiting effects:

Trigger divine wrath if hero vomits at an altar's location.  (What
about adding throne and maybe sink special effects too?)

If poly'd into a yellow dragon, breathe (acid) on self.  (I'm not
sure why.)

If on ice and poly'd into an acidic form, melt the ice.  Also,
change melt_ice() to give its message when melting happens at the
hero's location even if hero can't see.

Fixes #519
Fixes #510

4 years agofix github issue #423, pull request #549
PatR [Thu, 15 Jul 2021 02:21:18 +0000 (19:21 -0700)]
fix github issue #423, pull request #549

Zapping at an object with teleportation resulted in scrambled zap
targetting as soon as any object was hit.

flooreffects() got changed to set bhitpos for handling erosion damage,
but bhitpos is used by wand/spell zap handling to pick the next target
spot.  So a zap that teleported an object resumed one step beyond the
object's destination rather than one step beyond where it was hit.
The rest of the zap could hit things (monsters as well as other
objects) which weren't in line with the original zap.  Reported case
was one of the Riders on Astral, coming from beyond multiple walls to
arrive adjacent to hero (usual position when a Rider gets teleported).

Fixes #549
Fixes #423

4 years agofix pull request #548 - encumbrance feedback
PatR [Thu, 15 Jul 2021 01:29:03 +0000 (18:29 -0700)]
fix pull request #548 - encumbrance feedback

when polymorphing into "new man".  Characteristic stats are shuffled
if turning into new man, but when already polymorphed those get
overridden by the old pre-polymorph characteristics, resulting in
another encumbrance check which might contradict the one that just
happened.  Skip the encumbrance check done when shuffling stats so
that there's only one and it comes after all changes are finished.

Fixes #548

4 years agotribute update: The Fifth Elephant
PatR [Tue, 13 Jul 2021 02:12:40 +0000 (19:12 -0700)]
tribute update: The Fifth Elephant

Add three new passages, bringing total to 12.

Also, fix a typo in Thief of Time #2:  had "starts" where "stars"
was intended.

4 years agofix pull request #540 - don't autoquiver aklys
PatR [Sun, 11 Jul 2021 02:09:17 +0000 (19:09 -0700)]
fix pull request #540 - don't autoquiver aklys

If player throws a wielded aklys and it fails to return, and quiver
is empty when picking it back up, don't put it into that slot because
it needs to be wielded to achieve best throwing effect.  A player who
had wielded it and was using 'f' to throw it might not notice that
it isn't returning until it hasn't returned several times.  Moot if
quiver already has some missile readied.  Don't autoquiver even if
some other weapon is wielded because that might have been done just
to go retrieve the aklys.

The game doesn't keep track of whether a previously thrown item was
wielded at the time, and shouldn't be changed to auto-wield in such
situation.  Leaving quiver empty so that player is prompted for what
to throw is sufficient.

Fixes #540

4 years agogold kicking bit
PatR [Sun, 11 Jul 2021 00:37:38 +0000 (17:37 -0700)]
gold kicking bit

One of the gold kicking changes I had pending.  The "Thwwpingg"
message is obviously intended as a sound effect so shouldn't be
given if the hero is Deaf.

4 years agowishing fixes
PatR [Sun, 11 Jul 2021 00:13:46 +0000 (17:13 -0700)]
wishing fixes

Changes in wish parsing included with figurine gender implementation
3 or so weeks ago accidentally broke asking for "large box" and
possibly other stuff.

Re-do "paperback book" handling to accept "paperback" and "paperback
book" but to reject previously accepted "paperback spellbook" when
wishing for a novel by description.

4 years agofixes37.0 update for gold scatter()
nhmall [Sat, 10 Jul 2021 23:46:38 +0000 (19:46 -0400)]
fixes37.0 update for gold scatter()

4 years agodeal with gold leaving shop via scatter()
nhmall [Sat, 10 Jul 2021 23:41:55 +0000 (19:41 -0400)]
deal with gold leaving shop via scatter()

fixes #538

4 years agoget rid of some recent signed/unsigned mismatches
nhmall [Sat, 10 Jul 2021 11:42:27 +0000 (07:42 -0400)]
get rid of some recent signed/unsigned mismatches

src/mkroom.c(529): warning C4389: '!=': signed/unsigned mismatch
src/sp_lev.c(981): warning C4389: '==': signed/unsigned mismatch
src/sp_lev.c(983): warning C4389: '==': signed/unsigned mismatch
src/sp_lev.c(985): warning C4389: '==': signed/unsigned mismatch
src/sp_lev.c(987): warning C4389: '==': signed/unsigned mismatch
src/sp_lev.c(989): warning C4389: '==': signed/unsigned mismatch

4 years agoindex out of bounds eating standard eggs
nhmall [Sat, 10 Jul 2021 11:25:12 +0000 (07:25 -0400)]
index out of bounds eating standard eggs

Closes #547

4 years agoMerge branch 'pr547' into NetHack-3.7
nhmall [Sat, 10 Jul 2021 11:20:49 +0000 (07:20 -0400)]
Merge branch 'pr547' into NetHack-3.7

4 years agoFixed two index out of bounds errors when eating standard eggs. Their corpsenm is...
janne-hmp [Sat, 10 Jul 2021 08:47:22 +0000 (11:47 +0300)]
Fixed two index out of bounds errors when eating standard eggs. Their corpsenm is -1, resulting in index being out of bounds in mons array.

4 years agonovel named Thud!
PatR [Sat, 10 Jul 2021 02:56:10 +0000 (19:56 -0700)]
novel named Thud!

Accept "Thud" as an alternate spelling for "Thud!" when parsing novel
titles.

4 years agowishing for "paperback book"
PatR [Sat, 10 Jul 2021 02:40:52 +0000 (19:40 -0700)]
wishing for "paperback book"

Something I noticed recently:  a wish request for "paperback book"
yielded "Nothing fitting that description exists in the game."
Asking for "paperback spellbook" worked though.

I'm not sure whether this is the best way to handle this particular
exception but wishing for "paperback book" now works.

4 years agoThis is cron-daily v1-Jan-20-2020. files updated: Files
nhw_cron [Fri, 9 Jul 2021 15:24:07 +0000 (11:24 -0400)]
This is cron-daily v1-Jan-20-2020.  files updated: Files

4 years agoFix des.room doors
Pasi Kallinen [Fri, 9 Jul 2021 17:31:47 +0000 (20:31 +0300)]
Fix des.room doors

Fix special level des.room shop doors broken by my recent commit.
Mark the shopdoor error as impossible, so the fuzzer stops there.

4 years agoKeep swamp within the room boundaries
Pasi Kallinen [Fri, 9 Jul 2021 15:34:42 +0000 (18:34 +0300)]
Keep swamp within the room boundaries

If a swamp special room was generated in an irregular room, it could
go outside the boundaries of that room.

Fixes #546

4 years agoAdd a new bigroom variant "boulder maze"
Pasi Kallinen [Fri, 9 Jul 2021 15:16:48 +0000 (18:16 +0300)]
Add a new bigroom variant "boulder maze"

4 years agofix pull request #544 - fire vortex engulf
PatR [Fri, 9 Jul 2021 13:51:10 +0000 (06:51 -0700)]
fix pull request #544 - fire vortex engulf

of hero carrying burning objects shouldn't cause those to be
extinguished.  Ditto when fire vortex or poly'd hero engulfs
monsters.

Fixes #544

4 years agoImprove special level shop and door linking
Pasi Kallinen [Fri, 9 Jul 2021 10:13:26 +0000 (13:13 +0300)]
Improve special level shop and door linking

When creating a shop via des.region, allow creating the shop door
either with a map character in a des.map, or with des.door
before or after the shop region.

Also allow a shop door to open directly into another shop.

4 years agotribute update: Carpe Jugulum
PatR [Fri, 9 Jul 2021 02:13:26 +0000 (19:13 -0700)]
tribute update: Carpe Jugulum

Add four new passages to Carpe Jugulum, bringing total to 12.

A couple of fixes for the Fifth Elephant are mixed in:  page reference
and italics for passage #1, correct the spelling of "doublet" in #9.

4 years agoMark some extended commands as no-fuzzer
Pasi Kallinen [Thu, 8 Jul 2021 08:35:40 +0000 (11:35 +0300)]
Mark some extended commands as no-fuzzer

... instead of checking the fuzzer being on in the commands themselves.

4 years agoFix error marking scroll as used up
Pasi Kallinen [Thu, 8 Jul 2021 07:22:10 +0000 (10:22 +0300)]
Fix error marking scroll as used up

Forgot to change this when reorganizing the scroll effects
into separate functions.

4 years agoFix movecmd always returning a direction
Pasi Kallinen [Thu, 8 Jul 2021 04:49:28 +0000 (07:49 +0300)]
Fix movecmd always returning a direction

My recent commit broke the 'm' (menu request) -prefix, because
a thinko in movecmd made it always return a direction.

4 years agoSplit can-engrave checks out of engraving function
Pasi Kallinen [Wed, 7 Jul 2021 13:41:58 +0000 (16:41 +0300)]
Split can-engrave checks out of engraving function

4 years agodo vs2017 warnings.h a little differently than vs2019
nhmall [Wed, 7 Jul 2021 13:05:22 +0000 (09:05 -0400)]
do vs2017 warnings.h a little differently than vs2019

fixes #545

4 years agoSplit potion effects into separate functions
Pasi Kallinen [Wed, 7 Jul 2021 09:54:35 +0000 (12:54 +0300)]
Split potion effects into separate functions

4 years agoSplit scroll effects into separate functions
Pasi Kallinen [Wed, 7 Jul 2021 09:02:59 +0000 (12:02 +0300)]
Split scroll effects into separate functions

4 years agofix github issue #542 - clumsy "it" message
PatR [Mon, 5 Jul 2021 00:47:04 +0000 (17:47 -0700)]
fix github issue #542 - clumsy "it" message

when encountering a hiding monster that's still unseen after being
revealed (so most likely invisible when hero lacks see invisible).
Change
|Wait!  There's an it hiding under <an object>!
to
!Wait!  There's something hiding under <an object>!
when hero tries to move onto the object.

Also, when a hidden monster reveals itself by attacking, change
|It was hidden under <an object>!
usually followed by "It hits." or "It misses."
to
|Something was hidden under <an object>!
without changing whatever follows.

Fixes #542

4 years agoAllow using rush/run prefix to fastmove in getloc
Pasi Kallinen [Sat, 3 Jul 2021 14:22:25 +0000 (17:22 +0300)]
Allow using rush/run prefix to fastmove in getloc

4 years agoMovement key reworking
Pasi Kallinen [Sat, 3 Jul 2021 12:19:53 +0000 (15:19 +0300)]
Movement key reworking

Put the rush and run movement keys into g.Cmd instead of bit twiddling
the normal walk keys in multiple places to get the run and rush keys.

Allow meta keys in getpos. Use the normal running keys to fast-move
in getpos, instead of explicit HJKL - I polled couple places online,
and number_pad users did not use the HJKL keys in getpos.

Make meta keys work even after a prefix key.

4 years agofix pull request #541 - itemized shop billing
PatR [Sat, 3 Jul 2021 01:52:17 +0000 (18:52 -0700)]
fix pull request #541 - itemized shop billing

when perm_invent is displayed.  The persistent inventory window
showed unpaid items with their prices, but when using itemized
billing those prices went away when an item was purchased.

The prices and item-by-item prompting continued correctly with
remaining unpaid items; only the perm_invent display was affected.

Fixes #541

4 years agoSplit coord truncate-to-map into separate function
Pasi Kallinen [Thu, 1 Jul 2021 11:29:04 +0000 (14:29 +0300)]
Split coord truncate-to-map into separate function

4 years agofix #K3378 - quaffing lit potion of oil
PatR [Thu, 1 Jul 2021 00:33:18 +0000 (17:33 -0700)]
fix #K3378 - quaffing lit potion of oil

should cure sliming.  Implement the suggestion that quaffing a
burning potion of oil while turning into green slime will cure the
latter.

It's somewhat iffy since the slime is on the outside moving in and
the burning oil ends up on the inside, but the message sequence is
|You burn your face.
|The slime that covers you is burned away!
and it could be that igniting part of the slime quickly spreads to
the rest.

Implemented for monsters as well as for the hero.  They will light
and drink the oil in a single turn in the extremely rare situation
where they actually have a potion of oil and need to use it.

4 years agoFix swapped DIR_UP and DIR_DOWN
Pasi Kallinen [Mon, 28 Jun 2021 20:31:32 +0000 (23:31 +0300)]
Fix swapped DIR_UP and DIR_DOWN

I don't think this had any effect on gameplay, but it was still wrong.

4 years agoMissed couple direction enum places
Pasi Kallinen [Mon, 28 Jun 2021 14:41:04 +0000 (17:41 +0300)]
Missed couple direction enum places

4 years agoUse enums and defines for directions
Pasi Kallinen [Sun, 27 Jun 2021 12:31:00 +0000 (15:31 +0300)]
Use enums and defines for directions

4 years agoweb spinning tweak for Sokoban
PatR [Sun, 27 Jun 2021 00:06:37 +0000 (17:06 -0700)]
web spinning tweak for Sokoban

When spiders try to spin webs, don't let them do so in Sokoban
unless the level has already been solved or the spider can see the
stairs up (which was the simplest way I could achieve something
close to "is in the same room as the stairs up") where it can't
interfere with solving the level.

4 years agoExplicitly check for not STONE in corridor join
Pasi Kallinen [Sat, 26 Jun 2021 13:59:07 +0000 (16:59 +0300)]
Explicitly check for not STONE in corridor join

... instead of relying STONE being 0

4 years agoClear all room data
Pasi Kallinen [Sat, 26 Jun 2021 12:10:38 +0000 (15:10 +0300)]
Clear all room data

Restoring a level cleared residence pointer from those subrooms
which were in the restored level, but if the previous level had
more subrooms, those pointers weren't cleared.
This caused weird problems when a shopkeeper data was looked
up based on the subroom number.

Just to be safe, clear all the room data when freeing the level.

4 years agoFix strange object mimic in shop sanity error
Pasi Kallinen [Sat, 26 Jun 2021 10:00:32 +0000 (13:00 +0300)]
Fix strange object mimic in shop sanity error

Shop population code set the mimic shape to strange object
without checking for protection from shape changers.
Let set_mimic_sym (via makemon) handle it correctly instead.

4 years agostill more "<mon> appears in a cloud of smoke"
PatR [Fri, 25 Jun 2021 21:43:14 +0000 (14:43 -0700)]
still more "<mon> appears in a cloud of smoke"

For Angels who appear in a flash of light, temporarily light the
spot where they arrive.  If not previously visible, it will go back
to dark and change the angel to the remembered, unseen monster glyph,
usually before the player even notices.

Add more monsters to msummon_environ() so that it has latent support
for various light, fire, and lava creatures from mondata.h even
though these extra ones, like previous vortices, don't get summoned
by msummon().