Provided by: chocolate-doom_3.0.0-4_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

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

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

       -devparm
              Developer mode. Implies -nograph.

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

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

       -fast  Monsters move faster.

       -file <files>
              Load the specified PWAD files.

       -flip  Flip player gun sprites (broken).

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

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

       -mb <mb>
              Specify the heap size, in MiB (default 16).

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

       -nograph
              Disable graphical introduction sequence

       -nomonsters
              Disable monsters.

       -nomusic
              Disable music.

       -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.

       -random
              Items respawn at random locations

       -respawn
              Respawn monsters after they are killed.

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

       -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.

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

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.

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.

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.

       -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.

       -newsync
              Use new network client sync code  rather  than  the  classic  sync  code.  This  is
              currently disabled by default because it has some bugs.

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

       -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.

       -nocheats
              Ignore cheats in dehacked files.

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

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/games/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)