Options
The game options affect the look and feel of the game.
They can be changed:
- permanently in the configuration file at
- temporarily by using the in-game options screen, accessible by pressing shift + o in the game
- each time the game is run, on the command line
- when the game is compiled
There are two types of options, boolean and compound options. Boolean options toggle a setting on or off, while compound options take more diverse values.
Configuration file
Options are usually prefixed by 'OPTIONS=' on each line.
Name a boolean option in the configuration file to turn it on, and prefix it with 'no' or '!' to turn it off. Options can be combined into one line for brevity:
OPTIONS=boulder:0, color, autodig, !cmdassist, norest_on_space
For compound options, the option name and value are separated by a colon:
OPTIONS=catname:Mirri
The above two lines set boulder to 0, enable color and autodig, disable cmdassist and rest_on_space, and set your cat's name to Mirri.
Any line beginning with a '#' is a comment; i.e. the line is ignored.
Persistent options: Some options are marked persistent, and are saved and reloaded along with the game. Changing a persistent option in the configuration file applies only to new games.
If a configuration file does not exist, create a new one that's appropriate for your system with a text file editor. (For Mac OS X Terminal, use ~/.nethackrc instead of NetHack Defaults)
In-game
The in-game configuration menu is brought up by pressing shift + o. It is similar to an item selection menu, where you use alphabetic letters to select which options to change. Boolean options are toggled on or off, while you are prompted to enter new values for compound options.
Some options cannot be changed in-game.
Command line
You can also set options from the command line by setting the NETHACKOPTIONS environment variable. If the value starts with '\' or '/' or '@', it is considered to be a config file name. For example:
NETHACKOPTIONS=boulder:0, color, autodig
or
NETHACKOPTIONS=@/home/username/.nethackrc
Options
acoustics
Enable messages about what your character hears. Boolean option, defaults to TRUE.
align
Your starting alignment. Compound option, with possible values of lawful, neutral, chaotic, or random. The first letter may be given alone. Prefix with ! to exclude that alignment from being picked randomly. Cannot be set in-game. Example that excludes chaotic:
OPTIONS=align:!c
autodig
Automatically dig, if you're wielding a digging tool and moving into a place that can be dug. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
autoopen
Walking into a door attempts to open it. Boolean option, defaults to TRUE. Persistent.
autopickup
Automatically pick up things onto which you move. See also pickup_types, pickup_burden, pickup_thrown, and Autopickup_exceptions. Boolean option, defaults to TRUE. Can be set in-game.
AUTOPICKUP_EXCEPTION
Autopickup exceptions allow you to specify particular expression matches for more nuanced autopickup usage. See the main article for usage information.
autoquiver
Automatically quiver some suitable weapon if your quiver empties when firing. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
blind
Start the character permanently blind. Boolean option, defaults to FALSE. Persistent.
bones
Allow saving and loading bones files. Boolean option, defaults to TRUE. Persistent.
boulder
Set the symbol used to display boulders. For example boulder:0 Compound option with default value of `. Can be set in-game.
Can also be defined using ASCII value, and without the OPTIONS prefix simply as
BOULDER=48
For example, BOULDER=64 would be equal to OPTIONS=boulder:@. See also Custom map symbols#BOULDER
This option has been superseded by the SYMBOLS= format described in the symset option, though this method still functions.
catname
Set the name of your starting cat. Compound option, and it cannot be set within game. See also dogname and horsename. Example:
OPTIONS=catname:Whiskers
character
Synonym for role.
checkpoint
Save game state after each level change, for possible recovery after program crash. Boolean option, defaults to TRUE. Can be set in-game.
checkspace
Check free disk space before writing files to disk. You may have to turn this off if you have more than 2 GB free space on the partition used for your save and level files. A boolean option, defaults to on. Only applies when MFLOPPY was defined during compilation.
clicklook
Allows looking at things on the screen by navigating the mouse over them and clicking the right mouse button. Boolean option, defaults to FALSE.
cmdassist
NetHack provides some additional command assistance when it detects some anticipated mistakes. Boolean option, defaults to TRUE. Can be set in-game.
confirm
Have user confirm attacks on peaceful creatures. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
dark_room
Show out-of-sight areas of lit rooms. Boolean value, defaults to FALSE. Persistent.
disclose
Controls the prompts at the end of the game. Possible values are
- i - disclose your inventory
- a - disclose your attributes
- v - summarize monsters you've killed
- g - list genocided monsters
- c - display conduct
- o - display dungeon overview
Each of those values can be preceded with a value that tells how it behaves. The possible values are
- y - prompt, defaults to yes
- n - prompt, defaults to no
- + - disclose without prompting
- - - don't disclose, don't prompt
For example
OPTIONS=disclose:yi na +v -g -c -o
Persistent.
dogname
Set the name of your starting dog. Compound option, and it cannot be set within game. See also catname and horsename. Example:
OPTIONS=dogname:Cujo
Does extended commands interface pop up a menu? Boolean option, defaults to FALSE. Only implemented for the TTY windowport.
female
An obsolete synonym for gender:female. Cannot be set in-game.
fixinv
An object's inventory letter sticks to it when it's dropped, so when you pick it up again, it will have the same inventory letter, unless there is already another item in your inventory using that letter. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
fruit
Set the name of the user-defineable fruit. Compound option, takes a string, with default value of slime mold. Can be set in-game.
gender
Sets the gender of your character. A compound option, with possible values of male, female, or random. Default value is to pick an appropriate gender randomly. Cannot be set in-game.
help
If more information is available for an object looked at with the what is / command, ask if you want to see it. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
hilite_pet
Visually distinguish pets from similar animals (This includes both your starting pet and any monsters you happen to tame along the way). Boolean option, defaults to FALSE. Can be set in-game.
hilite_pile
Visually distinguish piles of objects from individual objects. Boolean option, defaults to FALSE.
hilite_status
If the statushilites option is set, this option allows you to customize your game display by setting thresholds to change the color or appearance of fields in the status display.
For example, the following line in your config file will cause the hitpoints field to display in the color red if your hitpoints drop to or below a threshold of 30%:
OPTIONS=hilite_status: hitpoints/30%/red/normal
For another example, the following line in your config file will cause wisdom to be displayed red if it drops and green if it rises:
OPTIONS=hilite_status: wisdom/updown/red/green
You can adjust the display of the following status fields:
title strength dexterity constitution intelligence wisdom charisma alignment score carrying-capacity gold power power-max experience-level armor-class HD time hunger hitpoints hitpoints-max dungeon-level experience condition
Allowed colors are black, red, green, brown, blue, magenta, cyan, gray, orange, lightgreen, yellow, lightblue, lightmagenta, lightcyan, and white.
Allowed attributes are bold, inverse, normal. Note that the platform used may interpret the attributes any way it wants.
Behaviors can occur based on percentage thresholds, updown, or absolute values. The in-game options menu can help you determine the correct syntax for a config file.
The whole feature can be disabled by turning the statushilites option off.
A more in-depth and somewhat technical explanation here.
In Nethack 3.6 source, this feature is considered "experimental", and it may not be available in every distribution. In particular, it is missing from all official binaries. Check the in-game options list to confirm if this is available in your version.
horsename
Set the name of your starting horse. Compound option, and it cannot be set within game. See also catname and dogname.
ignintr
Ignore interrupt signals, including breaks. Boolean option, defaults to FALSE. Not implemented on Mac. Can be set in-game. Persistent.
implicit_uncursed
Omit "uncursed" from inventory lists, if possible. Boolean option, defaults to TRUE.
legacy
Display an introductory message when starting the game. Boolean option, defaults to TRUE. Cannot be set in-game.
lit_corridor
Distinguish visually between lit and unlit corridors. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
lootabc
Use the old a, b and c keyboard shortcuts in the looting menu. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
Enable mail delivery during the game. Boolean option, defaults to TRUE. Only meaningful if NetHack was compiled with MAIL. Can be set in-game.
male
An obsolete synonym for gender:male. Cannot be set in-game.
mention_walls
Give feedback when walking against a wall. Boolean value, defaults to FALSE.
Enable coloring menu lines. Boolean value, defaults to FALSE. See main article for how to set menucolors with particular expression matches.
Controls the interface used when you need to choose various objects (in response to the Drop command, for instance). Persistent. Compound option, with following possible values:
Option | Description |
---|---|
traditional | prompt for object class characters, followed by an object-by-object prompt for all matching items |
combination | prompt for object classes of interest, then display a menu of matching objects |
partial | skip the object class filtering and immediately display a menu of all objects |
full | display a menu of object classes, and then a menu of matching objects |
Menu character accelerator to deselect all items in a menu. Implemented by the Amiga, Gem, X11 and tty ports. Compound option, with default of '-'. Cannot be set in-game.
Menu character accelerator to deselect all items on this page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of '\'. Cannot be set in-game.
Menu character accelerator to jump to the first page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of '^'. Cannot be set in-game.
Controls how the headings in a menu are highlighted. Compound option, with possible values of bold, inverse, or underline. Not all ports can actually display all three types.
Menu character accelerator to toggle the selections in a menu. Implemented by the Amiga, Gem, X11 and tty ports. Compound option, with default of '@'. Cannot be set in-game.
Menu character accelerator to toggle the selection on this page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of '~'. Cannot be set in-game.
Menu character accelerator to jump to the last page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of '|'. Cannot be set in-game.
Menu character accelerator to goto the next page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of '>'. Cannot be set in-game.
Show object symbols in menu headings in menus where the object symbols act as menu accelerators. Boolean option, defaults to FALSE.
Menu character accelerator to goto the previous page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of '<'. Cannot be set in-game.
Menu character accelerator to search for a menu item. Implemented by the Amiga, Gem and X11 ports. Compound option, with default of ':'. Cannot be set in-game.
Menu character accelerator to select all items in a menu. Implemented by the Amiga, Gem, X11 and tty ports. Compound option, with default of '.'. Cannot be set in-game.
Menu character accelerator to select all items on this page of a menu. Implemented by the Amiga, Gem and tty ports. Compound option, with default of ','. Cannot be set in-game.
Use tabs to separate menu names from their values. This option is only shown when in wizard-mode, and is only meant for testing purposes.
msghistory
Number of message-window messages to save. Compound option, takes a positive number, with default of 20. Maximum and minimum values depend on the window port; For the TTY, X11 and Gem ports the minimum is 20 and maximum 60. On NAO, the maximum for TTY is 400. Cannot be set in-game.
msg_window
How to show the latest messages recalled with ^P. Compound option, with the following possible values:
Option | Description |
---|---|
single | show single message |
combination | two messages as single, then as full |
full | full window, oldest message first |
reversed | full window, newest message first |
You can use the first letter of an option to specify that option. For backwards compatibility, no value needs to be given; in that case defaults to 'full', or it can be negated like a boolean option, in which case defaults to 'single'. Can be set in-game only if playing the TTY windowport.
MSGTYPE
Can be used to hide obnoxious messages or emphasize dangerous ones. See main article for how to use MSGTYPEs.
name
The name of your character. Compound option, defaults to your user name. If set to player, then NetHack will ask for the user name, even on systems where it normally wouldn't. If suffixed with dash and character role letter (one of -A -B -C -H -K -M -P -Ra -Ro -S -T -V -W), then also defines the character role, or if suffixed with -@, then selects a random role. Cannot be set in-game.
news
Read the NetHack news file at start of game, if present. Boolean option, defaults to TRUE.
nudist
Start the character with no armor. Boolean option, defaults to FALSE. Persistent.
null
Send padding NULLs to terminal. A boolean, defaults to FALSE. Only used if you compiled NetHack with TERMCAP and without TIMED_DELAY. Persistent.
number_pad
Use the number keys to move instead of hjklyubn. Valid options are:
Option | Description |
---|---|
0 | move by letters; 'yuhjklbn' |
1 | move by numbers; digit 5 acts as G movement prefix |
2 | like 1 but 5 works as g prefix instead of as G |
3 | by numbers using phone key layout; 123 above, 789 below |
4 | combines 3 with 2; phone layout plus MSDOS compatibility, where 5 means g, alt + 5 means G, and alt + 0 mean I |
-1 | by letters but use z to go northwest, y to zap wands |
With number_pad set to 1, 2, 3, or 4, counts need to be prefixed with n (n50s to search 50 times). Also, some extended commands are available in a short form (l performs #loot, u performs #untrap, etc).
For backwards compatibility, number_pad without a value is synonymous to number_pad:1.
packorder
Sets the order of item classes shown in inventory. Compound option, takes a string of up to 14 characters, with default values of ")[%?+!=/(*`0_. Omitted types are filled in at the end from the previous order. Can be set in-game. Persistent.
paranoid_confirmation
A space-separated list of specific situations where alternate prompting is desired. The default is paranoid_confirmation:pray.
Option | Description |
---|---|
Confirm | for any prompts which are set to require "yes" rather than 'y', also require "no" to reject instead of accepting any non-yes response as no |
quit | require "yes" rathern than 'y' to confirm quitting the game or switching into non-scoring explore mode |
die | require "yes" rather than 'y' to confirm dying (applies only to explore mode) |
bones | require "yes" rather than 'y' to confirm saving bones data when dying in debug mode |
attack | require "yes" rather than 'y' to confirm attacking a peaceful monster |
pray | require 'y' to confirm an attempt to pray rather than immediately praying; on by default |
wand | require "yes" rather than 'y' to confirm breaking a wand |
Remove | require selection from inventory for R and T commands even when wearing just one applicable item |
By default, the pray choice is enabled, the others disabled. To disable it without setting any of the other choices, use paranoid_confirmation:none. To keep it enabled while setting any of the others, include it in the list:
OPTIONS=paranoid_confirmation:attack pray Remove
perm_invent
Show permanent inventory window. Boolean option, defaults to FALSE. Not used on TTY. Can be set in-game. Persistent.
pettype
Sets your preferred pet type. A compound option, with possible value of cat, dog or none. Cannot be set in-game.
pickup_burden
Prompt for confirmation before picking up items that will push the character's encumbrance past a given level -- Unencumbered, Burdened, streSsed, straiNed, Overtaxed, or overLoaded. This will NOT prompt the player if he is about to pick up a loadstone or gold. Defaults to S. Persistent.
pickup_thrown
If this option is on and autopickup is also on, try to pick up things that you threw, even if they aren't in pickup_types or match an autopickup exception. Boolean option, defaults to TRUE. Persistent.
pickup_types
Specify the object types to be picked up when autopickup is on. Default is all to pick up all types. For example "pickup_types:?!/" would pick up all scrolls, potions and wands. Persistent.
pile_limit
When walking across a pile of objects on the floor, threshold at which the message "there are few/several/many objects here" is given instead of showing a popup list of those objects. A value of 0 means "no limit" (always list of 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. Persistent.
playmode
Values are normal, explore, or debug. Allows selection of explore mode (also known as discovery mode) or debug mode (also known as wizard mode) instead of normal play. Debug mode might only be allowed for someone logged in under a particular user name (on multi-user system) or it might be disabled entirely. Requesting it when not allowed or not possible results in explore mode instead. NAO has both Explore and Debug modes disabled entirely. Default is normal play.
pushweapon
If you wield something when you are already wielding something else, the old weapon is pushed into the alternate weapon slot. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
race
Set your character's race. A compound option, with possible values of human, elf, dwarf, gnome, orc, or random, with default of random. If you prefix a ! to the value, you can exclude that race from being picked randomly. Cannot be set in-game. Persistent.
rest_on_space
Space waits for a turn. This is considered by some as a very easy way to get killed.
Boolean option, defaults to FALSE. Can be set in-game. Persistent.
role
Set your character's role. Can also be random. A compound option. See name option for an alternate method of specifying your role. Normally only the first letter of the value is examined, with r being the exception with Rogue, Ranger, and random values. If you prefix an option with !, you can exclude that role from being picked randomly. Cannot be set in-game. Persistent.
roguesymset
This option may be used to select one of the named symbol sets found within the symbols file to alter the symbols displayed on the screen on the rogue level.
rlecomp
When writing out a save file, perform a run length compression of the map. Not all ports support run length compression. It has no effect on reading an existing save file.
runmode
Set the screen updating interval for multi-turn actions, eg. running or traveling. Can be set in-game. Compound option with the following possible values:
Option | Description |
---|---|
teleport | update the map after movement has finished |
run | update the map after every seven or so steps (default) |
walk | update the map after each step |
crawl | like walk, but pause briefly after each step |
safe_pet
Prevents you from (knowingly) attacking your pet by moving into it. TRUE is the best setting as attacking a pet, should you wish to, is easily accomplished using the fight command. Boolean option, defaults to TRUE. Can be set in-game.
sanity_check
This option turns on debugging output, and is only available in wizard mode. Boolean option, defaults to FALSE.
scores
Control what part of hiscore list to show at the end of game. Compound option. Can be set in-game. Persistent. Accept the following options, separated by spaces:
- o - show my own score. Can be prefixed with ! to not show own score.
- Xa - show X scores around own score
- Xt - show X scores from the top
For example:
OPTIONS=scores:10t 2a o
showexp
Displays the exact number of experience points next to your experience level on the status line. Useful for seeing how close you are to the next level, but it may increase the length of the status line a lot, pushing important notifications (like Hungry, Ill, FoodPois, etc.) off the end.
Boolean option, defaults to FALSE. Can be set in-game. Persistent.
showrace
Uses the symbol for your race instead of @. That's h for dwarves, o for orcs and G for gnomes. Elves are still @. This could be useful for reminding you not to genocide your racial glyph but is not widely used. Boolean option, defaults to FALSE. Can be set in-game.
showscore
Shows your approximate accumulated score on the bottom line. Boolean option, defaults to false. Can be set in-game. Persistent. Only available if NetHack was compiled with SCORE_ON_BOTL.
silent
Stops your terminal's bell sounding. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
sortloot
Controls the sorting behavior of the pickup lists for inventory and #loot commands and some others. Persistent. The possible values are:
Option | Description |
---|---|
full | always sort the lists |
loot | only sort the lists that don't use inventory leters, like with the #loot and pickup commands |
none | show lists the traditional way without sorting |
sortpack
Groups similar kinds of objects in your inventory. TRUE is highly recommended. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
SOUND
Allows user-defined sound file to be played when a message is shown.
sparkle
Display sparkly effect for resisted magical attacks (e.g. a fire attack on a fire-resistant monster). It can be helpful to turn this off on the Plane of Fire, otherwise a dozen or more sparkles will occur per turn. See also timed_delay.
Boolean option, defaults to TRUE. Can be set in-game. Persistent.
standout
Uses standout mode (reverse video) for displaying "--More--". Boolean option, defaults to FALSE. Can be set in-game. Persistent.
statushilites
Enable coloring of status fields. Boolean option, defaults to FALSE.
See hilite_status option for information on how to set particular status hilites.
suppress_alert
Prevent alert notification messages about feature changes in a NetHack version and the previous versions. Compound option, accepts a string describing a NetHack version. Can be set in-game. Currently only one use, which is to prevent the quiver and quit-command changes:
OPTIONS=suppress_alert:3.3.1
symset
Select the symbols used to display the game. Replaces the DECgraphics, IBMgraphics, and MACgraphics options.
- NHAccess (Recommended for blind players)
- MACgraphics
- IBMGraphics_2
- IBMGraphics_1
- IBMgraphics
- DECgraphics
Individual symbols may be set using the following format:
SYMBOLS=S_boulder:0 SYMBOLS=S_golem:7 SYMBOLS=S_ghost:8
For a complete list of symbol names, please see the symset article.
time
Displays elapsed game time, in turns, on the status line. Very useful for estimating prayer timeouts, spell lifespan, and more. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
timed_delay
On TTY interfaces (unix and VMS), use a timer instead of sending extra screen output when attempting to pause for a display effect. On MSDOS without the termcap lib, chooses whether or not to pause for visual effect. See also sparkle.
Boolean option, defaults to TRUE if configured into the program. Can be set in-game. Persistent.
tombstone
Prints an ASCII tombstone when you die. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
toptenwin
Prints the top ten high scores in a window rather than stdout. This isn't very useful unless you are using a GUI version. Boolean option, defaults to FALSE. Can be set in-game. Persistent.
travel
Enables the travel command. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
verbose
Chooses whether or not to display certain non-essential messages, such as doors being destroyed. Boolean option, defaults to TRUE. Can be set in-game. Persistent.
windowtype
Select which windowing system to use, such as tty or X11 (default depends on version). Cannot be set in-game. Example:
OPTIONS=windowtype:tty
wizkit
Wizard mode-only option. Specifies the path to a text file that contains a list of item names, one per line, up to a maximum of 128 lines. Each line is processed by the function that handles wishing. For example
In your config file:
WIZKIT=wizkit.txt
And the contents of wizkit.txt:
blessed monster detection ring of levitation amulet of yendor 2 blessed genocide
Makes your character start with those items in inventory, in addition to the normal starting items.
zerocomp
When writing out a save file, perform zero-comp compression of the contents. Not all ports support zero-comp compression. It has no effect on reading an existing save file.
Window Port Customization Options
align_message
Where to align or place the message window. Compound option, with possible values of top, bottom, left, or right. Cannot be set in-game.
align_status
Where to align or place the status window. Compound option, with possible values of top, bottom, left, or right. Cannot be set in-game.
ascii_map
NetHack should display an ASCII character map if it can. Boolean option. Can be set in-game.
color
NetHack should display color if it can for different monsters, objects, and dungeon features. This option matters only for the TTY windowport. Boolean option, defaults to TRUE on Windows and some other systems, FALSE on others. Can be set in-game.
In case the default color scheme is hard to distinguish on your monitor, you might want to edit the color preferences in your terminal emulator.
If you are looking for colors of the wiki itself, see Category:Function_templates and User:Paxed/ReplaceCharsBlock.
eight_bit_tty
NetHack should pass eight-bit character values straight through to your terminal. Boolean option, defaults to FALSE. Can be set in-game.
font_map
NetHack should use a font by the chosen name for the map window.
NetHack should use a font by the chosen name for menu windows.
font_message
NetHack should use a font by the chosen name for the message window.
font_status
NetHack should use a font by the chosen name for the status window.
font_text
NetHack should use a font by the chosen name for text windows.
font_size_map
NetHack should use this size font for the map window.
NetHack should use this size font for menu windows.
font_size_message
NetHack should use this size font for the message window.
font_size_status
NetHack should use this size font for the status window.
font_size_text
NetHack should use this size font for text windows.
fullscreen
NetHack should try and display on the entire screen rather than in a window. Boolean option, defaults to false. Cannot be set in-game.
If the game cannot be displayed in fullscreen through this option and you are using the tty interface, you can usually adjust your terminal emulator configuration to achieve a similar effect (e.g. by increasing the font size).
large_font
NetHack should use a large font.
map_mode
NetHack should display the map in the manner specified. Used in Windows port to choose between tiles or different sizes of ASCII. Consult defaults.nh for possible options.
mouse_support
Use mouse for moving around. A boolean, defaults to FALSE. Is displayed, but cannot be set in-game.
player_selection
NetHack should pop up dialog boxes, or use prompts for character selection. Compound option. Cannot be set in-game.
popup_dialog
NetHack should pop up dialog boxes for input. Boolean option, defaults to false. Can be set in-game.
preload_tiles
NetHack should preload tiles into memory. Boolean option, defaults to true. Cannot be set in-game.
scroll_amount
NetHack should scroll the display this many map cells when the hero reaches the scroll_margin. A compound option, accepts a positive number. Cannot be set in-game.
scroll_margin
NetHack should scroll the display when the hero or cursor is this number of cells away from the edge of the window. A compound option, accepts a positive number. Cannot be set in-game.
selectsaved
NetHack should display a menu of existing saved games for the player to choose from at game startup, if it can. Not all ports support this option.
softkeyboard
Display an on-screen keyboards; handhelds are most likely to support this. Boolean option, defaults to off. Cannot be set in-game.
splash_screen
NetHack should display an opening splash screen when it starts up. Boolean option, defaults to yes.
tile_width
Specify the preferred width of each tile in a tile capable port. Compound option, accepts a positive number. Cannot be set in-game.
tile_height
Specify the preferred height of each tile in a tile capable port. Compound option, accepts a positive number. Cannot be set in-game.
tile_file
Specify the name of an alternative tile file to override the default. Compound option. Cannot be set in-game.
tiled_map
NetHack should display a tiled map if it can. Boolean option, Cannot be set in-game.
use_darkgray
Use bold black instead of blue for black glyphs (TTY only). Boolean option.
use_inverse
Displays certain things in reverse video. Boolean option, defaults to FALSE on non-Win32 platforms. Can be set in-game.
vary_msgcount
NetHack should display this number of messages at a time in the message window. Compound option, accepts a positive number. Cannot be set in-game. Implemented only for the Atari GEM, Win32 GUI and WinCE builds.
windowcolors
NetHack should display windows with the specified foreground/background colors if it can. Compound option. Cannot be set in-game. Example:
OPTIONS=windowcolors:menu white/black message green/yellow status white/blue text white/black
wraptext
NetHack port should wrap long lines of text if they don't fit in the visible portion of the window. Boolean, defaults to false. Can be set in-game.
Platform-specific Customization options
altkeyhandler
Select an alternate keystroke handler dll to load. The name of the handler is specified without the .dll extension and without any path information. Win32 only. Cannot be set in-game. NetHack comes with nhdefkey.dll, nhraykey.dll, and nh340key.dll. If you are using a non-US keyboard layout and cannot type the dollar sign, try nhraykey.
altmeta
Enables extended command shortcuts, such as alt + d to dip.[1] Boolean option, default is off, except on Amiga. Can be set in-game. Is saved into the savefile.[2]
BIOS
Use BIOS calls to update the screen display quickly and to read the keyboard (allowing the use of arrow keys to move) on machines with an IBM PC compatible BIOS ROM. Boolean option, default off. OS/2, PC, and ST NetHack only. Cannot be set in-game.
DECgraphics
Use DEC line-drawing characters. Won't work for all terminals. Boolean option, defaults to TRUE. Can be set in-game. Turning this on sets IBMgraphics to FALSE.
Starting with NetHack 3.6.0, this option is equivalent to symset:DECgraphics.
flush
Prevent typeahead. Boolean option, defaults to off. Only usable on Amiga. Can be set in-game.
IBMgraphics
Use IBM extended characters. Won't work for all terminals. Boolean option, defaults to FALSE. Only implemented for the TTY windowport. Can be set in-game.
Starting with NetHack 3.6.0, this option is equivalent to symset:IBMgraphics.
MacGraphics
Use Mac-specific character set to display map. A boolean, Mac-only, defaults to on. See also IBMgraphics and DECgraphics.
Starting with NetHack 3.6.0, this option is equivalent to symset:MACgraphics.
page_wait
Show --more-- after a page of messages. A boolean, Macs only, defaults to on.
rawio
Force raw (non-cbreak) mode for faster output and more bulletproof input (MS-DOS sometimes treats `^P' as a printer toggle without it) Default off, OS/2, PC, and ST NetHack only. Note: DEC Rainbows hang if this is turned on. Cannot be set in-game.
soundcard
Compound option, defaults to on. Only for the PC NetHack. Cannot be set in-game.
subkeyvalue
(Win32 tty NetHack only). May be used to alter the value of keystrokes that the operating system returns to NetHack to help compensate for international keyboard issues. OPTIONS=subkeyvalue:171/92 will return 92 to NetHack, if 171 was originally going to be returned. You can use multiple subkeyvalue statements in the config file if needed. Cannot be set in-game.
video
Set the video mode used. PC NetHack only. Values are autodetect, default, or vga. Setting vga (or autodetect with vga hardware present) will cause the game to display tiles. Cannot be set in-game.
videocolors
Set the color palette for PC systems using NO_TERMS (default 4-2-6-1-5-3-15-12-10-14-9-13-11, PC NetHack only). The order of colors is red, green, brown, blue, magenta, cyan, bright.white, bright.red, bright.green, yellow, bright.blue, bright.magenta, and bright.cyan. Cannot be set in-game.
Note: If the #version-command shows screen control via foo, where foo is one of mactty, BIOS, DJGPP fast, VGA graphics or WIN32 console I/O, then your version of NetHack supports setting videocolors.
videoshades
Set the intensity level of the three gray scales available (default dark normal light, PC NetHack only). If the game display is difficult to read, try adjusting these scales; if this does not correct the problem, try !color. Cannot be set in-game.
NAO (3.4.3)
Nethack.alt.org implements a few user interface patches that introduce new options. See also the default options file.
Options for the curses interface
See curses interface#Configuration_Options for windowtype, IBMgraphics, cursesgraphics, align_message, align_status, popup_dialog, term_cols, term_rows, windowborders, splash_screen, petattr, guicolor, mouse_support.
apexception_regex
Boolean option, defaults to off. If on, then Autopickup exceptions use regular expressions.
AUTOCOMPLETE
Which extended commands autocomplete. Prefixing the command with ! will prevent it from being autocompleted. For example:
AUTOCOMPLETE=save,!quit
BINDINGS
Key rebinding. Binding a key to nothing will remove the binding. For example:
BINDINGS=!:inventory,v:untrap
Accepts x for regular key x, mx or m-x for meta-x, cx or c-x or ^x for ctrl-x, <enter>, <space> or <esc>
bones
If off, you will never load bones files. You always have the normal chances of leaving bones. Boolean option, default is on. Can be set in-game.
botl_updates
Boolean option. If off, the status lines will not be updated, and you must use the #updatestatus to update it. Useful for blind players using a screen reader.
DUNGEONCOLOR
Allows settings the colors for dungeon features. Takes 41 numbers (between 0 and 15), separated by spaces. Order is the same as DUNGEON. For example:
DUNGEONCOLOR= 0 7 7 7 7 7 7 7 7 7 7 7 7 3 3 3 3 6 2 7 0 7 15 15 3 3 7 7 11 7 4 4 6 1 3 3 3 3 6 7 4
See Colors#NetHack_color_codes.
DUNGEONSYMBOLS
Change terrain feature symbols to UTF8 characters. Only applies when UTF8graphics is on. This takes 41 Unicode codepoints, separated by spaces. Order is the same as DUNGEON.
Accepts the UTF8 characters in either U+FFFF or 0xFFFF format. See also SYMBOL for a much easier way to change a single character type (e.g., "altar") by name.
The following should give an identical output to IBMGraphics:
DUNGEONSYMBOLS = 0x0020 0x2502 0x2500 0x250C 0x2510 0x2514 0x2518 0x253C \ 0x2534 0x252C 0x2524 0x251C 0x00B7 0x25A0 0x25A0 0x002B \ 0x002B 0x2261 0x00B1 0x00B7 0x2591 0x2592 0x003C 0x003E \ 0x003C 0x003E 0x005F 0x007C 0x005C 0x0023 0x2320 0x2248 \ 0x00B7 0x2248 0x00B7 0x00B7 0x0023 0x0023 0x0020 0x0023 0x2248
This may be useful if your terminal has issues with CP437 emulation (e.g corruption on the Rogue level) or if you use a terminal that defaults to UTF-8 graphics (such as the Linux console or GNOME Terminal).
Boolean option. Hilight items with stairs under them with red background.
hilite_obj_piles
Boolean option. Hilight piles of objects with blue background.
hitpointbar
The name and rank text in status line is colored according to Statuscolors and how much HP you have left. Boolean, defaults to off.
Note that this is available in 3.4.3 with patches and in vanilla 3.6.1, but not in vanilla 3.4.3 or 3.6.0.
hp_monitor
Obsolete. NAO used to have the HPmon-patch, but uses now Statuscolors.
hp_notify
Show HP changes in the message area. Message is defined by hp_notify_fmt. Useful for blind players using a screen reader.
hp_notify_fmt
Sets the notification format for hp_notify. Compound option (a string), default value is [HP%c%a=%h].
Accepts following codes:
- %a = HP adjustment since last notification. No + or - sign
- %c = HP adjustment sign ('+' or '-')
- %h = Current HP
- %m = Max. HP
- %H = Current HP, or "max" if hp=maxhp.
Allow using items directly from inventory. Boolean option, defaults to false.
Show item glyphs (colored symbols) in tty menus. Boolean option, defaults to off.
MONSTERCOLOR
Allows changing color for a monster, for example:
MONSTERCOLOR=floating eye:yellow MONSTERCOLOR=master mind flayer:lightmagenta
Available colours: black, red, green, brown, blue, magenta, cyan, gray, orange, lightgreen, yellow, lightblue, lightmagenta, lightcyan, white.
Nethack.alt.org and UnNetHack have it applied.
MONSTERSYMBOL
Change monster symbol to UTF8 character. Only applies when UTF8graphics is on. For example:
MONSTERSYMBOL='horse':U+24FA
Accepts the UTF8 character in either U+FFFF or 0xFFFF format.
MSGTYPE
Can be used to hide obnoxious messages. On NAO, you can set OPTIONS=msgtype_regex to force MSGTYPE accept regular expressions instead of globbing.
msg_wall_hits
Boolean option. If true, mentions in the message area whenever you walk against a wall. Useful for blind players.
OBJECTSYMBOL
Change object symbol to UTF8 character. Only applies when UTF8graphics is on. For example:
OBJECTSYMBOL='apple':0x03a9
Accepts the UTF8 character in either U+FFFF or 0xFFFF format.
old_C_behavior
With this option set to true, the "C" command will work as it does in vanilla, asking you to select a monster to name. Otherwise, typing "C" will bring up the #name menu. Defaults to false.
paranoid_hit
If using the vi-keys, be cautious when moving northwest (y)- not (z)ap, around peaceful creatures. "y" is also the command to say yes to a question such as "Really attack Izchak?", and it's nearly always a good idea to answer no. Setting the paranoid_hit option (available if your game was compiled with the 'paranoid' patch) to true will help, as this will require you to explicitly type "yes" to hit peacefuls. If you're moving with (z) you end up running into something. This is a boolean option, and can be set in-game.
paranoid_quit
Requires you to type out 'yes' instead of just 'y' to confirm #quit-ting the game.
paranoid_remove
Always prompt for the letter of a jewelry/accessory item to (R)emove, even if only one is worn.
quiver_fired
Boolean option. If on, you'll quiver items if you fire them.
showborn
In dumplogs, displays the number of each type of monster created, rather than just the number killed.
showbuc
Always show BUC status if it is known. By default, "uncursed" is never shown to priests, or to anybody for most items with known charges or enchantment.
show_obj_sym
Displays the glyph for an object class in menus and allows its use as a hotkey to select all objects of that class.
A Boolean. Can be set in-game.
sortloot
Defines how inventory, floor and container contents are sorted.
STATUSCOLORS
Can be used to color HP, Pw, and other things on the status lines.
SYMBOL
Change terrain feature symbol to UTF8 character. Only applies when UTF8graphics is on. For example:
SYMBOL='altar':U+0c30
would make all altars show up as the Pi symbol (π).
Accepts the UTF8 character in either U+FFFF or 0xFFFF format. See also DUNGEONSYMBOLS.
TRAPCOLORS
Allows settings the colors for traps. Takes 22 numbers (between 0 and 15), separated by spaces. Order is the same as TRAPS. For example:
TRAPCOLORS= 6 6 7 3 6 1 7 12 4 9 0 0 3 3 5 5 13 7 7 12 12 10
use_darkgray
Use the dark gray color for black, instead of blue. Might not work for all terminals. Boolean option, defaults to off.
UTF8graphics
Use UTF-8 (characters for monsters, objects, and dungeon features. Boolean option, defaults to off. Nearly any Unicode character is allowed, however combining characters and wide characters currently do not work. Note that this also does not play well with the Curses interface.
See also SYMBOL, DUNGEONSYMBOLS, MONSTERSYMBOL, and OBJECTSYMBOL.
vt_tiledata
Boolean option. Turning it on will output extra information in the datastream in the form of escape code "ESC [ ... z", meant for graphical frontends. See also EbonHack.
win_edge
Boolean option. If true, all menu windows are aligned to the left side of the screen. Defaults to false.
NetHack 3.4.3-specific options (Obsolete)
asksavedisk
NetHack should ask for save file disk for saving game. Only available if NetHack was compiled with MFLOPPY. Boolean option, defaults to false. Can be set in-game. Is saved into the savefile.
dungeon
Set the character symbols for displaying the dungeon. Compound option, takes a string of up to 41 characters, with default values of
" |--------||.-|++##.##<><>_|\\#{}.}..## #}" (quotes not included; the throne symbol is escaped: nethack reads \\ as one \)
This can also be defined by using ASCII values instead of characters; see Custom map symbols#DUNGEON.
The order of the symbols is: solid rock, vertical wall, horizontal wall, upper left corner, upper right corner, lower left corner, lower right corner, cross wall, upward T wall, downward T wall, leftward T wall, rightward T wall, no door, vertical open door, horizontal open door, vertical closed door, horizontal closed door, iron bars, tree, floor of a room, dark corridor, lit corridor, stairs up, stairs down, ladder up, ladder down, altar, grave, throne, kitchen sink, fountain, pool or moat, ice, lava, vertical lowered drawbridge, horizontal lowered drawbridge, vertical raised drawbridge, horizontal raised drawbridge, air, cloud, under water.
NetHack 3.6.0: This option has been superseded by the symset option.
effects
Set the character symbols used for displaying various effects. Compound option, takes a string of up to 29 characters, with defaults values of |-\/*!)(0#@*/-\\||\\-//-\\| |\\-/
Can also be defined by using ASCII values instead of characters; see Custom map symbols#EFFECTS.
The order of the symbols is: vertical beam, horizontal beam, left slant, right slant, digging beam, camera flash beam, left boomerang, right boomerang, four glyphs giving the sequence for magic resistance displays, the eight surrounding glyphs for swallowed display, nine glyphs for explosions. An explosion consists of three rows (top, middle, and bottom) of three characters. The explosion is centered in the center of this 3 by 3 array.
NetHack 3.6.0: This option has been superseded by the symset option.
graphics
Set the character symbols used for displaying all graphics. Compound option, takes a string of up to 92 characters
Can also be defined by using ASCII values instead of characters; see Custom map symbols#GRAPHICS.
NetHack 3.6.0: This option has been superseded by the symset option.
monsters
Set the character symbols for displaying the monsters. Compound option, takes a string of up to 60 characters, with default values of
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@ '&;:~]
Cannot be set in-game.
Can also be defined by using ASCII values instead of characters; see Custom map symbols#MONSTERS.
The order of the symbols is ant or other insect, blob, cockatrice, dog or other canine, eye or sphere, feline, gremlin, humanoid, imp or minor demon, jelly, kobold, leprechaun, mimic, nymph, orc, piercer, quadruped, rodent, arachnid or centipede, trapper or lurker above, horse or unicorn, vortex, worm, xan or other mythical/fantastic insect, light, zruty, angelic being, bat or bird, centaur, dragon, elemental, fungus or mold, gnome, giant humanoid, invisible monster, jabberwock, Keystone Kop, lich, mummy, naga, ogre, pudding or ooze, quantum mechanic, rust monster or disenchanter, snake, troll, umber hulk, vampire, wraith, xorn, apelike creature, zombie, human, ghost, golem, demon, sea monster, lizard, long worm tail, and mimic.
NetHack 3.6.0: This option has been superseded by the symset option.
objects
Set the character symbols for displaying the object classes. Compound option, takes a string of up to 17 characters, with default values of ])[="(%!?+/$*`0_.. Cannot be set in-game.
Can also be defined by using ASCII values instead of characters; see Custom map symbols#OBJECTS.
The order of the symbols is illegal-object (should never be seen), weapon, armor, ring, amulet, tool, comestible, potion, scroll, spellbook, wand, gold, gem or rock, boulder or statue, iron ball, chain, and venom.
See also Custom map symbols
NetHack 3.6.0: This option has been superseded by the symset option.
prayconfirm
Prompt for confirmation before praying. A boolean, defaults to TRUE. Can be set in-game. Is saved into the savefile.
NetHack 3.6.0: This option has been superseded by the paranoid_confirmation option.
sound
Enables messages about what your character hears. Quite a handicap if set to FALSE.
A boolean, defaults to TRUE. Can be set in-game. Is saved into the savefile. Some in-game actions, such as fainting from hunger or praying, may reset this option to TRUE. (This is presumably a bug.)
NetHack 3.6.0: This option has been superseded by the acoustics option.
traps
Set the character symbols for displaying traps. Compound option, takes a string of up to 22 characters, with default values of ^^^^^^^^^^^^^^^^^"^^^^. Cannot be set in-game.
Can also be defined by using ASCII values instead of characters; see Custom map symbols#TRAPS.
The order of the symbols is: arrow trap, dart trap, falling rock trap, squeaky board, bear trap, land mine, rolling boulder trap, sleeping gas trap, rust trap, fire trap, pit, spiked pit, hole, trap door, teleportation trap, level teleporter, magic portal, web, statue trap, magic trap, anti-magic field, polymorph trap.
NetHack 3.6.0: This option has been superseded by the symset option.
warnings
Set the character symbols for displaying the warnings. Compound option, takes a string of up to 6 characters, with default values of 012345. Cannot be set in-game.
Can also be defined by using ASCII values instead of characters; see Custom map symbols#WARNINGS.
UnNetHack
showdmg
Wizard mode option in UnNetHack, enables printing the amount of damage inflicted during fight.
This page may need to be updated for the current version of NetHack.
It may contain text specific to NetHack 3.6.0. Information on this page may be out of date.
Editors: After reviewing this page and making necessary edits, please change the {{nethack-360}} tag to the current version's tag or {{noversion}} as appropriate.
- ↑ esc followed by d on unix systems also works
- ↑ src/options.c in NetHack 3.6.0, line 54