woof - Woof! is a continuation of Lee Killough's Doom source port
MBF targeted at modern systems
MBF stands for "Marine's Best Friend" and is widely
regarded the successor of the Boom source port by TeamTNT. It serves as the
code base for popular Doom source ports such as PrBoom+/DSDA-Doom or The
Eternity Engine. As the original engine was limited to run only under
MS-DOS, it has been ported to Windows by Team Eternity under the name WinMBF
in 2004. Woof! is developed based on the WinMBF code with the aim to make
MBF more widely available and convenient to use on modern systems.
- -config
<file>
- Load main configuration from the specified file, instead of the
default.
- -devparm
- Developer mode.
- -file
<files>
- Load the specified PWAD files.
- -help
- Print command line help.
- -iwad
<file>
- Specify an IWAD file to use.
- -nomusic
- Disable music.
- -nosfx
- Disable sound effects.
- -nosound
- Disable all sound output.
- -save
<directory>
- Specify a path from which to load and save games. If the directory does
not exist then it will automatically be created.
- -shotdir
<directory>
- Specify a path to save screenshots. If the directory does not exist then
it will automatically be created.
- -version
- Print the program version and exit.
- -beta
- Press beta emulation mode (complevel mbf only).
- -coop_spawns
- Start single player game with items spawns as in cooperative netgame.
- -dog
- Enables a single helper dog.
- -dogs
<n>
- Overrides the current number of helper dogs, setting it to n.
- -episode
<n>
- Start playing on episode n (1-99)
- -fast
- Monsters move faster.
- -loadgame
<s>
- Load the game in slot s.
- -nomonsters
- Disable monsters.
- -pistolstart
- Enables automatic pistol starts on each level.
- -respawn
- Monsters respawn after being killed.
- -skill
<skill>
- Set the game skill, 1-5 (1: easiest, 5: hardest). A skill of 0 disables
all monsters only in -complevel vanilla.
- -speed
<n>
- Increase or decrease game speed, percentage of normal.
- -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>
<y>|<xy>
- Start a game immediately, warping to ExMy (Doom 1) or MAPxy (Doom 2).
- -1
- Don't scale up the screen. Implies -window.
- -2
- Double up the screen to 2x its normal size. Implies -window.
- -3
- Triple up the screen to 3x its normal size. Implies -window.
- -fullscreen
- Run in fullscreen mode.
- -hires
- Enables 640x400 resolution for internal video buffer.
- -noblit
- Disable blitting the screen.
- -nodraw
- Disable rendering the screen entirely.
- -nograbmouse
- Don't grab the mouse when running in windowed mode.
- -nohires
- Enables original 320x200 resolution for internal video buffer.
- -window
- Run in a window.
- -altdeath
- Start a deathmatch 2.0 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.
- -deathmatch
- Start a deathmatch game.
- -dm3
- Start a deathmatch 3.0 game. Weapons stay in place and all items respawn
after 30 seconds.
- -dup <n>
- Reduce the resolution of the game by a factor of n, reducing the amount of
network bandwidth needed.
- Send n extra tics in every packet as insurance against dropped
packets.
- -frags
<n>
- The -frags option allows you to deathmatch until one player achieves
<n> frags, at which time the level ends and scores are displayed. If
<n> is not specified the match is to 10 frags.
- -left
- Run as the left screen in three screen mode.
- -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.
- -right
- Run as the right screen in three screen mode.
- -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.
- -fastdemo
<demo>
- Plays the given demo as fast as possible.
- -levelstat
- Write level statistics upon exit to levelstat.txt
- -longtics
- Record a high resolution "Doom 1.91" demo.
- -maxdemo
<size>
- Sets the initial size of the demo recording buffer (KiB). This is no
longer a hard limit, and the buffer will expand if the given limit is
exceeded.
- -playdemo
<demo>
- Play back the demo named demo.lmp.
- -record
<demo>
- Record a demo named demo.lmp.
- -recordfrom
<s> <demo>
- Record a demo, loading from the given save slot. Equivalent to -loadgame
<s> -record <demo>.
- -recordfromto
<demo1> <demo2>
- Allows continuing <demo1> after it ends or when the user presses the
join demo key, the result getting saved as <demo2>. Equivalent to
-playdemo <demo1> -record <demo2>.
- -shorttics
- Play with low turning resolution to emulate demo recording.
- -skipsec
<min:sec>
- Skip min:sec time during viewing of the demo. "-warp <x>
-skipsec <min:sec>" will skip min:sec time on level x.
- -strict
- Sets compatibility and cosmetic settings according to DSDA rules.
- -timedemo
<demo>
- Play back the demo named demo.lmp, determining the framerate of the
screen.
- -complevel
<version>
- Emulate a specific version of Doom/Boom/MBF. Valid values are
"vanilla", "boom", "mbf",
"mbf21".
- -gameversion
<version>
- Emulate a specific version of Doom. Valid values are "1.9",
"ultimate", "final", "chex". Implies
-complevel vanilla.
- -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.
- -statdump
<filename>
- Dump statistics information to the specified file on the levels that were
played. The output from this option matches the output from statdump.exe
(see ctrlapi.zip in the /idgames archive).
- -cdrom
- [windows only] Save configuration data and savegames in c:\doomdata,
allowing play from CD.
- -nogui
- Don't pop up a GUI dialog box to show the error message.
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
- 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.
- $HOME/.local/share/woof.cfg
- The main configuration file for Woof. See default.cfg(5).
- $HOME/.local/share/woof/woofsav*.dsg
- Savegame files.
- $HOME/.local/share/woof/tranmap.dat
- Cached translucency table.
- /usr/share/woof/autoload,
$HOME/.local/share/woof/autoload/
- WAD files and DEH patches in the subdirectories of these paths are added
automatically when a WAD file of the corresponding name is loaded.
Woof! is written and maintained by Fabian Greffrath. It is based
on the MBF and WinMBF source codes, released by Lee Killough and Team
Eternity, respectively, and on the LinuxDoom source code, released by Id
Software.
Copyright © id Software Inc; Copyright © 1999 id
Software, Chi Hoang, Lee Killough, Jim Flynn, Rand Phares, Ty Halderman;
Copyright © 2004 James Haley; Copyright © 2005-2016 Simon
Howard; Copyright © 2020-2022 Fabian Greffrath; Copyright ©
2020-2022 Roman Fomin.
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.