Commit Graph

548 Commits

Author SHA1 Message Date
nhmall
3c968a09a3 Merge 'NetHack-3.6' updates into NetHack-3.7-Jan2020 2020-01-25 23:45:38 -05:00
nhmall
9e165b9e2a release prep bits 2020-01-25 23:42:36 -05:00
nhmall
97b74e6f7b Merge branch 'NetHack-3.7' into NetHack-3.7-Jan2020 2020-01-24 17:27:48 -05:00
PatR
0166239a22 simplify achievement tracking for special objects
This turned out to be a lot more work than I anticipated, but it is
definitely simpler (other than having #wizmakemap take achievements
away if you replace the level that contains the 'prize', which wasn't
handled before).

I cheated and made Mine's End into a no-bones level because the new
flagging scheme for luckstone, bag, and amulet can't carry over from
one game to another.  It probably should have been no-bones all along.
Sokoban didn't have this issue because it's already no-bones.

Existing save files are invalidated.
2020-01-24 13:54:23 -08:00
Pasi Kallinen
2ba3fa9240 Fix warning on nonexistent quest.lua text
Cavemen don't have goal_alt message - before lua, that one
fell through into goal_next message, but now it tried to
load the "common" message. Add ability to define message fallbacks,
and make goal_next the fallback for goal_alt.

Also prevent issuing quest.lua errors twice.
2020-01-19 14:09:16 +02:00
nhmall
d5174323eb Merge 'NetHack-3.6' updates into NetHack-3.7-Jan2020 2020-01-14 22:09:29 -05:00
nhmall
41137101a4 documentation updates 2020-01-14 11:44:02 -05:00
PatR
df50d4cf17 fix #K112 - fumbling vs autoopen
Report complained that having autoopen not work when fumbling was
inconvenient and mentioned that the "ouch! you bump into a door"
result didn't take any time.  This updates the documentation to
state that autoopen won't work while fumbling (so the inconvenient
behavior persists) but changes movement so that bumping into a door
now takes time.  (Despite "ouch!", it doesn't inflict any damage.)

Also, document the recently added autounlock option.
2020-01-07 17:57:38 -08:00
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
nhmall
98976b3141 Merge branch 'NetHack-3.6' 2019-12-18 07:38:59 -05:00
nhmall
96155c7e02 housekeeping updates 2019-12-17 23:38:06 -05:00
nhmall
17feb01d8f Merge branch 'NetHack-3.6' 2019-12-17 14:39:15 -05:00
nhmall
74a5339a5e housekeeping updates for 3.6.4
typos

README update
2019-12-17 14:11:52 -05:00
nhmall
f1d92f4b66 Merge branch 'master' into NetHack-3.7 2019-12-05 18:08:21 -05:00
nhmall
d48a956016 Merge branch 'NetHack-3.6' 2019-12-05 18:07:48 -05:00
nhmall
e6d1aaeaff extraneous file removed 2019-12-05 12:44:14 -05:00
nhmall
e8642ae708 remove no longer generated files 2019-12-05 08:37:02 -05:00
nhmall
1e6b4c1a6d doc updates for release 2019-12-04 11:36:01 -05:00
nhmall
5847806104 Merge branch 'NetHack-3.6' 2019-11-27 23:07:29 -05:00
PatR
7ca572eb60 paranoid_confirmation:eating
Add 'eating' (synonym 'continue') to the list of things that can be
set via paranoid_confirmation to require "yes" instead of "y" when
the user is prompted about something, in this case "Continue eating?".

dat/opthelp was missing a few of the paranoid_confirmation choices.
2019-11-27 16:27:13 -08:00
Pasi Kallinen
b66bcc2f5a Fix lua quest data output types
...so the texts are given exactly the same way as they were given previously.
2019-11-25 09:21:37 +02:00
Pasi Kallinen
8b87013fba Move quest texts to lua 2019-11-24 17:41:39 +02:00
nhmall
fa4552e09e Merge branch 'NetHack-3.6' 2019-11-22 07:41:53 -05:00
Pasi Kallinen
5cad6a15dc More hallu monsters 2019-11-22 09:24:19 +02:00
nhmall
39bc7e9bb9 Merge branch 'NetHack-3.6' 2019-11-21 23:50:01 -05:00
PatR
a62d6145bd fix part of #H9397 - hallucinatory mon names
Fix the issue where a hallucinatory monster name which begins with
a slash is having that stripped off as if it was a gendor and/or
personal-name flag.

The main issue was pronouns ignoring hallucination and this doesn't
attempt to address that.

Also, add new hallucinatory name "leathery-winged avian" which has
been lurking for a while.
2019-11-21 17:43:55 -08:00
nhmall
d132093595 Merge branch 'NetHack-3.6' 2019-11-18 15:15:37 -05:00
PatR
040c13f6aa more tribute: Eric #3, Witches Abroad #10 2019-11-18 11:56:45 -08:00
PatR
516761b9bb another tribute typo: The Light Fantastic #11
Another transciption mistake ("to"; the book has "do").
2019-11-18 11:01:26 -08:00
nhmall
d2128968fa Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-14 19:50:20 -05:00
PatR
c72795b2dd fix #H9421 - typo in Soul Music #7
Misspelled "genius".  Typo in the transcription, not in the book.
2019-11-14 16:17:15 -08:00
nhmall
bcb627100b Merge branch 'paxed-lua-merged3' into paxed-lua-v2-merged 2019-11-06 12:56:21 -05:00
Pasi Kallinen
9cd9280276 Lua: remove dgn_comp, use lua instead 2019-11-06 18:45:10 +02:00
Pasi Kallinen
fd55d9118e Use lua for special level files
Game is playable, and should compile on linux and Windows.
Assumes you have a lua 5.3 library available.

Removes level compiler and associated files.
Replaces special level des-files with lua scripts.
Exposes some NetHack internals to lua:
 - des-table with commands to create special levels
 - nh-table with NetHack core commands
 - nhc-table with some constants
 - u-table with some player-specific data (u-struct)
 - selection userdata

Adds some rudimentary tests.

Adds new extended command #wizloadlua to run a specific script,
and #wizloaddes to run a specific level-creation script.

nhlib.lua is loaded for every lua script.

Download and untar lua:
  mkdir lib
  cd lib
  curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz
  tar zxf lua-5.3.5.tar.gz

Then make nethack normally.
2019-11-06 18:43:20 +02:00
PatR
7efdec7f5e fix symset:curses S_tree
Symbol set changes...

curses:
  S_tree (use plus-or-minus sign instead of accidental horizontal line);
  S_bars (switch from default '#' to not-equals sign);

DECgraphics:
  S_altar (switch from default '_' to 'pi');
  S_bars (switch from 'pi' to not-equals sign);

DECgraphics_2: get rid of this commented out set since its contents are
  now folded into DECgraphics.

(The IBMgraphics one is just whitespace; delete a <space> that precedes
a <tab>.)
2019-11-04 10:42:14 -08:00
nhmall
13f4a466d9 name correction 2019-11-02 01:44:00 -04:00
nhmall
f261b02f5a dungeoneers update 2019-11-02 01:40:58 -04:00
nhmall
696f54a3b8 doc updates 2019-10-31 13:27:10 -04:00
nhmall
5690cce584 one new rumor 2019-10-20 11:21:47 -04:00
PatR
70c9b801bd github pull request #233 - plural of Nazgul
Fixes #233

makeplural() and makesingular() know that the plural of Nazgul is
Nazgul, but one of the hard-coded rumors didn't.
2019-10-17 14:58:16 -07:00
PatR
0c86965d5e another thinko 2019-10-17 05:17:08 -07:00
PatR
3e368b9a51 symbol set reorganization
Change the way symbol sets are loaded to make them have the same order
as they appear in the symbols file rather than being reversed.

Revise dat/symbols so that the new ordering yields a result similar
to the old ordering, more or less.  I've added a few set descriptions.
The only substantive change is marking DECgraphics as primary-only
(not available on rogue level) and adding new set DECgraphics_2 which
is commented out near the end.

Define symbol handling H_MAC since one of the sets specifies
'handling: MAC'.  All H_MAC is used for now is to avoid showing
MACgraphics as a symset when compiled without MAC_GRAPHICS_ENV (which
was used for pre-OSX Mac by the old code in sys/mac/), so it will be
hidden for everyone.

I left handling H_CURS even though curses doesn't implement anything
for it.  It could do something when rendering the map or assign a
function to 'cursesgraphics_mode_callback' for special init or both
but hasn't needed to.  Since curses is now supporting DECgraphics,
define 'decgraphics_mode_callback' for it.  No value is being
assigned so that doesn't do anything; curses seems to be setting up
the primary character set as text and secondary one as line-drawing
without the need for that hook.

With the added set descriptions, 'O's symset menu looked horrible for
curses due to the way curses decides to set the width of menus and
the resulting line wrapping which took place because of a too-narrow
menu.  I've added a chunk of code to the options handling code which
shouldn't really be there but makes the menu much easier to read.

Lastly, do some formatting cleanup in files.c.
2019-10-17 05:00:58 -07:00
PatR
d0c4d27a50 githib pull request #232 - curses symset
This time I'm putting things in as-is before making a few tweaks.

The pull request was three or four separate changes.  I used the
patch instead so they've been collected into one commit.
2019-10-16 15:52:00 -07:00
PatR
d058b9679c fix part of #H9299 - DECgraphics symset comments
For the DECgraphics symbol set, down ladder is the greater-than-or-
equal-to character as intended and up ladder is less-than-or-equal-to,
but comments in dat/symbols had their descriptions transposed.
2019-10-12 15:33:57 -07:00
PatR
380a2d2848 fix #H9100 - typo in Mort #4
For "They look at you but the don't see you", "the" should be a second
"they".  Simple transcription typo rather than a mistake in the book.
2019-08-06 04:24:21 -07:00
PatR
d0a32762ab keyhelp typo 2019-06-25 03:27:42 -07:00
nhmall
02898009a6 remove some trailing spaces from data.base 2019-06-04 21:49:20 -04:00
nhmall
cccdeb6b01 data.base update 2019-06-03 18:00:19 -04:00
PatR
c9e6e44590 help bits
Fix a typo (count example "20s." shouldn't have the period).

Also expand the text for several gotchas that tend to hit newbies.
2019-05-31 18:41:37 -07:00
Pasi Kallinen
2562144503 Make sure the correct luckstone is the prize
The first generated luckstone is marked as the prize in mines' end.
Make sure we generate the intended one first, before any other
(possibly randomly generated) luckstones.
2019-05-25 19:15:56 +03:00