Your company here — click to reach over 10,000 unique daily visitors

prboom-plus - Man Page

PrBoom+, a version of Doom for Unix, Linux and Windows systems


prboom-plus [options] [values|files]


PrBoom is a version of the first-person shooter game Doom, originally released by iD software in 1993. It is based on Boom, a version of Doom adapted by TeamTNT  (http://www.teamtnt.com/) for Dos. PrBoom uses the SDL library, meaning it can run on a variety of different systems,  including Windows and Unix/X11.

PrBoom+ is a Doom source port developed from the original PrBoom project. It adds uncapped framerate, variable gamespeed, re-record, walkcam, chasecam, full mouselook, FOV and other features without loss of compatibility with original Doom.

Game Options

-complevel lvl

This sets the compatibility mode that PrBoom+ runs in. If you need to change this, see README.compat.

-loadgame { 0,1,2,3,4,5,6,7 }

Instructs PrBoom+ to load the specified saved game immediately.

-warp { map | epis level }

Tells PrBoom+ to begin a new game immediately. For Doom 1 or The Ultimate Doom, you must specify the episode and level number to begin at (epis is 1 for Knee-Deep in the Dead, 2 for Shores of Hell, 3 for Inferno, 4 for Thy flesh Consumed; level is between 1 and 9). For Doom 2 or Final Doom, you must specify the map to begin at, which is between 1 and 32 (30 for German Doom 2).

-skill n

Tells PrBoom+ to begin the game at skill level n (1 for I'm Too Young To Die; 2 for Hey, Not Too Rough; 3 for Hurt Me Plenty; 4 for Ultra-Violent; 5 for Nightmare!).


Tells PrBoom+ that monsters that die should respawn (come back to life) after a while. Not for the inexperienced.


Tells PrBoom+ to make all the monsters move and react faster. Not for the inexperienced.


Tells PrBoom+ to include no monsters in the game.


Disable applying cheats from dehacked files.

Wad Options

-iwad iwadname

Specifies the location of the IWAD file, typically doom.wad or doom2.wad (or doom2f.wad). This tells PrBoom+ where the main .wad file that came with the version of Doom that you own is.

-file wad1 ...

Specifies a list of PWAD files to load in addition to the IWAD file. PWAD files modify the existing Doom game, by adding levels or new sounds or graphics. PWAD files are widely available for download; try http://www.doomworld.com/idgames/ for starters.

-deh deh_file

Tells PrBoom+ to load the dehacked patch deh_file.

Demo (Lmp) Options

-record demofile

Instructs PrBoom+ to begin recording a demo, to be stored in demofile.lmp. You should specify game options to specify which level and skill to record at.

-playdemo demofile

Play the recorded demo demofile.lmp.

-timedemo demofile

Play the recorded demo demofile.lmp, reporting information about the length of the demo (in gametics) afterwards.

-viddump filename

Record a movie file, it requires external command-line encoding tools, oggenc2 (ogg vorbis audio encoder), x264 (h264 video encoder) and mkvmerge (mkv muxer). It is meant to be used with -timedemo, e.g. "prboom-plus -timedemo anydemo.lmp -viddump filename.mkv".

-fastdemo demofile

Play the recorded demo demofile.lmp as fast as possible. Useful for benchmarking PrBoom+, as compared to other versions of Doom.

-ffmap num

Fast forward the demo (play at max speed) until reaching map num (note that this takes just a number, not a map name, so so -ffmap 7 to go fast until MAP07 or ExM7).

-warp x

Warps directly to the start of map x of a recording without rendering any of the play up to that point. Pressing Use (<Space> by default) during skipping shows the current frame.

-avidemo fileprefix

Grabbing of the screenshots to frmXXXX.tga.

-skipsec x

Skip X secs during viewing of the demo.

-warp x -skipsec y

Will skip y seconds on level x.

-recordfromto n.lmp m

Play back the demo n.lmp, allowing the user to take over the controls at a point of his choosing, and save the resulting demo as m.lmp.


Outputs a text-file called levelstat.txt containing level-by-level information on times, kills, items and secrets.

-spechit xxx

Provides a spechits magic number, overriding the program's default value.


For playback of -nomonsters demos recorded with Doom.exe 1.2.


For playback of -respawn demos recorded with Doom.exe 1.2.


Enables the autoloading of wads according to the lmp file-name. See below for information.

Demos Old Versions Compatibility Parameters

-emulate prboom_ver

For viewing old desynching PrBoom demos with all recording bugs from a particular version emulated. For example, "-emulate 2.2.6" would be used to play back a desynching demo recorded with PrBoom 2.2.6. This would be instead of using the various command-line options for each recording bug (see below) from that version.


For viewing old desynching doom-compatible PrBoom demos recorded with "monster_avoid_hazards 1" in config.


For viewing old desynching doom-compatible demos recorded with old versions of PrBoom (< 2.4.6) or PrBoom+ (< that are affected by the "remove slime trails" incompatibility.


For viewing old desynching doom-compatible demos recorded with old versions of PrBoom (including 2.2.5 and 2.2.6) that padded a short REJECT with ones instead of zeroes.


For emulation of old buggy behaviour whereby Boom's generalized effects could work instead of failing in a compatibility mode in the case of a bad action number.


For emulation of MBF_compatibility behaviour in PrBoom 2.2.2 - 2.4.7, whereby things did not drop off ledges when they would have done in MBF.


For emulation of old buggy behaviour whereby Boom's friction and bobbing code were not faithfully replicated.


For emulation of Boom's behaviour with respect to the Monster Spawner, which differed slightly from that of "vanilla" Doom.


For emulation of all bugs in demo compatibility mode in lxdoom.


Forces the Boom DEH parser.

-setmem system

The desynch in fez1-924.lmp @ fez1.wad is gone, but you still need to add "-setmem dosbox" or "-setmem dos71" command line parameter, because the default "dos622" memory layout causes a desynch.

Multiplayer Options

-net hostname[:port]

Specifies that a TCP/IP network game is to be started. hostname is the name of the machine on which the network game server is running (prboom-plus-game-server). For more information about this, see prboom-plus-game-server(6) and the README that came with PrBoom+. port is the port number on the remote machine to which to connect; if not specified, the default of 5030 (which is the default for prboom-plus-game-server(6) ) is assumed.  The server will configure your PrBoom+ settings, so that all the players have the same game settings (skill, map etc).

Also, the server may specify additional PWAD files to play with; if you do not have the required .WAD file, PrBoom+ will ask the server for a download path, and attempt to use wget(1) and if necessary unzip(1) to download and extract the required WAD.

-port portnum

Specifies the local port to use to communicate with the server in a netgame.


No longer used. Tells PrBoom+ to begin a deathmatch game, but this is overridden by the server's settings. Only works for single play (!).


Similar to -deathmatch, but implies a different set of rules for the deathmatch game. No longer used (specified by the server).

-timer mins

No longer used. Specifies that levels will end after mins minutes of play if the level is still being played, but is overridden by the server in a netgame. Not really useful for single play.


Equivalent to -timer 20.


Used to run a single-player network game, without a network game server. This enables network game items & options for an otherwise single-player game; some demos are recorded like this.

Video Options

-width w

Specifies the width of the PrBoom+ window, in pixels. Default is 320, the width must be greater than 320.

-height h

Specifies the height of the PrBoom+ window, in pixels. Default is 200, the height must be greater than 200.

-viewangle n

Causes the player view to be rotated by a given offset (specified in 45degree increments, in the range 0..7) from the way the player is facing.

-vidmode gl

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


These options toggle fullscreen mode. The default is fullscreen.


This pair of options also toggle fullscreen mode. They only take effect for this PrBoom+ session and do not alter your configuration file.


For PrBoom+, this prevents it using the MITShm server extension for passing the screen data to the X server. This option may be required if the X server is not local. For lsdoom, this tells lsdoom not to use the accelerated graphics functions that SVGALib provides even when they are supported for your video card (normally this is autodetected).


Specifies the scale factor by which to enlarge the window. The default, -1, displays the normal 320x200 pixel Doom screen (or whatever size is specified by the -width and -height parameters or in the config file for PrBoom+).  If this window is too small, try using -2 or -3 to enlarge the window.


Suppress all graphical display. Only for debugging & demo testing.

-aspect NxM

For using a different aspect ratio; e.g. -aspect 5x4, -aspect 8x5 or -aspect 2x1.

-videodriver name

For setting up the videodriver name that SDL will use (See SDL documentation). "-videodriver default" can be used to force SDL behaviour by default.


Restores the original gamma after a crash.

-geom NxM

Basic syntax, for temporarily using a particular resolution without saving this in the cfg; e.g. -geom 1280x1024.

-geom WidthxHeight[w|f]

Advanced syntax, w - windowed, f - fullscreen. Examples: -geom 320x200f, -geom 640x480w.

I/O Options


Disables all sound effects and in-game music. This prevents the sound server  loading, which lets the game run a little faster.


Disables sound effects during the game. This does not stop the sound server  loading, however, so for best performance use -nosound.


Disables playing of music in the game.


Disables joystick support.


Prevents the mouse being grabbed by the PrBoom+ window.


Forces the same mouse behaviour as when recording (i.e. the converse of "-longtics").


-config myconf

Loads an alternative configuration file, named myconf. The default is prboom-plus.cfg(5), taken from the same directory as PrBoom+ was run from.

-save savedir

Causes PrBoom+ to save games in the directory specified by savedir instead of ~/.prboom-plus/.

-shotdir shotdir

Causes PrBoom+ to save screenshots in shotdir instead of the current directory.

Debugging/Profiling Options


Development mode. Mostly redundant these days, but it does force non-lazy generation of texture lookups which can be useful for level authors debugging PWADs.

-debugfile debug_file

Causes some debugging information, mainly network info, to be written to the named file as PrBoom+ runs.


Causes no rendering to be done. The only conceivable use of this is (a) a multiplayer server (b) to test the speed of the other routines in the program, when combined with -timedemo.


Causes no copying to the screen from the rendering buffer to be performed. The only conceivable use of this is (a) a multiplayer server (b) to test the speed of the other routines in the program, when combined with -timedemo.

-bexout bexdbg

Causes diagnostics related to bex and dehacked file processing to be written  to the names file.


Use if PrBoom-Plus reports a buggy blockmap.

See Also

prboom-plus.cfg(5), prboom-plus-game-server(6)

For more information, see the README that came with PrBoom+, the Boom documentation, and your original Doom documentation.

Doom is a registered trademark of id software (http://www.idsoftware.com/).


See the file AUTHORS included with the PrBoom+ distribution.

Referenced By

prboom-plus.cfg(5), prboom-plus-game-server(6).