placeholder copies of doc/*.txt until cron job gets repaired

This commit is contained in:
nhmall
2023-11-22 17:00:09 -05:00
parent d7bd85c492
commit b09d663f71
4 changed files with 194 additions and 215 deletions

View File

@@ -1,7 +1,5 @@
DLB(6) Games Manual DLB(6)
NAME
dlb - NetHack data librarian
@@ -11,21 +9,19 @@ SYNOPSIS
DESCRIPTION
Dlb is a file archiving tool in the spirit (and tradition) of tar for
NetHack version 3.1 and higher. It is used to maintain the archive
files from which NetHack reads special level files and other read-only
files from which NetHack reads special level files and other readonly
information. Note that like tar the command and option specifiers are
specified as a continuous string and are followed by any arguments
required in the same order as the option specifiers.
specified as a continuous string and are followed by any arguments re
quired in the same order as the option specifiers.
^?ALLDOCS This facility is optional and may be excluded during NetHack
configuration. ^: ^?DLB This facility is optional but is included in
this NetHack configuration. ^: This facility is optional and was
excluded from this NetHack configuration. ^. ^.
This facility is optional but is included in this NetHack configura
tion.
COMMANDS
The x command causes dlb to extract the contents of the archive into
the current directory.
The c command causes dlb to create a new archive from files in the cur-
The c command causes dlb to create a new archive from files in the cur
rent directory.
The t command lists the files in the archive.
@@ -40,14 +36,14 @@ OPTIONS AND ARGUMENTS
or extract from the archive if no files are listed on the command line.
Default for archive creation if no files are listed is LIBLISTFILE.
C dir change directory. Changes directory before trying to read
C dir change directory. Changes directory before trying to read
any files (including the archive and the lfile).
EXAMPLES
Create the default archive from the default file list:
dlb c
List the contents of the archive 'foo':
List the contents of the archive foo:
dlb tf foo
AUTHOR
@@ -57,16 +53,14 @@ SEE ALSO
nethack(6), tar(1)
BUGS
Not a good tar emulation; - does not mean stdin or stdout. Should
include an optional compression facility. Not all read-only files for
Not a good tar emulation; does not mean stdin or stdout. Should in
clude an optional compression facility. Not all readonly files for
NetHack can be read out of an archive; examining the source is the only
way to know which files can be.
COPYRIGHT
This file is Copyright (C) Kenneth Lorber, 2022 for version
NetHack-3.7:1.12. NetHack may be freely redistributed. See license
NetHack3.7:1.12. NetHack may be freely redistributed. See license
for details.
NETHACK 8 February 2022 DLB(6)

View File

@@ -1,121 +1,119 @@
MAKEDEFS(6) Games Manual MAKEDEFS(6)
NAME
makedefs - NetHack miscellaneous build-time functions
makedefs - NetHack miscellaneous buildtime functions
SYNOPSIS
makedefs { -o | -d | -e | -m | -v | -p | -q | -r | -h }
makedefs { o | d | e | m | v | p | q | r | h }
makedefs --input file --output file --command
makedefs input file output file command
DESCRIPTION
Makedefs is a build-time tool used for a variety of NetHack(6) source
Makedefs is a buildtime tool used for a variety of NetHack(6) source
file creation and modification tasks. For historical reasons, makedefs
takes two types of command lines. When invoked with a short option,
the files operated on are determined when makedefs is compiled. When
invoked with a long option, the --input and --output options are used
to specify the files for the --command. Each command is only available
takes two types of command lines. When invoked with a short option,
the files operated on are determined when makedefs is compiled. When
invoked with a long option, the input and output options are used
to specify the files for the command. Each command is only available
in one of the two formats.
SHORT COMMANDS
Upper and lower case are both accepted for the short commands.
-o Generate onames.h.
o Generate onames.h.
-d Generate data.base.
d Generate data.base.
-e Generate dungeon.pdf. The input file dungeon.def is passed
through the same logic as that used by the --grep command; see
e Generate dungeon.pdf. The input file dungeon.def is passed
through the same logic as that used by the grep command; see
the MDGREP FUNCTIONS section below for details.
-m Generate date.h and options file. It will read dat/gitinfo.txt,
m Generate date.h and options file. It will read dat/gitinfo.txt,
only if it is present, to obtain githash= and gitbranch=
info and include related preprocessor #defines in date.h file.
-p Generate pm.h
p Generate pm.h
-q Generate the rumors file.
q Generate the rumors file.
-s Generate the bogusmon , engrave and epitaphfiles.
s Generate the bogusmon , engrave and epitaphfiles.
-h Generate the oracles file.
h Generate the oracles file.
LONG COMMANDS
--debug
debug
Show debugging output.
--make [command]
make [command]
Execute a short command. Command is given without preceding
dash.
--input file
input file
Specify the input file for the command (if needed). If the file
is - standard input is read.
is standard input is read.
--output file
Specify the output file for the command (if needed). If the
file is - standard output is written.
output file
Specify the output file for the command (if needed). If the
file is standard output is written.
--svs [delimiter]
Generate a version string to standard output without a trailing
newline. If specified, the delimiter is used between each part
svs [delimiter]
Generate a version string to standard output without a trailing
newline. If specified, the delimiter is used between each part
of the version string.
--grep Filter the input file to the output file. See the MDGREP FUNC-
grep Filter the input file to the output file. See the MDGREP FUNC
TIONS section below for information on controlling the filtering
operation.
--grep-showvars
Show the name and value for each variable known to the grep
option.
grepshowvars
Show the name and value for each variable known to the grep op
tion.
--grep-trace
Turn on debug tracing for the grep function ( --grep must be
greptrace
Turn on debug tracing for the grep function ( grep must be
specified as well).
--grep-defined symbol
grepdefined symbol
Exit shell true (0) if symbol is known and defined, otherwise
exit shell false (1).
--grep-define symbol
grepdefine symbol
Force the value of symbol to be "defined." Symbol must already
be known to makedefs.
--grep-undef symbol
grepundef symbol
Force the definition of symbol to be "undefined." Symbol must
already be known to makedefs.
MDGREP FUNCTIONS
The --grep command (and certain other commands) filter their input, on
a line-by-line basis, according to control lines embedded in the input
and on information gleaned from the NetHack(6) configuration. This
allows certain changes such as embedding platform-specific documenta-
tion into the master documentation files.
The grep command (and certain other commands) filter their input, on
a linebyline basis, according to control lines embedded in the input
and on information gleaned from the NetHack(6) configuration. This al
lows certain changes such as embedding platformspecific documentation
into the master documentation files.
Rules:
- The default conditional state is printing enabled.
The default conditional state is printing enabled.
- Any line NOT starting with a caret (^) is either suppressed
or passed through unchanged depending on the current condi-
Any line NOT starting with a caret (^) is either suppressed
or passed through unchanged depending on the current condi
tional state.
- Any line starting with a caret is a control line; as in C,
zero or more spaces may be embedded in the line almost any-
where (except immediately after the caret); however the
Any line starting with a caret is a control line; as in C,
zero or more spaces may be embedded in the line almost any
where (except immediately after the caret); however the
caret must be in column 1.
- Conditionals may be nested.
Conditionals may be nested.
- Makedefs will exit with an error code if any errors are
detected; processing will continue (if it can) to allow as
Makedefs will exit with an error code if any errors are de
tected; processing will continue (if it can) to allow as
many errors as possible to be detected.
- Unknown identifiers are treated as both TRUE and as an
error. Note that --undef or #undef in the NetHack(6) con-
figuration are different from unknown.
Unknown identifiers are treated as both TRUE and as an er
ror. Note that undef or #undef in the NetHack(6) configu
ration are different from unknown.
Control lines:
@@ -137,10 +135,8 @@ AUTHOR
The NetHack Development Team
COPYRIGHT
This file is Copyright (C) Kenneth Lorber, 2022 for version keni-crash-
web2:1.21. NetHack may be freely redistributed. See license for
details.
This file is Copyright (C) Kenneth Lorber, 2022 for version kenicrash
web2:1.21. NetHack may be freely redistributed. See license for de
tails.
NETHACK 8 February 2022 MAKEDEFS(6)

View File

@@ -1,13 +1,11 @@
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 ]
[ --nethackrc:RCfile | --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 |
@@ -19,104 +17,104 @@ SYNOPSIS
nethack [ --usage | --help ] [ --showpaths ] [ --version[:copy] ]
DESCRIPTION
NetHack is a display oriented Dungeons & Dragons(tm) - like game. The
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
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
To win the game (as opposed to merely playing to beat other peoples
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 he-
roes among heroes -- and then they find ways of making the game even
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-
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%
rough estimate is obtained by taking the amount of gold youve 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%
penalty 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-
The environment variable NETHACKOPTIONS can be used to initialize many
runtime 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
runtime 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
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
the location can vary (see --showpaths below). On other systems, the
default may be different, possibly NetHack.cnf. On MSDOS, the name is
defaults.nh in NetHacks 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
be overridden via the --nethackrc:rcfile 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
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
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-
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
that includes a suffix is "nameppprrraaaggg". "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 characters 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
of the characters alignment, and "ggg" are at least the first three
letters of the characters 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
-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-
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
| -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 singleletter form
must be uppercase. Ranger has no singleletter 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-
-@ 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-
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
The -X option will start the game in a special nonscoring 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.
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 nethacks 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-
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
@@ -126,45 +124,45 @@ DESCRIPTION
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-
specified in the runtime configuration file. NetHacks #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
The --nethackrc:RCfile option will use RCfile instead of the default
runtime configuration file (typically ~/.nethackrc) and the
--no-nethackrc option can be used to skip any runtime 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-
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
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
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 can be used to cause NetHack to show the version information
it was compiled with, then exit. That will include the git commit hash
if the information was available when the game was compiled. On some
if the information was available when the game was compiled. 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 the version information in the paste buffer or
also leaving a copy of the version information in the paste buffer or
clipboard for potential insertion into things like bug reports.
--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
--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 players runtime configuration file, a text file which
can be editted 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.
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
@@ -174,19 +172,19 @@ AUTHORS
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
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 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
Runtime 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.
the name is .nethackrc in the users home directory.
All other files are in the playground directory, normally
/usr/games/lib/nethackdir. If DLB was defined during the compile, the
@@ -194,7 +192,7 @@ FILES
nhdat, instead of being separate files.
nethack The program itself.
Guidebook | Guidebook.txt NetHack's user manual.
Guidebook | Guidebook.txt NetHacks user manual.
data, oracles, rumors Data files used by NetHack.
bogusmon Another data file.
engrave, epitaph, tribute Still more data files.
@@ -202,8 +200,8 @@ FILES
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.)
buildtime 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
@@ -213,37 +211,37 @@ FILES
record The list of top scorers.
logfile An extended list of games played
(optional).
xlogfile A more detailed version of 'logfile'
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
xlock.nn Description of dungeon level nn of
active game x if theres 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
UUcccccc.nn Alternate form for dungeon level nn
of active game by user UU playing
character named cccccc when theres 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
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
sysconf Systemwide 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
The location of sysconf is specified at build time and cant be
changed except by updating source file "config.h" and rebuilding the
program.
NetHack's Guidebook might not be present if whoever packaged or
NetHacks 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.
In a perfect world, paniclog would remain empty.
ENVIRONMENT
USER or LOGNAME Your login name.
@@ -261,7 +259,7 @@ ENVIRONMENT
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.
DEBUGFILES can be used if the program was built with DEBUG enabled.
SEE ALSO
recover(6)
@@ -271,11 +269,9 @@ BUGS
COPYRIGHT
This file is Copyright (C) Robert Patrick Rankin, 2022 for version
NetHack-3.7:1.31. NetHack may be freely redistributed. See license
NetHack3.7:1.31. NetHack may be freely redistributed. See license
for details.
Dungeons & Dragons is a Trademark of Wizards of the Coast, Inc.
NETHACK 21 February 2022 NETHACK(6)

View File

@@ -1,7 +1,5 @@
RECOVER(6) Games Manual RECOVER(6)
NAME
recover - recover a NetHack game interrupted by disaster
@@ -11,7 +9,7 @@ SYNOPSIS
DESCRIPTION
Occasionally, a NetHack game will be interrupted by disaster when the
game or the system crashes. Prior to NetHack v3.1, these games were
lost because various information like the player's inventory was kept
lost because various information like the players inventory was kept
only in memory. Now, all pertinent information can be written out to
disk, so such games can be recovered at the point of the last level
change.
@@ -21,51 +19,48 @@ DESCRIPTION
The -d option, which must be the first argument if it appears, supplies
a directory which is the NetHack playground. It overrides the value
from NETHACKDIR, HACKDIR, or the directory specified by the game admin-
from NETHACKDIR, HACKDIR, or the directory specified by the game admin
istrator during compilation (usually /usr/games/lib/nethackdir).
^?ALLDOCS For recovery to be possible, nethack must have been compiled
with the INSURANCE option, and the run-time option checkpoint must also
have been on. ^: ^?INSURANCE For recovery to be possible, nethack must
have been compiled with the INSURANCE option (this configuration was),
and the run-time option checkpoint must also have been on. ^: This
configuration of nethack was created without support for recovery. ^.
^. NetHack normally writes out files for levels as the player leaves
them, so they will be ready for return visits. When checkpointing,
NetHack also writes out the level entered and the current game state on
every level change. This naturally slows level changes down somewhat.
For recovery to be possible, nethack must have been compiled with the
INSURANCE option (this configuration was), and the runtime option
checkpoint must also have been on. NetHack normally writes out files
for levels as the player leaves them, so they will be ready for return
visits. When checkpointing, NetHack also writes out the level entered
and the current game state on every level change. This naturally slows
level changes down somewhat.
The level file names are of the form base.nn, where nn is an internal
bookkeeping number for the level. The file base.0 is used for game
identity, locking, and, when checkpointing, for the game state. Vari-
ous OSes use different strategies for constructing the base name.
Microcomputers use the character name, possibly truncated and modified
to be a legal filename on that system. Multi-user systems use the
(modified) character name prefixed by a user number to avoid conflicts,
or "xlock" if the number of concurrent players is being limited. It
may be necessary to look in the playground to find the correct base
name of the interrupted game. recover will transform these level files
into a save file of the same name as nethack would have used.
The level file names are of the form base.nn, where nn is an internal
bookkeeping number for the level. The file base.0 is used for game
identity, locking, and, when checkpointing, for the game state. Vari
ous OSes use different strategies for constructing the base name. Mi
crocomputers use the character name, possibly truncated and modified to
be a legal filename on that system. Multiuser systems use the (modi
fied) character name prefixed by a user number to avoid conflicts, or
"xlock" if the number of concurrent players is being limited. It may
be necessary to look in the playground to find the correct base name of
the interrupted game. recover will transform these level files into a
save file of the same name as nethack would have used.
Since recover must be able to read and delete files from the playground
and create files in the save directory, it has interesting interactions
with game security. Giving ordinary players access to recover through
setuid or setgid is tantamount to leaving the playground world-
writable, with respect to both cheating and messing up other players.
For a single-user system, this of course does not change anything, so
with game security. Giving ordinary players access to recover through
setuid or setgid is tantamount to leaving the playground world
writable, with respect to both cheating and messing up other players.
For a singleuser system, this of course does not change anything, so
some of the microcomputer ports install recover by default.
For a multi-user system, the game administrator may want to arrange for
all .0 files in the playground to be fed to recover when the host
machine boots, and handle game crashes individually. If the user popu-
lation is sufficiently trustworthy, recover can be installed with the
same permissions the nethack executable has. In either case, recover
For a multiuser system, the game administrator may want to arrange for
all .0 files in the playground to be fed to recover when the host ma
chine boots, and handle game crashes individually. If the user popula
tion is sufficiently trustworthy, recover can be installed with the
same permissions the nethack executable has. In either case, recover
is easily compiled from the distribution utility directory.
NOTES
Like nethack itself, recover will overwrite existing savefiles of the
same name. Savefiles created by recover are uncompressed; they may be
compressed afterwards if desired, but even a compression-using nethack
Like nethack itself, recover will overwrite existing savefiles of the
same name. Savefiles created by recover are uncompressed; they may be
compressed afterwards if desired, but even a compressionusing nethack
will find them in the uncompressed form.
SEE ALSO
@@ -73,17 +68,15 @@ SEE ALSO
BUGS
recover makes no attempt to find out if a base name specifies a game in
progress. If multiple machines share a playground, this would be
impossible to determine.
progress. If multiple machines share a playground, this would be im
possible to determine.
recover should be taught to use the nethack playground locking mecha-
recover should be taught to use the nethack playground locking mecha
nism to avoid conflicts.
COPYRIGHT
This file is Copyright (C) Kenneth Lorber, 2022 for version
NetHack-3.7:1.12. NetHack may be freely redistributed. See license
NetHack3.7:1.12. NetHack may be freely redistributed. See license
for details.
NETHACK 8 February 2022 RECOVER(6)