Original version - Eric S. Raymond
- (Edited and expanded for 3.6 by Mike Stephenson and others)
+ (Edited and expanded for 3.7 by Mike Stephenson and others)
- January 27, 2020
+ February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
you have seen on the current dungeon level; as you explore more
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
Intelligence affects your ability to cast spells and read
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
ical attacks. Many dungeons show only your experience level
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
nasty and vicious. Sometimes, however, they can be helpful.
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
symbol at the chosen location, conditionally check for "More
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
if you remember a monster there).
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
once you've closed this menu. The available options are
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
(R)UNIX is a registered trademark of The Open Group.
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
When picking a target with cursor and the autodescribe
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
command. By default the autoopen option is enabled, so simply
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
floor while inside a shop. You will either be offered an amount
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
are objects here" instead of listing them. The default is 5.
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
very useful under certain circumstances.
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
it is the one who moved rather than you.
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
extremely obvious, you will be asked what you want to call this
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
become highly skilled in daggers or staves but not in swords or
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
of armor, you immediately find out the armor class and any
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
vironment variable to the file name of your mailbox. You may
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
"Weapon proficiency".)
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
much less valuable. All rocks, however, can be used as
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
with these challenges. Note that it is perfectly acceptable to
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
make a wish for an item, you may choose "nothing" if you want to
decline.
- 9. Options
+ 8.1. Achievements
- Due to variations in personal tastes and conceptions of how
- NetHack should do things, there are options you can set to change
- how NetHack behaves.
+ End of game disclosure will also display various achieve-
+ ments representing progress toward ultimate ascension, if any
+ have been attained. They aren't directly related to conduct but
- NetHack 3.7 January 27, 2020
+ NetHack 3.7 February 10, 2020
+ are grouped with it because they fall into the same category of
+ "bragging rights" and to limit the number of questions during
+ disclosure.
+
+ The first two are also conducts, the rest are listed roughly
+ in order of difficulty and not necessarily in the order in which
+ you might accomplish them.
+
+ Blind
+ Blind from birth.
+
+ Nudist
+ Never wore any armor.
+
+ Mines' End
+ Explored to the bottom of the Gnomish Mines and found a special
+ item there.
+
+ Sokoban
+ Explored to the top of Sokoban and found a special item there.
+
+ Medusa
+ Defeated Medusa.
+
+ Bell
+ Acquired the Bell of Opening.
+
+ Gehennom
+ Entered Gehennom.
+
+ Candle
+ Acquired the Candelabrum of Invocation.
+
+ Book
+ Acquired the Book of the Dead.
+
+ Invocation
+ Gained access to the bottommost level of Gehennom.
+
+ Amulet
+ Acquired the fabled Amulet of Yendor.
+
+ Endgame
+ Reached the Elemental Planes.
+
+ Astral
+ Reached the Astral Plane level.
+
+ Ascended
+ Delivered the Amulet to its final destination.
+
+
+
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 49
+
+
+
+ Notes:
+
+ Blind and Nudist are also conducts, and they can only be en-
+ abled by setting the correspondingly named option in NETHACKOP-
+ TIONS or run-time configuration file prior to game start. In the
+ case of Blind, the option also enforces the conduct. They aren't
+ really significant accomplishments unless/until you make substan-
+ tial progress into the dungeon but they are treated as Achieve-
+ ments as long as the conduct is enabled and hasn't been broken.
+
+ The "special items" hidden in Mines End and Sokoban are not
+ unique but are considered to be prizes or rewards for exploring
+ those levels since doing so is not necessary to complete the
+ game. Finding other instances of the same objects doesn't record
+ the corresponding achievement.
+
+ The Medusa achievement is recorded if she dies for any rea-
+ son, even if you are not directly responsible, and only if she
+ dies.
+
+ 9. Options
+
+ Due to variations in personal tastes and conceptions of how
+ NetHack should do things, there are options you can set to change
+ how NetHack behaves.
+
9.1. Setting the options
Options may be set in a number of ways. Within the game,
figuration file, NetHack will create the configuration file for
you using the default template file.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 50
+
+
+
On MS-DOS, it is "defaults.nh" in the same folder as
nethack.exe.
"no" or `!' to turn it off. For compound options, the option
name and value are separated by a colon. Some options are per-
sistent, and apply only to new games. You can specify multiple
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 49
-
-
-
OPTIONS statements, and multiple options separated by commas in
a single OPTIONS statement. (Comma separated options are pro-
cessed from right to left.)
The location that bones files are kept. Defaults to HACKDIR,
must be writable.
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 51
+
+
+
LOCKDIR
The location that file synchronization locks are stored.
Defaults to HACKDIR, must be writable.
Change the key bindings of some special keys, menu accelera-
tors, or extended commands. You can specify multiple bindings.
Format is key followed by the command, separated by a colon.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 50
-
-
-
See the "Changing Key Bindings" section for more information.
Example:
Change the way messages are shown in the top status line. See
the "Configuring Message Types" section.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 52
+
+
+
ROGUESYMBOLS
Custom symbols for for the rogue level's symbol set. See SYM-
BOLS below.
names, one per line, up to a maximum of 128 lines. Each line
is processed by the function that handles wishing.
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 51
-
-
-
Example:
WIZKIT=~/wizkit.txt
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 53
+
+
+
9.3. Using the NETHACKOPTIONS environment variable
The NETHACKOPTIONS variable is a comma-separated list of
The NETHACKOPTIONS value is effectively the same as a single
OPTIONS statement in a configuration file. The "OPTIONS=" prefix
is implied and comma separated options are processed from right
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 52
-
-
-
to left. Other types of configuration statements such as BIND or
MSGTYPE are not allowed.
Note that this has nothing to do with your computer's audio ca-
pabilities. Persistent.
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 54
+
+
+
align
Your starting alignment (align:lawful, align:neutral, or
align:chaotic). You may specify just the first letter. The
This option controls what happens when you attempt the `f'
(fire) command when nothing is quivered or readied (default
false). When true, the computer will fill your quiver or
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 53
-
-
-
quiver sack or make ready some suitable weapon. Note that it
will not take into account the blessed/cursed status, enchant-
ment, damage, or quality of the weapon; you are free to manual-
Set the character used to display boulders (default is the
"large rock" class symbol, ``').
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 55
+
+
+
catname
Name your starting cat (for example "catname:Morris"). Cannot
be set with the `O' command.
new players if it detects some anticipated mistakes (default
on).
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 54
-
-
-
confirm
Have user confirm attacks on pets, shopkeepers, and other
peaceable creatures (default on). Persistent.
a - disclose your attributes;
v - summarize monsters that have been vanquished;
g - list monster species that have been genocided;
- c - display your conduct;
+ c - display your conduct; also achievements, if any;
o - display dungeon overview.
Each disclosure possibility can optionally be preceded by a
prefix which lets you refine how it behaves. Here are the
valid prefixes:
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 56
+
+
+
y - prompt you and default to yes on the prompt;
n - prompt you and default to no on the prompt;
+ - disclose it without prompting;
and default to no, and overview to disclose without prompting.
Note that the vanquished monsters list includes all monsters
- killed by traps and each other as well as by you. And the
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 55
-
-
-
- dungeon overview shows all levels you had visited but does not
- reveal things about them that you hadn't discovered.
+ killed by traps and each other as well as by you. And the dun-
+ geon overview shows all levels you had visited but does not re-
+ veal things about them that you hadn't discovered.
dogname
Name your starting dog (for example "dogname:Fang"). Cannot be
fixinv
An object's inventory letter sticks to it when it's dropped
(default on). If this is off, dropping an object shifts all
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 57
+
+
+
the remaining inventory letters. Persistent.
force_invmenu
when "on") or U (known to be uncursed, when "off", the de-
fault). Gold is never blessed or cursed, but it is not de-
scribed as "uncursed" even when the implicit_uncursed option is
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 56
-
-
-
"off".
help
With the curses interface, the petattr option controls how to
highlight pets and setting it will turn the hilite_pet option
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 58
+
+
+
on or off as warranted.
hilite_pile
If you use menu coloring, you may want to turn this off.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 57
-
-
-
legacy
Display an introductory message when starting the game (default
on). Persistent.
scribed when covered by one or more objects (default off).
Persistent.
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 59
+
+
+
mention_walls
Give feedback when walking against a wall (default off). Per-
sistent.
Menu character accelerator to deselect all items in a menu.
Implemented by the Amiga, Gem, X11 and tty ports. Default `-'.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 58
-
-
-
menu_deselect_page
Menu character accelerator to deselect all items on this page
of a menu. Implemented by the Amiga, Gem and tty ports. De-
Menu character accelerator to jump to the last page in a menu.
Implemented by the Amiga, Gem and tty ports. Default `|'.
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 60
+
+
+
menu_next_page
Menu character accelerator to goto the next menu page. Imple-
mented by the Amiga, Gem and tty ports. Default `>'.
menu_select_page
Menu character accelerator to select all items on this page of
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 59
-
-
-
a menu. Implemented by the Amiga, Gem and tty ports. Default
`,'.
for curses (`f' and `r' choices, default `r'). The possible
values are:
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 61
+
+
+
s - single message (default; only choice prior to 3.4.0);
c - combination, two messages as "single", then as "full";
f - full window, oldest message first;
nudist
Start the character with no armor (default false). Persistent.
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 60
-
-
-
null
Send padding nulls to the terminal (default on). Persistent.
packorder
Specify the order to list object types in (default
"")[%?+!=/(*`0_"). The value of this option should be a string
- containing the symbols for the various object types. Any omit-
- ted types are filled in at the end from the previous order.
+ containing the symbols for the various object types. Any
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 62
+
+
+
+ omitted types are filled in at the end from the previous order.
paranoid_confirmation
A space separated list of specific situations where alternate
eating - require "yes" rather than `y' to confirm whether
to continue eating;
Were-change - require "yes" rather than `y' to confirm changing
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 61
-
-
-
form due to lycanthropy when hero has polymorph
control;
pray - require `y' to confirm an attempt to pray rather
hilite_pet boolean option. Curses interface only; value is one
or more of the following letters.
+
+
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 63
+
+
+
n - Normal text (no highlighting)
i - Inverse video (default)
b - Bold text
"horse", and "none". If the choice is not allowed for the role
you are currently playing, it will be silently ignored. For
example, "horse" will only be honored when playing a knight.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 62
-
-
-
Cannot be set with the `O' command.
pickup_burden
value of 0 means "no limit" (always list the objects); a value
of 1 effectively means "never show the objects" since the pile
size will always be at least that big; default value is 5.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 64
+
+
+
Persistent.
playmode
objects or monsters is less intrusive. Default is off. Per-
sistent.
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 63
-
-
-
race
Selects your race (for example, "race:human"). Default is ran-
dom. If you prefix the value with `!' or "no", you will ex-
rlecomp
When writing out a save file, perform run length compression of
the map. Not all ports support run length compression. It has
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 65
+
+
+
no effect on reading an existing save file.
runmode
Evaluate monsters, objects, and map prior to each turn (default
off). Debug mode only.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 64
-
-
-
scores
Control what parts of the score list you are shown at the end
(for example "scores:5 top scores/4 around my score/own
silent
Suppress terminal beeps (default on). Persistent.
- sortloot
- Controls the sorting behavior of the pickup lists for inventory
- and #loot commands and some others. Persistent. The possible
- values are:
+ sortloot
+ Controls the sorting behavior of the pickup lists for inventory
+ and #loot commands and some others. Persistent. The possible
+ values are:
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 66
+
+
full - always sort the lists;
loot - only sort the lists that don't use inventory letters,
Allow updates to the status lines at the bottom of the screen
(default true).
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 65
-
-
-
suppress_alert
This option may be set to a NetHack version level to suppress
alert notification messages about feature changes for that and
toptenwin
Put the ending display in a NetHack window instead of on stdout
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 67
+
+
+
(default off). Setting this option makes the score list visi-
ble when a windowing version of NetHack is started without a
parent window, but it no longer leaves the score list around
after game end on a terminal or emulating window.
travel
- Allow the travel command (default on). Turning this option off
- will prevent the game from attempting unintended moves if you
- make inadvertent mouse clicks on the map window. Persistent.
+ Allow the travel command via mouse click (default on). Turning
+ this option off will prevent the game from attempting unintend-
+ ed moves if you make inadvertent mouse clicks on the map win-
+ dow. Does not affect traveling via the `_' ("#travel") com-
+ mand. Persistent.
verbose
Provide more commentary during the game (default on). Persis-
The possible settings are:
-
-
-
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 66
-
-
-
c - compass ("east" or "3s" or "2n,4w");
f - full compass ("east" or "3south" or "2north,4west");
m - map <x,y> (map column x=0 is not used);
through next and previous targets, use a menu instead to pick a
target. (default off)
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 68
+
+
+
whatis_moveskip
When getting a location on the map, and using shifted movement
keys or meta-digit keys to fast-move, instead of moving 8 units
Augment object descriptions with their objects' weight (default
off). Debug mode only.
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 67
-
-
-
zerocomp
When writing out a save file, perform zero-comp compression of
the contents. Not all ports support zero-comp compression. It
If NetHack can, it should display an ascii character map if it
can.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 69
+
+
+
color
If NetHack can, it should display color if it can for different
monsters, objects, and dungeon features.
If NetHack can, it should use a font by the chosen name for the
message window.
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 68
-
-
-
font_status
If NetHack can, it should use a font by the chosen name for the
status window.
guicolor
Use color text and/or highlighting attributes when displaying
- some non-map data (such as menu selector letters). Curses in-
- terface only; default is on.
+ some non-map data (such as menu selector letters). Curses
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 70
+
+
+
+ interface only; default is on.
large_font
If NetHack can, it should use a large font.
ple, in the protected mode MS-DOS version, control whether
tiles get pre-loaded into RAM at the start of the game. Doing
so enhances performance of the tile graphics, but uses more
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 69
-
-
-
memory. (default on). Cannot be set with the `O' command.
scroll_amount
term_rows
Curses interface only. Number of columns and rows to use for
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 71
+
+
+
the display. Curses will attempt to resize to the values spec-
ified but will settle for smaller sizes if they are too big.
Default is the current window size.
use_darkgray
Use bold black instead of blue for black glyphs (TTY only).
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 70
-
-
-
use_inverse
If NetHack can, it should display inverse when the game speci-
fies it.
brown, blue, magenta, cyan, orange, brightgreen, yellow, bright-
blue, brightmagenta, brightcyan, white, trueblack, gray, purple,
silver, maroon, fuchsia, lime, olive, navy, teal, aqua), or one
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 72
+
+
+
of Windows UI colors (activeborder, activecaption, appworkspace,
background, btnface, btnshadow, btntext, captiontext, graytext,
greytext, highlight, highlighttext, inactiveborder, inactivecap-
the .dll extension and without any path information. Cannot be
set with the `O' command.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 71
-
-
-
altmeta
On Amiga, this option controls whether typing "Alt" plus anoth-
er key functions as a meta-shift for that key (default on).
page_wait
(default on, Mac NetHack only).
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 73
+
+
+
rawio
Force raw (non-cbreak) mode for faster output and more bullet-
proof input (MS-DOS sometimes treats `^P' as a printer toggle
video
Set the video mode used (PC NetHack only). Values are "autode-
- tect", "default", or "vga". Setting "vga" (or "autodetect"
- with vga hardware present) will cause the game to display
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 72
-
-
-
- tiles. Cannot be set with the `O' command.
+ tect", "default", "vga", or "vesa". Setting "vesa" will cause
+ the game to display tiles, using the full capability of the VGA
+ hardware. Setting "vga" will cause the game to display tiles,
+ fixed at 640x480 in 16 colors, a mode that is compatible with
+ all VGA hardware. Third party tilesets will probably not work.
+ Setting "autodetect" attempts "vesa", then "vga", and finally
+ sets "default" if neither of those modes works. Cannot be set
+ with the `O' command.
video_height
- Set the VGA mode resolution height (MS-DOS only, with
- video:vga)
+ Set the VGA mode resolution height (MS-DOS only, with
+ video:vesa)
video_width
- Set the VGA mode resolution width (MS-DOS only, with video:vga)
+ Set the VGA mode resolution width (MS-DOS only, with
+ video:vesa)
videocolors
Set the color palette for PC systems using NO_TERMS (default
9.7. Regular Expressions
Regular expressions are normally POSIX extended regular ex-
- pressions. It is possible to compile NetHack without regular ex-
- pression support on a platform where there is no regular expres-
- sion library. While this is not true of any modern platform, if
- your NetHack was built this way, patterns are instead glob pat-
- terns. This applies to Autopickup exceptions, Message types, Menu
- colors, and User sounds.
+ pressions. It is possible to compile NetHack without regular
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 74
+
+
+
+ expression support on a platform where there is no regular ex-
+ pression library. While this is not true of any modern platform,
+ if your NetHack was built this way, patterns are instead glob
+ patterns. This applies to Autopickup exceptions, Message types,
+ Menu colors, and User sounds.
9.8. Configuring Autopickup Exceptions
< - always pickup an object that matches rest of pattern;
> - never pickup an object that matches rest of pattern.
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 73
-
-
-
- The autopickup_exception rules are processed in the order
- in which they appear in your configuration file, thus al-
- lowing a later rule to override an earlier rule.
+ The autopickup_exception rules are processed in the order in
+ which they appear in your configuration file, thus allowing a
+ later rule to override an earlier rule.
Exceptions can be set with the `O' command, but because they
are not included in your configuration file, they won't be in
by using BIND stanzas in the configuration file. Format is key,
followed by the command to bind to, separated by a colon. The
key can be a single character ("x"), a control key ("^X", "C-x"),
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 75
+
+
+
a meta key ("M-x"), or a three-digit decimal ASCII code.
For example:
commands will be available. Special command can only be bound
to a single key.
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 74
-
-
-
count
Prefix key to start a count, to repeat a command this many
times. With number_pad only. Default is `n'.
fault is `s'.
getpos.autodescribe
- When asked for a location, the key to toggle autodescribe. De-
- fault is `#'.
+ When asked for a location, the key to toggle autodescribe.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 76
+
+
+
+ Default is `#'.
getpos.all.next
When asked for a location, the key to go to next closest inter-
When asked for a location, the key to go to next closest mon-
ster. Default is `m'.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 75
-
-
-
getpos.mon.prev
When asked for a location, the key to go to previous closest
monster. Default is `M'.
or meta-digit keys to fast-move around, move by skipping the
same glyphs instead of by 8 units. Default is `*'.
- getpos.filter
- When asked for a location, change the filtering mode when using
- one of the next or previous keys to cycle through targets.
- Toggles between no filtering, in view only, and in the same
- area only. Default is `"'.
+ getpos.filter
+ When asked for a location, change the filtering mode when using
+ one of the next or previous keys to cycle through targets.
+ Toggles between no filtering, in view only, and in the same
+ area only. Default is `"'.
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 77
+
+
getpos.pick
When asked for a location, the key to choose the location, and
When asked for a location, the key to go to next closest unex-
plored location. Default is `x'.
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 76
-
-
-
getpos.unexplored.prev
When asked for a location, the key to go to previous closest
unexplored location. Default is `X'.
repeat
Key to repeat previous command. Default is `^A'.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 78
+
+
+
reqmenu
Prefix key to request menu from some commands. Default is `m'.
In general, the configuration file entries to describe the
message types look like this: MSGTYPE=type "pattern"
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 77
-
-
-
type - how the message should be shown;
pattern - the pattern to match.
matching rule is used. Put the general case first, exceptions
below them.
+
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 79
+
+
+
9.11. Configuring Menu Colors
Some platforms allow you to define colors used in menu lines
ground color, which isn't necessarily the same as any of the
other colors.
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 78
-
-
-
Allowed attributes are none, bold, dim, underline, blink, and
inverse. "Normal" is a synonym for "none". Note that the
platform used may interpret the attributes any way it wants.
plicit_uncursed option off so that all items known to be uncursed
are actually displayed with the "uncursed" description.
+
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 80
+
+
+
9.12. Configuring User Sounds
Some platforms allow you to define sound files to be played
Your copy of NetHack may have been compiled with support for
"Status Hilites". If so, you can customize your game display by
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 79
-
-
-
setting thresholds to change the color or appearance of fields in
the status display.
OPTION=hilite_status:wisdom/down/red/up/green
Allowed colors are black, red, green, brown, blue, magenta,
- cyan, gray, orange, light-green, yellow, light-blue, light-magen-
- ta, light-cyan, and white. And "no-color", the default fore-
- ground color on the display, which is not necessarily the same as
- black or white or any of the other colors.
+ cyan, gray, orange, light-green, yellow, light-blue, light-
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 81
+
+
+
+ magenta, light-cyan, and white. And "no-color", the default
+ foreground color on the display, which is not necessarily the
+ same as black or white or any of the other colors.
Allowed attributes are none, bold, dim, underline, blink,
and inverse. "Normal" is a synonym for "none"; they should not
strength gold experience
dexterity hitpoints HD
constitution hitpoints-max time
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 80
-
-
-
intelligence power hunger
wisdom power-max carrying-capacity
charisma armor-class condition
* "up", "down" set the field attributes for when the field
value changes upwards or downwards. This attribute times
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 82
+
+
+
out after statushilites turns.
* "changed" sets the field attribute for when the field val-
unattainable for experience because you'll gain a level
and the calculations will be reset for that new level, but
a rule for =100% is allowed and matches the special case
- of being exactly 1 experience point short of the next
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 81
-
-
-
- level.
+ of being exactly 1 experience point short of the next lev-
+ el.
* absolute value sets the attribute when the field value
matches that number. The number must be 0 or higher, ex-
Example hilites:
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 83
+
+
+
OPTION=hilite_status: gold/up/yellow/down/brown
OPTION=hilite_status: characteristics/up/green/down/red
OPTION=hilite_status: hitpoints/100%/gray&normal
fied as name:value pairs. Note that NetHack escape-processes the
value string in conventional C fashion. This means that \ is a
prefix to take the following character literally. Thus \ needs
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 82
-
-
-
to be represented as \\. The special prefix form \m switches on
the meta bit in the symbol value, and the ^ prefix causes the
following character to be treated as a control character.
- S_blcorn (bottom left corner)
b S_blob (blob)
+ S_book (spellbook)
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 84
+
+
+
) S_boomleft (boomerang open left)
( S_boomright (boomerang open right)
` S_boulder (boulder)
\ S_explode7 (explosion bottom left)
- S_explode8 (explosion bottom center)
/ S_explode9 (explosion bottom right)
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 83
-
-
-
e S_eye (eye or sphere)
^ S_falling_rock_trap (falling rock trap)
f S_feline (cat or other feline)
^ S_hole (hole)
@ S_human (human or elf)
h S_humanoid (humanoid)
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 85
+
+
+
- S_hwall (horizontal wall)
. S_ice (ice)
i S_imp (imp or minor demon)
p S_piercer (piercer)
^ S_pit (pit)
# S_poisoncloud (poison cloud)
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 84
-
-
-
^ S_polymorph_trap (polymorph trap)
} S_pool (water)
! S_potion (potion)
^ S_squeaky_board (squeaky board)
0 S_ss1 (magic shield 1 of 4)
# S_ss2 (magic shield 2 of 4)
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 86
+
+
+
@ S_ss3 (magic shield 3 of 4)
* S_ss4 (magic shield 4 of 4)
^ S_statue_trap (statue trap)
- S_stone (solid rock or unexplored terrain
- or dark part of a room)
+ S_stone (solid rock)
] S_strange_obj (strange object)
- S_sw_bc (swallow bottom center)
\ S_sw_bl (swallow bottom left)
| S_trwall (wall)
- S_tuwall (wall)
U S_umber (umber hulk)
+ S_unexplored (unexplored terrain)
u S_unicorn (unicorn or horse)
< S_upladder (ladder up)
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 85
-
-
-
< S_upstair (staircase up)
V S_vampire (vampire)
| S_vbeam (vertical beam [zap animation])
Y S_yeti (apelike creature)
Z S_zombie (zombie)
z S_zruty (zruty)
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 87
+
+
+
S_pet_override (any pet if ACCESSIBILITY=1 is set)
S_hero_override (hero if ACCESSIBILITY=1 is set)
working knowledge of their screen-reader's review features, and
will have to know how to navigate horizontally and vertically
character by character. They will also find the search capabili-
- ties of their screen-readers to be quite valuable. Be certain to
- examine this Guidebook before playing so you have an idea what
- the screen layout is like. You'll also need to be able to locate
- the PC cursor. It is always where your character is located.
- Merely searching for an @-sign will not always find your charac-
- ter since there are other humanoids represented by the same sign.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 86
-
-
-
+ ties of their screen-readers to be quite valuable. Be certain to
+ examine this Guidebook before playing so you have an idea what
+ the screen layout is like. You'll also need to be able to locate
+ the PC cursor. It is always where your character is located.
+ Merely searching for an @-sign will not always find your charac-
+ ter since there are other humanoids represented by the same sign.
Your screen-reader should also have a function which gives you
the row and column of your review cursor and the PC cursor.
These co-ordinates are often useful in giving players a better
game to run in a manner accessible to the blind. After you have
gained some experience with the game and with editing files, you
may want to alter settings via SYMBOLS= and ROGUESYMBOLS= in your
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 88
+
+
+
configuration file to better suit your preferences. See the pre-
vious section for the special symbols S_pet_override to force a
consistent symbol for all pets and S_hero_override to force a
Automatically describe the terrain under the cursor when tar-
geting.
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 87
-
-
-
mention_walls
Give feedback messages when walking towards a wall or when
travel command was interrupted.
screen, if your screen-reader reads those lines. The same in-
formation can be seen via the "#attributes" command.
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 89
+
+
+
9.16. Global Configuration for System Administrators
If NetHack is compiled with the SYSCF option, a system ad-
of each field in little-endian order, "ascii" for writing the
save file content in ascii text.
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 88
-
-
-
BONESFORMAT = A list of up to two bones file formats separated
by space. The first format in the list will written as well as
read. The second format will be read only if no bones files in
ARDS, and SHELLERS check for the player name instead of the us-
er's login name.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 90
+
+
+
CHECK_SAVE_UID = 0 or 1 to disable or enable, respectively, the
UID (used identification number) checking for save files (to
verify that the user who is restoring is the same one who
ated. Only available if your game is compiled with DUMPLOG. Al-
lows the following placeholders:
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 89
-
-
-
%% - literal `%'
%v - version (eg. "3.6.3-0")
%u - game UID
proper place under your current name. How many scores are kept
can also be set up when NetHack is compiled.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 91
+
+
+
Your score is chiefly based upon how much experience you
gained, how much loot you accumulated, how deep you explored, and
how the game ended. If you quit the game, you escape with all of
other benefits of explore mode are left for the trepid reader to
discover.
-
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 90
-
-
-
11.1. Debug mode
Debug mode, also known as wizard mode, is undocumented aside
allowed or not available will result in falling back to explore
mode instead.
+
+
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 92
+
+
+
12. Credits
The original hack game was modeled on the Berkeley UNIX
Later, Mike coordinated a major rewrite of the game, heading
a team which included Ken Arromdee, Jean-Christophe Collet, Steve
- Creps, Eric Hendrickson, Izchak Miller, John Rupley, Mike
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 91
-
-
-
- Threepoint, and Janet Walz, to produce NetHack 3.0c.
+ Creps, Eric Hendrickson, Izchak Miller, John Rupley, Mike Threep-
+ oint, and Janet Walz, to produce NetHack 3.0c.
NetHack 3.0 was ported to the Atari by Eric R. Smith, to
OS/2 by Timo Hakulinen, and to VMS by David Gentzel. The three
Ken Arromdee, David Cohrs, Jean-Christophe Collet, Kevin Darcy,
Matt Day, Timo Hakulinen, Steve Linhart, Dean Luick, Pat Rankin,
Eric Raymond, and Eric Smith undertook a radical revision of 3.0.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 93
+
+
+
They re-structured the game's design, and re-wrote major parts of
the code. They added multiple dungeons, a new display, special
individual character quests, a new endgame and many other new
ic Smith, Mike Stephenson, Janet Walz, and Paul Winner, released
version 3.2 in April of 1996.
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 92
-
-
-
Version 3.2 marked the tenth anniversary of the formation of
the development team. In a testament to their dedication to the
game, all thirteen members of the original NetHack Development
Tom Proudfoot and Yuval Oren created NetHack++, which was
quickly renamed NetHack--. Working independently, Stephen White
wrote NetHack Plus. Tom Proudfoot later merged NetHack Plus and
- his own NetHack-- to produce SLASH. Larry Stewart-Zerba and War-
- wick Allison improved the spell casting system with the Wizard
+ his own NetHack-- to produce SLASH. Larry Stewart-Zerba and
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 94
+
+
+
+ Warwick Allison improved the spell casting system with the Wizard
Patch. Warwick Allison also ported NetHack to use the Qt inter-
face.
The 3.4 NetHack Development Team initially consisted of
Michael Allison, Ken Arromdee, David Cohrs, Jessie Collet, Kevin
Hugo, Ken Lorber, Dean Luick, Pat Rankin, Mike Stephenson, Janet
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 93
-
-
-
Walz, and Paul Winner, with Warwick Allison joining just before
the release of NetHack 3.4.0 in March 2002.
Michael Allison, David Cohrs, Alex Kompel, Dion Nicolaas,
and Yitzhak Sapir maintained and enhanced 3.4 for the Microsoft
- Windows platform. Alex Kompel contributed a new graphical inter-
- face for the Windows port. Alex Kompel also contributed a Win-
- dows CE port for 3.4.1.
+ Windows platform. Alex Kompel contributed a new graphical
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 95
+
+
+
+ interface for the Windows port. Alex Kompel also contributed a
+ Windows CE port for 3.4.1.
Ron Van Iwaarden was the sole maintainer of NetHack for OS/2
the past several releases. Unfortunately Ron's last OS/2 machine
never used in an official NetHack release. An announcement was
posted on the NetHack Development Team's official nethack.org
website to that effect, stating that there would never be a
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 94
-
-
-
3.4.4, 3.5, or 3.5.0 official release version.
In January 2015, preparation began for the release of
found in the game, author Terry Pratchett, passed away. NetHack
3.6.0 introduced a tribute to him.
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 96
+
+
+
3.6.0 was released in December 2015, and merged work done by
the development team since the release of 3.4.3 with some of the
beloved community patches. Many bugs were fixed and some code was
hancements and the adopted curses window port, were released as
3.6.2.
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 95
-
-
-
Bart House, who had contributed to the game as a porting
team participant for decades, joined the NetHack Development Team
in late May 2019.
The official NetHack web site is maintained by Ken Lorber at
https://www.nethack.org/.
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 97
+
+
+
12.1. SPECIAL THANKS
On behalf of the NetHack community, thank you very much once
David Cohrs Ken Arromdee Roderick Schertler
David Damerell Ken Lorber Roland McGrath
David Gentzel Ken Washikita Ron Van Iwaarden
-
-
-
- NetHack 3.7 January 27, 2020
-
-
-
-
-
- NetHack Guidebook 96
-
-
-
David Hairston Kevin Darcy Ronnen Miller
Dean Luick Kevin Hugo Ross Brown
Del Lamb Kevin Sitze Sascha Wostmann
Frederick Roeber Merlyn LeRoy Tim Lennan
Gil Neiger Michael Allison Timo Hakulinen
Greg Laskin Michael Feir Tom Almy
+
+
+
+ NetHack 3.7 February 10, 2020
+
+
+
+
+
+ NetHack Guidebook 98
+
+
+
Greg Olson Michael Hamel Tom West
Gregg Wonderly Michael Sokolov Warren Cheung
Hao-yang Wang Mike Engber Warwick Allison
- NetHack 3.7 January 27, 2020
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NetHack 3.7 February 10, 2020