-
-
-
-RECOVER(6) 1993 RECOVER(6)
+RECOVER(6) Games Manual RECOVER(6)
NAME
- recover - recover a NetHack game interrupted by disaster
+ recover - recover a NetHack game interrupted by disaster
SYNOPSIS
- recover [ -d directory ] base1 base2 ...
+ recover [ -d directory ] base1 base2 ...
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 only in memory. Now, all per-
- tinent information can be written out to disk, so such games
- can be recovered at the point of the last level change.
-
- The base options tell recover which files to process. Each
- base option specifies recovery of a separate game.
-
- The -d option, which must be the first argument if it
- appears, supplies a directory which is the NetHack play-
- ground. It overrides the value from NETHACKDIR, HACKDIR, or
- the directory specified by the game administrator during
- compilation (usually /usr/games/lib/nethackdir).
-
- For recovery to be possible, nethack must have been compiled
- with the INSURANCE option, and the run-time option check-
- point 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. Various 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 play-
- ground 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 ordi-
- nary 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
-
-
-
-January Last change: 9 1
-
-
-
-
-
-
-RECOVER(6) 1993 RECOVER(6)
-
-
-
- a single-user system, this of course does not change any-
- thing, 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 population is sufficiently
- trustworthy, recover can be installed with the same permis-
- sions the nethack executable has. In either case, recover
- is easily compiled from the distribution utility directory.
+ 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
+ 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.
+
+ The base options tell recover which files to process. Each base option
+ specifies recovery of a separate game.
+
+ 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-
+ 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.
+
+ 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.
+
+ 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
+ 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
+ is easily compiled from the distribution utility directory.
NOTES
- Like nethack itself, recover will overwrite existing save-
- files of the same name. Savefiles created by recover are
- uncompressed; they may be compressed afterwards if desired,
- but even a compression-using nethack will find them in the
- uncompressed form.
+ 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
+ will find them in the uncompressed form.
SEE ALSO
- nethack(6)
+ nethack(6)
BUGS
- recover makes no attempt to find out if a base name speci-
- fies a game in progress. If multiple machines share a play-
- ground, this would be impossible to determine.
-
- recover should be taught to use the nethack playground lock-
- ing mechanism to avoid conflicts.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ 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.
+ recover should be taught to use the nethack playground locking mecha-
+ nism to avoid conflicts.
-January Last change: 9 2
+COPYRIGHT
+ This file is Copyright (C) Kenneth Lorber and was last modified
+ 2018/04/25 (version NetHack-3.6.0:1.9). NetHack may be freely redis-
+ tributed. See license for details.
+NETHACK 14 December 2015 RECOVER(6)