Provided by: chocolate-doom_3.1.0-1_amd64 bug

NAME

       chocolate-strife - historically compatible Strife engine

SYNOPSIS

       chocolate-strife [OPTIONS]

DESCRIPTION

       Chocolate  Strife  is an accurate and complete recreation of Rogue Entertainment's "Strife: Quest for the
       Sigil". It was created through more than two years of reverse engineering effort with  the  blessings  of
       the original programmers of the game (see the section HISTORY below).

GENERAL OPTIONS

       -config <file>
              Load main configuration from the specified file, instead of the default.

       -devparm
              Developer mode. Implies -nograph.

       -extraconfig <file>
              Load additional configuration from the specified file, instead of the default.

       -file <files>
              Load the specified PWAD files.

       -iwad <file>
              Specify an IWAD file to use.

       -nograph
              Disable graphical introduction sequence

       -nomusic
              Disable music.

       -nomusicpacks
              Disable substitution music packs.

       -nosfx Disable sound effects.

       -nosound
              Disable all sound output.

       -novoice
              Disable voice dialog and show dialog as text instead, even if voices.wad can be found.

       -response <filename>
              Load  extra command line arguments from the given response file. Arguments read from the file will
              be inserted into the command line replacing this argument. A response  file  can  also  be  loaded
              using the abbreviated syntax '@filename.rsp'.

       -savedir <directory>
              Specify  a  path  from  which to load and save games. If the directory does not exist then it will
              automatically be created.

       -version
              Print the program version and exit.

GAME START OPTIONS

       -fast  Monsters move faster.

       -loadgame <s>
              Load the game in slot s.

       -nomonsters
              Disable monsters.

       -random
              Items respawn at random locations

       -respawn
              Respawn monsters after they are killed.

       -skill <skill>
              Set the game skill, 1-5 (1: easiest, 5: hardest).  A skill of 0 disables all monsters.

       -turbo <x>
              Turbo mode.  The player's speed is multiplied by x%.  If unspecified, x defaults to  200.   Values
              are rounded up to 10 and down to 400.

       -warp x
              Start a game immediately, warping to level x.

DISPLAY OPTIONS

       -1     Don't scale up the screen. Implies -window.

       -2     Double up the screen to 2x its normal size. Implies -window.

       -3     Double up the screen to 3x its normal size. Implies -window.

       -display <x>
              Specify the display number on which to show the screen.

       -fullscreen
              Run in fullscreen mode.

       -geometry <WxY>
              Specify the dimensions of the window. Implies -window.

       -height <y>
              Specify the screen height, in pixels. Implies -window.

       -noblit
              Disable blitting the screen.

       -nodraw
              Disable rendering the screen entirely.

       -nograbmouse
              Don't grab the mouse when running in windowed mode.

       -nomouse
              Disable the mouse.

       -width <x>
              Specify the screen width, in pixels. Implies -window.

       -window
              Run in a window.

NETWORKING OPTIONS

       -altdeath
              Start a deathmatch game.  Weapons do not stay in place and all items respawn after 30 seconds.

       -autojoin
              Automatically search the local LAN for a multiplayer server and join it.

       -avg   Austin Virtual Gaming: end levels after 20 minutes.

       -connect <address>
              Connect to a multiplayer server running on the given address.

       -dedicated
              Start a dedicated server, routing packets but not participating in the game itself.

       -dup <n>
              Reduce  the  resolution  of  the  game  by a factor of n, reducing the amount of network bandwidth
              needed.

       -extratics <n>
              Send n extra tics in every packet as insurance against dropped packets.

       -left  Run as the left screen in three screen mode.

       -localsearch
              Search the local LAN for running servers.

       -nodes <n>
              Autostart the netgame when n nodes (clients) have joined the server.

       -oldsync
              Use original network client sync code rather than the improved sync code.

       -port <n>
              Use the specified UDP port for communications, instead of the default (2342).

       -privateserver
              When running a server, don't register with the global master server. Implies -server.

       -query <address>
              Query the status of the server running on the given IP address.

       -right Run as the right screen in three screen mode.

       -search
              Query the Internet master server for a global list of active servers.

       -server
              Start a multiplayer server, listening for connections.

       -servername <name>
              When starting a network server, specify a name for the server.

       -solo-net
              Start the game playing as though in a netgame with a single player.  This can also be used to play
              back single player netgame demos.

       -timer <n>
              For multiplayer games: exit each level after n minutes.

DEHACKED AND WAD MERGING

       -aa <files>
              Equivalent to "-af <files> -as <files>".

       -af <files>
              Simulates  the behavior of NWT's -af option, merging flats into the main IWAD directory.  Multiple
              files may be specified.

       -as <files>
              Simulates the behavior of NWT's  -as  option,  merging  sprites  into  the  main  IWAD  directory.
              Multiple files may be specified.

       -deh <files>
              Load the given dehacked patch(es)

       -merge <files>
              Simulates  the  behavior  of  deutex's -merge option, merging a PWAD into the main IWAD.  Multiple
              files may be specified.

       -noautoload
              Disable auto-loading of .wad files.

       -nocheats
              Ignore cheats in dehacked files.

       -nwtmerge <files>
              Simulates the behavior of NWT's -merge option.  Multiple files may be specified.

DEMO OPTIONS

       -maxdemo <size>
              Specify the demo buffer size (KiB)

       -playdemo <demo>
              Play back the demo named demo.lmp.

       -record <x>
              Record a demo named x.lmp.

       -solo-net
              Play back a demo recorded in a netgame with a single player.

       -strictdemos
              When recording or playing back demos, disable any extensions of the vanilla demo format  -  record
              demos as vanilla would do, and play back demos as vanilla would do.

       -timedemo <demo>
              Play back the demo named demo.lmp, determining the framerate of the screen.

COMPATIBILITY

       -donut <x> <y>
              Use  the  specified magic values when emulating behavior caused by memory overruns from improperly
              constructed donuts. In Vanilla Strife this can differ depending  on  the  operating  system.   The
              default  (if  this  option is not specified) is to emulate the behavior when running under Windows
              98.

       -gameversion <version>
              Emulate a specific version of Strife. Valid values are "1.2" and "1.31".

       -setmem <version>
              Specify DOS version to emulate for NULL pointer dereference emulation.   Supported  versions  are:
              dos622, dos71, dosbox. The default is to emulate DOS 7.1 (Windows 98).

       -spechit <n>
              Use the specified magic value when emulating spechit overruns.

OBSCURE AND LESS-USED OPTIONS

       -cdrom [windows only] Save configuration data and savegames in c:\strife.cd, allowing play from CD.

       -dumpsubstconfig <filename>
              Read  all  MIDI files from loaded WAD files, dump an example substitution music config file to the
              specified filename and quit.

       -flip  Flip player gun sprites (broken).

       -mb <mb>
              Specify the heap size, in MiB.

       -mmap  Use the OS's virtual memory subsystem to map WAD files directly into memory.

       -nogui If specified, don't show a GUI window for error messages when the game exits with an error.

       -work  Set Rogue playtesting mode (godmode, noclip toggled by backspace)

IWAD SEARCH PATHS

       To play, an IWAD file is needed. This is a large file containing  all  of  the  levels,  graphics,  sound
       effects,  music and other material that make up the game. IWAD files are named according to the game; the
       standard names are:

       doom.wad, doom1.wad, doom2.wad, tnt.wad, plutonia.wad
              Doom, Doom II, Final Doom

       heretic.wad, heretic1.wad, hexen.wad, strife1.wad
              Heretic, Hexen and Strife (commercial Doom engine games).

       hacx.wad, chex.wad
              Hacx and Chex Quest - more obscure games based on the Doom engine.

       freedm.wad, freedoom1.wad, freedoom2.wad
              The Freedoom open content IWAD files.

       The following directory paths are searched in order to find an IWAD:

       Current working directory
              Any IWAD files found in the current working directory will be used in preference to IWADs found in
              any other directories.

       DOOMWADDIR
              This  environment variable can be set to contain a path to a single directory in which to look for
              IWAD files. This environment variable is supported by most Doom source ports.

       DOOMWADPATH
              This environment variable, if set, can contain a colon-separated list of directories in  which  to
              look for IWAD files, or alternatively full paths to specific IWAD files.

       $HOME/.local/share/games/doom
              Writeable  directory  in  the  user's  home  directory.  The  path  can  be  overridden  using the
              XDG_DATA_HOME environment variable (see the XDG Base Directory Specification).

       /usr/local/share/doom, /usr/local/share/games/doom, /usr/share/doom,
              /usr/share/games/doom  System-wide  locations  that  can  be  accessed  by  all  users.  The  path
              /usr/share/games/doom  is a standard path that is supported by most Doom source ports. These paths
              can be overridden using the  XDG_DATA_DIRS  environment  variable  (see  the  XDG  Base  Directory
              Specification).

       The  above can be overridden on a one-time basis by using the -iwad command line parameter to provide the
       path to an IWAD file to use. This parameter can also be used to specify the name of a particular IWAD  to
       use  from  one of the above paths. For example, '-iwad doom.wad' will search the above paths for the file
       doom.wad to use.

ENVIRONMENT

       This section describes environment variables that control Chocolate Strife's behavior.

       DOOMWADDIR, DOOMWADPATH
              See the section, IWAD SEARCH PATHS above.

       PCSOUND_DRIVER
              When running in PC speaker sound effect mode, this environment variable  specifies  a  PC  speaker
              driver  to  use  for  sound effect playback.  Valid options are "Linux" for the Linux console mode
              driver, "BSD" for the NetBSD/OpenBSD PC speaker  driver,  and  "SDL"  for  SDL-based  emulated  PC
              speaker playback (using the digital output).

       OPL_DRIVER
              When  using  OPL  MIDI playback, this environment variable specifies an OPL backend driver to use.
              Valid options are "SDL" for an SDL-based  software  emulated  OPL  chip,  "Linux"  for  the  Linux
              hardware OPL driver, and "OpenBSD" for the OpenBSD/NetBSD hardware OPL driver.

              Generally  speaking,  a  real  hardware  OPL  chip sounds better than software emulation; however,
              modern machines do not often include one. If present, it may still require extra work  to  set  up
              and elevated security privileges to access.

FILES

       $HOME/.local/share/chocolate-doom/strife.cfg
              The main configuration file for Chocolate Strife.  See strife.cfg(5).

       $HOME/.local/share/chocolate-doom/chocolate-strife.cfg
              Extra  configuration  values  that  are  specific  to  Chocolate Strife and not present in Vanilla
              Strife.  See chocolate-strife.cfg(5).

SEE ALSO

       chocolate-doom(6), chocolate-server(6), chocolate-setup(6)

HISTORY

       The source code for Strife was lost, which means, unlike the code for  all  the  other  commercial  DOOM-
       engine  games,  it cannot be released. The only access we have to the code is the binary executable file.
       Reverse engineering tools were employed to disassemble and decompile the executables, which  were  cross-
       referenced  against  the Linux DOOM and DOS Heretic sources and painstakingly combed over multiple times,
       instruction-by-instruction, to ensure that the resulting Chocolate-Doom-based executable is as  close  as
       possible to the original.

LEGALITY

       Reverse  engineering  is  a  protected  activity so long as the original code is not used directly in the
       product. Due to the vast amount of information lost through the process of compilation, and the  need  to
       refactor  large  portions  of code in order to eliminate non-portable idioms or to adapt them properly to
       Chocolate Doom's framework, the resulting code behaves the same, but is not the *same* code.

       In addition, James Monroe and John Carmack have both stated that they have no objections to the  project.
       Because they are the original authors of the code, and neither Rogue nor their publisher, Velocity, Inc.,
       exist any longer as legal entities, this is effectively legal permission.

BUGS

       Chocolate Strife is almost, but not entirely perfect, in recreating the behavior of Vanilla Strife.  Help
       us by reporting any discrepancies you might notice between this executable and the vanilla DOS program.

       However,  do  *not*  report  any  glitch that you can replicate in the vanilla EXE as a bug. The point of
       Chocolate Strife, like Chocolate Doom before it, is to be as bug-compatible with  the  original  game  as
       possible.  Also  be  aware that some glitches are impossible to compatibly recreate, and wherever this is
       the case, Chocolate Strife has erred on the side of not crashing the program, for example by initializing
       pointers to NULL rather than using them without setting a value first.

AUTHORS

       Chocolate  Strife  is part of the Chocolate Doom project. It was reverse engineered from the DOS versions
       of Strife by James Haley and Samuel Villarreal.  Chocolate Doom  was  written  and  maintained  by  Simon
       Howard, and is based on the LinuxDoom source code released by Id Software.

COPYRIGHT

       Copyright © id Software Inc.  Copyright © 2005-2013 Simon Howard, James Haley, Samuel Villarreal.
       This  is  free  software.   You  may  redistribute copies of it under the terms of the GNU General Public
       License <http://www.gnu.org/licenses/gpl.html>.  There is NO WARRANTY, to the extent permitted by law.

                                                                                             chocolate-strife(6)