Commit Graph

193 Commits

Author SHA1 Message Date
nethack.rankin
a950a6b368 fix #H2151 - typo in towel's lookat/whatis entry
From a bug report, the entry
in data.base for towel repeated the word "down" in the quote from Douglas
Adams' _The_Hitchhiker's_Guide_to_the_Galaxy_.  I double checked the book
itself to verify that the quote shouldn't say "down down".
2010-07-26 01:03:11 +00:00
keni
55b53cc6dc replacement data.base entry for slime molds
Found while looking for a monster for the (still pending) life patch.
Keni
2010-04-29 19:18:08 +00:00
nethack.rankin
e8ca39ff07 meta access to several extended commands (trunk only)
Someone in the newsgroup has a keyboard where typing '#' is difficult
or impossible to do, and mentioned that he could use Alt+r to get #rub but
was playing a knight and had no way to get #ride.  Turns out that there
are several normal-mode extended commands that lacked a meta shortcut.
Since meta chars are case sensitive, I've added Alt+R for #ride, plus
M-A for #annotate, M-O for #overview, M-C for #conduct, and M-T for #tip.

     Unfortunately, I've been unable to test them.  It turns out that
nethack mode in PuTTY doesn't change the Alt key into a meta shift, it
causes the digits on the number pad to send vi-style movement letters
(with support for shift+digit and ctrl+digit to send modified letters).
That seems relatively useless to me, and I haven't figured out how to
force on high bit for arbitrary characters so can't activate nethack's
meta-key shortcuts.

     The Guidebook has been updated via copy+paste and is untested too.
2009-10-20 22:48:38 +00:00
nethack.rankin
d69f078b7e pickup_burden typo/thinko
From the newsgroup:  the 'O' command's menu for setting pickup_burden
shows "Unencumbered" for the 'u' choice but the Guidebook and the in-game
options help show "Unburdened".  (For config file processing, the program
only examines the first letter so accepts either value.)  This changes the
documentation to match the game.
2009-10-18 23:52:39 +00:00
keni
df20791e59 Add RCS version lines 2009-05-06 10:45:32 +00:00
keni
ce89e6dc33 H1810 seems never to have been addressed: two spelling errors. 2009-04-29 21:29:32 +00:00
nethack.rankin
2e3a0f3b04 quest.txt Astral Plane
"Astral plane" is a place name so should be fully capitalized.  Some
of the variations used ("through the elemental planes to the astral",
"plane of the astral", "planes of the elements") aren't as clear cut, but
I capitalized all of those I found.
2009-04-07 19:42:26 +00:00
nethack.rankin
e205569714 extended quest text formatting (trunk only)
Add questpgr formatting codes to support pronouns for leader,
nemesis, deity, and artifact.
  %lh -> "he" or "she" for leader; %nh for nemesis; %dh for hero's god;
  %li -> "him" or "her"; likewise %ni, %di;
  %lj -> "his" or "her"; and %nj, %dj;
H, I, and J modifiers yield capitalized form of same.
  %oh -> "it" or "they" for artifact (Eyes of the Overworld is plural);
  %oi -> "it" or "them";
  %oj -> "its" or "their"; plus capitalization with uppercase modifiers.
Also, %O yields shortened artifact name ("the Foo" in place of "the Foo
of Bar").  These provide support for terser summary lines, but can also
be used in the regular quest text passages.

     A couple of nemeses don't specify gender.  The random choices need
to be made early so that the leaders' messages can get them right.  This
chooses during role initialization and then uses that result once the
corresponding monster is eventually created.  It does the same for leader
even though no current leader needs it, and for deity too.
2009-04-07 02:19:54 +00:00
nethack.rankin
a86187b398 summary text for block messages (trunk only)
[Make use of recent message history changes.]

     Add support to makedefs and the core for including a line of summary
text with quest messages that don't use pline() delivery.  The multi-line
record structure of quest.txt begins each entry with %C and ends with %E.
makedefs now examines the %E lines looking for "[anything]" and adds that
to quest.dat where deliver_by_window() can find it.  The square brackets
are required in the input and intentionally carried along to the output.
putmsghistory() is used to put the summary text into the message history
buffer for use by ^P, without being displayed first.  (So this is a no-op
for interfaces which haven't implemented putmsghistory yet.  Maybe
genl_putmsghistory() should pass such text to pline() as a quick hack?)

     This adds a few summary lines to quest.txt so that the feature can
be tested.  Most of them were written by <Someone> nearly three years
ago.  I'm planning to add a couple of new control codes that'll allow some
of them to expand into shorter text.  (The one where the Archeologist
leader tells you that the nemesis stole the artifact so your mission is
to find the goal level, defeat the nemesis, and return with the artifact
ends up being roughly 160 characters long.)
2009-04-06 02:50:41 +00:00
nethack.rankin
4c83db0294 fix #H1232 - hole in ice is described as moat [1 of 2] (trunk only)
From a bug report, when ice on the Valkyrie
quest home level was melted and a boulder filled the resulting pool, that
pool was described as a moat.  This was actually a terrain issue rather
than a formatting glitch, so instead of tweaking waterbody_name() with an
extra special case, extend the level compiler to allow specifying ice as
frozen pool instead of always being frozen moat.  There's no provision
for having both types of ice on the same level, just a level-wide flag to
control which of the two applies for ice on that level.

     This change has a side-effect for the V quest levels:  once ice has
been melted, a second blast of fire will now boil away the pool and leave
a pit.  The unfrozen water locations on the home level already behaved
that way (ie, they are pools rather than moats) so this should be ok.  I
also added <Someone>'s suggestion to make one of the two drawbridges
on the goal level start in random state instead of always being open.
2007-08-03 01:05:50 +00:00
nethack.rankin
86a1e8b1b1 C/#name menu, calling old discoveries [2 of 2] (trunk only)
Implement <Someone>'s menu-mode for #name, primarily because it
is the natural place to add [re]naming entries in the discoveries list,
something that was requested in the newsgroup ten or so years ago.  The
latter allows changing the type name of something which has previously
been named and is no longer being carried.

     This also makes the C command become a synonym for #name or vice
versa; one or the other could now be reassigned to something else.
2007-05-25 02:02:44 +00:00
nethack.rankin
3c5b8398bd more data.base
Reformat a couple of older movie dialog entries to match the newer ones.
2007-04-30 03:32:42 +00:00
nethack.rankin
fe21cdf174 combat, potion, archeologist data.base entries
Add second quotes for archeologist and potion, plus a silly new entry
for combat.
2007-04-30 03:01:22 +00:00
nethack.rankin
94327317c2 pile_limit option - movement feedback "there are objects here" (trunk only)
Something that pops up in the newsgroup periodically, with <Someone>
inevitably pointing out the bit of code that the user needs to tweak,
about control of feedback when hero is walking across floor objects.
Implement new option ``pile_limit'' which allows user to set the point
at which the game switches from listing the objects to giving "there are
several/many objects here".  Default is 5, same as previous hard-coded
value (1 object gets listed via pline, 2..4 are listed in a corner popup,
5 or more objects yields a pline message instead).  Setting pile_limit
to 0 means no limit, so objects will always be listed regardless of pile
size.  Setting it to 1 effectively forces no listing since any non-empty
pile size is always at least that big, so can produce "there is an object
here" even though that's no briefer than a pline() to show one object.
2007-04-27 02:05:28 +00:00
nethack.rankin
e3229e6d3b questpgr support for special level arrival messages (trunk only)
Suggested by <email deleted>.  The level compiler allows
MESSAGE directives to provide text given upon initial entry to particular
levels.  Modify the code that delivers them to support quest pager text
substitution.  It could also be tweaked to support deliver-by-popup-window
in addition to deliver-by-pline, but I didn't go that far.

     He also suggested revising the message for the Plane of Air, but it
seems ok to me.  Instead, I've changed the message for the Astral Plane to
announce that it holds "the High Temple of <your deity>" rather than the
quite lame "the High Temples of the aligned gods".
2007-03-03 04:51:47 +00:00
nethack.rankin
5c0a06d6b0 OPTIONS=playmode:normal|explore|debug (trunk only)
[see cvs log for src/options.c for some additional info]
     Relief for the command-line impaired.  Allow player to request
explore or wizard mode via run-time config file or NETHACKOPTIONS.
Validation is left to xxxmain() and has been updated for Unix, VMS, and
ports which share pcmain.  Mac and Be appear to allow any user to access
wizard mode, and may not need any modification, although they'll continue
to have the old buglet of running with both wizard and discover flags set
if player uses `nethack -X -D'.  This may or may not work as-is for the
Qt interface depending upon whether it goes through one of the xxxmain()'s
mentioned above [someone needs to make sure that it doesn't allow Qt on
Unix to bypass the (username == WIZARD_NAME) test when user requests
wizard mode].
2007-02-15 05:22:54 +00:00
cohrs
fe43698867 Q387 - grammar fixes in Samurai quest
"Wakarimasu?" should be "Wakarimasu ka?"
2007-02-10 16:31:14 +00:00
nethack.rankin
8c982b0e05 typo in chest description
From a bug report:  "The" should be "Then".
2007-02-08 20:46:01 +00:00
nethack.allison
7f0f43e6f9 add some unicode support (trunk only)
This patch attempts to add some levels of unicode support
to NetHack.

The master on/off switch for any Unicode support is
defining UNICODE_SUPPORT in config.h. Currently
there is code support for two subsets of unicode support:

UNICODE_DRAWING

If UNICODE_DRAWING is defined, then the data
structures used to house drawing symbols are expanded
to the size of wchar_t, big enough to hold unicode characters.
A typdef called `nhsym' is involved and if UNICODE_DRAWING
is defined, it is wchar_t, otherwise it is uchar.

UNICODE_WIDEWINPORT

If UNICODE_WIDEWINPORT is defined, then the data
structures inside the window port are expanded to the size of
wchar_t, big enough to hold unicode characters.  Both map
symbols and text within the window port are expanded, in order
for potential support for displaying multinational characters some
day, but this patch only provides viewing of map symbols.
A typdef called `nhwchar' is involved and if UNICODE_WIDEWINPORT
is defined, it is wchar_t, otherwise it is char.

The only window port with code support for UNICODE_WIDEWINPORT
currently is the TTY port.  Don't enable UNICODE_WIDEWINPORT
unless:
- it is a TTY port
- the underlying platform specific routines can
handle the larger data structures.

Don't enable UNICODE_SUPPORT unless:
- your compiler can handle wchar_t.
- your compiler can accept L'a' characters.
- your compiler can accept L"wide" strings.

Note that if your compiler can handle the above, you could
enable the larger data structures (currently if TTY) even if your
platform can't actually display unicode or UTF-8, by messing
with u_putch() in win/tty/wintty.c to only deal regular chars.
That should be the only function that actually pushes wide characters
out to the display.

If you enable UNICODE_SUPPORT, and your platform is capable
you will need to turn on the unicode run-time option to be able to
load unicode character sets from the symbol file, to be able to
push unicode characters to the display. You'll also want to load
a unicode symbol set once the unicode option is toggled on. In
a config file you would do that via these two lines:
OPTIONS=unicode
OPTIONS=symset:Unicode_non_US

The repository was stamped with NETHACK_PRE_UNICODE
prior to applying this patch, and stamped with
NETHACK_POST_UNICODE afterwards. The code differences
between those two tagged versions are this patch.
2006-10-17 23:55:42 +00:00
nethack.allison
0ce424b71a symset restrictions attribute (trunk only)
Pat Rankin wrote:
> I was about to also suggest that there
> be a rogue/non-rogue (with perhaps a third choice meaning "both")
> attribute.  That way we could keep the rogue choices from being
> listed in the "symset" menu and the non-rogue choices from the
> "roguesymset" menu.  Players who deliberately wanted to switch
> over would need to modify the attribute, possibly on a cloned set.
> Or perhaps they could just explicitly set their desired choices
> via NETHACKOPTIONS or .nethackrc and not use the 'O' menues--the
> new attribute doesn't necessary have to block which sets get used
> where, just filter menu entries to display the most applicable
> candidates.
2006-10-03 02:38:40 +00:00
nethack.allison
6e1c1dba92 symset properties (trunk only)
Pat Rankin wrote:
> Symbol set definitions need a description attribute, above and
> beyond allowing comments in the file, for inclusion in the 'O'
> command's menu entries for selecting them.
[...]
> mapglyph.c isn't the proper place to decide whether to define
> ROGUE_COLOR.  That may need to become a symbol attribute,
> which we'd then specify on the Epyx rogue set(s).

Implement both of the suggestions above.
2006-09-24 02:45:34 +00:00
cohrs
d9368a3c09 constrain monster migration in wizard tower
<Someone> noticed that when a monster escaped upladder in the wizard
tower, it ended up outside the tower.  This is due to the "wander" code in
monster migration.  Rather than add code to try to keep the monster from
crossing the undiggable wall, just add REGIONs on the tower levels within the
area, which then utilizes the existing in-a-room constraint behavior of
monster migration. Of course, one can still fill a tower level with fodder,
and then when another monster climbs the ladder, it will still end up
outside the tower.
2006-09-23 06:32:01 +00:00
nethack.rankin
7a49705a93 symbols documentation (trunk only)
A first cut at adding some user-level documentation to dat/symbols.
It should probably include a brief example (not verbose description) of
how to specify values in the various supported formats (decimal, octal,
hexadecimal, simple string, string including escape sequeces?).  Perhaps
a pointer to the Guidebook too. :-}
2006-09-23 05:34:38 +00:00
nethack.allison
1820d8c689 blind player updates (trunk only)
This takes the PC config file commented symbol value
recommendations from <Someone> for blind players
and puts them into a symset.

[note to devteam: They look odd. I thought perhaps that
something was code wrong, but I went back to 3.4.3
and uncommented the config file stuff. They look the
same there, still odd, especially corridors.
Does anyone have any of the e-mail from <Someone> that might give an indication of what is supposed
to be seen on the display?  I wonder if those config
file options fell out of synch with the code long ago]
2006-09-23 04:40:15 +00:00
nethack.allison
94b66d0be5 New file: dat/symbols 2006-09-21 01:33:24 +00:00
nethack.rankin
63af2521dd data.base entry: playing style
A couple of short quotes which needed a good home.  The first is a
bit of verse from a short story, the second is part of the opening theme
song of the TV series "Monk".  (That's the main character's surname, not
his profession/vocation :-).

     Also make the change to the actual monk entry suggested by <Someone>.
2006-08-27 01:48:04 +00:00
nethack.rankin
2cca9c3114 fix #H158 - typo in monk data.base entry
From a bug report, the whatis description
for monks (a passage about a monk being invited to a meal) was using "month"
where "mouth" is clearly intended.  I think this came up a few years ago
when monk was first added and am not sure why it wasn't changed them, even
if it happens to be an accurate transcription from the quote's source.
2006-08-03 04:00:07 +00:00
nethack.rankin
9151db8aaf add pickup_thrown option (trunk only)
This patch by <email deleted> was released
when 3.4.1 was current and has been incorporated into slash'em.  It is
extremely useful while using ranged weapons.  When both autopickup and
pickup_thrown are enabled, walking across previously thrown objects will
pick them up even if they don't match the current pickup_types list.
[See cvs log for patchlevel.h for longer description.]
2006-05-13 04:57:52 +00:00
jwalz
43690db0bc The last straightforward additions.
Now I have to figure out which of the shifts from here to there we
want from the <email deleted> submissions.
2006-05-04 22:15:37 +00:00
jwalz
eade95f3ea And another handful of submitted entries. 2006-05-03 23:01:02 +00:00
jwalz
3f401e10dc Yet more of the <email deleted> entries. 2006-04-29 23:13:18 +00:00
jwalz
0c8c38a04c And another batch from <email deleted> 2006-04-28 22:28:48 +00:00
jwalz
497dd4bea0 The next few from <email deleted> 2006-04-27 22:35:41 +00:00
jwalz
3d3aa36eda The next <email deleted> batch. 2006-04-26 23:02:25 +00:00
jwalz
f0a3911e62 Another batch from <email deleted>
And some space removal after I noticed some on incoming entries.
2006-04-25 20:46:31 +00:00
jwalz
f0963e3fb6 Next batch from <email deleted> 2006-04-24 20:00:11 +00:00
jwalz
1c6e2c2d27 First batch from <email deleted> 2006-04-23 18:51:39 +00:00
jwalz
0a939c0e99 Update dungeoneers for data.base entries. 2006-04-23 17:22:46 +00:00
jwalz
2b391cddb0 Starting with a formatting sweep, including adding Pat's [] breaks. 2006-04-19 22:20:54 +00:00
nethack.rankin
8ed2748d52 #terrain (trunk only)
I've been using this for a while; it is occasionally handy.  #terrain
is a new wizard mode command which brings up a text display where the map
topology is revealed, similar to the obscure #wmode command but showing
different information.  Also, #wmode has been tweaked a little so as to
actually overlay the tty-mode map exactly, rather than being off by one
line and one column.  (That shouldn't really matter for other windowing
schemes where the map and a text rendition of it aren't very likely to
have a given location be displayed at the exact same screen position.)

     The line of formatted flags info below the terrain display probably
belongs in a separate debugging command altogether where it wouldn't have
to be displayed in such a terse fashion.
2006-04-01 05:48:55 +00:00
nethack.rankin
5e79d10377 wizard mode level teleport (trunk only)
Responding with '?' to the "what level?" prompt when using ^V in
wizard mode brings up a menu of special level destinations that lets you
move across dungeon branches.  But getting in and out of Fort Ludios
didn't work, and jumping to the endgame forced you to arrive on the Plane
of Earth.  Now Fort Ludios will not be selectable in the menu until after
the portal ordinarily used to reach it has been created (so you'll need a
level between Bigroom and Medusa with a vault on it to be created before
you can bypass the magic portal and jump directly to the Fort), and you
can go directly to any of the elemental planes, including Astral, without
stopping at Earth first (the Wizard will be there to greet you, whichever
level you pick).  Also, this limits the menu to endgame entries once you
are in the endgame.  (Previously, picking a non-endgame level would yield
"you can't get there from here"; you can still get that, if you really
want to see it for some reason, by giving a destination level number
outside the range of -1 to -5 instead of using the menu.)

     I hadn't realized that this feature has been around since 3.4.2 until
I couldn't find any new feature entry for in the current fixes file....
2006-03-25 05:16:24 +00:00
nethack.rankin
710c3dbe89 dungeon tidbit
Nothing actually uses the s_level.flags.rogue_like flag, but since the
dungeon compiler is prepared to handle it we might as well have it do so.
2006-03-19 06:48:47 +00:00
cohrs
cf05c21190 not really a typo
revert to "persecuted", add a comment
2006-02-05 17:09:57 +00:00
cohrs
0bec6ce08e another typo
One of the numerous items From a bug report, but it really doesn't make sense.
2006-02-04 21:18:15 +00:00
cohrs
f11d009b4c gender and size of leaders and nemeses
Combo fix based on several reports and additional research.
In quest.txt and/or data.base, the Grand Master, Arch Priest, Ixoth, Master
Kaen, Nalzok, Scorpius, and the Master Assassin are all referred to as male
via reference: his or him.  Ideally, there would be a way to parameterize
this in the quest.txt, but I don't see a clear way to do that at this time.
For the time being at least, set the M2_MALE flag for these monsters.

The Dark One was referred to via "his" once in the quest.txt.  This case
I was able to modify the offending text rather than forcing a gender.

Orion and Norn are referred to as a giant in data.base but their size did
not correspond.  I left the symbol as S_HUMAN although perhaps it should
be S_GIANT.  Finally, Orion, the Norn, Cyclops and Lord Surtur, as
giant-types, should be able to tear webs.
2006-02-04 20:34:26 +00:00
cohrs
03185043d8 knight quest message bit
I noticed this a while back while inspecting an unrelated report.
It seems to me the breath of a dragon is more like broiling than baking
and thought the message wasn't consistent with this.
2006-01-24 07:17:41 +00:00
nethack.rankin
22269488fa quest message tweaks
From a list of bugs sent by <email deleted>, the initial message for
the knight quest included the phrase "looking closer" which isn't suitable
if the hero is blind at the time.  Also, one samurai guardian message used
"ninja" (assassin, more or less) where it ought to have been using "ronin"
(samurai without any master, a disgrace).

     The archeologist and tourist quests' initial messages had similar
blindness problems with "look".  (There are still at least 3 other places
which use "appear"; I've left those alone.)
2005-12-04 03:05:18 +00:00
nethack.rankin
ea61a13add number_pad:3,4,-1 (trunk only)
[See the cvs log from flag.h for comments pertaining to iflags.num_pad
and Cmd.num_pad, Cmd.commands[], Cmd.serialno.]
2005-11-26 02:34:23 +00:00
nethack.rankin
dc1b1e1ce4 tourist leader's greeting
Fix typo From a bug report.
2005-08-27 04:49:16 +00:00
jwalz
1c5fc011e5 Amazingly many players have never heard of kelp... 2005-08-10 19:41:59 +00:00