Startup Parameters – Arma Reforger

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Add flags)
m (Add forceUpdate similarity note to noPause)
 
(67 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{TOC|side}}
{{TOC|side}}
{{Feature|informative|Startup parameters' ''names'' are case-insensitive - e.g {{hl|-logstats}} and {{hl|-LogSTATS}} are identical.}}
Startup parameters are command line interface(CLI) arguments that go after the executable's name in order to set options; e.g {{hl|ArmaReforgerSteam.exe -window}} to start the game in {{Link|#window}}ed mode.
{{Feature|informative|
* Startup parameters' ''names'' are case-insensitive - e.g {{hl|-logstats}} and {{hl|-LogSTATS}} are identical.
* Spaces in parameter values must be wrapped in quotations - e.g. {{hl|-addonDownloadDir "E:\Arma Addons"}}
}}
{{TOC|subtoc
|content=
* 1. {{Link|#General}}
* 2. {{Link|#Window}}
* 3. {{Link|#Workbench}}
* 4. {{Link|#Workbench - LocalizationEditor Module}}
* 5. {{Link|#Workbench - NavmeshGeneratorMain Module}}
* 6. {{Link|#Workbench - ResourceManager Module}}
* 7. {{Link|#Workbench - ScriptEditor Module}}
* 8. {{Link|#Workbench - WorldEditor Module}}
* 9. {{Link|#Hosting}}
* 10. {{Link|#Network Tuning}}
* 11. {{Link|#Debug}}
* 12. {{Link|#Profiling}}
}}
 
 
== General ==
== General ==


Line 13: Line 34:
* Sub-directory name (fallback solution)
* Sub-directory name (fallback solution)
}}
}}
; Example
; Example
  ArmaReforgerSteam.exe -addons 88037E46AD234C72,88037E46AD234C73
  ArmaReforgerSteam.exe -addons 88037E46AD234C72,88037E46AD234C73
Line 25: Line 47:
}}
}}
{{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 30: Line 53:
=== addonDownloadDir ===
=== addonDownloadDir ===


{{hl|-addonDownloadDir}} specifies where the game and the Workshop should download addons.
{{hl|-addonDownloadDir}} specifies where the game and the Workshop should download addons. Downloaded addons will be stored in addons subfolder inside of target directory.
{{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.}}{{Feature|informative|It is not necessary to combine this command with '''addonsDir''' parameter}}
 
; Example
; Example
  ArmaReforgerSteam.exe -addonDownloadDir D:\DownloadedMods
  ArmaReforgerSteam.exe -addonDownloadDir D:\DownloadedMods
{{ArgTitle|3|addonTempDir|{{GVI|armaR|1.1.0}}}}
{{hl|-addonTempDir}} specifies the directory for temporary content.
; Example
ArmaReforgerSteam.exe -addonTempDir "C:\Temp"
=== backendDisableStorage ===
{{hl|-backendDisableStorage}} disables use of storage, no loads or saves can be performed both online and '''local'''.
; Example
ArmaReforgerSteam.exe -backendDisableStorage
=== backendFreshSession ===
{{hl|-backendFreshSession}} skips the initial load request from dedicated server's configuration file or from script - the DS Session basically starts as a brand new one, the rest of functionalities is not affected (saves, runtime loads, etc).
; Example
ArmaReforgerSteam.exe -backendFreshSession
=== backendLocalStorage ===
{{hl|-backendLocalStorage}} forces Save & Load of player and general data normally sent to/received from the backend to work with local JSON files in profile folder instead.
; Example
ArmaReforgerSteam.exe -backendLocalStorage
{{ArgTitle|3|freezeCheck|{{GVI|armaR|1.2.0}}}}
{{hl|-freezeCheck}} overrides time in seconds to forcefully crash on application freeze or completely disable detection. Default 300 (5 minutes), range 0 (disabled) to 600 (10 minutes).
{{Feature|informative|Workbench has default time set to 1 minute and will only generate minidump without crashing.}}
; Example
ArmaReforgerSteam.exe -freezeCheck 30
{{ArgTitle|3|freezeCheckMode|{{GVI|armaR|1.2.0}}}}
{{hl|-freezeCheckMode}} overrides behavior which should happen when freeze is detected.
* {{hl|crash}} - force crashes the application (default on Client and Server)
* {{hl|minidump}} - silently generates minidump and keeps application running until it unfreezes or is terminated by user (default on Workbench)
{{Feature|important|Option {{hl|minidump}} is supported only on Windows.}}
; Example
ArmaReforgerSteam.exe -freezeCheckMode crash
ArmaReforgerSteam.exe -freezeCheckMode minidump
=== cfg ===
{{hl|-cfg}} forces to load specific user engine settings config (things like graphics settings, window position and size etc).


=== GPUAdapter ===
=== GPUAdapter ===


{{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 {{Link|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 44: Line 121:


{{hl|-language}} sets the game language by language code - supported language codes depends on StringTable which is set in gproj. {{armaR}} supported languages are:
{{hl|-language}} sets the game language by language code - supported language codes depends on StringTable which is set in gproj. {{armaR}} supported languages are:
{{Columns|4|
* [[File:flag_uk.gif]] {{hl|en_us}} - English
* [[File:flag_uk.gif]] {{hl|en_us}} - English
* [[File:flag_france.gif]] {{hl|fr_fr}} - French
* [[File:flag_france.gif]] {{hl|fr_fr}} - French
Line 56: Line 134:
* [[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
* {{GVI|armaR|1.2.0|size= 0.75}} [[File:flag_ukraine.gif]] {{hl|uk_ua}} - Ukrainian
}}
; Example
; Example
  ArmaReforgerSteam.exe -language cs_cz
  ArmaReforgerSteam.exe -language cs_cz
=== noSplash ===
{{hl|-noSplash}} skips splash screens on game load.
; Example
ArmaReforgerSteam.exe -noSplash


=== noBackend ===
=== noBackend ===


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


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


=== profile ===
=== noSplash ===
 
{{hl|-noSplash}} skips splash screens on game load.


{{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 -noSplash


=== noThrow ===
=== noThrow ===


Disable 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
=== profile ===
{{hl|-profile}} defines the path to the {{hl|profile}} directory to be used, either by parent directory name or by path.
; Example
ArmaReforgerSteam.exe -profile "David Armstrong" // targets {{hl|%userprofile%\My Documents\My Games\David Armstrong\profile}}
ArmaReforgerSteam.exe -profile "C:\Users\MyUserName\Documents\ArmaReforgerDir" // targets {{hl|"C:\Users\MyUserName\Documents\ArmaReforgerDir\profile"}}
=== singleThreadedUpdate ===
{{hl|-singleThreadedUpdate}} disables multithreaded update.
; Example
ArmaReforgerSteam.exe -singleThreadedUpdate
=== world ===
{{hl|-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|-load]] parameter instead.
; Example
ArmaReforgerSteam.exe -world worlds/myworld.ent




Line 95: Line 196:


{{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 112: Line 214:


{{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 118: Line 221:


{{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.
{{Feature|informative|Previously known as {{Link|Arma 3: Startup Parameters#noPause|-noPause}} in earlier titles.}}
; Example
; Example
  ArmaReforgerSteam.exe -forceUpdate
  ArmaReforgerSteam.exe -forceUpdate
Line 124: Line 230:


{{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 131: Line 238:


{{Feature|important|These parameters apply to the Workbench executable.}}
{{Feature|important|These parameters apply to the Workbench executable.}}
=== forceSettings ===
{{hl|-forcesettings}} forces to use the specified Workbench settings from a file instead of the usual settings stored in Windows registry which will be entirely ignored.
The settings in a file will be used for reading and also writing.
This functionality is compatible with {{hl|wbSettingsDump.ini}} files being attached to crash reports.
{{Feature|informative|It is possible to export Workbench settings to an {{hl|.ini}} file from {{Link|Arma Reforger:Resource Manager: Options#Export settings|Workbench options}}.}}
=== gproj ===
{{hl|-gproj}}
; Example
ArmaReforgerWorkbenchSteam.exe -gproj "C:\Program Files (x86)\Steam\steamapps\common\Arma Reforger\addons\data\ArmaReforger.gproj"
=== gprojConfig ===
{{hl|-gprojConfig}} forces loading the provided configuration e.g {{hl|PC}}, {{hl|HEADLESS}} etc.
; Example
ArmaReforgerWorkbenchSteam.exe -gprojConfig PC
=== wbModule ===
{{hl|-wbModule}} specifies which {{GameCategory|armaR|Modding|Official Tools|text= Workbench}} module must be launched (with {{hl|[[#run|-run]]}}):
{| class="wikitable"
! Editor
! Entry (case-insensitive)
! Additional Information
|-
| [[Arma Reforger:Resource Manager|Resource Manager]]
| resourceManager
|-
| [[Arma Reforger:World Editor|World Editor]]
| worldEditor
| See also {{Link|#Workbench - WorldEditor Module}} below
|-
| [[Arma Reforger:Particle Editor|Particle Editor]]
| particleEditor
|-
| [[Arma Reforger:Animation Editor|Animation Editor]]
| animEditor
|-
| [[Arma Reforger:Script Editor|Script Editor]]
| scriptEditor
| See also {{Link|#Workbench - ScriptEditor Module}} below
|-
| [[Arma Reforger:Audio Editor|Audio Editor]]
| audioEditor
|-
| [[Arma Reforger:Behavior Editor|Behavior Editor]]
| behaviorEditor
|-
| [[Arma Reforger:Procedural Animation Editor|Procedural Animation Editor]]
| procAnimEditor
|-
| [[Arma Reforger:String Editor|String Editor]]
| localizationEditor
| See also {{Link|#Workbench - LocalizationEditor Module}} below
|-
| Navmesh Generator
| navmeshGeneratorMain
| See also {{Link|#Workbench - NavmeshGeneratorMain Module}} below
|}
{{Feature|informative|
* Parameters specified after the module name are considered to be parameters to the module specifically.
* The {{hl|[[#run|-run]]}} parameter must be added after each instance of {{hl|-wbModule}} for them to launch.
}}
; Example
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run
=== plugin ===
{{hl|-plugin}} specifies which {{GameCategory|armaR|Modding|Official Tools|text= Workbench}} plugin must be launched (WorldTestPlugin, TextureImportTool, MaterialImportTool, WorldDataExport etc).
{{Feature|informative|
* 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|wbModule]].
}}
; Example
ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -plugin=ResavePlugin pluginArguments
=== run ===
{{hl|-run}} tells the executable to open the designated Workbench module (specified by {{hl|[[#wbModule|-wbModule]]}} usage).
; Example
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run
=== load ===
{{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.
; Example
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run -load "world/myworld.ent"
This will open up the [[Arma Reforger:World Editor|World Editor]] and load the {{hl|myworld.ent}} file.


=== packAddon ===
=== packAddon ===


Main parameter used for addon packing.
{{hl|-packAddon}} is the main parameter used for addon packing.


When no directory is specified (by using '''packAddonDir'''), a directory from last session is used.
When no directory is specified (by using {{hl|{{Link|#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 {{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
  ArmaReforgerWorkbench.exe -wbmodule=ResourceManager -packAddon
  ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -packAddon


=== packAddonDir ===
=== packAddonDir ===


{{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
  ArmaReforgerWorkbench.exe -wbmodule=ResourceManager -packAddon -packAddonDir "D:\build\Green"
  ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -packAddon -packAddonDir "D:\build\Green"


=== publishAddon ===
=== publishAddon ===
Line 157: Line 368:


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
  ArmaReforgerWorkbench.exe -wbmodule=ResourceManager -publishAddon
  ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -publishAddon


=== publishAddonDir ===
=== publishAddonDir ===
Line 164: Line 376:
{{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
  ArmaReforgerWorkbench.exe -wbmodule=ResourceManager -publishAddon -publishAddonDir "D:\build\Green"
  ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -publishAddon -publishAddonDir "D:\build\Green"


=== publishAddonVersion ===
=== publishAddonVersion ===
Line 171: Line 384:
{{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
  ArmaReforgerWorkbench.exe -wbmodule=ResourceManager -publishAddon -publishAddonVersion "2.3.5"
  ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -publishAddon -publishAddonVersion "2.3.5"


=== publishAddonChangeNote ===
=== publishAddonChangeNote ===


{{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
  ArmaReforgerWorkbench.exe -publishAddonChangeNote "Fix shading"
  ArmaReforgerWorkbenchSteam.exe -publishAddonChangeNote "Fix shading"


=== publishAddonChangeNoteFile ===
=== publishAddonChangeNoteFile ===


{{hl|-publishAddonChangeNoteFile}} is an optional parameter that specifies a note to the provided update through the provided file.
{{hl|-publishAddonChangeNoteFile}} is an optional parameter which is used to specify this update's change note.
 
; Example
; Example
  ArmaReforgerWorkbench.exe -publishAddonChangeNoteFile "changelog.txt"
  ArmaReforgerWorkbenchSteam.exe -publishAddonChangeNoteFile "C:\Addon\changelog.txt"
 
=== publishAddonPreviewImage ===
 
{{hl|-publishAddonPreviewImage}} is an optional parameter which you can use to specify the preview image file's path.
 
; Example
ArmaReforgerWorkbenchSteam.exe -publishAddonPreviewImage "z:/mymod/my_preview_image.jpg"
 
=== publishAddonScreenshots ===
 
{{hl|-publishAddonScreenshots}} is an optional parameter that specifies the directory 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"
 
=== rebuild-database-only ===
 
{{hl|-rebuild-database-only}} makes Workbench automatically exit when the database file is refreshed. This is useful for creating game packages which should be distributed with the latest database file.
 
; Example
ArmaReforgerWorkbenchSteam.exe -rebuild-database-only


=== scrDefine ===
=== scrDefine ===


{{hl|-scrDefine}} allows to determine a script preprocessor definition.
{{hl|-scrDefine}} allows to determine a script preprocessor definition. Multiple ones can be chained using multiple {{hl|-scrDefine}}.
{{Feature|informative|This parameter also works for Client and Server executables.}}
{{Feature|informative|This parameter also works for Client and Server executables.}}
<syntaxhighlight lang="cpp">
<enforce>
#ifdef TAG_DEBUG
#ifdef TAG_DEBUG
Print("The TAG_DEBUG flag is defined.");
Print("The TAG_DEBUG flag is defined.");
Line 196: Line 433:
Print("The TAG_DEBUG flag is not defined.");
Print("The TAG_DEBUG flag is not defined.");
#endif
#endif
</syntaxhighlight>
</enforce>


; Example
; Example
  ArmaReforgerWorkbench.exe -scrDefine TAG_Debug
  ArmaReforgerWorkbenchSteam.exe -scrDefine TAG_DEBUG -scrDefine OTHER_FLAG
  ArmaReforgerSteam.exe -scrDefine TAG_Debug
  ArmaReforgerSteam.exe -scrDefine TAG_DEBUG -scrDefine OTHER_FLAG
  ArmaReforgerServer.exe -scrDefine TAG_Debug
  ArmaReforgerServer.exe -scrDefine TAG_DEBUG -scrDefine OTHER_FLAG


=== wbBackendLogin ===
=== wbBackendLogin ===


{{hl|-wbBackendLogin}} is an optional parameter allowing to enforce 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
ArmaReforgerWorkbenchSteam.exe -wbBackendLogin myEmail@bistudio.com myPassword
 
=== noGameScriptsOnInit ===
 
{{hl|-noGameScriptsOnInit}} skips game scripts compilation on Workbench initialisation.
This results in a faster startup but with the need to recompile scripts before using any script-dependent elements (prefabs, configs, etc).
 
{{Feature|informative|Game scripts can be compiled in Script Editor using {{Controls|F7}}.}}
 
; Example
ArmaReforgerWorkbenchSteam.exe -noGameScriptsOnInit
 
=== enableWARP ===
 
{{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.}}
 
; Example
ArmaReforgerWorkbenchSteam.exe -enableWARP
 
{{ArgTitle|3|clearSettings|{{GVI|armaR|0.9.7}}}}
 
{{hl|-clearSettings}}, as its name suggests, clears all Workbench user preference - window positions, preview settings, last opened files etc.
 
; Example
ArmaReforgerWorkbenchSteam.exe -clearSettings
 
{{ArgTitle|3|exitAfterInit|{{GVI|armaR|1.1.0}}}}
 
{{hl|-exitAfterInit}} makes Workbench automatically exit once it is completely initialised and all startup parameters are executed.
 
; Example
ArmaReforgerWorkbenchSteam.exe -exitAfterInit
 
{{ArgTitle|3|diagMenu|{{GVI|armaR|1.1.0}}}}
 
{{hl|-diagMenu}} overrides where diagnostic menu saved settings are stored (see hints section of [[Arma Reforger:Diag Menu]] ).
 
; Example
ArmaReforgerWorkbenchSteam.exe -diagMenu "file.txt"
 
 
== Workbench - LocalizationEditor Module ==
 
=== build ===
 
{{hl|-build}} creates runtime string tables from the opened string table.
 
; Example: -wbModule=LocalizationEditor -run -load {C014582791ECBF24}Language/localization.st -build -saveDir C:\tmp\
For building also hidden items from the localisation database, use {{hl|-scrDefine LOCALIZATION_BUILD_HIDDEN}}:
ArmaReforgerWorkbenchSteam.exe -scrDefine LOCALIZATION_BUILD_HIDDEN -wbModule=LocalizationEditor -run -load {C014582791ECBF24}Language/localization.st -build -saveDir C:\tmp\
 
=== saveDir ===
 
{{hl|-saveDir}} specifies the (absolute) save directory for the module's {{hl|build}} command.
 
; Example
see above
 
 
== Workbench - NavmeshGeneratorMain Module ==
 
=== autogenerate ===
 
{{hl|-autogenerate}} generates the provided world's navmesh.
 
; Example
// This opens up the World Editor with {{hl|myworld.ent}} loaded, connects Navmesh Editor to it and starts navmesh generation of the specified navmesh projects.
// Navmesh Editor generates the navmesh and saves it to the path originally held by NavmeshWorldEntity in the world.
ArmaReforgerWorkbenchSteam.exe -wbModule=NavmeshGeneratorMain -run -autogenerate "world/myworld.ent"
 
navmesh projects are optional and can be {{hl|ALL}} to generate all projects.
 
=== saveDir ===
 
{{hl|-saveDir}} is an optional parameter that defines in which directory the data will be exported.
 
; Example
ArmaReforgerWorkbenchSteam.exe -wbModule=NavmeshGeneratorMain -run -autogenerate "world/myworld.ent" -saveDir "C:/temp/output/"
 
 
== Workbench - ResourceManager Module ==
 
=== buildData ===
 
{{hl|-buildData}} builds all data of one addon in a specified directory. Without addon specification, it builds data of the current addon (usually a game).
There are two mandatory parameters: {{hl|PlatformName}} and {{hl|TargetFolder}}. The third parameter, {{hl|AddonName}}, is not mandatory.
 
; Example 1
This builds data of a current addon
ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -builddata PC "C:\Data\PCData"
 
; Example 2
This builds data of a specific addon called "ArmaReforger"
ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -builddata PC "C:\Data\PCData" ArmaReforger
 
This will build PC data to the provided directory. Possible options for the platform name are PC, PC_WB, XBOX_ONE, XBOX_SERIES, PS4, HEADLESS.
 
Resource database cache file {{hl|resourceDatabase.rdb}} is being saved after build too. It contains only the files which are part of the build.
 
State of the incremental build progress is being continuously saved every 60 seconds into {{hl|LastBuildInfo.binfo}} file. After an unexpected crash, the next build will continue from this last saved state.
 
Note that entire workbench application will be exited when build is completed.
 
=== metaFiles ===
 
{{hl|-metaFiles}} is an optional parameter which may be used together with {{Link|#buildData|-buildData}} - it copies {{hl|.meta}} files to the built data.
 
; Example
; Example
  ArmaReforgerWorkbench.exe -wbBackendLogin myEmail@bistudio.com myPassword
  ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -builddata PC "C:\Data\PCData" -metaFiles
 
 
== Workbench - ScriptEditor Module ==
 
=== validate ===
 
{{hl|-validate}} checks if the game scripts are compilable and returns Workbench application return code of "-1" when compilation failed and "0" when compilation was successful.
Value is optional and script configuration name is expected (Configurations can be found in project settings, it is usually PC, XBOX_SERIES, etc). Default value is ALL (all configurations are validated).
 
 
== Workbench - WorldEditor Module ==
 
{{ArgTitle|3|forceSaveAll|{{GVI|armaR|1.1.0}}}}
 
{{hl|-forceSaveAll}}
* '''Normal edit mode:''' re-saves all entity layers of opened map (.ent file + its .layer files) and also all prefabs and configs that are used in the opened map.
* '''Prefab edit mode:''' re-saves only opened prefab and also all other prefabs and configs that are used in the opened prefab.
 
; Example 1 (normal edit mode)
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run -load "world/myworld.ent" -forceSaveAll
 
; Example 2 (prefab edit mode)
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run -load "Prefabs/Structures/Houses/Villa/Villa_E_2I01/Villa_E_2I01.et" -forceSaveAll




Line 216: Line 586:
=== 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 222: Line 593:
=== a2sPort ===
=== a2sPort ===


{{hl|-a2sPort}}
{{hl|-a2sPort}} sets Steam Query Protocol's Bind port.
 
; Example
; Example
  ArmaReforgerServer.exe -a2sPort 7777
  ArmaReforgerServer.exe -a2sPort 7777
{{ArgTitle|3|autoreload|{{GVI|armaR|0.9.6}}}}
{{hl|-autoreload}} reloads the scenario when the session ends after the provided delay, without shutting down the server. Value is in seconds.
; Example
ArmaReforgerServer.exe -autoreload 10


=== bindIP ===
=== bindIP ===


{{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 235: Line 615:


{{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
=== client ===
{{hl|-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 ===
Line 248: Line 623:
{{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 253: Line 629:
=== 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.
{{Feature|informative|
* Workshop scenarios will only be listed if no scenario is being loaded (through e.g a {{Link|#config}}).
* A list of official scenarios can be found on {{Link|Arma Reforger:Server Config#scenarioId}}.
}}
 
; Example
; Example
  ArmaReforgerServer.exe -listScenarios
  ArmaReforgerServer.exe -listScenarios
; Result: e.g
 
<pre style="font-size: 0.9em">
{{ArgTitle|3|loadSessionSave|{{GVI|armaR|1.0.0}}}}
: --------------------------------------------------
 
: Official scenarios (3 entries)
{{hl|-loadSessionSave}} allows the game to load a previous game session.
: --------------------------------------------------
 
: {90F086877C27B6F6}Missions/99_Tutorial.conf (Tutorial)
It can be used alone to load the latest save, or with a specific save file name.
: {ECC61978EDCC2B5A}Missions/23_Campaign.conf (Conflict)
 
: {59AD59368755F41A}Missions/21_GM_Eden.conf (Game Master - Everon)
; Examples
: --------------------------------------------------
ArmaReforgerSteam.exe -loadSessionSave
: Workshop scenarios (8 entries)
ArmaReforgerSteam.exe -loadSessionSave MySaveFile
: --------------------------------------------------
: {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
: --------------------------------------------------
</pre>


=== logStats ===
=== logStats ===


{{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 style="display: block">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>
* FPS: <float> = Current Server-FPS value at the time of reporting.
* FPS: <float> = Current server FPS value
* 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.
* frame time (avg: <float> ms, min: <float> ms, max: <float> ms) = The average, minimum, & maximum server frame times
* Mem: <int> = The current memory usage in kilobytes as reported internally by the server at the time of reporting.
* Mem: <int> = The current memory usage in kilobytes as reported internally by the server
* Player: <int> = Number of current players on the server at the time of reporting.
* Player: <int> = Number of current players
* AI: <int> = Number of current AI spawned on the server at the time of reporting.
* AI: <int> = Number of current AI spawned on the server
* Veh <int> (<int>)= The value inside the parenthesis is the current number of vehicles spawned on the server at the time of reporting.
* Veh <int> (<int>) = The value inside the parentheses is the current number of vehicles spawned on the server
* Proj:
* Proj:
** S: <int> = Number of active shells on the server at the time of reporting.
** S: <int> = Number of active '''s'''hells
** M: <int> = Number of active missiles on the server at the time of reporting.
** M: <int> = Number of active '''m'''issiles
** G: <int> = Number of active grenades on the server at the time of reporting.
** G: <int> = Number of active '''g'''renades
** | <int> = Total projectiles at the time of reporting.
** | <int> = Total projectiles
* RplItemsS: <int> = The number of dynamic (spawned during game) streams on the server at the time of reporting.
* RplItemsS: <int> = The number of dynamic (spawned during game) streams on the server
* RplItemsC0: <int> = The number of streams open to the client at the time of reporting.
* RplItemsC0: <int> = The number of streams open to the client
 
{{Feature|important|The memory usage reported by {{hl|-logStats}} is a server approximation and is therefore not 100% accurate when compared with the operating system values.}}


=== maxFPS ===
=== maxFPS ===
Line 304: Line 678:
{{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
=== server ===
This parameter instructs the executable to launch '''local''' server and '''load selected world'''.  When this parameter is used, config is ignored. Server parameter can be combined with {{Link|#addons}} & {{Link|#addonsDir}} parameters to start a server with local mods, which can be useful when testing addon before uploading it Workshop.
ArmaReforgerServer.exe -server "worlds/MP/MPTest.ent" -addonsDir "C:\MyModsDir" -addons MyCustomMod
{{Feature|important|These parameters apply to the Game executable.}}
=== client ===
{{hl|-client}} starts up an RplSession in local client mode. The session tries to connect to the provided IP.
; Example #1
ArmaReforgerSteam.exe -client 127.0.0.1
; Example #2
; This will connect game to a {{Link|#server|locally hosted dedicated server}} and load the local MyCustomMod addon
ArmaReforgerSteam.exe -client -addonsDir "C:\MyModsDir" -addons MyCustomMod
== Network Tuning ==
{{Feature|important|These parameters apply to the Server executable.}}
=== nds ===
{{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
ArmaReforgerServer.exe -nds 1
=== nwkResolution ===
{{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
ArmaReforgerServer.exe -nwkResolution 500
=== rpl-timeout-ms ===
{{hl|-rpl-timeout-ms}} sets the client/server timeout's value, in milliseconds.
; Example
ArmaReforgerServer.exe -rpl-timeout-ms 10000
=== 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 the client experiences "pop-in" of replicated items then the number is set too low.
; Example
ArmaReforgerServer.exe -staggeringBudget 5000
=== streamingBudget ===
{{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
ArmaReforgerServer.exe -streamingBudget 500
=== streamsDelta ===
{{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
ArmaReforgerServer.exe -streamsDelta 200




== Debug ==
== Debug ==
{{ArgTitle|3|AILimit|{{GVI|armaR|0.9.8}}}}
{{hl|-aiLimit}} sets the top limit of AIs. No systems will be able to spawn any AIs when this ceiling is reached (through <enforce inline>aiWorld.CanAICharacterBeAdded()</enforce> - see also {{Link/Enfusion|armaR|SCR_AIGroup}} and {{Link/Enfusion|armaR|SCR_ChimeraAIAgent}}).
{{Feature|informative|A value less than or equal to zero simply disables any possible AI.}}
{{Feature|important|This parameter applies to both hosted and singleplayer scenarios; while it can save performance, it can also break the experience!}}
; Example
ArmaReforgerServer.exe -AILimit 32
ArmaReforgerServer.exe -AILimit 0
ArmaReforgerSteam.exe -AILimit 100
ArmaReforgerSteam.exe -AILimit 0
{{ArgTitle|3|AIPartialSim|{{GVI|armaR|1.0.0}}}}
{{hl|-aiPartialSim}} sets in how many batches before all AIs (as if in LOD0) will be processed.
{{Wiki|Stub}}
; Example
ArmaReforgerSteam.exe -aiPartialSim 5
=== createDB ===
{{hl|-createDB}} forces database file's regeneration. Useful after file directories changes, when some resources were moved elsewhere. Takes a few seconds upon start.
; Example
ArmaReforgerServer.exe -createDB
=== 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
{{ArgTitle|3|disableAI|{{GVI|armaR|1.1.0}}}}
{{hl|-disableAI}} disables AIWorld initialisation and ticking.
{{ArgTitle|3|disableCrashReporter|{{GVI|armaR|0.9.7}}}}
{{hl|-disableCrashReporter}} disables the [[Arma Reforger:Crash Report#Crash Reporter|Crash Reporter]] from appearing/sending reports automatically.
; Example
ArmaReforgerSteam.exe -disableCrashReporter
{{ArgTitle|3|disableNavmeshStreaming|{{GVI|armaR|1.1.0}}}}
{{hl|-disableNavmeshStreaming}} disables navmesh streaming on all navmesh worlds.
{{GVI|armaR|1.2.0|size= 0.75}} added navmesh projects list support ("BTRlike" for vehicles, "Soldiers" for characters), separated by commas.
; Example
ArmaReforgerSteam.exe -disableNavmeshStreaming
ArmaReforgerSteam.exe -disableNavmeshStreaming NAVMESH_PROJECT1,NAVMESHPROJECT2,etc // >= 1.2.0
=== disableShadersBuild ===
{{hl|-disableShadersBuild}} disables shaders generation.
; Example
ArmaReforgerServer.exe -disableShadersBuild
=== generateShaders ===
{{hl|-generateShaders}} forces shaders generation.
; Example
ArmaReforgerServer.exe -generateShaders
{{ArgTitle|3|rplEncodeAsLongJobs|{{GVI|armaR|1.1.0}}}}
{{hl|-rplEncodeAsLongJobs}} makes replication use long encoding jobs instead of short ones.
; Example
ArmaReforgerServer.exe -rplEncodeAsLongJobs
{{ArgTitle|3|jobsysShortWorkerCount|{{GVI|armaR|1.1.0}}}}
{{hl|-jobsysShortWorkerCount}} sets the number of threads working on short jobs (jobs that must finish in one update loop).
Value is limited to the number of CPUs or 16, whichever is the lowest.
; Example
ArmaReforgerServer.exe -jobsysShortWorkerCount 4
{{ArgTitle|3|jobsysLongWorkerCount|{{GVI|armaR|1.1.0}}}}
{{hl|-jobsysLongWorkerCount}} sets the number of threads working on long jobs (jobs that can span multiple iterations of update loop). Value is limited to the number of CPUs and is by default ''jobsysShortWorkerCount / 2''.
; Example
ArmaReforgerServer.exe -jobsysLongWorkerCount 4
{{ArgTitle|3|keepNumOfLogs|{{GVI|armaR|0.9.8}}}}
{{hl|-keepNumOfLogs}} sets the maximum amount of logs to keep (default: 10).
; Example
ArmaReforgerServer.exe -keepNumOfLogs 3
=== 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
=== logFS ===
{{hl|-logFS}} logs every ''F'''ile '''S'''ystem's read/write operation in {{hl|filesystem.log}}. This option is very demanding and can produce a big file in a short time, so it is to be used with caution for debug purpose only.
; Example
ArmaReforgerSteam.exe -logFS


=== logLevel ===
=== logLevel ===


{{hl|-logLevel}} allows for different log levels. Possible values range from normal (where everything is logged) to fatal (where only extreme issues are logged):
{{hl|-logLevel}} allows for different log levels. Each level includes the ones below it (e.g {{hl|error}} includes error and {{hl|fatal}}).
Possible values range from {{hl|normal}} (where everything is logged) to {{hl|fatal}} (where only extreme issues are logged):
<!-- those are internal only - soz guys
<!-- those are internal only - soz guys
* spam
* spam
Line 332: Line 906:
  ArmaReforgerSteam.exe -logLevel warning
  ArmaReforgerSteam.exe -logLevel warning


{{ArgTitle|3|logsDir|{{GVI|armaR|0.9.8}}}}
{{hl|-logsDir}} defines the directory by name (located in the {{Link|#profile}} directory) or {{GVI|armaR|0.9.8|size= 0.75}} by path, in which game instance specific data are stored like logs, memory dumps, temporary files etc.
; Examples
ArmaReforgerSteam.exe -logsDir "DebugSession1337" // targets {{hl|{{Link|#profile|&lt;profileDir&gt;}}\logs\DebugSession1337}}
ArmaReforgerSteam.exe -logsDir "C:\Users\MyUserName\Documents\ArmaReforgerDir" // targets {{hl|"C:\Users\MyUserName\Documents\ArmaReforgerDir"}} directly
=== keepCrashFiles ===
{{hl|-keepCrashFiles}} prevents Crash Reporter from cleaning crash files on successful crash sending.
; Example
ArmaReforgerSteam.exe -keepCrashFiles
=== scriptAuthorizeAll ===
{{hl|-scriptAuthorizeAll}} disables the security popup about {{hl|RunCmd}}, {{hl|RunProcess}}, {{hl|KillProcess}} and (outside of profile directory) {{hl|FileIO}} operations.
; Example
ArmaReforgerSteam.exe -scriptAuthorizeAll
{{ArgTitle|3|silentCrashReport|{{GVI|armaR|1.0.0}}}}
{{hl|-silentCrashReport}} suppresses the Crash Reporter's dialog and automatically sends the report without any user input or message.
; Example
ArmaReforgerWorkbenchSteam.exe -silentCrashReport
''was '''noCrashDialog''' before 1.0.0''
=== 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]].
; Example
ArmaReforgerSteam.exe -checkInstance
<!--
{{ArgTitle|3|scriptExtProfiler|{{GVI|armaR|0.0.0}}}}
{{hl|-scriptExtProfiler}} turns on script VM's support for external [[Arma Reforger:Script Profiling|Script Profiling]].
{{Feature|informative|The External Profiler can also be enabled through the [[Arma Reforger:Diag Menu|Diag Menu]]: [[Arma_Reforger:Diag Menu#Statistics|Diag Menu > Statistics > Script prof. external]] set to {{hl|true}}.}}
; Example
ArmaReforgerSteam.exe -scriptExtProfiler
--->


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

Latest revision as of 13:15, 22 October 2024

Startup parameters are command line interface(CLI) arguments that go after the executable's name in order to set options; e.g ArmaReforgerSteam.exe -window to start the game in windowed mode.

  • Startup parameters' names are case-insensitive - e.g -logstats and -LogSTATS are identical.
  • Spaces in parameter values must be wrapped in quotations - e.g. -addonDownloadDir "E:\Arma Addons"


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. Downloaded addons will be stored in addons subfolder inside of target directory.

It is recommended to use absolute paths to Mod directories even though the provided path can be relative to the executable location.
It is not necessary to combine this command with addonsDir parameter
Example
ArmaReforgerSteam.exe -addonDownloadDir D:\DownloadedMods

addonTempDir

-addonTempDir specifies the directory for temporary content.

Example
ArmaReforgerSteam.exe -addonTempDir "C:\Temp"

backendDisableStorage

-backendDisableStorage disables use of storage, no loads or saves can be performed both online and local.

Example
ArmaReforgerSteam.exe -backendDisableStorage

backendFreshSession

-backendFreshSession skips the initial load request from dedicated server's configuration file or from script - the DS Session basically starts as a brand new one, the rest of functionalities is not affected (saves, runtime loads, etc).

Example
ArmaReforgerSteam.exe -backendFreshSession

backendLocalStorage

-backendLocalStorage forces Save & Load of player and general data normally sent to/received from the backend to work with local JSON files in profile folder instead.

Example
ArmaReforgerSteam.exe -backendLocalStorage

freezeCheck

-freezeCheck overrides time in seconds to forcefully crash on application freeze or completely disable detection. Default 300 (5 minutes), range 0 (disabled) to 600 (10 minutes).

Workbench has default time set to 1 minute and will only generate minidump without crashing.
Example
ArmaReforgerSteam.exe -freezeCheck 30

freezeCheckMode

-freezeCheckMode overrides behavior which should happen when freeze is detected.

  • crash - force crashes the application (default on Client and Server)
  • minidump - silently generates minidump and keeps application running until it unfreezes or is terminated by user (default on Workbench)
Option minidump is supported only on Windows.
Example
ArmaReforgerSteam.exe -freezeCheckMode crash
ArmaReforgerSteam.exe -freezeCheckMode minidump

cfg

-cfg forces to load specific user engine settings config (things like graphics settings, window position and size etc).

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
  • armareforger-symbol black.png1.2.0 flag ukraine.gif uk_ua - Ukrainian
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 path to the profile directory to be used, either by parent directory name or by path.

Example
ArmaReforgerSteam.exe -profile "David Armstrong"								// targets %userprofile%\My Documents\My Games\David Armstrong\profile
ArmaReforgerSteam.exe -profile "C:\Users\MyUserName\Documents\ArmaReforgerDir"	// targets "C:\Users\MyUserName\Documents\ArmaReforgerDir\profile"

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.

Previously known as -noPause in earlier titles.
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.

forceSettings

-forcesettings forces to use the specified Workbench settings from a file instead of the usual settings stored in Windows registry which will be entirely ignored. The settings in a file will be used for reading and also writing. This functionality is compatible with wbSettingsDump.ini files being attached to crash reports.

It is possible to export Workbench settings to an .ini file from Workbench options.

gproj

-gproj

Example
ArmaReforgerWorkbenchSteam.exe -gproj "C:\Program Files (x86)\Steam\steamapps\common\Arma Reforger\addons\data\ArmaReforger.gproj"

gprojConfig

-gprojConfig forces loading the provided configuration e.g PC, HEADLESS etc.

Example
ArmaReforgerWorkbenchSteam.exe -gprojConfig PC

wbModule

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

Editor Entry (case-insensitive) Additional Information
Resource Manager resourceManager
World Editor worldEditor See also Workbench - WorldEditor Module below
Particle Editor particleEditor
Animation Editor animEditor
Script Editor scriptEditor See also Workbench - ScriptEditor Module below
Audio Editor audioEditor
Behavior Editor behaviorEditor
Procedural Animation Editor procAnimEditor
String Editor localizationEditor See also Workbench - LocalizationEditor Module below
Navmesh Generator navmeshGeneratorMain See also Workbench - NavmeshGeneratorMain Module below
  • 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"

publishAddonChangeNoteFile

-publishAddonChangeNoteFile is an optional parameter which is used to specify this update's change note.

Example
ArmaReforgerWorkbenchSteam.exe -publishAddonChangeNoteFile "C:\Addon\changelog.txt"

publishAddonPreviewImage

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

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

publishAddonScreenshots

-publishAddonScreenshots is an optional parameter that specifies the directory 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"

rebuild-database-only

-rebuild-database-only makes Workbench automatically exit when the database file is refreshed. This is useful for creating game packages which should be distributed with the latest database file.

Example
ArmaReforgerWorkbenchSteam.exe -rebuild-database-only

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

noGameScriptsOnInit

-noGameScriptsOnInit skips game scripts compilation on Workbench initialisation. This results in a faster startup but with the need to recompile scripts before using any script-dependent elements (prefabs, configs, etc).

Game scripts can be compiled in Script Editor using F7.
Example
ArmaReforgerWorkbenchSteam.exe -noGameScriptsOnInit

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

clearSettings

-clearSettings, as its name suggests, clears all Workbench user preference - window positions, preview settings, last opened files etc.

Example
ArmaReforgerWorkbenchSteam.exe -clearSettings

exitAfterInit

-exitAfterInit makes Workbench automatically exit once it is completely initialised and all startup parameters are executed.

Example
ArmaReforgerWorkbenchSteam.exe -exitAfterInit

diagMenu

-diagMenu overrides where diagnostic menu saved settings are stored (see hints section of Arma Reforger:Diag Menu ).

Example
ArmaReforgerWorkbenchSteam.exe -diagMenu "file.txt"


Workbench - LocalizationEditor Module

build

-build creates runtime string tables from the opened string table.

Example
-wbModule=LocalizationEditor -run -load {C014582791ECBF24}Language/localization.st -build -saveDir C:\tmp\

For building also hidden items from the localisation database, use -scrDefine LOCALIZATION_BUILD_HIDDEN:

ArmaReforgerWorkbenchSteam.exe -scrDefine LOCALIZATION_BUILD_HIDDEN -wbModule=LocalizationEditor -run -load {C014582791ECBF24}Language/localization.st -build -saveDir C:\tmp\

saveDir

-saveDir specifies the (absolute) save directory for the module's build command.

Example
see above


Workbench - NavmeshGeneratorMain Module

autogenerate

-autogenerate generates the provided world's navmesh.

Example
// This opens up the World Editor with myworld.ent loaded, connects Navmesh Editor to it and starts navmesh generation of the specified navmesh projects.
// Navmesh Editor generates the navmesh and saves it to the path originally held by NavmeshWorldEntity in the world.
ArmaReforgerWorkbenchSteam.exe -wbModule=NavmeshGeneratorMain -run -autogenerate "world/myworld.ent"

navmesh projects are optional and can be ALL to generate all projects.

saveDir

-saveDir is an optional parameter that defines in which directory the data will be exported.

Example
ArmaReforgerWorkbenchSteam.exe -wbModule=NavmeshGeneratorMain -run -autogenerate "world/myworld.ent" -saveDir "C:/temp/output/"


Workbench - ResourceManager Module

buildData

-buildData builds all data of one addon in a specified directory. Without addon specification, it builds data of the current addon (usually a game). There are two mandatory parameters: PlatformName and TargetFolder. The third parameter, AddonName, is not mandatory.

Example 1
This builds data of a current addon
ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -builddata PC "C:\Data\PCData"
Example 2
This builds data of a specific addon called "ArmaReforger"
ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -builddata PC "C:\Data\PCData" ArmaReforger

This will build PC data to the provided directory. Possible options for the platform name are PC, PC_WB, XBOX_ONE, XBOX_SERIES, PS4, HEADLESS.

Resource database cache file resourceDatabase.rdb is being saved after build too. It contains only the files which are part of the build.

State of the incremental build progress is being continuously saved every 60 seconds into LastBuildInfo.binfo file. After an unexpected crash, the next build will continue from this last saved state.

Note that entire workbench application will be exited when build is completed.

metaFiles

-metaFiles is an optional parameter which may be used together with -buildData - it copies .meta files to the built data.

Example
ArmaReforgerWorkbenchSteam.exe -wbModule=ResourceManager -builddata PC "C:\Data\PCData" -metaFiles


Workbench - ScriptEditor Module

validate

-validate checks if the game scripts are compilable and returns Workbench application return code of "-1" when compilation failed and "0" when compilation was successful. Value is optional and script configuration name is expected (Configurations can be found in project settings, it is usually PC, XBOX_SERIES, etc). Default value is ALL (all configurations are validated).


Workbench - WorldEditor Module

forceSaveAll

-forceSaveAll

  • Normal edit mode: re-saves all entity layers of opened map (.ent file + its .layer files) and also all prefabs and configs that are used in the opened map.
  • Prefab edit mode: re-saves only opened prefab and also all other prefabs and configs that are used in the opened prefab.
Example 1 (normal edit mode)
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run -load "world/myworld.ent" -forceSaveAll
Example 2 (prefab edit mode)
ArmaReforgerWorkbenchSteam.exe -wbModule=WorldEditor -run -load "Prefabs/Structures/Houses/Villa/Villa_E_2I01/Villa_E_2I01.et" -forceSaveAll


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

autoreload

-autoreload reloads the scenario when the session ends after the provided delay, without shutting down the server. Value is in seconds.

Example
ArmaReforgerServer.exe -autoreload 10

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

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.

  • Workshop scenarios will only be listed if no scenario is being loaded (through e.g a config).
  • A list of official scenarios can be found on Server Config - scenarioId.
Example
ArmaReforgerServer.exe -listScenarios

loadSessionSave

-loadSessionSave allows the game to load a previous game session.

It can be used alone to load the latest save, or with a specific save file name.

Examples
ArmaReforgerSteam.exe -loadSessionSave
ArmaReforgerSteam.exe -loadSessionSave MySaveFile

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
  • frame time (avg: <float> ms, min: <float> ms, max: <float> ms) = The average, minimum, & maximum server frame times
  • Mem: <int> = The current memory usage in kilobytes as reported internally by the server
  • Player: <int> = Number of current players
  • AI: <int> = Number of current AI spawned on the server
  • Veh <int> (<int>) = The value inside the parentheses is the current number of vehicles spawned on the server
  • Proj:
    • S: <int> = Number of active shells
    • M: <int> = Number of active missiles
    • G: <int> = Number of active grenades
    • | <int> = Total projectiles
  • RplItemsS: <int> = The number of dynamic (spawned during game) streams on the server
  • RplItemsC0: <int> = The number of streams open to the client
The memory usage reported by -logStats is a server approximation and is therefore not 100% accurate when compared with the operating system values.

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

server

This parameter instructs the executable to launch local server and load selected world. When this parameter is used, config is ignored. Server parameter can be combined with addons & addonsDir parameters to start a server with local mods, which can be useful when testing addon before uploading it Workshop.

ArmaReforgerServer.exe -server "worlds/MP/MPTest.ent" -addonsDir "C:\MyModsDir" -addons MyCustomMod
These parameters apply to the Game executable.

client

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

Example #1
ArmaReforgerSteam.exe -client 127.0.0.1
Example #2
This will connect game to a locally hosted dedicated server and load the local MyCustomMod addon
ArmaReforgerSteam.exe -client -addonsDir "C:\MyModsDir" -addons MyCustomMod


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-timeout-ms

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

Example
ArmaReforgerServer.exe -rpl-timeout-ms 10000

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 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

AILimit

-aiLimit sets the top limit of AIs. No systems will be able to spawn any AIs when this ceiling is reached (through aiWorld.CanAICharacterBeAdded() - see also SCR_AIGroup and SCR_ChimeraAIAgent).

A value less than or equal to zero simply disables any possible AI.
This parameter applies to both hosted and singleplayer scenarios; while it can save performance, it can also break the experience!
Example
ArmaReforgerServer.exe -AILimit 32
ArmaReforgerServer.exe -AILimit 0
ArmaReforgerSteam.exe -AILimit 100
ArmaReforgerSteam.exe -AILimit 0

AIPartialSim

-aiPartialSim sets in how many batches before all AIs (as if in LOD0) will be processed.

Example
ArmaReforgerSteam.exe -aiPartialSim 5

createDB

-createDB forces database file's regeneration. Useful after file directories changes, when some resources were moved elsewhere. Takes a few seconds upon start.

Example
ArmaReforgerServer.exe -createDB

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

disableAI

-disableAI disables AIWorld initialisation and ticking.

disableCrashReporter

-disableCrashReporter disables the Crash Reporter from appearing/sending reports automatically.

Example
ArmaReforgerSteam.exe -disableCrashReporter

disableNavmeshStreaming

-disableNavmeshStreaming disables navmesh streaming on all navmesh worlds.

armareforger-symbol black.png1.2.0 added navmesh projects list support ("BTRlike" for vehicles, "Soldiers" for characters), separated by commas.

Example
ArmaReforgerSteam.exe -disableNavmeshStreaming
ArmaReforgerSteam.exe -disableNavmeshStreaming NAVMESH_PROJECT1,NAVMESHPROJECT2,etc // >= 1.2.0

disableShadersBuild

-disableShadersBuild disables shaders generation.

Example
ArmaReforgerServer.exe -disableShadersBuild

generateShaders

-generateShaders forces shaders generation.

Example
ArmaReforgerServer.exe -generateShaders

rplEncodeAsLongJobs

-rplEncodeAsLongJobs makes replication use long encoding jobs instead of short ones.

Example
ArmaReforgerServer.exe -rplEncodeAsLongJobs

jobsysShortWorkerCount

-jobsysShortWorkerCount sets the number of threads working on short jobs (jobs that must finish in one update loop). Value is limited to the number of CPUs or 16, whichever is the lowest.

Example
ArmaReforgerServer.exe -jobsysShortWorkerCount 4

jobsysLongWorkerCount

-jobsysLongWorkerCount sets the number of threads working on long jobs (jobs that can span multiple iterations of update loop). Value is limited to the number of CPUs and is by default jobsysShortWorkerCount / 2.

Example
ArmaReforgerServer.exe -jobsysLongWorkerCount 4

keepNumOfLogs

-keepNumOfLogs sets the maximum amount of logs to keep (default: 10).

Example
ArmaReforgerServer.exe -keepNumOfLogs 3

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

logFS

-logFS logs every F'ile System's 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 be used with caution for debug purpose only.

Example
ArmaReforgerSteam.exe -logFS

logLevel

-logLevel allows for different log levels. Each level includes the ones below it (e.g error includes error and fatal). 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

logsDir

-logsDir defines the directory by name (located in the profile directory) or armareforger-symbol black.png0.9.8 by path, in which game instance specific data are stored like logs, memory dumps, temporary files etc.

Examples
ArmaReforgerSteam.exe -logsDir "DebugSession1337"								// targets <profileDir>\logs\DebugSession1337
ArmaReforgerSteam.exe -logsDir "C:\Users\MyUserName\Documents\ArmaReforgerDir"	// targets "C:\Users\MyUserName\Documents\ArmaReforgerDir" directly

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

silentCrashReport

-silentCrashReport suppresses the Crash Reporter's dialog and automatically sends the report without any user input or message.

Example
ArmaReforgerWorkbenchSteam.exe -silentCrashReport

was noCrashDialog before 1.0.0

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.

Example
ArmaReforgerSteam.exe -checkInstance