Symset
Starting in NetHack 3.6.0, the symset option selects one of several symbol sets for display of a text-mode map for the normal dungeon. The roguesymset option does the same for the Rogue level. The file "symbols", placed in the directory where NetHack is installed, defines the available symbol sets. The user may edit this file to change existing symbol sets or to define new symbol sets.
The symset option supersedes IBMgraphics, DECgraphics and MACgraphics. Those options are still recognized for backward compatibility. It also replaces the variables named under Custom map symbols (3.4.3), except that BOULDER and WARNINGS are still accepted.
Individual symbols may be set in the options file with SYMBOLS:
SYMBOLS=S_boulder:0 SYMBOLS=S_golem:7 SYMBOLS=S_ghost:8
Contents
Available symbol sets
Normal dungeon
The following symbol sets are available for the normal dungeon and for the Rogue level:
- Default symbols -- plain ASCII. This set is coded directly and not defined in the symbols file.
- DECgraphics
- IBMgraphics
- IBMGraphics_1 -- displays walls as solid lines and all other characters the same way as ASCII
- IBMGraphics_2 -- rolls back certain symbols to ASCII, for consistent display with code pages other than 437. The IBMgraphics article discusses code pages at length.
- MACgraphics
- NHAccess -- an ASCII-compatible symbol set intended for visually impaired players.
Rogue level
In addition to the above symbol sets, the following symbol sets are available for the Rogue level:
- RogueIBM
- RogueEpyx
- RogueWindows
Of these, only RogueEpyx displays in color. RogueIBM and RogueWindows are in fact identical.
The symbols file supports limiting a symbol set to the main dungeon, but no preconfigured symbol set is restricted this way.
File format
The symbols file is a plain text file and can be edited by the user. Blank lines are ignored. Comments begin with '#' and continue to the end of the line. Lines consist of either the keyword "finish" standing alone or a keyword, a colon or equals sign, and a value. Keywords are not case sensitive.
A symbol set consists of:
- a single line with keyword "start" or "begin" and a value constituting the name of the symbol set
- a single line with keyword "handling" and a value of either "DEC" or "IBM"; the provided symbols file uses "MAC" for MACgraphics, but the source code does not recognize this value
- an optional single line with keyword "description" and a line to be displayed in the options menu, to describe the symbol set
- an optional single line with keyword "color" or "colour" and a value of any of "true", "yes", "on", "false", "no" or "off"; the default is to enable color in the main dungeon and disable it in the Rogue level
- an optional single line with keyword "restrictions" and a value of "primary" or "rogue"; the default is no restriction
- zero or more lines in which the keyword is a symbol name and the value is the character to be displayed; symbols for which no line is defined will be displayed as ASCII
- a single line with keyword "finish" and no value
The character may be a single printable character other than backslash (which begins an escape), caret (which indicates a control character; you probably don't want this) or '#' (which begins a comment), or it may be an escape sequence. C-style escape sequences of the form '\123' are interpreted as octal, '\x45' as hex and '\d123' as decimal. '\Mx' gives a "meta" character, with the eighth bit set.
Recognized symbol names are as follows:
Default (ASCII) | Name | Description |
---|---|---|
Walls, doors etc. | ||
- |
S_blcorn |
bottom left corner (of a room) |
- |
S_brcorn |
bottom right corner (of a room) |
- |
S_crwall |
wall |
- |
S_hwall |
horizontal wall |
- |
S_tdwall |
wall |
- |
S_tlcorn |
top left corner (of a room) |
| |
S_tlwall |
wall |
- |
S_trcorn |
top right corner (of a room) |
| |
S_trwall |
wall |
- |
S_tuwall |
wall |
| |
S_vwall |
vertical wall |
# |
S_corr |
corridor |
# |
S_litcorr |
lit corridor |
<space> |
S_stone |
dark part of a room or solid rock |
. |
S_ice |
ice |
. |
S_room |
floor of a room |
. |
S_ndoor |
doorway (with no or broken door) |
+ |
S_hcdoor |
closed door (in horizontal wall) |
| |
S_hodoor |
open door (in horizontal wall) |
+ |
S_vcdoor |
closed door (in vertical wall) |
- |
S_vodoor |
open door (in vertical wall) |
> |
S_dnladder |
ladder down |
> |
S_dnstair |
staircase down |
< |
S_upladder |
ladder up |
< |
S_upstair |
staircase up |
Dungeon features | ||
<space> |
S_air |
air |
_ |
S_altar |
altar |
# |
S_bars |
iron bars |
# |
S_cloud |
cloud |
{ |
S_fountain |
fountain |
| |
S_grave |
grave |
# |
S_hcdbridge |
horizontal raised drawbridge |
. |
S_hodbridge |
horizontal lowered drawbridge |
# |
S_vcdbridge |
vertical raised drawbridge |
. |
S_vodbridge |
vertical lowered drawbridge |
} |
S_lava |
molten lava |
# |
S_poisoncloud |
poison cloud |
# |
S_sink |
sink |
\ |
S_throne |
opulent throne |
# |
S_tree |
tree |
} |
S_pool |
water |
} |
S_water |
water |
Traps | ||
^ |
S_anti_magic_trap |
anti-magic field |
^ |
S_arrow_trap |
arrow trap |
^ |
S_bear_trap |
bear trap |
^ |
S_dart_trap |
dart trap |
^ |
S_falling_rock_trap |
falling rock trap |
^ |
S_fire_trap |
fire trap |
^ |
S_hole |
hole |
^ |
S_land_mine |
land mine |
^ |
S_level_teleporter |
level teleporter |
^ |
S_magic_portal |
magic portal |
^ |
S_magic_trap |
magic trap |
^ |
S_pit |
pit |
^ |
S_polymorph_trap |
polymorph trap |
^ |
S_rolling_boulder_trap |
rolling boulder trap |
^ |
S_rust_trap |
rust trap |
^ |
S_sleeping_gas_trap |
sleeping gas trap |
^ |
S_spiked_pit |
spiked pit |
^ |
S_squeaky_board |
squeaky board |
^ |
S_statue_trap |
statue trap |
^ |
S_teleportation_trap |
teleportation trap |
^ |
S_trap_door |
trap door |
^ |
S_vibrating_square |
vibrating square |
" |
S_web |
web |
Items | ||
" |
S_amulet |
amulet |
[ |
S_armor or S_armour |
suit or piece of armor |
0 |
S_ball |
iron ball |
+ |
S_book |
spellbook |
` |
S_boulder |
boulder |
_ |
S_chain |
iron chain |
$ |
S_coin |
pile of coins |
% |
S_food |
piece of food |
* |
S_gem |
gem or rock |
! |
S_potion |
potion |
= |
S_ring |
ring |
` |
S_rock |
boulder or statue |
? |
S_scroll |
scroll |
( |
S_tool |
(useful item (pick-axe, key, lamp...) |
/ |
S_wand |
wand |
) |
S_weapon |
weapon |
Monsters | ||
<space> |
S_ghost |
ghost |
A |
S_angel |
angelic being |
B |
S_bat |
bat or bird |
C |
S_centaur |
centaur |
D |
S_dragon |
dragon |
E |
S_elemental |
elemental |
F |
S_fungus |
fungus or mold |
G |
S_gnome |
gnome |
H |
S_giant |
giant humanoid |
J |
S_jabberwock |
jabberwock |
K |
S_kop |
Keystone Kop |
L |
S_lich |
lich |
M |
S_mummy |
mummy |
N |
S_naga |
naga |
O |
S_ogre |
ogre |
P |
S_pudding |
pudding or ooze |
Q |
S_quantmech |
quantum mechanic |
R |
S_rustmonst |
rust monster or disenchanter |
S |
S_snake |
snake |
T |
S_troll |
troll |
U |
S_umber |
umber hulk |
V |
S_vampire |
vampire |
W |
S_wraith |
wraith |
X |
S_xorn |
xorn |
Y |
S_yeti |
apelike creature |
Z |
S_zombie |
zombie |
a |
S_ant |
ant or other insect |
b |
S_blob |
blob |
c |
S_cockatrice |
cockatrice |
d |
S_dog |
dog or other canine |
e |
S_eye |
eye or sphere |
f |
S_feline |
cat or other feline |
g |
S_gremlin |
gremlin |
h |
S_humanoid |
humanoid |
i |
S_imp |
imp or minor demon |
j |
S_jelly |
jelly |
k |
S_kobold |
kobold |
l |
S_leprechaun |
leprechaun |
m |
S_mimic |
mimic |
] |
S_mimic_def |
mimic |
n |
S_nymph |
nymph |
o |
S_orc |
orc |
p |
S_piercer |
piercer |
q |
S_quadruped |
quadruped |
r |
S_rodent |
rodent |
s |
S_spider |
arachnid or centipede |
t |
S_trapper |
trapper or lurker above |
u |
S_unicorn |
unicorn or horse |
v |
S_vortex |
vortex |
w |
S_worm |
worm |
~ |
S_worm_tail |
long worm tail |
x |
S_xan |
xan or other mythical/fantastic insect |
y |
S_light |
light |
z |
S_zruty |
zruty |
& |
S_demon |
major demon |
' |
S_golem |
golem |
: |
S_lizard |
lizard |
; |
S_eel |
sea monster |
@ |
S_human |
human or elf |
Effects | ||
) |
S_boomleft |
boomerang open left |
|
S_boomright |
boomerang open right |
* |
S_digbeam |
dig beam |
/ |
S_explode 1 |
explosion top left |
- |
S_explode 2 |
explosion top center |
\ |
S_explode 3 |
explosion top right |
| |
S_explode 4 |
explosion middle left |
|
S_explode 5 |
explosion middle center |
| |
S_explode 6 |
explosion middle right |
\ |
S_explode 7 |
explosion bottom left |
- |
S_explode 8 |
explosion bottom center |
/ |
S_explode 9 |
explosion bottom right |
! |
S_flashbeam |
flash beam |
0 |
S_ss 1 |
magic shield 1 of 4 |
# |
S_ss 2 |
magic shield 2 of 4 |
@ |
S_ss 3 |
magic shield 3 of 4 |
* |
S_ss 4 |
magic shield 4 of 4 |
- |
S_sw_bc |
swallow bottom center |
\ |
S_sw_bl |
swallow bottom left |
/ |
S_sw_br |
swallow bottom right |
| |
S_sw_ml |
swallow middle left |
| |
S_sw_mr |
swallow middle right |
- |
S_sw_tc |
swallow top center |
/ |
S_sw_tl |
swallow top left |
\ |
S_sw_tr |
swallow top right |
- |
S_hbeam |
horizontal beam |
| |
S_vbeam |
vertical beam |
/ |
S_rslant |
diagonal beam (NE/SW) |
\ |
S_lslant |
diagonal beam (NW/SE) |
. |
S_venom |
splash of venom |
Example
The following defines the traditional IBMgraphics symbol set:
start: IBMgraphics Handling: IBM S_vwall: \xb3 # meta-3, vertical rule S_hwall: \xc4 # meta-D, horizontal rule S_tlcorn: \xda # meta-Z, top left corner S_trcorn: \xbf # meta-?, top right corner S_blcorn: \xc0 # meta-@, bottom left S_brcorn: \xd9 # meta-Y, bottom right S_crwall: \xc5 # meta-E, cross S_tuwall: \xc1 # meta-A, T up S_tdwall: \xc2 # meta-B, T down S_tlwall: \xb4 # meta-4, T left S_trwall: \xc3 # meta-C, T right S_ndoor: \xfa # meta-z, centered dot S_vodoor: \xfe # meta-~, small centered square S_hodoor: \xfe # meta-~, small centered square S_bars: \xf0 # equivalence symbol S_tree: \xf1 # plus or minus symbol S_room: \xfa # meta-z, centered dot S_corr: \xb0 # meta-0, light shading S_litcorr: \xb1 # meta-1, medium shading S_fountain: \xf4 # meta-t, integral top half S_pool: \xf7 # meta-w, approx. equals S_ice: \xfa # meta-z, centered dot S_lava: \xf7 # meta-w, approx. equals S_vodbridge: \xfa # meta-z, centered dot S_hodbridge: \xfa # meta-z, centered dot S_water: \xf7 # meta-w, approx. equals S_vbeam: \xb3 # meta-3, vertical rule S_hbeam: \xc4 # meta-D, horizontal rule S_sw_ml: \xb3 # meta-3, vertical rule S_sw_mr: \xb3 # meta-3, vertical rule S_explode4: \xb3 # meta-3, vertical rule S_explode6: \xb3 # meta-3, vertical rule finish
Screenshots
Main dungeon
Here are four screenshots of the same scene, using the three IBMgraphics variants and also DECgraphics.
With IBMgraphics
Note that the floor symbol is centered with respect to the @ sign on the left.
With IBMgraphics_2
The moat, the floor and the fountain are displayed with their ASCII symbols. The floor is an ASCII period, and displays low with respect to the @ sign on the left.
With IBMgraphics_1
The doors are displayed with their ASCII symbols.
With DECgraphics
Rogue level
Here are two screenshots of the same scene, using the two Rogue level symbol sets.
With RogueIBM/RogueWindows
With RogueEpyx
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.