Overview

Command line arguments are strings of keywords that you can pass when running the executable via the command line or a shortcut to the executable. Their purpose is to customize the manner in which the engine runs to suit the needs of the developer or user. This can be as simple as causing the editor to run instead of the game, or it can be much more involved such as starting up the game with a certain map running at a specified resolution and framerate while dumping out each frame to individual image files

Modes

These arguments are used to force the main executable to run in a mode other than the normal game mode or to execute one of many commandlets, which are smaller specialized applications that perform common developer-related tasks. They are passed to the executable immediately following the executable name with no additional syntax. These commands are not case sensitive.

Example:

UDK.exe editor

Editor: Launch the editor

Server: Run the game as a server

Map/Server/Editor URL Parameters

URLs can be passed to the executable to force the game to load a specific map upon startup. These can also be used in conjunction with the SERVER or EDITOR modes to run the editor or a server with a specific map. Passing a URL is optional, but must immediately follow the executable name or any mode switch if one is present.

A URL consists of two parts: a map name or server IP address and a series of optional additional parameters. A map name can be any map located within the Maps directory. The inclusion of a file extension (i.e., .udk or .ut3) here is optional. To load a map not found in the Maps directory, an absolute path or a relative path from the Maps directory can be used. In this case, the inclusion of the file extension is mandatory. The server IP address is a standard 4-part IP address consisting of 4 values between 0 and 255 separated by periods. The additional options are specified by appending them to the map name or server IP address. Each option is prefaced by a ‘?’.

General Options

CLASS: tells the engine what player class to use (overriding default).

GAME: tells the engine what GameInfo class to use (overriding default).

NAME: player name to use.

PASSWORD: password required to join a server.

TEAM: the team the player is on (or prefers).

Server Options

bHasVoice: Specify that voice support is available.

bIsLanMatch: Set whether multiplayer game is on the local network (e.g. bIsLanMatch=0).

bRequiresPassword: Set whether online games requires a password (e.g. bRequiresPassword=0).

DEDICATED: Specify server as dedicated server.

GAMEPASSWORD: Server password passed on travel.

LISTEN: Specify server as a listen server (e.g. Listen=...).

SERVERDESCRIPTION: The description to be displayed for the server.

UTGame Specific Options

DIFFICULTY: Set the skill level for bots in the game.

MUTATOR: Specify a mutator to use.

NUMPLAY: Number of players to use. (Number of bots +1 for the player)

RESTART: Restart the map.

SPECTATORONLY: Start the game in spectator mode.

Switches

These arguments can be passed to either the game or the editor, depending on the specific keyword and its intended usage. Some arguments are plain switches (i.e., -UNATTENDED) while others are setting switches which are “key=value” pairs (i.e., -LOG=MyLog.txt). These commands are not case sensitive. The syntax for passing plain switches is to preface each argument with a minus (‘-‘) and then the argument immediately afterward. Setting switches need no leading ‘-‘, with the exception of the server switches.

Example:

UDK.exe –silent LOG=MyLog.txt

Developer

ABSLOG: Same as LOG= but without a filename length check.

ALLUSERS: Add the game for all users when INSTALLGE is specified.

AUTO: Assume yes on all questions (for example during compile).

AUTOCHECKOUTPACKAGES: Automatically checkout packages that need to be saved.

AUTODEBUG: Perform auto debugging. Attach the UnrealScript debugger and break at the first bytecode encountered.

LIGHTMASSSTATS: Force all lightmass agents to report detailed stats to the log.

LOG: When used as a switch (-log), opens a seperate window to display the contents of the log in real time. When used as a setting (LOG=filename.log), tells the engine to use the log filename of the string which immediately follows.

LOGTIMES: Print time with log output. (Default, same as setting LogTimes=True in the [LogFiles] section of *Engine.ini)

NOCONFORM: tells the engine not to conform packages as they are compiled.

NOCONTENTBROWSER: Disable the Content Browser.

NOINNEREXCEPTION: Disables the exception handler within native C++.

NOLOADSTARTUPPACKAGES: Force startup packages not to be loaded. You can use this if objects in a startup package must be deleted from within the editor.

NOLOGTIMES: Do not print time with log output. (Same as setting LogTimes=False in the [LogFiles] section of *Engine.ini)

NOMODAUTOLOAD: Do not automatically load mod classes.

NOPAUSE: Close the log window automatically on exit.

NOPAUSEONSUCCESS: Close the log window automatically on exit as long as no errors were present.

NOREMOTECONTROL: Disable the remote control. Used for dedicated servers.

INI/Config Files

ENGLISHCOALESCED: Revert to the default (English) coalesced .ini if the language-localized version cannot be found.

NOAUTOINIUPDATE: Suppress prompts to update .ini files.

NOINI: Do not update the .ini files.

REGENERATEINIS: forces .ini files to be regenerated.

Another command line argument may be used to temporarily override which INIs are loaded by the game or editor. For example, if a custom 'MyGame.ini' is to be used instead of 'UDKGame.ini', the argument would be (i.e., -GAMEINI=MyGame.ini). This table lists the arguments used to override the different INI files used in UE3: