This is a list of all command line parameters that are supported by the Eternity Engine, along with detail about their functions. Most of the options available through the command line are also settable with the Eternity Frontend.
- See also: Command line arguments on the Doom Wiki
- Back to Eternity Engine
Loose files[edit]
Eternity allows listing file paths at the command line, at the beginning, before any named command-line parameters starting with "-", as listed in this page. Allowed extensions for the files are the following:
- ".wad", ".pke", ".pk3" and ".zip": will be loaded like with "-file"
- ".edf": only the first one (if more), will be loaded as an EDF root
- ".deh", ".bex": will be loaded as Dehacked patches
- ".gfs": will be loaded as GFS autoloads
- ".lmp": only the first one (if more), will cause a demo to be played back
This behaviour allows loading Eternity like most apps, such as by drag-dropping the file into the Eternity icon under Windows.
Response files[edit]
If any arguments start with "@", the text next to the symbol is a path to a response file, which is a text file containing other command-line parameters to include.
Console[edit]
Name
|
Description
|
-exec filename |
Executes the indicated file as a console script at game startup. Expected file extension is ".csc".
|
-nocscload |
Disables autoloaded console scripts for this play session only.
|
Debugging[edit]
Name
|
Description
|
-devparm |
Enables FPS ticker and screenshots with F1 key (id development mode)
|
DeHackEd/BEX[edit]
Name
|
Description
|
-bex filename ... |
Alias for -deh.
|
-bexout filename |
Alias for -dehout.
|
-deh filename ... |
Loads one or more DeHackEd/BEX patch files.
|
-dehout filename |
Enables verbose DeHackEd parser logging.
|
Name
|
Description
|
-edf filename |
Specifies the root EDF file.
|
-edfenables |
Causes all gamemode's definitions to be enabled. For compatibility with older projects.
|
-edfout |
Enables verbose EDF logging to edfout##.txt
|
-edf-show-warnings |
Displays verbose EDF warning information on the system console at startup.
|
Gameplay[edit]
Name
|
Description
|
-dog |
Enables a single MBF helper dog.
|
-dogs n |
Enables from one to three MBF helper dogs, depending on the number specified.
|
-episode n |
Start a new game on episode n. For DOOM and Heretic only.
|
-fast |
Enables Nightmare-mode monster speed in any difficulty.
|
-nomonsters |
Removes all monsters except Lost Souls from all levels.
|
-respawn |
Enables Nightmare-mode monster respawning in any difficulty.
|
-skill n |
Sets skill to level 1 through 5.
|
-solo-net |
Starts the game as single-player cooperative (SVN revision 1071+)
|
-spechit n |
Sets spechit emulation magic number to n. Spechit emulation must be enabled separately.
|
-turbo n |
Sets player turbo factor to n.
|
-warp level |
Changes current level. In Doom 1 and Heretic, level is made of two numbers, the episode and the level number (e.g. -warp 2 5 ). In Doom 2, it's made of one number (e.g. -warp 16 ). You can also use the actual lump name if it's nonstandard (neither ExMy nor MAPxy), e.g. -warp start .
|
-wart |
Alias for -warp.
|
Miscellaneous[edit]
Name
|
Description
|
-affinity num |
Enables processor affinity mask to stop SDL_mixer crashes on multicore processors. Expert setting only.
|
-blockmap |
Enables MBF blockmap builder for all levels.
|
-grabmouse |
Enables mouse input grabbing.
|
-nograbmouse |
Disables mouse input grabbing.
|
-numparticles n |
Sets the static particle limit to n.
|
-speed n |
Sets game speed to n% of normal speed. Range is 10 to 1000.
|
-statcopy |
Does nothing. Enabled external statistics driver in Vanilla Doom.
|
Multiplayer[edit]
Name
|
Description
|
-altdeath |
Enables Deathmatch 2.0 (items respawn, weapons stay).
|
-avg |
Austin Virtual Gaming. Deathmatch levels end after 20 minutes.
|
-deathmatch |
Enables original Deathmatch mode.
|
-dmflags n |
Sets the dmflags variable to value n.
|
-dup
|
-extratic
|
-frags n |
Sets fraglimit for Deathmatch. Levels end when the fraglimit is reached.
|
-net |
Specifies the peer-to-peer player node to use and the IP addresses of the other players.
|
-port |
Specify the alternative port.
|
-timer n |
Sets timelimit for Deathmatch to n minutes.
|
-trideath |
Enables SMMU Deathmatch 3.0 (barrels respawn, players drop backpacks [currently broken]).
|
Multiplayer Example[edit]
Eternity supports up to 4 player multiplayer. For example:
- Player 1's IP Address: 192.168.1.12
- Player 2's IP Address: 192.168.1.13
- Player 3's IP Address: 192.168.1.28
- Player 4's IP Address: 192.168.1.8
Player 1's command-line:
eternity.exe -iwad C:\Doom\WADs\doom2.wad -net 1 192.168.1.13 192.168.1.28 192.168.1.8
Player 2's command-line:
eternity.exe -iwad C:\Doom\WADs\doom2.wad -net 2 192.168.1.12 192.168.1.28 192.168.1.8
Player 3's command-line:
eternity.exe -iwad C:\Doom\WADs\doom2.wad -net 3 192.168.1.12 192.168.1.13 192.168.1.8
Player 4's command-line:
eternity.exe -iwad C:\Doom\WADs\doom2.wad -net 4 192.168.1.12 192.168.1.13 192.168.1.28
Once all players have connected, the game will start.
Savegames[edit]
Name
|
Description
|
-loadgame n |
Loads the savegame in slot n (0-7).
|
-save path |
Sets the directory from/to which savegames are loaded and saved.
|
Sound engine[edit]
Name
|
Description
|
-nomusic |
Disables the music engine.
|
-nosfx |
Disables the digital sound engine.
|
-nosound |
Disables sound and music.
|
-randmusic |
Each level will play a random music when started.
|
Name
|
Description
|
-8in32 |
Runs Eternity in a 32-bit video mode and crossblits the 8-bit framebuffer to the screen. Circumvents some SDL palette issues, but is slower.
|
-directx |
Windows only. Selects the DirectX 5.0 SDL video driver.
|
-frame |
Creates a main window with a frame (this is on by default for windowed modes and off for fullscreen).
|
-fullscreen |
Toggles fullscreen mode.
|
-gdi |
Windows only. Selects the Win32 GDI SDL video driver.
|
-geom geomstring |
Sets the video mode using a Geom string.
|
-hardware |
Use hardware surface.
|
-noblit |
Disables blitting for benchmark testing.
|
-nodraw |
Disables all screen drawing.
|
-noframe |
Opposite of -frame, creates a frameless window, if possible on the current platform.
|
-nofullscreen |
Alias for -window.
|
-novsync |
Disables waiting for vsync.
|
-software |
Use software surface.
|
-vheight n |
Sets screen height to n; current limits are 200 to 1600.
|
-vsync |
Enables waiting for vsync.
|
-vwidth n |
Sets screen width to n; current limits are 320 to 2560.
|
-window |
Toggles windowed mode.
|
Wads and other files[edit]
Name
|
Description
|
-base path |
Sets the base path to the indicated path. The path must be a directory, not a file. You can also use the ETERNITYBASE environment variable to store the desired base path.
|
-config filename |
Game will use the given configuration file.
|
-disk filename |
Loads a disk image file.
|
-file filename ... |
Loads one or more WAD, ZIP, lump files or even extracted ZIP content. Lump file names must be 8 characters or less with .lmp extension added.
|
-game name |
Causes Eternity to use the named game folder under its current base path.
|
-gfs filename |
Loads the given GFS script. GFS scripts may load WADs, DEH/BEX files, EDF, and console scripts.
|
-iwad filename |
Specifies the given WAD file as the IWAD.
|
-noload |
Disables autoloaded WADs and DEH/BEX patches during this play session only.
|
-nowadhacks |
Disables automatic application of wad directory hacks to known broken WAD files, such as Gothic DM 2.
|
-showhashes |
Enables display of WAD header/directory SHA-1 hashes on the system console.
|
-user path |
Sets the user path to the indicated path. The path must be a directory, not a file. You can also use the ETERNITYUSER environment variable to store the desired user path.
|
Name
|
Description
|
-demolog path |
Enables demo logging. See the EternityDemoTest project for its target use.
|
-donut height pic |
Enables donut overflow emulation using the specified parameters.
|
-fastdemo filename |
Plays the given demo as fast as possible.
|
-longtics |
Enables v1.91 longtics demo recording when used with -vanilla.
|
-maxdemo n |
Sets the initial size of the demo recording buffer. This is no longer a hard limit, and the buffer will expand if the given limit is exceeded.
|
-play |
Alias for -playdemo.
|
-playdemo filename |
Plays the given demo.
|
-record filename |
Records this play session as a demo named "filename".
|
-recorddemo |
Alias for -record.
|
-recordfrom
|
-recordfromto demo1 demo2 |
Allows continuing demo1 after it ends or when the user presses the join (joindemo bound) key, the result getting saved as demo2.
|
-spechit number |
Enables spechits overflow emulation with the given magic number.
|
-reject_pad_with_ff |
in case of REJECT overflow, it pads excess bytes with 0xFF instead of 0x00. Use this parameter in case a Doom, Boom or MBF demo desyncs and you get the "REJECT lump too short to pad" warning message in the console.
|
-timedemo filename |
Plays the given demo fast (not as fast as -fastdemo, but ultimately depends on the computer and environment) and reports FPS information at exit.
|
-vanilla |
Enables recording of v1.9-compatible demo files.
|