Launch arguments
There are several launch arguments you can pass to the VU executable to enable different features and modify the client / server behavior. See below for a full listing of all available arguments.
Common arguments
These arguments can be used when running a VU server or client.
-gamepath <path>
Used to explicitly specify the Battlefield 3 installation directory.
-perftrace
Writes a performance profile to perftrace-[server|client].csv
.
-env [prod|dev]
Specifies the Zeus environment to connect to. Defaults to prod
.
-updateBranch [prod|dev]
Specifies the update branch to fetch updates from. Defaults to whatever -env
is set to.
-tracedc
Traces DataContainer usage in VEXT and prints any dangling DCs during level destuction.
-cacert <path>
Sets a custom CA certificate bundle to use for SSL verification.
-activate -o_mail <email> -o_pass <pass>
Activates BF3 on the current machine using the specified Origin credentials.
-activate -lsx
Activates BF3 on the current machine using EA app / Origin (LSX), which must be running and be logged in to an account that owns BF3. It also prints the authentication token retrieved from the EA app.
-activate -ea_token <token>
Activates BF3 on the current machine using the provided EA auth token. The token can be retrieved from another computer using the command above. Keep in mind that tokens expire.
-console
Allocates an external console window for debug logging.
-debuglog
Saves logging output to a file in the logs folder. For servers, this folder will be in the server instance directory. For clients, it will be in the VU AppData installation folder.
-trace
Enables verbose logging.
-vextdebug <host:port>
Enables VEXT remote debugging, connecting to the debugger at the specified host:port
(this does not currently work). It also prevents the server / client connections from timing out and makes it so compiled VEXT modules sent to the client contain debug symbols.
-vexttrace
Enables VEXT execution tracing. When tracing is enabled and VU crashes, the last executed line of each loaded VEXT mod will be available from the crash dialog and in the submitted crash details. Keep in mind that this could adversely affect performance.
Client arguments
These arguments only have an effect on the VU client.
-dwebui
Enables WebUI debugging at http://localhost:8884
.
vu://join/<server-guid>[/<password>]
Connect to a server with the given GUID (without dashes) and an optional password. This is the ID of a server key. You can also use this URL as a hyperlink on a website to join a server.
Example: vu://join/4ffa57c1068540e59b9a25eb6b00dfcd
Example (with password): vu://join/4ffa57c1068540e59b9a25eb6b00dfcd/amazingpass
vu://spectate/<server-guid>[/<password>]
Connect as a spectator to a server with the given GUID (without dashes) and an optional password. This is the ID of a server key. You can also use this URL as a hyperlink to join a server as a spectator.
Example: vu://spectate/4ffa57c1068540e59b9a25eb6b00dfcd
Example (with password): vu://spectate/4ffa57c1068540e59b9a25eb6b00dfcd/amazingpass
-cefdebug
Enable verbose debugging logging for CEF. Useful for catching issues with WebUI mods. When running with this argument, a debug.log
file will be created in the directory of VU (usually %LocalAppData%\VeniceUnleashed\client
).
-username <username> -password <password>
Logs you in to your VU account using the specified VU credentials.
-disableUiHwAcceleration
Force hardware acceleration for the WebUI off, falling back to software rendering. You can try this if you get a black loading screen when launching VU. Keep in mind that this will degrade your experience and your performance. This is enabled by default on unsupported operating systems.
Server arguments
These arguments only have an effect on the VU server.
-server -dedicated
The two required arguments for running a VU server.
-high60
Sets the VU server frequency to 60Hz.
-high120
Sets the VU server frequency to 120Hz.
-headless
Runs the VU server in headless mode (without creating any windows).
-serverInstancePath <path>
Sets the server instance path (where the server configuration, logs, and mods are stored) for the VU server.
-highResTerrain
Enables high resolution terrain. Useful for extending maps beyond their original play area.
-disableTerrainInterp
Disables interpolation between different terrain LODs.
-skipChecksum
Disables level checksum validation on client connection.
-listen <host:port>
Sets the host and port the VU server should listen for connections on. Defaults to 0.0.0.0:25200
.
-mHarmonyPort <port>
Sets the port the VU server should listen for MonitoredHarmony connections. Defaults to 7948
.
-RemoteAdminPort <host:port>
Sets the host and port the VU server should listen for RCON connections. Defaults to 0.0.0.0:47200
.
-unlisted
Makes the server not show up in the server list. Unlisted servers can only be joined by the connect
console command or via the vu://join/server-id
url scheme, which can also be added as a launch argument to vu.exe
to auto-join as soon as the client loads.
-joinaddr <ip>
Specifies the IP address clients should connect to in order to join this server. Only IPv4 addresses are supported. If you don't specify this, the backend will attempt to automatically detect the server's IP address.
-joinhost <hostname>
Specifies a hostname clients should use when connecting to this server. When this is specified -joinaddr
has no effect and any clients attempting to connect will not attempt to perform any NAT detection.
-noUpdate
Disables automatic updates.
-maxPlayers <number>
Sets the maximum players that are allowed to set with vars.maxPlayers
& vars.maxSpectators
combined.
Example: -maxPlayers 64
When using the default spectator size of 24
, you won't be able to set vars.maxPlayers
higher then 40
. Unless you reduce the spectator count before.