NETHACK(6)                       Games Manual                       NETHACK(6)



NAME
       nethack - Exploring The Mazes of Menace

SYNOPSIS
       nethack [ -d|--directory directory ] [ -w|--windowtype interface ]
       [ --nethackrc:RC-file | --no-nethackrc ] [ -n ] [ -dec | -ibm ]
       [ -u playername ] [ -X | -D ] [ -p profession ] [ -r race ] [ -@ ]

       Also [ -A|-Arc | -B|-Bar | -C|-Cav | -H|-Hea | -K|-Kni | -M|-Mon |
       -P|-Pri | -R|-Rog | -Ran | -S|-Sam | -T|-Tou | -V|-Val | -W|-Wiz ]

       nethack [ -d|--directory directory ] -s|--scores [ -v ]
       [ -p profession ] [ -r race ] [ playernames ]

       nethack [ --usage | --help ] [ --showpaths ]
       [ --version[:copy|:dump|:show] ]

DESCRIPTION
       NetHack is a display oriented Dungeons & Dragons(tm) - like game.   The
       standard tty display and command structure resemble rogue.

       Other, more graphical display options exist for most platforms.

       To  get started you really only need to know two commands.  The command
       ?  will give you a list of the available commands  (as  well  as  other
       information)  and the command / will identify the things you see on the
       screen.

       To win the game (as opposed to merely playing to  beat  other  people's
       high  scores)  you  must locate the Amulet of Yendor which is somewhere
       below the 20th level of the dungeon and get it out.  Few people achieve
       this;  most  never  do.   Those  who have done so go down in history as
       heroes among heroes -- and then they find ways of making the game  even
       harder.   See  the Guidebook section on Conduct if this game has gotten
       too easy for you.

       When the game ends, whether by your dying, quitting, or  escaping  from
       the  caves, NetHack will give you (a fragment of) the list of top scor-
       ers.  The scoring is based on many aspects  of  your  behavior,  but  a
       rough estimate is obtained by taking the amount of gold you've found in
       the cave plus four times your (real) experience.  Precious  stones  may
       be  worth  a lot of gold when brought to the exit.  There is a 10% pen-
       alty for getting yourself killed.

       The environment variable NETHACKOPTIONS can be used to initialize  many
       run-time  options.   The  ?  command  provides  a  description of these
       options and syntax.  (The -dec and -ibm command line options are  mutu-
       ally  exclusive  and  are equivalent to the decgraphics and ibmgraphics
       run-time options described there, and are provided  purely  for  conve-
       nience on systems supporting multiple types of terminals.)

       Because  the option list can be very long, options may also be included
       in a configuration file.  The default is located in your home directory
       and  named  .nethackrc  on  UNIX systems (including descendants such as
       linux, NetBSD, and macOS).  On Windows, the name is also .nethackrc but
       the  location  can vary (see --showpaths below).  On other systems, the
       default may be different, possibly NetHack.cnf.  On MS-DOS, the name is
       defaults.nh in NetHack's directory (folder), while on VMS|OpenVMS it is
       nethack.ini in your home directory.  The default configuration file may
       be  overridden  via  the  --nethackrc:rc-file command line option or by
       setting NETHACKOPTIONS in your environment to a string consisting of an
       @ character followed by the path and filename.

       The  -u  playername option supplies the answer to the question "Who are
       you?".  It overrides any name from the options or  configuration  file,
       USER,  LOGNAME,  or getlogin(), which will otherwise be tried in order.
       If none of these provides a useful name, the player will be  asked  for
       one.  Player names (in conjunction with uids) are used to identify save
       files, so you can have several saved games under different names.  Con-
       versely,  you  must  use the appropriate player name to restore a saved
       game.

       A playername suffix can be used to specify the profession, race, align-
       ment and/or gender of the character.  The full syntax of the playername
       that includes a suffix is "name-ppp-rrr-aaa-ggg".  "ppp" are  at  least
       the  first  three letters of the profession (this can also be specified
       using a separate -p profession option).  "rrr" are at least  the  first
       three letters of the character's race (this can also be specified using
       a separate -r race option).  "aaa" are at least the first three letters
       of  the  character's  alignment, and "ggg" are at least the first three
       letters of the character's gender.  Any of the parts of the suffix  may
       be left out.

       -p  profession  can be used to determine the character profession, also
       known as the role.  You can specify either the male or female name  for
       the  character  role,  or  the first three characters of the role as an
       abbreviation.

       Likewise, -r race can be used to explicitly request that a race be cho-
       sen.

       The -A|-Arc | -B|-Bar | -C|-Cav | -H|-Hea | -K|-Kni | -M|-Mon | -P|-Pri
       | -R|-Rog | -Ran | -S|-Sam | -T|-Tou | -V|-Val |  -W|-Wiz  options  for
       role  selection are maintained for compatibility with older versions of
       the program.  They are mutually exclusive and  the  single-letter  form
       must  be  uppercase.   Ranger has no single-letter choice because -R is
       already used for the Rogue role.

       -@  tells  nethack  to  choose  any  omitted  characteristics  (profes-
       sion/role, race, gender, alignment) randomly without prompting.  Other-
       wise, leaving out any of these characteristics will result in you being
       prompted during game startup for the information.

       The -n option suppresses printing of any news from the game administra-
       tor.

       The -X option will start the game in a  special  non-scoring  discovery
       mode  (also  known  as  explore mode).  -D will start the game in debug
       mode (also known as wizard mode) after changing the character  name  to
       "wizard",  if  the  player is allowed.  Otherwise it will switch to -X.
       Control of who is allowed to use debug mode is done via the  "WIZARDS="
       line in nethack's sysconf file.

       The  -d  or  --directory option, which must be the first argument if it
       appears, supplies a directory which is to serve as the playground.   It
       overrides  the  value from NETHACKDIR, HACKDIR, or the directory speci-
       fied  by   the   game   administrator   during   compilation   (usually
       /usr/games/lib/nethackdir).   This option is usually only useful to the
       game administrator.  The  playground  must  contain  several  auxiliary
       files  such  as help files, the list of top scorers, and a subdirectory
       save where games are saved.

       The -w or --windowtype interface option can be used  to  specify  which
       interface  to  use  if the program has been built with support for more
       than one.  Specifying a value on the command line overrides  any  value
       specified  in the run-time configuration file.  NetHack's #version com-
       mand shows available interfaces.

       The --nethackrc:RC-file option will use RC-file instead of the  default
       run-time   configuration   file   (typically   ~/.nethackrc)   and  the
       --no-nethackrc option can be used to skip  any  run-time  configuration
       file.

       Some options provide feedback and then exit rather than play the game:

       The  -s or --scores option alone will print out the list of your scores
       on the current version.  An immediately following  -v  reports  on  all
       versions present in the score file.  '-s|-s -v' may also be followed by
       arguments -p profession and -r race to print the scores  of  particular
       roles  and  races  only.   Either  can  be  specified multiple times to
       include more than one role or more than one race.  When both are speci-
       fied,  score  entries which match either the role or the race (or both)
       are printed rather than just entries which match both.  '-s|-s -v'  may
       be  followed  by  one  or  more player names to print the scores of the
       players mentioned, by 'all' to print out all scores, or by a number  to
       print  that many top scores.  Combining names with role or race or both
       will report entries which match any of those rather than just the  ones
       which match all.

       --version  or  --version:show  can be used to cause NetHack to show the
       version number, the date and time that the program was built  from  its
       source  code, and possibly some auxiliary information about that source
       code, then exit.  The optional auxiliary information is git commit hash
       (reflecting  the  source code's most recent modification when extracted
       from the git version control system, if that is in  use)  if  available
       when  the  program  was  built.   On some platforms such as Windows and
       macOS, a variation, --version:copy, can be used  to  cause  NetHack  to
       show  the  version information, then exit, while also leaving a copy of
       that information in the paste buffer or clipboard for potential  inser-
       tion into things like bug reports.  On any platform, --version:dump can
       be used to show most of the data used when checking whether a save file
       or bones file is compatible with the program.  The program will display
       a line containing five numbers expressed in hexadecimal, then exit.

       --showpaths can be used to cause NetHack to show where it is  expecting
       to  find  various  files.   Among other things it shows the path to and
       name for the player's run-time configuration file, a  text  file  which
       can be edited to customize aspects of how the game operates.

       --usage or --help will display information similar to this manual page,
       then exit.  Use 'nethack --usage | more' to read it a page at a time.

AUTHORS
       Jay Fenlason (+ Kenny Woodland, Mike Thome and  Jon  Payne)  wrote  the
       original hack, very much like rogue (but full of bugs).

       Andries  Brouwer  continuously  deformed their sources into an entirely
       different game.

       Mike Stephenson has continued the perversion of sources, adding various
       warped  character  classes  and  sadistic  traps  with the help of many
       strange people who reside in that place between the worlds, the  Usenet
       Zone.   A number of these miscreants are immortalized in the historical
       roll of dishonor and various other places.

       The resulting mess is now called NetHack, to denote its development  by
       the Usenet.  Andries Brouwer has made this request for the distinction,
       as he may eventually release a new version of his own.

FILES
       Run-time configuration options were discussed above and use a  platform
       specific  name  for  a file in a platform specific location.  For Unix,
       the name is '.nethackrc' in the user's home directory.

       All  other  files   are   in   the   playground   directory,   normally
       /usr/games/lib/nethackdir.   If DLB was defined during the compile, the
       data files and special levels will be inside a  larger  file,  normally
       nhdat, instead of being separate files.

       nethack                     The program itself.
       Guidebook | Guidebook.txt   NetHack's user manual.
       data, oracles, rumors       Data files used by NetHack.
       bogusmon                    Another data file.
       engrave, epitaph, tribute   Still more data files.
       symbols                     Data file holding sets of specifications
                                   for how to display monsters, objects, and
                                   map features.
       options                     Data file containing a description of the
                                   build-time option settings.
       help, hh, cmdhelp           Help data files.  ('cmdhelp' is obsolete.)
       opthelp, optmenu, wizhelp   More help data files.
       keyhelp, usagehlp           Even more help data files.
       *.lua                       Predefined special levels, dungeon control
                                   for special levels, quest texts.
       history                     A short history of NetHack.
       license                     Rules governing redistribution.
       record                      The list of top scorers.
       logfile                     An extended list of games played
                                   (optional).
       xlogfile                    A more detailed version of 'logfile'
                                   (also optional).
       paniclog                    Record of exceptional conditions
                                   discovered during program execution.
       xlock.nn                    Description of dungeon level 'nn' of
                                   active game 'x' if there's a limit on the
                                   number of simultaneously active games.
       UUcccccc.nn                 Alternate form for dungeon level 'nn'
                                   of active game by user 'UU' playing
                                   character named 'cccccc' when there's no
                                   limit on number of active games.
       perm                        Lock file for xlock.0 or UUcccccc.0.
       bonD0.nn                    Descriptions of the ghost and belongings
                                   of a deceased adventurer who met his or
                                   her demise on level 'nn'.  A subsequent
                                   character might encounter this old level.

       save/                       A subdirectory containing saved games.

       sysconf                     System-wide options.  Required if
                                   program is built with 'SYSCF' option
                                   enabled, ignored if not.

       The  location  of  'sysconf'  is  specified  at build time and can't be
       changed except by updating source file "config.h"  and  rebuilding  the
       program.

       NetHack's  Guidebook  might  not  be  present  if  whoever  packaged or
       installed the program distribution neglected to include it.

       In a perfect world, 'paniclog' would remain empty.

ENVIRONMENT
       USER or LOGNAME         Your login name.
       HOME                    Your home directory.
       SHELL                   Your shell.
       TERM                    The type of your terminal.
       HACKPAGER or PAGER      Replacement for default pager.
       MAIL                    Mailbox file.
       MAILREADER              Replacement for default reader
                               (probably /bin/mail or /usr/ucb/mail).
       NETHACKDIR or HACKDIR   Playground.
       NETHACKOPTIONS          String predefining several NetHack options.

       If the same option is specified in both NETHACKOPTIONS and  .nethackrc,
       the value assigned in NETHACKOPTIONS takes precedence.

       SHOPTYPE and SPLEVTYPE can be used in debugging (wizard) mode.
       DEBUGFILES can be used if the program was built with 'DEBUG' enabled.

SEE ALSO
       recover(6)

BUGS
       Probably infinite.

COPYRIGHT
       This  file  is  Copyright  (C)  Robert Patrick Rankin, 2024 for version
       NetHack-5:1.31.  NetHack may be freely redistributed.  See license  for
       details.

       Dungeons & Dragons is a Trademark of Wizards of the Coast, Inc.



NETHACK                          26 April 2026                      NETHACK(6)
