Command line options
EDuke32 Parameters
Usage: eduke32 [files] [options]
Example: eduke32 nukeland.map -usecwd -cfg myconfig.cfg
Files can be of types {grp | zip | pk3 | pk4 | map | con | def | rts}
.
- Specifying a
{grp|zip|pk3|pk4}
file is equivalent to using the-g
parameter. - If a .map file is specified, it is immediately loaded and launched as a usermap (equivalent to
-map
). - If a .con file is specified, it replaces
GAME.CON
(equivalent to-x
). - If a .def file is specified, it is used as the main DEF file (equivalent to
-h
). - If a .rts file is specified, it is used as the main RTS soundbank (equivalent to
-rts
).
Parameter | Description | Notes | |
---|---|---|---|
-? --help
|
Displays a help message listing the available parameters, then exits. | ||
-addon {0,1,2,3}
|
Launch one of the addons for Duke 3D (if present), packaged with the Megaton Edition release. | 0 = none, 1 = Duke it out in D.C., 2 = Duke: Nuclear Winter, 3 = Duke Caribbean: Life's a Beach | |
-cachesize [size]
|
Sets initial cache size, in kilobytes. Usually not needed, as cache size is adjusted dynamically. | See also cachesize (DEF). | |
-cfg [cfg_path]
|
Use an alternate configuration file. | Default is "eduke32.cfg". | |
-clipmap [file.map]
|
Load an additional clipping map to define physical geometry for sprites, voxels and 3d models, for use with clipshape | Default is _clipshape0.map .
| |
-d [file.edm][:arg1,arg2]
|
Plays an eduke32 demo. Can take optional parameters "arg1" and "arg2" which represent "frames per tic" and "number of repeats" respectively, and are used for debug performance profiling. | By default, the game plays a loop starting at edemo001.edm .
| |
-debughelp
|
Displays debug parameters and exits. | ||
-forcegl
|
Disables GL driver blacklist on Windows. | ||
-game_dir [dir]
|
Duke3d_w32 compatibility option. Set the directory from which to load files, which also changes where the cfg is created. | See also '-j' | |
-gamegrp [file.grp]
|
Defines which file to use as main grp. | ||
-grp [path] -g [path]
|
Use an extra group (or .pk3 or .zip) file to load data from. | ||
-h [file.def]
|
Specify the main DEF file. | By default uses 'duke3d.def' if present in the folder. | |
-j [dir]
|
Adds a directory to EDuke32's search list. Does not alter the directory for config files. | ||
-map [file.map]
|
Starts the specified usermap on launch. | ||
-mh [file.def]
|
Include an additional DEF module, appended after the main DEF code. | ||
-mx [file.con]
|
Include an additional CON script module, appended after the GAME.CON code. | ||
-m
|
Disable monsters (m_monsters_off = 1) and sets m_player_skill and player_skill to 0. | ||
-nam -napalm -ww2gi
|
Run in NAM or WWII GI -compatible mode. | ||
-noautoload
|
Disables loading content from the autoload directory. | ||
-nodinput
|
Disable DirectInput (joystick) support. | ||
-noinstancechecking
|
Prevents eduke32 from checking whether another instance is already running. | ||
-nologo -quick
|
Skip all the startup animations and logos. | ||
-nosteam
|
Disables Steam community API integrations (such as achievements) if binary is compiled with parameter EDUKE32_STANDALONE. | Currently only relevant for Ion Fury builds. | |
-ns -nm
|
Disable sound and music respectively. | ||
-r
|
Enables demo recording. | ||
-rotatesprite-no-widescreen
|
Debug parameter. If set, screen tiles (such as weapons) logos and menu tiles will be stretched horizontally. | ||
-s#
|
Set the skill level (0-4). Cannot exceed 4 even when more skill levels are defined. Setting this to 4 is hardcoded to enable respawn_monsters and m_respawn_monsters, regardless of what the skill itself defines. | ||
-setup -nosetup
|
Enables/disables startup window | [only on Windows, SDL, and/or GTK2 environments] | |
-t#
|
Set respawn mode: 1 = Monsters, 2 = Items, 3 = Inventory, x = All | ||
-usecwd
|
Force eduke32 to read game data and configuration files from working directory. | See also user_profiles_disabled. | |
-u#########
|
Define the weapon switch order, as a string of 10 digits. | (Default: 3425689071 )
| |
-v[X] -l[Y]
|
Warp to episode X, level Y if used together. If either is omitted, then warp assumes episode 1, resp. level 1. | ||
-w
|
Show coordinates as well as other debug information, including current sector num, lotag and hitag. | ||
-x [game.con]
|
Replace the main GAME.CON with the specified script file. | ||
-z# -condebug
|
Enable line-by-line CON compile debugging at level #, and print the number of labels, variables and arrays used. |
Multiplayer Parameters
Note: Multiplayer is currently non-functional in mainline eduke32. For a working implementation, see EDuke32-OldMP.
The corresponding parameters are listed here for the sake of completeness.
Parameter | Description | Notes | |
---|---|---|---|
-a
|
Use fake player AI (dukebots) (fake multiplayer only). | Sets playerai to 1, which doesn't do anything as of r9392. | |
-c#
|
Changes the value of m_coop to set the multiplayer mode. | ||
-connect [ip]
|
Connect to the specified IP address. | (see multiplayer) | |
-dedicated
|
Start eduke32 in dedicated server mode. | (see multiplayer) | |
-name [name]
|
Set the player name on startup. Can also be changed ingame. | ||
-net
|
Legacy P2P networking. | Disabled as of r9392. Will exit with an error message. | |
-noffire
|
Disables friendly fire in coop games (i.e. m_ffire set to 0). | ||
-password [pw]
|
Password required to authenticate when connecting to server. | Default is no password. | |
-port
|
Specify which UDP port to use for hosting the game or connecting. | ||
-q#
|
Fake multiplayer with # (2-16) players. | ||
-rts [file.rts]
|
Use the specified RTS soundbank for remote ridicule sounds. | Defaults: {DUKE.RTS, NAM.RTS, NAPALM.RTS, WW2GI.RTS} | |
-server
|
Start multiplayer server for network games. | (see multiplayer) |
Removed Parameters
The following parameters used to exist, but are no longer referenced in current eduke32 revisions.
Parameter | Description | Notes | |
---|---|---|---|
-#
|
Load and run a game from slot # (0-9) | EDuke32 no longer uses a fixed number of save slots, hence no longer works. | |
-conversion [YYYYMMDD]
|
Selects CON script version for compatibility with older mods. | ||
-f#
|
Send fewer packets in multiplayer (1, 2, 4) | (deprecated) | |
-i#
|
Use networking mode (1/0) | ||
-nD
|
Dump default gamevars to gamevars.txt | ||
-rmnet
|
Use network config file. | (OBSOLETE, see -net) | |
-stun
|
Use UDP hole punching for multiplayer connections. |
Mapster32 Parameters
Usage: mapster32 [files] [options]
Example: mapster32 nukeland.map -usecwd -cfg myconfig.cfg
Files can be of types {grp | zip | map | con | def}
.
- Specifying a
{grp|zip}
file is equivalent to using the-j
parameter. - If a .map file is specified, it is directly opened in the editor.
- If a .con file is specified, it is used as the main resource for M32 CON commands.
- If a .def file is specified, it is used as the main DEF script.
The set of parameters for mapster32 has some overlap with eduke32. Below is the complete list.
Parameter | Description | Notes | |
---|---|---|---|
-? --help
|
Displays a help message listing the available parameters, then exits. | ||
-addon {0,1,2,3}
|
Load addon data like eduke32 equivalent. | 0 = none, 1 = DukeDC, 2 = DukeNW, 3 = Duke Caribbean | |
-cachesize [size]
|
Sets initial cache size in KB. | Unlike eduke32, this parameter has an upper limit of 1 MB. | |
-cfg [cfg_path]
|
Use an alternate configuration file. | Default is "mapster32.cfg". | |
-clipmap [file.map]
|
Load an additional clipping map to define physical geometry for sprites, voxels and 3d models, for use with clipshape. | Default is _clipshape0.map .
| |
-forcegl
|
Disables GL driver blacklist on Windows. | ||
-grp [path] -g [path]
|
Use an extra group (or .pk3 or .zip) file to load data from. | ||
-game_dir [dir]
|
Set the directory from which to load files, which also changes where the cfg is created. | ||
-gamegrp [file.grp]
|
Defines which file to use as main grp. | ||
-h [file.def]
|
Specifies the main DEF file. | ||
-j [dir]
|
Adds a directory to Mapster32's search list. | ||
-mh [file.def]
|
Include an additional DEF module, appended after the main DEF code. | ||
-mx [file.con]
|
Include an additional M32 script module. | See also the include command. | |
-nam -napalm -ww2gi
|
Run in NAM or WWII GI -compatible mode. | ||
-noautoload
|
Disables loading content from the autoload directory. | ||
-usecwd
|
Force mapster32 to read game data and configuration files from the current working directory. | See also user_profiles_disabled. | |
-x [game.con]
|
Replace the main GAME.CON with the specified file. | GAME.CON code is only needed for sound definitions. |
Unique Parameters
Parameter | Description | Notes | |
---|---|---|---|
-check -nocheck
|
Enables/Disables map pointer checking when saving. | Default is disabled. | |
-namesfile [names.h]
|
Path to a different names file for tile numbers. | Default is 'names.h'. |
VoidSW Parameters
Usage: voidsw [options]
Example: voidsw -addon1 -level3 -cheat
VoidSW currently does not take files directly as arguments.
Parameter | Description | Notes | |
---|---|---|---|
-?
|
Displays a help message listing the available parameters, then exits. | ||
-addon#
|
Launch one of the expansions included in Shadow Warrior Classic Complete. | 0 = SW v1.2, 1 = Wanton Destruction, 2 = Twin Dragon | |
-setup -nosetup
|
Enable/Disable the setup dialog. | ||
-nologo -quick
|
Skip all the startup animations and logos. | ||
-j [dir]
|
Adds the given directory to look for game data. | ||
-turnscale [val]
|
Adjusts the turning scale: 256 = 1 unit | ||
-movescale [val]
|
Adjusts the movement scale: 256 = 1 unit | ||
-extcompat
|
Controller compatibility mode. Multiplies movescale and turnscale by 5. | ||
-nodemo
|
Disables demo playback on the title screen. | ||
-monst
|
Disables monsters. | ||
-level#
|
Load the specified level on startup (0-27). | Does not use episodic structure unlike Duke. | |
-s#
|
Defines the skill level (1-4). | ||
-nometers
|
Prevents boss health bars and the air meter from being drawn onscreen. | ||
-cheat
|
If combined with -level# , starts the game with all weapons, inventory items and god mode on.
|
||
-map [file.map]
|
Launch the specified usermap. | ||
-g[file.grp]
|
Load the specified GRP or ZIP file as main data. | No space between param and filename! | |
-h[file.def]
|
Load the specified file as the main DEF. | No space between param and filename! | |
-mh[file.def]
|
Load the specified file as DEF module. | No space between param and filename! | |
-noinstancechecking
|
Prevents voidsw from checking whether another instance is already running. | ||
-dr[filename]
|
Records a demo with the given filename. Requires the -level# parameter to also be set.
|
No space between param and filename! | |
-dp[filename]
|
Starts playback of the given demo file. | No space between param and filename! |
Multiplayer Parameters
Options
The following parameters define multiplayer game options and must be listed first.
Parameter | Description | Notes | |
---|---|---|---|
-autonet [params]
|
The autonet parameter defines multiplayer game options, and takes exactly 10 arguments, separated by commas.
These are, in order:
|
Example Use: -autonet 0,0,1,1,1,0,3,2,1,1
| |
-short
|
Divides the frag limit by 10 and halves the time limit. | ||
-name [pname]
|
Sets the connecting player's name to the given value. | ||
-f#
|
Packet duplication, i.e. how many "moves" are sent per packet. Choose higher values for lossy connections. | Valid values: {2,4,8}
| |
-nopredict
|
Disables network prediction method, i.e., player position is no longer predicted. | ||
-col#
|
Forces the player palette for joining players. | Workaround because -autonet fails to do so.
|
Connection Establishment
The following parameters define which game to connect to, and MUST be listed last.
Any other parameters that follow -net
will be ignored.
Parameter | Description | Notes | |
---|---|---|---|
-net
|
Required to set the parameters listed below. | ||
[ip]:[port] [hostname]:[port]
|
Connect to the given IP/hostname and port. If omitted, will instead host the game. | ||
-p#
|
Defines the port # to use for hosting. Valid range: 1025-65534 | ||
-N0:# -I0:#
|
Launch a netgame in master-slave mode, expecting # players to join before launch. | ||
-N1 -I1
|
Launch a netgame in peer-to-peer mode. |
Debug Parameters
The following parameters are used to debug VoidSW.
Parameter | Description | Notes | |
---|---|---|---|
-debug
|
Only enabled for DEBUG builds. Shows debug help options. | ||
-ddr[filename]
|
Records a demo in debug mode with the given filename. Requires the -level# parameter to also be set.
|
||
-commbat#
|
Enables fake WangBang with the specified number of players. | ||
-coop#
|
Enables fake coop with the specified number of players. | ||
-allsync
|
Sets sync bytes to 8 outside of demo recording. (purpose?) | ||
-demosyncrecord
|
Sets sync bytes to 8, records demo sync information to a file. | ||
-demosynctest
|
Sets sync bytes to 8, reads previously recorded demo sync information and errors out if demo playback doesn't match. | ||
-randprint
|
Prints the output of krand() functions whenever they are called. | ||
-cam
|
Enables camera view during normal gameplay, as if a demo recording is playing. | ||
-debugsecret
|
Displays debug info whenever an enemy is killed. | ||
-debugactor
|
Disables all monsters. (same as -monst )
|
||
-debuganim
|
Disables all animations. | ||
-debugsector
|
Disables sector movement. | ||
-debugso
|
Disables sector objects. | ||
-debugpanel
|
Disables panel update. (?) | ||
-nosyncprint
|
Disables the "out-of-sync" message in multiplayer. | ||
-mono
|
Enables some debug output during gameplay. |
Inactive Parameters
The following SW parameters are disabled, or have been removed.
Parameter | Description | Notes | |
---|---|---|---|
-setupfile
|
Originally used by setup.exe | ||
-masterslave
|
Replaced by -net | ||
-cacheprint
|
Used to print to stdout whenever a sound effect is cached/loaded. | ||
-broadcast
|
Replaced by -net | ||
-de
|
Demo editing. Disabled. | ||
-bots
|
Disabled. Would have added bots to fake multiplayer games. | ||
-nocdaudio
|
Originally disabled the Redbook music. | ||
-m
|
Replaced by -monst. |