Source port parameters

From DoomWiki.org

For a list of command line parameters in original Doom games and for general information on Doom parameters, see the main parameters article.

Source ports support various extra command line parameters not found in vanilla Doom. Where not otherwise stated, ports derived from ones listed here usually support their parent ports' command-line parameters, and are therefore not exhaustively listed below.

-1[edit]

PrBoom
Prevents window scaling (if it has been activated via an in-game menu). The graphics resolution will be set by the -height and -width options.

-<width>x<height>[w][edit]

Doom95
Composite parameter specifying display size and, optionally, windowed mode. The choices are limited to Doom95's supported screen resolutions (320x200, 320x240, 640x400, and 640x480); windowed mode additionally requires 8-bit color.

-8in32[edit]

Chocolate Doom, Eternity Engine
Transform the 8-bit screen buffers created by the renderer into 32-bit before display, solving problems that happen otherwise with SDL and modern hardware.

-basewad[edit]

Doom95
Specifies an IWAD file to use.

-beta[edit]

MBF
Emulates the Doom press release beta.

-bexout <name>[edit]

PrBoom
Causes debugging information related to .deh and .bex patches to be written to the file <name>.

-blockmap[edit]

PrBoom, MBF, Crispy Doom, Doom Retro
Forces a (re-)building of the BLOCKMAP lumps for loaded maps.

-cmdfrag[edit]

Doom95
Sets a frag limit for deathmatch games.

-complevel <compatibility level>[edit]

PrBoom
Toggles various bug fixes and enhanced features for maximum compatibility with other (related) source ports. A compatibility level of -1 means that all enhanced features and bug fixes are available, while 0 through 4 correspond to vanilla Doom, 5 corresponds to DOSDoom, 6 corresponds to TASDoom, 7 through 9 correspond to Boom, 10 corresponds to LxDoom, 11 corresponds to MBF, and 12 through 17 emulate earlier versions of PrBoom. 21 is for the MBF21 standard, devised in 2021 for any source port to implement.
The COMPLVL lump allows forcing complevels through a text file in a WAD.

-deh <filename>[edit]

Boom, Chocolate Doom, Doom Legacy, EDGE, ZDoom, Doom Retro
Loads a DeHackEd file.

-dogs <num>[edit]

MBF
Overrides the current number of helper dogs, setting it to num.

-emulate[edit]

Doom95
Disables DirectDraw acceleration and vertical synchronization.

-fastdemo[edit]

Boom, PrBoom
Similar to -timedemo, but faster.

-ffmap <l>[edit]

PrBoom
When used with -playdemo, causes the demo to play at -fastdemo speed until it reaches level l of any episode, then slow down to normal speed. Ignored in the presence of -timedemo.

-fliplevels[edit]

Crispy Doom
Loads mirrored versions of the maps. WARNING: In Crispy Doom this is the default on April 1st!

-frags <num>[edit]

Boom
Ends a deathmatch game when one player has achieved a frag count of num.

-game <name>[edit]

Doomsday, Eternity Engine
Tells Doomsday to launch straight into a game, rather than entering the Ring Zero GUI. The names Doomsday uses for each game can be viewed in the Ring Zero GUI.
In the Eternity Engine, this parameter controls which game subfolder to use under the /base and /user paths. Depending on the end user's setup of their file system, this may launch the requested game.

-geom <width>x<height>[w][edit]

Eternity Engine, PrBoom+
Allows specification of any supported video mode or window size, overriding any settings stored in the configuration file. Eternity also supports additional optional letter flags at the end for controlling vsync, window border, and other low-level video options.

-guid[edit]

Doom95

-height <num>[edit]

PrBoom
Sets vertical screen resolution to num pixels (the default is 200). If -2 or -3 is also used, it will multiply this value accordingly.

-host <num>[edit]

ZDoom
Starts a multiplayer game for <num> players. The game will wait until the other <num>-1 players join (see -join).

-iwad <filename>[edit]

Boom, Chocolate Doom, Doom Legacy, Doomsday, DOSDoom, ZDoom, Doom Retro
In most ports, specifies an IWAD file to use.
In Doomsday, it instead specifies the directory in which IWADs are located. If Doomsday only finds one Iwad at the location, it will automatically launch straight into the game it is for, bypassing the Ring Zero GUI.
DOSDoom supports using this parameter to specify a directory or a file.

-join <ip>[edit]

ZDoom
Joins a multiplayer game being established using -host.

-mergedump <filename>[edit]

Crispy Doom
Merges the PWAD file(s) given on the command line with the IWAD file and writes the resulting data into the file given as argument. Might be considered as a replacement for the DEUSF.EXE tool.

-net <hostname> <port>[edit]

PrBoom
Starts a network game using the UDP/IP protocol, by connecting to the machine hostname via port number port. (The port number may be omitted, in which case port 5030 is used.)

-noaccel[edit]

LxDoom, PrBoom
Disables certain types of graphics acceleration in X (for maximum compatibility during multiplayer games).

-noautoload[edit]

ZDoom
Disables autoloading mechanisms existing in ZDoom (autoload section in the configuration file, and skins folder).

-noclipper[edit]

Doom95

-nodm[edit]

Doom95
Bypasses the GUI launcher (command line arguments will not work with Doom95 otherwise).

-nodrawers[edit]

PrBoom
Identical to -nodraw.

-nojoy[edit]

PrBoom, ZDoom
Disables joystick input.

-noload[edit]

MBF
Starts a game without loading any of the default PWADs or executable patches (defined within an in-game menu).

-nomouse[edit]

PrBoom
Prevents mouse "grabbing". The default behavior is to grab the mouse (see -grabmouse).

-nosfxformat[edit]

Doom95
Disable upsampling of sound effects.

-nowarn[edit]

Doom95
Skip the dialog box ("Warning: this Doom version has been modified...") when loading a PWAD.

-onet[edit]

Doom95

-penti[edit]

Doom95
Sets internal "Pentium" flag, if used the first time the game is ever run.

-pistolstart[edit]

Woof!, Doom Retro, DSDA-Doom
Enables automatic pistol starts on each level.

-players[edit]

Doom95
Specifies the number of players in multiplayer (2, 3, or 4).

-save <directory>[edit]

Boom, PrBoom, Doom Retro, Eternity Engine
Specifies a directory for saved games (the default is the directory which contains the executable).

-savedir <directory>[edit]

ZDoom, Doom Retro
Specifies a directory for saved games (the default is the directory which contains the executable).

-shotdir <directory>[edit]

PrBoom+, ZDoom, Doom Retro
Specifies a directory for screenshots (the default is the directory which contains the executable).

-solo-net[edit]

Chocolate Doom, Eternity Engine, PrBoom, Doom Retro
Allows beginning a game with cooperative gameplay rules while only a single player is active. Players can respawn without restarting a level, and extra weapons, items, and enemies which are marked as "multiplayer-only" will spawn in levels, often providing an increase in difficulty beyond the Ultra Violence skill level.

-sysmem[edit]

Doom95
Forces video surfaces into RAM.

-ticdup[edit]

Doom95
Duplicates tic commands to reduce latency in modem games.

-viddump <filename>[edit]

PrBoom+
Captures a timedemo to a file of the given name, defaulting to a Matroska file with h264 video and Ogg Vorbis audio. Requires external programs to be available in PrBoom+'s own folder. MIDI playback is only recorded if FluidSynth or OPL emulation is used.

-vidmem[edit]

Doom95
Keeps video surfaces in graphics memory.

-vidmode <gl>[edit]

PrBoom
Use the OpenGL video mode. The default is to use the software video mode

-wandstart[edit]

DSDA-Doom
The Heretic equivalent of the -pistolstart parameter.

-weirdo <seconds>[edit]

Doom95
Items respawn after a specified time.

-width <num>[edit]

PrBoom
Sets horizontal screen resolution to num pixels (the default is 320). If -2 or -3 is also used, it will multiply this value accordingly.

External links[edit]