Commit Graph

10939 Commits

Author SHA1 Message Date
PatR
c3fb94104b 'quick_farsight' option
Bite the bullet and add a special purpose boolean option to control
game behavior for random clairvoyance.  When objects or monsters are
discovered, it normally issues "you sense your surroundings" and
performs a getpos() operation which allows the player to browse the
map by moving the cursor around and getting 'autodescribe' feedback.
But there have been complaints that once the hero has the Amulet
(which triggers random clairvoyance even though hero isn't flagged
as having that attribute) the message and pause-to-browse become too
intrusive.

This was initially combined with the 'timed clairvoyance' fix because
they both bump EDITLEVEL to invalidate existing save files, but their
details don't interact so I separated them.
2019-12-22 13:40:59 -08:00
PatR
48a82fea8c fix github issue #266 - timed clairvoyance
When the hero has random clairvoyance, the code used
| (moves % 15) == 0 && rn2(2) != 0
(where 'moves' is actually the turn number) to decide when it would
kick in and show a portion of the map.  If the hero was fast enough
to get an extra move when the turn value met the (moves % 15) == 0
condition then clairvoyance could happen twice (or more if poly'd)
on the same turn.

The changes (one new field, reordering a few others) in 'struct
context' invalidate existing 3.7.0-x save files.

Fixes #266
2019-12-22 13:30:25 -08:00
Bart House
be47c0303d Merge branch 'NetHack-3.6' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6 2019-12-21 17:04:49 -08:00
nhmall
08dd9acf92 post-release windows binary fix 2019-12-21 20:02:37 -05:00
PatR
9b9925828a Unix Makefile.utl
Build feedback filtered by a script which filters out -Dthis -Wthat:
gcc -g -I../include -I../lib/lua-/src -c ../win/share/tilemap.c

The second -I is obsolete or else its bogus value would have caused
build failure.  When removing it, I noticed that there was still quite
a bit of obsolete yacc and lex stuff in there.  Remove that too.
2019-12-21 16:57:53 -08:00
nhw_cron
78b64b6cb5 This is cron-daily v1-Dec-12-2019. files updated: Files 2019-12-21 19:51:34 -05:00
Bart House
7074b1c55f Prevent crash caused by division by zero in NetHackW. 2019-12-21 15:34:57 -08:00
Bart House
496a81d5b0 Get Visual Studio builds working once again. 2019-12-21 15:34:31 -08:00
Bart House
37a7d624be Ensure front tile size is non-zero to avoid divide by zero exceptions. 2019-12-21 13:14:14 -08:00
Bart House
fb044c1a9f Bump in manifest to reflect latest store release. 2019-12-21 13:13:43 -08:00
nhmall
bdb8edff11 attempt to get all 3.7.0 builds working in travis successfully
multiple flavours of unix including bionic and xenial
multiple Windows builds including visual studio and mingw
msdos cross-compile on unix
2019-12-21 14:22:24 -05:00
nhmall
0bcebf7343 compiler warnings 2019-12-20 20:56:01 -05:00
Pasi Kallinen
2c3be8ebe1 Prevent accessing outside the mons array 2019-12-20 15:19:14 +02:00
Pasi Kallinen
98cb3ff161 Prevent fuzzer using wizloadlua and wizloaddes
Otherwise the fuzzer will enter a nonexistent file name, and stop.
2019-12-20 13:48:39 +02:00
nhmall
e3d8b93b10 Merge branch 'copperwater-3.7' of https://rodney.nethack.org:20040/git/NHsource into copperwater-3.7 2019-12-19 18:53:31 -05:00
copperwater
277dcc05b5 Port the autounlock feature, hallucinatory trap names from UnNetHack
This adds a boolean option, autounlock, defaulting to true. When this is
set to TRUE, messages stating that some door or container is locked are
automatically followed by a prompt asking if you would like to unlock
it, if you are carrying an unlocking tool (key, lock pick, or credit
card).

Architecturally, this extends the pick_lock function to take three
additional arguments (door coordinates or a box on the ground you are
autounlocking).

The code that selects an unlocking tool will always look first for a
skeleton key, then a lock pick, then a credit card. Since curses, rust,
and other attributes don't really have an effect on the viability of the
unlocking device, it didn't seem to warrant making a more complex
function for that.

Add hallucinatory trap names

This adds many funny, realistic, and nonsensical traps to the game, to
be shown when the player is hallucinating.

Architecturally, the biggest change is merging the what_trap macro and
the "defsyms[trap_to_defsym(ttyp)].explanation" pattern into a single
function "trapname", which returns the name of the trap, handling the
hallucination case. There is also a second parameter used for overriding
hallucination in the occasional cases where the actual trap name should
always be returned.

In addition, the what_trap and random_trap macros are now obsolete and
not used anywhere, so they are removed.

reinstate anti-rng abuse bit on hallucination

updates to hallucinatory trap names and fixes37.0 entry
2019-12-19 18:52:23 -05:00
nhmall
bcee4e694a Merge branch 'copperwater-hallutraps-3.7' into copperwater-3.7 2019-12-19 18:37:02 -05:00
nhmall
0c65736a08 Merge branch 'Nethack-3.7' into copperwater-autounlock-3.7 2019-12-19 18:34:33 -05:00
nhmall
ff48672e0b Merge branch 'NetHack-3.7' into copperwater-hallutraps-3.7 2019-12-19 18:32:53 -05:00
nhmall
193f369e5d Merge branch 'master' into NetHack-3.7 2019-12-19 17:25:08 -05:00
nhmall
32ba327dae Merge branch 'NetHack-3.6' 2019-12-19 17:24:47 -05:00
nhw_cron
7db034321d This is cron-daily v1-Dec-12-2019. files updated: Files 2019-12-19 17:21:18 -05:00
nhmall
7f4842d35d another version reference update 2019-12-19 15:44:23 -05:00
nhmall
82cda4fb0d fix file name in README 2019-12-19 15:40:53 -05:00
nhmall
c99d614ec3 Merge branch 'master' into NetHack-3.7 2019-12-18 17:25:13 -05:00
nhmall
c122985a51 .travis.yml update 2019-12-18 17:24:40 -05:00
nhmall
a848091088 Merge branch 'NetHack-3.6' 2019-12-18 17:24:02 -05:00
nhmall
27b4df6b18 .travis.yml update post-3.6.4 2019-12-18 17:23:17 -05:00
nhmall
5be18f5aca Merge branch 'NetHack-3.6' 2019-12-18 17:21:23 -05:00
nhmall
843bb5cfc9 landing spot for post-3.6.4 patches if needed
This is a landing spot.
2019-12-18 16:49:55 -05:00
nhmall
cbfa58fe25 post-release 2019-12-18 16:46:30 -05:00
nhmall
cf9e92677a update version 2019-12-18 15:29:40 -05:00
nhmall
f71cecb8ed Merge branch 'NetHack-3.6' 2019-12-18 10:06:08 -05:00
nhmall
8cbed3877d README bit 2019-12-18 10:01:54 -05:00
nhw_cron
d6189cb43a This is cron-daily v1-Dec-12-2019. guidebook updated: doc/Guidebook.txt 2019-12-18 08:22:01 -05:00
nhmall
98976b3141 Merge branch 'NetHack-3.6' 2019-12-18 07:38:59 -05:00
nhw_cron
7348621e41 This is cron-daily v1-Dec-12-2019. guidebook updated: doc/Guidebook.txt 2019-12-18 07:15:54 -05:00
nhmall
96155c7e02 housekeeping updates 2019-12-17 23:38:06 -05:00
nhmall
9815cceae6 Merge branch 'NetHack-3.6' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6 2019-12-17 23:18:06 -05:00
nhmall
5f0d06fb80 update and simplify the windows portable_device_paths sysconf option
Requires a sysconf file in the windows executable directory in order to work
2019-12-17 23:16:44 -05:00
PatR
8349d95992 ceiling hiders vs '>'
Poly'd hero hiding on the ceiling was told "you can't go down here"
if using '>' at a spot that didn't have down stairs, trap door, hole,
or pit.  Let '>' bring a ceiling hider out of hiding; lurker above
resumes flying, piercer falls to floor or whatever is underneath it.
2019-12-17 19:08:26 -08:00
PatR
512f886ca6 wizard mode wishing for terrain
Fix some issues noticed when experimenting with ceiling hiders.
They're all blind (at least without the monks' Eyes) and some of
the behavior while blind seemed to be incorrect (though some that
I thought was wrong turned out to be ok; feel_newsym() won't update
the map if the hero can't reach the floor).  Fixing that made me
notice that some terrain side-effects (being underwater or stuck in
lava) weren't getting disabled when the underlying terrain wasn't
the corresponding type anymore.
2019-12-17 18:14:08 -08:00
PatR
0ee445ce0b ceiling_hider()
Just groundwork so far; no change in game play.
2019-12-17 15:48:37 -08:00
PatR
f001de7954 parse_conf_file fix fix 2019-12-17 15:41:58 -08:00
nhmall
089b241010 Windows portable_device support: skip the "illegal folder" check for now 2019-12-17 15:32:10 -05:00
nhmall
c7f070bf22 Merge branch 'NetHack-3.6' part 2 2019-12-17 14:58:00 -05:00
nhmall
b8daaf4c88 Merge branch 'NetHack-3.6' 2019-12-17 14:57:48 -05:00
nhw_cron
71b7d6299c This is cron-daily v1-Dec-12-2019. guidebook updated: doc/Guidebook.txt 2019-12-17 14:53:51 -05:00
nhw_cron
fccdd2bb54 This is cron-daily v1-Dec-12-2019. files updated: Files 2019-12-17 14:53:18 -05:00
nhmall
17feb01d8f Merge branch 'NetHack-3.6' 2019-12-17 14:39:15 -05:00