Startup Parameters – Arma Reforger

From Bohemia Interactive Community
Jump to navigation Jump to search
(Add more parameters)
(Add more parameters)
Line 15: Line 15:
* Sub-directory name (fallback solution)
* Sub-directory name (fallback solution)
}}
}}
; Example
; Example
  ArmaReforgerSteam.exe -addons 88037E46AD234C72,88037E46AD234C73
  ArmaReforgerSteam.exe -addons 88037E46AD234C72,88037E46AD234C73
Line 27: Line 28:
}}
}}
{{Feature|important|It is recommended to use ''absolute'' paths to Mod directories even though the provided path ''can'' be relative to the executable location.}}
{{Feature|important|It is recommended to use ''absolute'' paths to Mod directories even though the provided path ''can'' be relative to the executable location.}}
; Example
; Example
  ArmaReforgerSteam.exe -addonsDir D:\DownloadedMods
  ArmaReforgerSteam.exe -addonsDir D:\DownloadedMods
Line 34: Line 36:
{{hl|-addonDownloadDir}} specifies where the game and the Workshop should download addons.
{{hl|-addonDownloadDir}} specifies where the game and the Workshop should download addons.
{{Feature|important|It is recommended to use ''absolute'' paths to Mod directories even though the provided path ''can'' be relative to the executable location.}}
{{Feature|important|It is recommended to use ''absolute'' paths to Mod directories even though the provided path ''can'' be relative to the executable location.}}
; Example
; Example
  ArmaReforgerSteam.exe -addonDownloadDir D:\DownloadedMods
  ArmaReforgerSteam.exe -addonDownloadDir D:\DownloadedMods
Line 40: Line 43:


{{hl|-GPUAdapter}} forces to use the graphic card at the provided index. GPU index can be found using [https://support.microsoft.com/en-us/windows/open-and-run-dxdiag-exe-dad7792c-2ad5-f6cd-5a37-bf92228dfd85 DxDiag].
{{hl|-GPUAdapter}} forces to use the graphic card at the provided index. GPU index can be found using [https://support.microsoft.com/en-us/windows/open-and-run-dxdiag-exe-dad7792c-2ad5-f6cd-5a37-bf92228dfd85 DxDiag].
; Example
; Example
  ArmaReforgerSteam.exe -GPUAdapter 0
  ArmaReforgerSteam.exe -GPUAdapter 0
Line 58: Line 62:
* [[File:flag_portugal.gif]] {{hl|pt_br}} - Portuguese
* [[File:flag_portugal.gif]] {{hl|pt_br}} - Portuguese
* [[File:flag_china.gif]] {{hl|zh_cn}} - Mandarin
* [[File:flag_china.gif]] {{hl|zh_cn}} - Mandarin
; Example
; Example
  ArmaReforgerSteam.exe -language cs_cz
  ArmaReforgerSteam.exe -language cs_cz
Line 64: Line 69:


{{hl|-noBackend}} disables backend-related http communication.
{{hl|-noBackend}} disables backend-related http communication.
; Example
; Example
  ArmaReforgerSteam.exe -noBackend
  ArmaReforgerSteam.exe -noBackend
Line 70: Line 76:


{{hl|-noSound}} disables the sound system processing.
{{hl|-noSound}} disables the sound system processing.
; Example
; Example
  ArmaReforgerSteam.exe -noSound
  ArmaReforgerSteam.exe -noSound
Line 76: Line 83:


{{hl|-noSplash}} skips splash screens on game load.
{{hl|-noSplash}} skips splash screens on game load.
; Example
; Example
  ArmaReforgerSteam.exe -noSplash
  ArmaReforgerSteam.exe -noSplash
Line 82: Line 90:


{{hl|-noThrow}} disables all kinds of error message dialogs. (VME's, asserts, crashes, ...).
{{hl|-noThrow}} disables all kinds of error message dialogs. (VME's, asserts, crashes, ...).
; Example
; Example
  ArmaReforgerSteam.exe -noThrow
  ArmaReforgerSteam.exe -noThrow
Line 88: Line 97:


{{hl|-profile}} defines the profile to be used - located in the {{hl|%userprofile%\My Documents\My Games\<name>}} directory.
{{hl|-profile}} defines the profile to be used - located in the {{hl|%userprofile%\My Documents\My Games\<name>}} directory.
; Example
; Example
  ArmaReforgerSteam.exe -profile "David Armstrong"
  ArmaReforgerSteam.exe -profile "David Armstrong"
Line 94: Line 104:


{{hl|-singleThreadedUpdate}} disables multithreaded update.
{{hl|-singleThreadedUpdate}} disables multithreaded update.
; Example
; Example
  ArmaReforgerSteam.exe -singleThreadedUpdate
  ArmaReforgerSteam.exe -singleThreadedUpdate
Line 110: Line 121:


{{hl|-window}} starts the game windowed (fullscreen by default).
{{hl|-window}} starts the game windowed (fullscreen by default).
; Example
; Example
  ArmaReforgerSteam.exe -window
  ArmaReforgerSteam.exe -window
Line 127: Line 139:


{{hl|-screenWidth}} and {{hl|-screenHeight}} define the window's size (and not its render ''resolution''). They must be used with {{hl|-window}}.
{{hl|-screenWidth}} and {{hl|-screenHeight}} define the window's size (and not its render ''resolution''). They must be used with {{hl|-window}}.
; Example
; Example
  ArmaReforgerSteam.exe -window -screenWidth 1024 -screenHeight 578
  ArmaReforgerSteam.exe -window -screenWidth 1024 -screenHeight 578
Line 133: Line 146:


{{hl|-forceUpdate}} forces the application to render and update even when the window is out of focus.
{{hl|-forceUpdate}} forces the application to render and update even when the window is out of focus.
; Example
; Example
  ArmaReforgerSteam.exe -forceUpdate
  ArmaReforgerSteam.exe -forceUpdate
Line 139: Line 153:


{{hl|-noFocus}} prevents window focus stealing on game initialization.
{{hl|-noFocus}} prevents window focus stealing on game initialization.
; Example
; Example
  ArmaReforgerSteam.exe -noFocus
  ArmaReforgerSteam.exe -noFocus
Line 211: Line 226:
=== load ===
=== load ===


{{hl|-load }} tells the executable to open selected file in the designated Workbench module (specified by {{hl|[[#wbmodule|-wbmodule]]}} usage).
{{hl|-load}} tells the executable to open selected file in the designated Workbench module (specified by {{hl|[[#wbmodule|-wbmodule]]}} usage).
The file path can be specified either by absolute path, relative path, exact path or by resource name.
The file path can be specified either by absolute path, relative path, exact path or by resource name.


; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbmodule=WorldEditor -run -load "world/myworld.ent"
  ArmaReforgerWorkbenchSteam.exe -wbmodule=WorldEditor -run -load "world/myworld.ent"
This will open up the WorldEditor and load myworld.ent file.
 
This will open up the [[Arma Reforger:World Editor|World Editor]] and load the {{hl|myworld.ent}} file.


=== packAddon ===
=== packAddon ===
Line 225: Line 241:


When packing an addon for the first time, a new directory is automatically created in the same dir as {{hl|profile}}.
When packing an addon for the first time, a new directory is automatically created in the same dir as {{hl|profile}}.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -packAddon
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -packAddon
Line 231: Line 248:


{{hl|-packAddonDir}}specifies the output directory where resulting PAKs will be saved.
{{hl|-packAddonDir}}specifies the output directory where resulting PAKs will be saved.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -packAddon -packAddonDir "D:\build\Green"
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -packAddon -packAddonDir "D:\build\Green"
Line 243: Line 261:


When no directory is specified (by using '''publishAddonDir''') a directory from last session is used.
When no directory is specified (by using '''publishAddonDir''') a directory from last session is used.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon
Line 250: Line 269:
{{hl|-publishAddonDir}} specifies the pre-packed data directory (obtained by the {{hl|-packAddon}} parameter above).
{{hl|-publishAddonDir}} specifies the pre-packed data directory (obtained by the {{hl|-packAddon}} parameter above).
When not specified, directory from the last session is used.
When not specified, directory from the last session is used.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon -publishAddonDir "D:\build\Green"
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon -publishAddonDir "D:\build\Green"
Line 257: Line 277:
{{hl|-publishAddonVersion}} specifies the mod's version number.
{{hl|-publishAddonVersion}} specifies the mod's version number.
When not specified, newest version found on back-end is used and it's last digit is automatically incremented.
When not specified, newest version found on back-end is used and it's last digit is automatically incremented.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon -publishAddonVersion "2.3.5"
  ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon -publishAddonVersion "2.3.5"
Line 263: Line 284:


{{hl|-publishAddonChangeNote}} is an optional parameter that specifies a note to the provided update.
{{hl|-publishAddonChangeNote}} is an optional parameter that specifies a note to the provided update.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -publishAddonChangeNote "Fix shading"
  ArmaReforgerWorkbenchSteam.exe -publishAddonChangeNote "Fix shading"
Line 268: Line 290:
=== publishAddonPreviewImage ===
=== publishAddonPreviewImage ===


{{hl|-publishAddonPreviewImage }} is an optional parameter that which you can use to specify path to preview image file
{{hl|-publishAddonPreviewImage }} is an optional parameter that which you can use to specify path to preview image file.
 
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -publishAddonPreviewImage "z:/mymod/my_preview_image.jpg"
  ArmaReforgerWorkbenchSteam.exe -publishAddonPreviewImage "z:/mymod/my_preview_image.jpg"
Line 299: Line 322:


{{hl|-wbBackendLogin}} enforces a specific account to log in. Password is hidden console log.
{{hl|-wbBackendLogin}} enforces a specific account to log in. Password is hidden console log.
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -wbBackendLogin myEmail@bistudio.com myPassword
  ArmaReforgerWorkbenchSteam.exe -wbBackendLogin myEmail@bistudio.com myPassword
Line 306: Line 330:
{{hl|enableWARP}} allows {{Link|https://docs.microsoft.com/en-us/windows/win32/direct3darticles/directx-warp|DirectX WARP}} (Windows Advanced Rasterization Platform) to create a virtual device for computers without a DirectX 12 device.
{{hl|enableWARP}} allows {{Link|https://docs.microsoft.com/en-us/windows/win32/direct3darticles/directx-warp|DirectX WARP}} (Windows Advanced Rasterization Platform) to create a virtual device for computers without a DirectX 12 device.
{{Feature|informative|This parameter does not force WARP, only allows it.}}
{{Feature|informative|This parameter does not force WARP, only allows it.}}
; Example
; Example
  ArmaReforgerWorkbenchSteam.exe -enableWARP
  ArmaReforgerWorkbenchSteam.exe -enableWARP
Line 316: Line 341:
=== a2sIpAddress ===
=== a2sIpAddress ===


{{hl|-a2sIpAddress}}
{{hl|-a2sIpAddress}} sets Steam Query Protocol's Bind IP address.
 
; Example
; Example
  ArmaReforgerServer.exe -a2sIpAddress 192.168.1.10
  ArmaReforgerServer.exe -a2sIpAddress 192.168.1.10
Line 322: Line 348:
=== a2sPort ===
=== a2sPort ===


{{hl|-a2sPort}}
{{hl|-a2sPort}} sets Steam Query Protocol's Bind port.
 
; Example
; Example
  ArmaReforgerServer.exe -a2sPort 7777
  ArmaReforgerServer.exe -a2sPort 7777
Line 329: Line 356:


{{hl|-bindIP}} can be used to override both [[Arma Reforger:Server Hosting#gameHostBindAddress|gameHostBindAddress]] and [[Arma Reforger:Server Hosting#gameHostRegisterBindAddress|gameHostRegisterBindAddress]] values present in [[Arma Reforger:Server Hosting#Configuration File|server config]].
{{hl|-bindIP}} can be used to override both [[Arma Reforger:Server Hosting#gameHostBindAddress|gameHostBindAddress]] and [[Arma Reforger:Server Hosting#gameHostRegisterBindAddress|gameHostRegisterBindAddress]] values present in [[Arma Reforger:Server Hosting#Configuration File|server config]].
; Example
; Example
  ArmaReforgerServer.exe -bindIP 192.168.1.42
  ArmaReforgerServer.exe -bindIP 192.168.1.42
Line 335: Line 363:


{{hl|-bindPort}} can be used to override both [[Arma Reforger:Server Hosting#gameHostBindPort|gameHostBindPort]] and [[Arma Reforger:Server Hosting#gameHostRegisterBindPort|gameHostRegisterBindPort]] values present in [[Arma Reforger:Server Hosting#Configuration File|server config]].
{{hl|-bindPort}} can be used to override both [[Arma Reforger:Server Hosting#gameHostBindPort|gameHostBindPort]] and [[Arma Reforger:Server Hosting#gameHostRegisterBindPort|gameHostRegisterBindPort]] values present in [[Arma Reforger:Server Hosting#Configuration File|server config]].
; Example
; Example
  ArmaReforgerServer.exe -bindPort 2302
  ArmaReforgerServer.exe -bindPort 2302
Line 341: Line 370:


{{hl|-client}} starts up an RplSession in local client mode. The session tries to connect to the provided IP.
{{hl|-client}} starts up an RplSession in local client mode. The session tries to connect to the provided IP.
; Example
; Example
  ArmaReforgerSteam.exe -client 127.0.0.1
  ArmaReforgerSteam.exe -client 127.0.0.1
Line 348: Line 378:
{{hl|-config}} is used by servers to point to a JSON server configuration.
{{hl|-config}} is used by servers to point to a JSON server configuration.
{{Feature|informative|See [[Arma Reforger: Server Hosting| Server Hosting]] for more information.}}
{{Feature|informative|See [[Arma Reforger: Server Hosting| Server Hosting]] for more information.}}
; Example
; Example
  ArmaReforgerServer.exe -config myConfigFile.json
  ArmaReforgerServer.exe -config myConfigFile.json
Line 353: Line 384:
=== listScenarios ===
=== listScenarios ===


{{hl|-listScenarios}} prints to game logs the scenario .conf file paths.<br>
{{hl|-listScenarios}} prints to game logs the scenario .conf file paths.
 
; Example
; Example
  ArmaReforgerServer.exe -listScenarios
  ArmaReforgerServer.exe -listScenarios
; Result: e.g
; Result: e.g
<pre style="font-size: 0.9em">
<pre style="font-size: 0.9em">
Line 381: Line 414:


{{hl|-logStats}} allows to log performance statistics every (optionally) defined interval (in milliseconds).
{{hl|-logStats}} allows to log performance statistics every (optionally) defined interval (in milliseconds).
; Example
; Example
: {{hl|ArmaReforgerServer.exe -logStats}} - logs every seconds
: {{hl|ArmaReforgerServer.exe -logStats}} - logs every seconds
: {{hl|ArmaReforgerServer.exe -logStats 10000}} - only logs every 10s
: {{hl|ArmaReforgerServer.exe -logStats 10000}} - only logs every 10s
; Result
; Result
: <code>FPS: 60.0, frame time (avg: 16.7 ms, min: 9.3 ms, max: 23.7 ms), Mem: 3291106 kB, Player: 2, AI: 104, Veh: 0 (17), Proj (S: 12, M: 0, G: 0 | 12), RplItemsS: 410, RplItemsC0: 17068</code>
: <code>FPS: 60.0, frame time (avg: 16.7 ms, min: 9.3 ms, max: 23.7 ms), Mem: 3291106 kB, Player: 2, AI: 104, Veh: 0 (17), Proj (S: 12, M: 0, G: 0 | 12), RplItemsS: 410, RplItemsC0: 17068</code>
Line 404: Line 439:
{{hl|-maxFPS}} sets max FPS limit - useful for a server, or to force a client's max FPS.
{{hl|-maxFPS}} sets max FPS limit - useful for a server, or to force a client's max FPS.
{{Feature|informative|Also works on clients, even though the Video Settings FPS limitation option is preferred.}}
{{Feature|informative|Also works on clients, even though the Video Settings FPS limitation option is preferred.}}
; Example
; Example
  ArmaReforgerServer.exe -maxFPS 30
  ArmaReforgerServer.exe -maxFPS 30
Line 415: Line 451:


{{hl|-nds}} Network Dynamic Simulation (nds) is a server feature that only streams in relevant replicated entities for each client. the provided value stands for diameter, or the number of cells which are being replicated - default is 2 in each direction. To turn the feature off use {{hl|-nds 0}}. A higher diameter will result in a bigger networked view range, lower server performance.
{{hl|-nds}} Network Dynamic Simulation (nds) is a server feature that only streams in relevant replicated entities for each client. the provided value stands for diameter, or the number of cells which are being replicated - default is 2 in each direction. To turn the feature off use {{hl|-nds 0}}. A higher diameter will result in a bigger networked view range, lower server performance.
; Example
; Example
  ArmaReforgerServer.exe -nds 1
  ArmaReforgerServer.exe -nds 1
Line 421: Line 458:


{{hl|-nwkResolution}} defines what resolution Spatial Map cells should be set at in a 100..1000m range. Smaller resolution will result in less "pop-in" but lower networked view range. For high view range use high resolution, but small diameter.
{{hl|-nwkResolution}} defines what resolution Spatial Map cells should be set at in a 100..1000m range. Smaller resolution will result in less "pop-in" but lower networked view range. For high view range use high resolution, but small diameter.
; Example
; Example
  ArmaReforgerServer.exe -nwkResolution 500
  ArmaReforgerServer.exe -nwkResolution 500
=== rpl-reconnect ===
{{hl|-rpl-reconnect}} makes the replication try to reconnect instead of immediately raising connection failure.
{{Feature|important|Endless reconnection loop is designed for debug purposes only.}}
; Example
ArmaReforgerServer.exe -rpl-reconnect
=== rpl-timeout-disable ===
{{hl|rpl-timeout-disable}} disables client/server timeout.
{{Feature|important|
If a connection stops responding, the server performance will start deteriorating until it will eventually run out of memory and crash.
This parameter is strictly for debugging purposes.
}}
; Example
ArmaReforgerServer.exe -rpl-timeout-ms 10000
=== rpl-timeout-ms ===
{{hl|rpl-timeout-ms}} sets the client/server timeout's value, in milliseconds.
; Example
ArmaReforgerServer.exe -rpl-timeout-ms 10000
=== rpl-validation-rdb-disable ===
{{hl|-rpl-validation-rdb-disable}} disables the validation of clients resource database.
{{Feature|important|This should not be disabled in normal usage conditions. This is for development purpose only!}}
; Example
ArmaReforgerServer.exe -rpl-validation-rdb-disable
=== rpl-validation-scr-disable ===
Disables the validation of clients scripts checksum.
{{Feature|important|This should not be disabled in normal usage conditions. This is for development purpose only!}}
; Example
ArmaReforgerServer.exe -rpl-validation-scr-disable
=== rpl-validation-version-disable ===
Disables the validation of clients executable version.
{{Feature|important|This should not be disabled in normal usage conditions. This is for development purpose only!}}
; Example
ArmaReforgerServer.exe -rpl-validation-version-disable


=== staggeringBudget ===
=== staggeringBudget ===


{{hl|-staggeringBudget}} defines how many stationary spatial map cells are allowed to be processed in one tick in 1..10201 range. If not set it uses "{{Link|#nds|-nds}}" diameter. A lower number will limit how many cells the server has to process per tick, but increase the time it takes for a client to have all relevant entities streamed in, if the server experiences significant performance drops on spawning/teleporting then the number is set too high, if you the client experiences "pop-in" of replicated items then the number is set too low.
{{hl|-staggeringBudget}} defines how many stationary spatial map cells are allowed to be processed in one tick in 1..10201 range. If not set it uses "{{Link|#nds|-nds}}" diameter. A lower number will limit how many cells the server has to process per tick, but increase the time it takes for a client to have all relevant entities streamed in, if the server experiences significant performance drops on spawning/teleporting then the number is set too high, if you the client experiences "pop-in" of replicated items then the number is set too low.
; Example
; Example
  ArmaReforgerServer.exe -staggeringBudget 5000
  ArmaReforgerServer.exe -staggeringBudget 5000
Line 433: Line 522:


{{hl|-streamingBudget}} is the global streaming budget that is equally distributed between all connections. To decrement the budget, it uses the replicated hierarchy size of each entity that needs to be streamed in. It cannot go under 100 to prevent the system stalling. A lower number will limit how many entities the server has to process per tick, but increase the time it takes for a client to have that entity streamed in, if the server experiences significant performance drops on spawning/teleporting then the number is set too high, if the client experiences "pop-in" of replicated items then the number is set too low.
{{hl|-streamingBudget}} is the global streaming budget that is equally distributed between all connections. To decrement the budget, it uses the replicated hierarchy size of each entity that needs to be streamed in. It cannot go under 100 to prevent the system stalling. A lower number will limit how many entities the server has to process per tick, but increase the time it takes for a client to have that entity streamed in, if the server experiences significant performance drops on spawning/teleporting then the number is set too high, if the client experiences "pop-in" of replicated items then the number is set too low.
; Example
; Example
  ArmaReforgerServer.exe -streamingBudget 500
  ArmaReforgerServer.exe -streamingBudget 500
Line 439: Line 529:


{{hl|-streamsDelta}} is a tool to limit the amount of streams being opened for a client in range 1..1000 (default 100). If the difference between 'the number of streams the server has open' and 'the number of streams the client has open' is larger than the NUMBER then the server will not open any more streams this tick. To be adjusted based on average client networking speed.
{{hl|-streamsDelta}} is a tool to limit the amount of streams being opened for a client in range 1..1000 (default 100). If the difference between 'the number of streams the server has open' and 'the number of streams the client has open' is larger than the NUMBER then the server will not open any more streams this tick. To be adjusted based on average client networking speed.
; Example
; Example
  ArmaReforgerServer.exe -streamsDelta 200
  ArmaReforgerServer.exe -streamsDelta 200
Line 444: Line 535:


== Debug ==
== Debug ==
=== debugger ===
{{hl|-debugger}} sets the script debugger to a specific address.
{{Feature|informative|The default value is localhost.}}
; Example
ArmaReforgerServer.exe -debugger 192.168.0.5
=== debuggerPort ===
{{hl|-debuggerPort}} sets the script debugger to a specific port.
{{Feature|informative|The default value is 1000.}}
; Example
ArmaReforgerServer.exe -debuggerPort 1040
=== generateShaders ===
{{hl|-generateShaders}} forces shaders generation.
; Example
ArmaReforgerServer.exe -generateShaders
=== disableShadersBuild ===
{{hl|-disableShadersBuild}} disables shaders generation.
; Example
ArmaReforgerServer.exe -disableShadersBuild
=== log-rdb-checksum ===
{{hl|-log-rdb-checksum}} enables logging detailed information about RDB checksum computation (GUID and path in order in which they are added to checksum) for RDB checksum issues debugging.
; Example
ArmaReforgerSteam.exe -log-rdb-checksum
=== log-scr-checksum ===
{{hl|-log-scr-checksum}} enables the logging of all script files used in compilation and their checksums.
; Example
ArmaReforgerSteam.exe -log-scr-checksum


=== logAppend ===
=== logAppend ===


{{hl|-logAppend}} makes logs to not be emptied on game start, keeping the history.
{{hl|-logAppend}} makes logs to not be emptied on game start, keeping the history.
; Example
; Example
  ArmaReforgerSteam.exe -logAppend
  ArmaReforgerSteam.exe -logAppend
Line 494: Line 630:
; Example
; Example
  ArmaReforgerSteam.exe -scriptAuthorizeAll
  ArmaReforgerSteam.exe -scriptAuthorizeAll
=== VMErrorMode ===
{{hl|-VMErrorMode}} sets script VM's error reporting mode; possible values are:
* {{hl|silent}} - silently continues
* {{hl|log_only}} - logs the error then continues
* {{hl|full}} - shows the VME dialog, logs the error, then clicking "ignore" continues execution
* {{hl|fatal}} - logs the error then exits the game
== Profiling ==
=== checkInstance ===
{{hl|-checkInstance}} turns on script VM's memory allocations logging - see [[Arma Reforger:Script Profiling|Script Profiling]].
=== scriptExtProfiler ===
{{hl|-scriptExtProfiler}} turns on script VM's support for external [[Arma Reforger:Script Profiling|Script Profiling]].
; Example
ArmaReforgerSteam.exe -scriptExtProfiler




{{GameCategory|armaR|Support}}
{{GameCategory|armaR|Support}}

Revision as of 19:59, 12 December 2022

Startup parameters' names are case-insensitive - e.g -logstats and -LogSTATS are identical.


General

addons

-addons takes a list of mod IDs (specified in their gproj files, without brackets) to be loaded on game start, separated by a comma ,.
Mods are searched in profile/addons, in <executableDir>/addons and in directories specified by -addonsDir (see below).

Mod IDs can be:
  • GUIDs (preferred - found in .gproj)
  • Project ID (found in .gproj)
  • Sub-directory name (fallback solution)
Example
ArmaReforgerSteam.exe -addons 88037E46AD234C72,88037E46AD234C73

addonsDir

-addonsDir specifies additional directories in which the game must look for mods to load, separated by a comma ,.

By default, the game looks into:
  • Documents/My Games/ArmaReforger/profile/addons
  • <executableDir>/addons
It is recommended to use absolute paths to Mod directories even though the provided path can be relative to the executable location.
Example
ArmaReforgerSteam.exe -addonsDir D:\DownloadedMods

addonDownloadDir

-addonDownloadDir specifies where the game and the Workshop should download addons.

It is recommended to use absolute paths to Mod directories even though the provided path can be relative to the executable location.
Example
ArmaReforgerSteam.exe -addonDownloadDir D:\DownloadedMods

GPUAdapter

-GPUAdapter forces to use the graphic card at the provided index. GPU index can be found using DxDiag.

Example
ArmaReforgerSteam.exe -GPUAdapter 0

language

-language sets the game language by language code - supported language codes depends on StringTable which is set in gproj. Arma Reforger supported languages are:

  • flag uk.gif en_us - English
  • flag france.gif fr_fr - French
  • flag italy.gif it_it - Italian
  • flag germany.gif de_de - German
  • flag spain.gif es_es - Spanish
  • flag czechrep.gif cs_cz - Czech
  • flag poland.gif pl_pl - Polish
  • flag russia.gif ru_ru - Russian
  • flag japan.gif ja_jp - Japanese
  • flag korea.gif ko_kr - Korean
  • flag portugal.gif pt_br - Portuguese
  • flag china.gif zh_cn - Mandarin
Example
ArmaReforgerSteam.exe -language cs_cz

noBackend

-noBackend disables backend-related http communication.

Example
ArmaReforgerSteam.exe -noBackend

noSound

-noSound disables the sound system processing.

Example
ArmaReforgerSteam.exe -noSound

noSplash

-noSplash skips splash screens on game load.

Example
ArmaReforgerSteam.exe -noSplash

noThrow

-noThrow disables all kinds of error message dialogs. (VME's, asserts, crashes, ...).

Example
ArmaReforgerSteam.exe -noThrow

profile

-profile defines the profile to be used - located in the %userprofile%\My Documents\My Games\<name> directory.

Example
ArmaReforgerSteam.exe -profile "David Armstrong"

singleThreadedUpdate

-singleThreadedUpdate disables multithreaded update.

Example
ArmaReforgerSteam.exe -singleThreadedUpdate

world

-world defines the world file to be loaded on startup, both absolute and relative paths are supported although it is recommended to use path relative to created filesystems (eg. worlds/myworld.ent). Workbench ignores this parameter - for that, use -load parameter instead.

Example
ArmaReforgerSteam.exe -world worlds/myworld.ent


Window

window

-window starts the game windowed (fullscreen by default).

Example
ArmaReforgerSteam.exe -window

posX

posY

-posX and -posY define the initial window position. They must be used with -window.
posX 0 is left of the screen,
posY 0 is top of the screen.

Example
ArmaReforgerSteam.exe -window -posX 0 -posY 64

screenWidth

screenHeight

-screenWidth and -screenHeight define the window's size (and not its render resolution). They must be used with -window.

Example
ArmaReforgerSteam.exe -window -screenWidth 1024 -screenHeight 578

forceUpdate

-forceUpdate forces the application to render and update even when the window is out of focus.

Example
ArmaReforgerSteam.exe -forceUpdate

noFocus

-noFocus prevents window focus stealing on game initialization.

Example
ArmaReforgerSteam.exe -noFocus


Workbench

These parameters apply to the Workbench executable.

wbModule

-wbModule specifies which Workbench module must be launched (with -run):

Editor Entry (case-insensitive)
Resource Manager resourceManager
World Editor worldEditor
Particle Editor particleEditor
Animation Editor animEditor
Script Editor scriptEditor
Audio Editor audioEditor
Behavior Editor behaviorEditor
Procedural Animation Editor procAnimEditor
String Editor localizationEditor
  • Parameters specified after the module name are considered to be parameters to the module specifically.
  • The -run parameter must be added after each instance of -wbmodule for them to launch.
Example
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run

plugin

-plugin specifies which Workbench plugin must be launched (WorldTestPlugin, TextureImportTool, MaterialImportTool, WorldDataExport etc).

  • Parameters specified after the plugin are considered to be parameters to the plugin specifically.
  • Plugins are loaded for specific modules. Before loading a plugin specify the appropriate wbmodule.
Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -plugin=ResavePlugin pluginArguments

run

-run tells the executable to open the designated Workbench module (specified by -wbmodule usage).

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=WorldEditor -run

load

-load tells the executable to open selected file in the designated Workbench module (specified by -wbmodule usage). The file path can be specified either by absolute path, relative path, exact path or by resource name.

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=WorldEditor -run -load "world/myworld.ent"

This will open up the World Editor and load the myworld.ent file.

packAddon

-packAddon is the main parameter used for addon packing.

When no directory is specified (by using packAddonDir), the directory from the last session is used.

When packing an addon for the first time, a new directory is automatically created in the same dir as profile.

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -packAddon

packAddonDir

-packAddonDirspecifies the output directory where resulting PAKs will be saved.

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -packAddon -packAddonDir "D:\build\Green"

publishAddon

-publishAddon is main parameter used for addon publishing.

It should be used only for publishing addon updates, and not for the initial publish because data from last session are used to fill in the blanks.

It can be used on its own, in combination with packAddon or in combination with parameters starting with "publishAddon".

When no directory is specified (by using publishAddonDir) a directory from last session is used.

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon

publishAddonDir

-publishAddonDir specifies the pre-packed data directory (obtained by the -packAddon parameter above). When not specified, directory from the last session is used.

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon -publishAddonDir "D:\build\Green"

publishAddonVersion

-publishAddonVersion specifies the mod's version number. When not specified, newest version found on back-end is used and it's last digit is automatically incremented.

Example
ArmaReforgerWorkbenchSteam.exe -wbmodule=ResourceManager -publishAddon -publishAddonVersion "2.3.5"

publishAddonChangeNote

-publishAddonChangeNote is an optional parameter that specifies a note to the provided update.

Example
ArmaReforgerWorkbenchSteam.exe -publishAddonChangeNote "Fix shading"

publishAddonPreviewImage

-publishAddonPreviewImage is an optional parameter that which you can use to specify path to preview image file.

Example
ArmaReforgerWorkbenchSteam.exe -publishAddonPreviewImage "z:/mymod/my_preview_image.jpg"

publishAddonScreenshots

-publishAddonScreenshots is an optional parameter that specify folder from where the screenshots should be taken. It is then automatically scanned for all valid image file types (jpg, png, bmp).

Example
ArmaReforgerWorkbenchSteam.exe -publishAddonScreenshots "Z:/mymod/screenshots"

scrDefine

-scrDefine allows to determine a script preprocessor definition. Multiple ones can be chained using multiple -scrDefine.

This parameter also works for Client and Server executables.

#ifdef TAG_DEBUG Print("The TAG_DEBUG flag is defined."); #else Print("The TAG_DEBUG flag is not defined."); #endif

Example
ArmaReforgerWorkbenchSteam.exe -scrDefine TAG_DEBUG -scrDefine OTHER_FLAG
ArmaReforgerSteam.exe -scrDefine TAG_DEBUG -scrDefine OTHER_FLAG
ArmaReforgerServer.exe -scrDefine TAG_DEBUG -scrDefine OTHER_FLAG

wbBackendLogin

-wbBackendLogin enforces a specific account to log in. Password is hidden console log.

Example
ArmaReforgerWorkbenchSteam.exe -wbBackendLogin myEmail@bistudio.com myPassword

enableWARP

enableWARP allows DirectX WARP (Windows Advanced Rasterization Platform) to create a virtual device for computers without a DirectX 12 device.

This parameter does not force WARP, only allows it.
Example
ArmaReforgerWorkbenchSteam.exe -enableWARP


Hosting

These parameters apply to the Server executable.

a2sIpAddress

-a2sIpAddress sets Steam Query Protocol's Bind IP address.

Example
ArmaReforgerServer.exe -a2sIpAddress 192.168.1.10

a2sPort

-a2sPort sets Steam Query Protocol's Bind port.

Example
ArmaReforgerServer.exe -a2sPort 7777

bindIP

-bindIP can be used to override both gameHostBindAddress and gameHostRegisterBindAddress values present in server config.

Example
ArmaReforgerServer.exe -bindIP 192.168.1.42

bindPort

-bindPort can be used to override both gameHostBindPort and gameHostRegisterBindPort values present in server config.

Example
ArmaReforgerServer.exe -bindPort 2302

client

-client starts up an RplSession in local client mode. The session tries to connect to the provided IP.

Example
ArmaReforgerSteam.exe -client 127.0.0.1

config

-config is used by servers to point to a JSON server configuration.

See Server Hosting for more information.
Example
ArmaReforgerServer.exe -config myConfigFile.json

listScenarios

-listScenarios prints to game logs the scenario .conf file paths.

Example
ArmaReforgerServer.exe -listScenarios
Result
e.g
: --------------------------------------------------
: Official scenarios (3 entries)
: --------------------------------------------------
: {90F086877C27B6F6}Missions/99_Tutorial.conf (Tutorial)
: {ECC61978EDCC2B5A}Missions/23_Campaign.conf (Conflict)
: {59AD59368755F41A}Missions/21_GM_Eden.conf (Game Master - Everon)
: --------------------------------------------------
: Workshop scenarios (8 entries)
: --------------------------------------------------
: {6EA2E454519E5869}Missions/CAH_Military_Base.conf
: {7C491B1FCC0FF0E1}Missions/CAH_LeMoule.conf
: {F1A1BEA67132113E}Missions/CAH_Castle.conf
: {589945FB9FA7B97D}Missions/CAH_Concrete_Plant.conf
: {2B4183DF23E88249}Missions/CAH_Morton.conf
: {3F2E005F43DBD2F8}Missions/CAH_Briars_Coast.conf
: {9405201CBD22A30C}Missions/CAH_Factory.conf
: {1CD06B409C6FAE56}Missions/CAH_Forest.conf
: --------------------------------------------------

logStats

-logStats allows to log performance statistics every (optionally) defined interval (in milliseconds).

Example
ArmaReforgerServer.exe -logStats - logs every seconds
ArmaReforgerServer.exe -logStats 10000 - only logs every 10s
Result
FPS: 60.0, frame time (avg: 16.7 ms, min: 9.3 ms, max: 23.7 ms), Mem: 3291106 kB, Player: 2, AI: 104, Veh: 0 (17), Proj (S: 12, M: 0, G: 0 | 12), RplItemsS: 410, RplItemsC0: 17068
  • FPS: <float> = Current Server-FPS value at the time of reporting.
  • frame time (avg: <float> ms, min: <float> ms, max: <float> ms) = The average, minimum, & maximum frame times reported by the server at the time of reporting.
  • Mem: <int> = The current memory usage in kilobytes as reported internally by the server at the time of reporting.
  • Player: <int> = Number of current players on the server at the time of reporting.
  • AI: <int> = Number of current AI spawned on the server at the time of reporting.
  • Veh <int> (<int>)= The value inside the parenthesis is the current number of vehicles spawned on the server at the time of reporting.
  • Proj:
    • S: <int> = Number of active shells on the server at the time of reporting.
    • M: <int> = Number of active missiles on the server at the time of reporting.
    • G: <int> = Number of active grenades on the server at the time of reporting.
    • | <int> = Total projectiles at the time of reporting.
  • RplItemsS: <int> = The number of dynamic (spawned during game) streams on the server at the time of reporting.
  • RplItemsC0: <int> = The number of streams open to the client at the time of reporting.

maxFPS

-maxFPS sets max FPS limit - useful for a server, or to force a client's max FPS.

Also works on clients, even though the Video Settings FPS limitation option is preferred.
Example
ArmaReforgerServer.exe -maxFPS 30


Network Tuning

These parameters apply to the Server executable.

nds

-nds Network Dynamic Simulation (nds) is a server feature that only streams in relevant replicated entities for each client. the provided value stands for diameter, or the number of cells which are being replicated - default is 2 in each direction. To turn the feature off use -nds 0. A higher diameter will result in a bigger networked view range, lower server performance.

Example
ArmaReforgerServer.exe -nds 1

nwkResolution

-nwkResolution defines what resolution Spatial Map cells should be set at in a 100..1000m range. Smaller resolution will result in less "pop-in" but lower networked view range. For high view range use high resolution, but small diameter.

Example
ArmaReforgerServer.exe -nwkResolution 500

rpl-reconnect

-rpl-reconnect makes the replication try to reconnect instead of immediately raising connection failure.

Endless reconnection loop is designed for debug purposes only.
Example
ArmaReforgerServer.exe -rpl-reconnect

rpl-timeout-disable

rpl-timeout-disable disables client/server timeout.

If a connection stops responding, the server performance will start deteriorating until it will eventually run out of memory and crash. This parameter is strictly for debugging purposes.
Example
ArmaReforgerServer.exe -rpl-timeout-ms 10000

rpl-timeout-ms

rpl-timeout-ms sets the client/server timeout's value, in milliseconds.

Example
ArmaReforgerServer.exe -rpl-timeout-ms 10000

rpl-validation-rdb-disable

-rpl-validation-rdb-disable disables the validation of clients resource database.

This should not be disabled in normal usage conditions. This is for development purpose only!
Example
ArmaReforgerServer.exe -rpl-validation-rdb-disable

rpl-validation-scr-disable

Disables the validation of clients scripts checksum.

This should not be disabled in normal usage conditions. This is for development purpose only!
Example
ArmaReforgerServer.exe -rpl-validation-scr-disable

rpl-validation-version-disable

Disables the validation of clients executable version.

This should not be disabled in normal usage conditions. This is for development purpose only!
Example
ArmaReforgerServer.exe -rpl-validation-version-disable

staggeringBudget

-staggeringBudget defines how many stationary spatial map cells are allowed to be processed in one tick in 1..10201 range. If not set it uses "-nds" diameter. A lower number will limit how many cells the server has to process per tick, but increase the time it takes for a client to have all relevant entities streamed in, if the server experiences significant performance drops on spawning/teleporting then the number is set too high, if you the client experiences "pop-in" of replicated items then the number is set too low.

Example
ArmaReforgerServer.exe -staggeringBudget 5000

streamingBudget

-streamingBudget is the global streaming budget that is equally distributed between all connections. To decrement the budget, it uses the replicated hierarchy size of each entity that needs to be streamed in. It cannot go under 100 to prevent the system stalling. A lower number will limit how many entities the server has to process per tick, but increase the time it takes for a client to have that entity streamed in, if the server experiences significant performance drops on spawning/teleporting then the number is set too high, if the client experiences "pop-in" of replicated items then the number is set too low.

Example
ArmaReforgerServer.exe -streamingBudget 500

streamsDelta

-streamsDelta is a tool to limit the amount of streams being opened for a client in range 1..1000 (default 100). If the difference between 'the number of streams the server has open' and 'the number of streams the client has open' is larger than the NUMBER then the server will not open any more streams this tick. To be adjusted based on average client networking speed.

Example
ArmaReforgerServer.exe -streamsDelta 200


Debug

debugger

-debugger sets the script debugger to a specific address.

The default value is localhost.
Example
ArmaReforgerServer.exe -debugger 192.168.0.5

debuggerPort

-debuggerPort sets the script debugger to a specific port.

The default value is 1000.
Example
ArmaReforgerServer.exe -debuggerPort 1040

generateShaders

-generateShaders forces shaders generation.

Example
ArmaReforgerServer.exe -generateShaders

disableShadersBuild

-disableShadersBuild disables shaders generation.

Example
ArmaReforgerServer.exe -disableShadersBuild

log-rdb-checksum

-log-rdb-checksum enables logging detailed information about RDB checksum computation (GUID and path in order in which they are added to checksum) for RDB checksum issues debugging.

Example
ArmaReforgerSteam.exe -log-rdb-checksum

log-scr-checksum

-log-scr-checksum enables the logging of all script files used in compilation and their checksums.

Example
ArmaReforgerSteam.exe -log-scr-checksum

logAppend

-logAppend makes logs to not be emptied on game start, keeping the history.

Example
ArmaReforgerSteam.exe -logAppend

logLevel

-logLevel allows for different log levels. Possible values range from normal (where everything is logged) to fatal (where only extreme issues are logged):

  • normal
  • warning
  • error
  • fatal
Example
ArmaReforgerSteam.exe -logLevel warning

logFS

-logFS logs every read/write operation in filesystem.log. This option is very demanding and can produce a big file in a short time, so it is to use with caution for debug purpose.

Example
ArmaReforgerSteam.exe -logFS

noCrashDialog

-noCrashDialog skips Crash Reporter's dialog and automatically sends crash reports.

Example
ArmaReforgerSteam.exe -noCrashDialog

keepCrashFiles

-keepCrashFiles prevents Crash Reporter from cleaning crash files on successful crash sending.

Example
ArmaReforgerSteam.exe -keepCrashFiles

scriptAuthorizeAll

-scriptAuthorizeAll disables the security popup about RunCmd, RunProcess, KillProcess and (outside of profile directory) FileIO operations.

Example
ArmaReforgerSteam.exe -scriptAuthorizeAll

VMErrorMode

-VMErrorMode sets script VM's error reporting mode; possible values are:

  • silent - silently continues
  • log_only - logs the error then continues
  • full - shows the VME dialog, logs the error, then clicking "ignore" continues execution
  • fatal - logs the error then exits the game


Profiling

checkInstance

-checkInstance turns on script VM's memory allocations logging - see Script Profiling.

scriptExtProfiler

-scriptExtProfiler turns on script VM's support for external Script Profiling.

Example
ArmaReforgerSteam.exe -scriptExtProfiler