PRBOOM-PLUS(6)

๐Ÿ“ฆ version 2.6.66, in fedora 43, fedora 44, opensuse-leap 16.0, ubuntu jammy

๐Ÿ’– NAME ๐Ÿ’–

prboom-plus โ€” bestie, it's PrBoom+, a version of Doom for Unix, Linux and Windows systems. No cap. ๐ŸŽ€

โœจ SYNOPSIS โœจ

prboom-plus [options] [values|files]

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

Okay so 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. Literally iconic.

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. It's giving main character energy fr fr. ๐Ÿ’…

๐ŸŽฎ GAME OPTIONS ๐ŸŽฎ

  • -complevel lvl โ€” okay so this sets the compatibility mode that PrBoom+ runs in. If you need to change this, see README.compat. Don't skip that bestie.
  • -loadgame { 0,1,2,3,4,5,6,7 } โ€” tells PrBoom+ to load the specified saved game immediately. Slay.
  • -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). Periodt.
  • -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!). Choose your vibe.
  • -respawn โ€” tells PrBoom+ that monsters that die should respawn (come back to life) after a while. Not for the inexperienced. ๐Ÿ’€
  • -fast โ€” tells PrBoom+ to make all the monsters move and react faster. Not for the inexperienced. Highkey terrifying.
  • -nomonsters โ€” tells PrBoom+ to include no monsters in the game. Chill mode activated.
  • -nocheats โ€” disable applying cheats from dehacked files. No cheating bestie.

๐Ÿ“ฆ 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. It's giving "where's the beef" but for wads.
  • -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. Obsessed.
  • -deh deh_file โ€” tells PrBoom+ to load the dehacked patch deh_file. Cute.

๐ŸŽฌ 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. Main character moment.
  • -playdemo demofile โ€” play the recorded demo demofile.lmp. Simple as.
  • -timedemo demofile โ€” play the recorded demo demofile.lmp, reporting information about the length of the demo (in gametics) afterwards. Numbers girlies rise.
  • -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". Cinema.
  • -fastdemo demofile โ€” play the recorded demo demofile.lmp as fast as possible. Useful for benchmarking PrBoom+, as compared to other versions of Doom. Zoom zoom.
  • -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). Typo preserved bestie, don't come for me.
  • -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. Sneaky.
  • -avidemo fileprefix โ€” grabbing of the screenshots to frmXXXX.tga. Screenshot queen.
  • -skipsec x โ€” skip X secs during viewing of the demo. Bye.
  • -warp x -skipsec y โ€” will skip y seconds on level x. Combo move.
  • -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. Choose your own adventure.
  • -levelstat โ€” outputs a text-file called levelstat.txt containing level-by-level information on times, kills, items and secrets. Stats slay.
  • -spechit xxx โ€” provides a spechits magic number, overriding the program's default value. Magic.
  • -nomonsters โ€” for playback of -nomonsters demos recorded with Doom.exe 1.2. Nostalgic.
  • -respawn โ€” for playback of -respawn demos recorded with Doom.exe 1.2. Again, iconic.
  • -auto โ€” enables the autoloading of wads according to the lmp file-name. See below for information. Auto-pilot.

๐Ÿง“ 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. Time travel fr.
  • -force_monster_avoid_hazards โ€” for viewing old desynching doom-compatible PrBoom demos recorded with "monster_avoid_hazards 1" in config. Safety first.
  • -force_remove_slime_trails โ€” for viewing old desynching doom-compatible demos recorded with old versions of PrBoom (< 2.4.6) or PrBoom+ (< 2.4.6.1) that are affected by the "remove slime trails" incompatibility. Slime who? Gone.
  • -reject_pad_with_ff โ€” 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. Ones not zeroes, period.
  • -force_truncated_sector_specials โ€” 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. Buggy but make it fashion.
  • -force_no_dropoff โ€” 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. No dropoff, no problem.
  • -force_prboom_friction โ€” for emulation of old buggy behaviour whereby Boom's friction and bobbing code were not faithfully replicated. Friction and bobbing, not replicated. Rude.
  • -force_force_boom_brainawake โ€” for emulation of Boom's behaviour with respect to the Monster Spawner, which differed slightly from that of "vanilla" Doom. Brain awake bestie.
  • -force_lxdoom_demo_compatibility โ€” for emulation of all bugs in demo compatibility mode in lxdoom. All bugs, all the time.
  • -boom_deh_parser โ€” forces the Boom DEH parser. Force it.
  • -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. Memory lane, but make it compatible.

๐ŸŒ 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). Squad goals.

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

  • -port portnum โ€” specifies the local port to use to communicate with the server in a netgame. Local bestie.
  • -deathmatch โ€” no longer used. Tells PrBoom+ to begin a deathmatch game, but this is overridden by the server's settings. Only works for single play (!). Note the exclamation mark, bestie. (!)
  • -altdeath โ€” similar to -deathmatch, but implies a different set of rules for the deathmatch game. No longer used (specified by the server). Alternative rules, same vibe.
  • -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. Timer? Overridden.
  • -avg โ€” equivalent to -timer 20. Math.
  • -solo-net โ€” 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. Solo but networked, iconic.

โœจ VIDEO OPTIONS โœจ

  • -width w โ€” sets how wide the PrBoom+ window is, in pixels. The default is 320, and bestie, listen: w has to be greater than 320. No shrinking allowed. ๐Ÿ’…
  • -height h โ€” same energy but vertical: how tall the window is, in pixels. Default is 200, and h must be greater than 200.
  • -viewangle n โ€” spins your player's view by an offset, measured in 45 degree increments, so n lives in the range 0..7, away from the direction the player is actually facing. Sneaky lil camera tilt, iykyk. ๐Ÿ‘€
  • -vidmode gl โ€” use the OpenGL video mode. The default is the software video mode, so if you want the shiny GPU glow-up, this is the one.
  • -fullscreen, -nofullscreen โ€” these toggle fullscreen mode. Default? Fullscreen. ๐Ÿ–ฅ๏ธ
  • -window, -nowindow โ€” this pair also toggles fullscreen mode, but plot twist: they only take effect for this one PrBoom+ session and do not touch your configuration file. Temporary vibes only. โœจ
  • -noaccel โ€” for PrBoom+, this stops it from using the MITShm server extension to pass screen data over to the X server. You might need this if the X server isn't local. And for lsdoom specifically, it tells lsdoom not to use the accelerated graphics functions that SVGALib provides, even when your video card supports them (normally that's autodetected). ๐Ÿ˜Œ
  • -1, -2, -3 โ€” the scale factor for enlarging the window. The default, -1, shows the normal 320x200 pixel Doom screen (or whatever size you set with -width and -height, or in the config file for PrBoom+). If that window is too tiny for your eyes, -2 or -3 will blow it up. ๐Ÿ”
  • -nodraw โ€” suppresses all graphical display. Literally only for debugging & demo testing. Do not expect to see anything, bestie. ๐Ÿซฅ
  • -aspect NxM โ€” for using a different aspect ratio. Examples be like: -aspect 5x4, -aspect 8x5, or -aspect 2x1. ๐Ÿ“
  • -videodriver name โ€” sets up the videodriver name that SDL will use (go check the SDL documentation for the tea โ˜•). And -videodriver default can be used to force SDL's default behaviour.
  • -resetgamma โ€” restores the original gamma after a crash. Your screen was doing too much, we're putting it back. ๐ŸŒˆ
  • -geom NxM โ€” the basic syntax, for temporarily using a particular resolution without saving it into the cfg. Example: -geom 1280x1024.
  • -geom WidthxHeight[w|f] โ€” the advanced syntax, where w means windowed and f means fullscreen. Examples: -geom 320x200f, -geom 640x480w. โœจ

๐Ÿ’– I/O OPTIONS ๐Ÿ’–

  • -nosound โ€” disables every sound effect and the in-game music. This stops the sound server from loading at all, which lets the game run a little faster. Silence really is golden here. ๐Ÿคซ
  • -nosfx โ€” disables sound effects during the game. Heads up though: this does not stop the sound server from loading, so if you want max performance, use -nosound instead. Don't be fooled by the near-identical name, bestie. ๐Ÿ˜ญ
  • -nomusic โ€” disables playing music in the game. Just the music. The SFX get to stay. ๐ŸŽต
  • -nojoy โ€” disables joystick support. ๐Ÿ•น๏ธ
  • -nomouse โ€” stops the mouse from being grabbed by the PrBoom+ window. Your cursor stays free. ๐Ÿญ
  • -shorttics โ€” forces the same mouse behaviour as when recording (i.e. the converse of -longtics). For all my demo-heads out there. ๐Ÿ‘‘

๐ŸŽ€ CONFIGURATION ๐ŸŽ€

  • -config myconf โ€” loads an alternative configuration file, named myconf. The default is prboom-plus.cfg(5), grabbed from the same directory that PrBoom+ was run from. ๐Ÿ‘‘
  • -save savedir โ€” makes PrBoom+ save your games in the directory you name as savedir, instead of the usual ~/.prboom-plus/. ๐ŸŽฎ
  • -shotdir shotdir โ€” makes PrBoom+ save screenshots into shotdir, instead of the current directory. ๐Ÿ“ธ

๐Ÿ”ฅ DEBUGGING/PROFILING OPTIONS ๐Ÿ”ฅ

  • -devparm โ€” development mode. Lowkey redundant these days, but it does force non-lazy generation of texture lookups, which can actually be useful for level authors debugging PWADs. So like, niche but valid. ๐Ÿ’…
  • -debugfile debug_file โ€” causes some debugging information (mainly network info) to be written to the named file as PrBoom+ runs. ๐Ÿ“
  • -nodrawers โ€” causes no rendering to be done at all. The only conceivable uses of this are (a) a multiplayer server, or (b) testing the speed of the program's other routines, when you combine it with -timedemo. Very specific, very intentional. ๐Ÿง
  • -noblit โ€” causes no copying to the screen from the rendering buffer to be performed. Same deal as above: the only conceivable uses are (a) a multiplayer server, or (b) testing 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 named file. ๐Ÿ›
  • -blockmap โ€” use this if PrBoom-Plus reports a buggy blockmap. It's the lil fix-it button for that exact complaint. ๐Ÿ› ๏ธ

๐ŸŒธ SEE ALSO ๐ŸŒธ


๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

See the file AUTHORS included with the PrBoom+ distribution. The whole squad is credited in there. ๐Ÿซถ


And that's a wrap, bestie!! ๐Ÿ’– This little love letter to Unix was dated <strong>2011-06-27</strong> and it's page <strong>PRBOOM-PLUS(6)</strong> โ€” go frag something iconic. Slay, and remember: the vibe changes, the facts never do. ๐Ÿ’…โœจ

๐Ÿ“ฆ where this page comes from