setup-command-line-duke3d Revised 2-09-2016 Release 7 ©
Command Line Help | Stacking / Hidden Flags
Memory Blocks | Screen Toggle | Window
Command Line Parameters For Duke3d 1.0, 1.1, 1.3d, 1.4, 1.5
There are a few command line parameters (also known as switches or flags) you can use to
alter game performance or event. Some of these will help speed up the game on slow computers, while
others help to aid gameplay. A command line parameter is something that you type on the
command line after the name of the program you're running. In this case it will be
DUKE.EXE or SETUP.EXE. They both except input.
The /? switch used as an example, will display all the command line variables in
full! To use it, you would need to start the game like this:
Here is a list of the command line parameters that you can use with Duke Nukem 3D. Please note that while these are intended for use with the Duke3D game, you can use
them on the setup program. The setup program will pass any command line parameters that
were given to it to the game exe. Commit can also be accessed with multiplayer switches. This
applies also to a MS-DOS Shortcut's from Windows. See the Windows
Shortcut section near the bottom of this document for more details.
|? OR /?
||A help message; Gives you a list of all the command line parameters.
||Warp to Level (1-11); Go directly to Level ## (Varies by Episode Number)
Default with no entry is Launch Facility, E1L6. 1.3d
Lameduke uses /l# 0-255 EX: 1 = 1, 177 = ß
||Warp to Level and Episode
x = Episode xx = Level e.g /l201 for Level One Of
||Warp to Volume (Episode 1-4); Go directly to Episode # (1-4 or just 1 in shareware)
Lamedukes range: 0-255 EX: 1 = L, 0 = K, 255 = J
||Shareware 1.1 use only. Shows the version number of the game your playing
||Sets Skill (Difficulty 1-4) Shareware1.0(Difficulty 0-3); In Lameduke
this function is present but doesn't seem to work.
||Record demo; Record a Demo. (replaces the demo1.dmo file in your game directory). To
play them back, just run the game, and they will be played back. Do not end a level
in a demo, or it will not be recorded properly(1.3d). In order for this to work, you
also have to use the /v and /l parameter, (and optionally the /s parameter). For
recording usermaps and more details on this command, See the .DEMO USAGE document.
||Lameduke use only. Reroute game output to DIR; Reroute game
output to Directory. (o = oh)
||Lameduke use only. Encode maps...
||Lameduke use only. Activate DEBUG MODEs; Partially active upon game start, like a
'cheat' it gives you all weapons and inventory.
|| ATOMIC use only. Start to play demo FILE; Play a demo file.
Replace <file> with the name of the demo file you want to play.
Atomic demo playback.
||No monsters; Turns off Game Monsters during play.
This would have no real purpose for single play, and is intended for DukeMatch games only.
Remember, if you want to switch the monsters off with /m the
/m must go before the /c#
||No sound; Turns off all sound effects.
||No music; Turns off music.
||Respawn, 1 = Monsters, 2 = Items, 3 = Inventory, x = All
||Shareware 1.1 use only. Turns on Cooperative Play for Multi-Player Play.
||MP mode, 1 = Standard DukeMatch(spawn), 2 = Coop, 3 = old Dukematch(no spawn); Defines which type of Multi-Play will be used.
Remember, if you want to switch the monsters off and use /c#, The /m must go before
||Lameduke use only. Turn on help quotes; Hardcoded
messages are displayed when the player nears specific sprites.
||Fake multiplayer (2-8 players); Turns on Fake Multi-Player.
This is used primarily by level designers to test add-on levels and various spawn related
issues for multi-play only.
This command does not generate computer controlled opponents for DukeMatch games. This
should not be used if you intend on playing a true multi-player game with other people. #
is number of fake players to use (1-8).
||Use player AI (fake multiplayer only) Use player AI (for Testing Multiplay only) ATOMIC
use only; The ATOMIC
edition allows actual fake multiplayer a.i.)
||Network mode (1/0) (multiplayer only) (default = 1); Defines which type of network mode is used.
# can be either a 0 or a 1. 1 is meant for 2-4 players, and 0 is meant for 5-8 players.
The difference is that packets with mode 0 are handled differently than in mode 1. In
Mode0 if the master quiets the game, all players exit. This parameter should not be used by
the player, this is passed automatically by the setup program to commit.
||Send fewer packets (1, 2, 4) (multiplayer only); Send Fewer Packets during Multi-Player Mode.
(reduces the amount of packets sent every frame.)
This should never be needed during a modem, serial, or network game, and is intended only
for Online services(virtual IPX or Network) who use a slightly different arrangement which
requires less traffic for the game to perform correctly.
This would also be useful for programs such as Kali, iC, etc.
iC uses the term TCIDUP(tic duplication)
# can be 1, 2, or 4.
/f1 default no tic duplication, full 30 packets per second. -The Desired setting.
/f2 skip every other frame, reduces to 15 packets per second. (cuts the update rate in
/f4 skips 3 out of 4 frames, reduces to 7.5 packets per second. (cuts the update rate in
Note: v1.5 may handle /f4 incorrectly, and hang the game at sound init, This is the TEN
'optimized' setting. It also launches the TEN screen as well)
|/g <file.grp> , /g...
|| ATOMIC use only. Use multiple group files (must be last on command line); Users of 1.3d Require a Custom Batch
||Compile FILE, Allows you to use
external CONtrol scripts; Compiles alternate con file with name of <file> (The default is game.con).
||Shareware 1.1 use only. Allows you to use external CONs;
Compiles alternate con file with name of <file> (The default is game.con).
||User's favorite weapon order (Duke3D default: 3425689071); The game automatically switches to the next weapon when ammo is depleted from the current
weapon. This command allows you to define the order in which they do so. It does not remap
the keys. The first time you use this command line you will notice it will add the settings
in the config file.
||Load and run a saved game (slot 0-9)
||Skip memory check; This is primarily for system setup and resources-available. And
address issues if needed.
DO NOT USE THIS!! THIS SHOULD ONLY BE USED IF ADVISED TO DO SO BY 3D REALMS.
||Use a map FILE name (no .map extension); Load an external
level file via the command line.
||Forward NAME; Change the player's
multiplayer name via the command line.
||Slow serial card is in use (Passed from SETUP.EXE and COMMIT.EXE); Used by the setup program to tell the game that a slow serial card is in use. (8250
UART) it lowers video and sound quality aswell. You will get Best performance from 16550
UART or better. This should never be used on its own. Passed from setup to commit.
||Net mode game (Passed from SETUP.EXE and COMMIT.EXE); Used by the setup program when a network game is being played. This should never be
used on its own.
Passed from setup to commit.
||Specify which network mode to use. The Build games support two different network modes,
broadcast and client-server. By default, broad cast is used during 2-4 player games and
client-server is used for games of more than 4 players.
/n0 specifies a client-server game.
/n1 specifies a broadcast game.
A broadcast game will probably be the most valuable network mode for games played outside
of a local area network. Games over TCP/IP-tunnel.
||Display version with exit; Shows the version of the game you are running. If you have Atomic v1.5 the result will
be 1.4. This screen flashes up and closes on some systems.
|This is used to override the multiple config file question you are prompted with if you
have multiple config files. Replace <file.cfg> with the actual name of the config file
you wish to use. ( -setupfile may also work)
Some of you may find the command /map turns off your Monsters 1.3
In ATOMIC version 1.4 and 1.5 this was "corrected." Its really not a
mistake since the forward slash(/) tells the exe to expect a one or two character flag.
The 1.3 exe assumed /m; instead of /map (or the correct way -map.)
Some users have success without using the slash(/) or dash(-).
(DO NOT FORGET THE SPACES IN BETWEEN EACH OF THE PARAMETERS)
Spacing, is an oversight. Remember to use the correct spacing.
The command line parameters for Duke3D are stackable, which means that you can use more
than one at a time, if you need to. An example of a stacked set of command line parameters
would look like some of these...
Single-Player Startup with difficulty setting:
You can run SETUP and select a user map, but this will default to difficulty setting
(Piece of Cake). For more challenging play, execute Duke3D from the command line, Where # is a difficulty setting from
DUKE3D -map <level> /s#
To Launch Setup, Load a Level, and apply a difficulty setting:
SETUP /v# /l## /s# -map <level>
This will also allow you to change any other settings in setup you would like.
Use Difficulty Settings Within the Game
In order to play a user map with difficulty settings other than the default setting,
rename the map to e3l1.map and then play duke3d as you normally would and select episode 3.
The game will select the new map in place of the raw meat level. To change it back so you
can play the raw meat level simply rename the map back to its original name.
Loading a Configuration file and a map:
<file.cfg> is an alternate config file.
DUKE3D -setupfile <file.cfg> -map <level>
Dukematch The Computer (ATOMIC):
duke3d /q <the number of players> /m /a /l
<the level> /v <the episode>
Example One, Type:
Start the game with the following command line will play a One Player Dukematch
game against one AI character on Episode 1 Level 1, with no monsters. You must
include the Episode and Level number command line parameters, or it won't work.
This option is for single play only. You cannot mix this function with modem,
network, or serial play:
duke3d /q2 /m /a /l1 /v1
/q Is For The Number Of Players Including Yourself, we use number 2
/m Sets "NO monsters"
/a Enables The AI Players ATOMIC
/l Is For The Level To Start On, we use the built in level 01
/v Takes you to volume, we use 1 for the first episode
Example Two, Type:
duke3d /a /q# /l###
/a Enables The AI Players ATOMIC
/q Is For The Number Of Players Including Yourself , # = Number of Players.
/l Is For The Level To Start On , x = Episode xx = Level e.g /l301
for Level One Of Episode Three
Auto load a user level (i.e. make it "Install" with Duke) by recording a
demo in it)
Duke3d -map <level> /r /l08
This will take you straight to the level, with demo-record mode ON. When you
subsequently start Duke, the level will load automatically, and when you start a game, a
fifth option will appear: USER MAP ([name.map])
A useful way of auto-loading your favorite level. Frees up a game save slot too.
Go to your Dos prompt (Windows 95/98/ME Dos or normal Dos) and type mem/f and it will
tell what conventional segments and upper memory regions are free. You can use this to
gain and optimize your memory for best performance.
Check Out Where Your Memory is Going
At Dos prompt (WindowsDOS or normal DOS) type mem/p/c and it will tell you where
your conventional and upper memory is.
Note: Don't use MEMMAKER if you use third party memory management software such as QEMM.
Getting more conventional memory.
Enter MEMMAKER at the DOS prompt (MS-DOS MODE).
Select Continue then pick the Custom Setup option. When asked about EMS memory,
choose"No" to free up the most memory. However, if you know you'll need EMS
memory, both for this game and for other DOS programs you normally run inside Windows 95,
choose "Yes". Under Advanced Options, set "Scan the upper memory
area aggressively?" to "Yes". Also set "Use monochrome region
(B000-B7FF) for running programs?" to "Yes".
On the next screen, the program asks for your Windows directory. Enter your Windows 95
directory if the default is incorrect. After MEMMAKER does its thing, Windows 95 will
restart. Click Start followed by Shutdown to reboot to your newly optimized configuration.
Now run your game.
For Windows 95/98/ME
To toggle between a windowed and full MS-DOS screen, press Alt+TAB. Be advised that
doing so on some systems may crash or freeze your BUILD game. If so close the WinBox, its
ideal to restart your systems (not just windows) to reinitialize your hardware.
- Locate the file duke.exe and right click on it.
- Choose properties and then click the Program Tab
- in the box for Working type in your path to your build engine game.
EX: (Use Quotes)
- Now goto the CMD Line this is were you would type in the Command Line Flag(s) you
would, place them after DUKE3D.EXE.
- Now goto the Batch File this is were you can use an external Batch file to
Auto Prompt User
If you rather be prompted to add parameters when you start duke:
- Add a "?" to the end of the CMD Line. Place it after DUKE3D.EXE.
- This in general applies to all MS-DOS application's command lines.