Arma 3 Diagnostics Exe

From Bohemia Interactive Community
Jump to: navigation, search

Basic information

Bohemia Interactive
Arma 3 Official Tools
Part of Arma 3 Development branch on Steam. If you are using DEV branch, arma3diag_x64.exe should be in the Arma 3 main directory already.


This special executable aims to help community creators in tweaking their addons. It contains various diagnostic tools that display the current game state in various conditions. See also: Performance Profiling. Some of the extra commands available only in diag build:
This exe has multiplayer disabled on purpose. There is no way to use this executable in multiplayer as this functionality has been removed completely.


Line call:


Bohemia Interactive End User License Agreement

Additional information

How to use it

Simply run the exe as you would use the standard arma3.exe. For example to perform diag on a PBO, add it as a launch parameter (-mod=@YOURMOD)

Once the game is loaded, go into the editor and select 'Virtual Reality'.

There are several diagnostics to be toggled by either using the diag_toggle command or setting diag_enable to true, e.g.:

 diag_toggle "Animation";
 "Animation" diag_enable true;
 "All" diag_enable true;
 "All" diag_enable false;

List of available diagnostics:

 AIAiming - shows vectors (lines) of AI aiming at known target
 AIBrain - general informations about AI brain, combat mode and fsm state
 AIDynamicError - shows value of dynamically calculated AI aiming error
 AISkill - shows value of skill, plus global coefficients, as set by difficulty mode
 AISuppression - shows value of suppression 
 Animation - displays current animation state, actions being used and target animation states depending on the actions
 AnimSrcTarget - displays all animation sources and their values for the model under the cursor
 AnimSrcUnit - displays all animation sources and their values for the player's vehicle (or his gun in case of a soldier)
 EPEVehicle - displays gearbox, friction, thrust, brake and various parameters of a PhysX vehicle
 EPEForce - displays PhysX forces applied on the vehicle
 Force - displays some other forces with their names
 HitPoints - displays status of hit points of the player's vehicle and vehicle under the cursor
 Mines - displays nearby mines, their properties and radius
 Particles - displays what particles are used in scene and their count
 ParticleNames - attaches a name to each particle effect used so that it may be identified
 SurfaceUnder - displays the per-foot surface information on which a unit is standing
 Suspension - displays status of suspension for each wheel of a PhysX vehicle

There is an additional diagnostic command used to adjust (by merging) configs on-the-fly without the need of restarting the game (Warning: there are some minor issues like CTD while exiting the game):

 diag_mergeConfigFile ["PathToConfigOnDrive"] - merges config file from "PathToConfigOnDrive" (which must be absolute path to the config including the drive - e.g. O:\Arma3\A3\Stuff_F\config.cpp)
It is possible to change rvmat and textures on-the-fly while using "local data" - unpacked data in the same structure as the game sees them. You simply need to adjust the rvmat or convert the texture to PAA and it should affect the game as soon as you task back into it. There may be some visual artifacts; it's always worth to give it one more go with packed data.