{"name":"Arma 3: CfgBrains Config Reference","title":"Arma 3: CfgBrains Config Reference","type":"topic","url":"https://community.bistudio.com/wiki/Arma_3:_CfgBrains_Config_Reference","revid":373215,"updated":"2025-04-12T22:20:53Z","aliases":["Arma 3 CfgBrains Config Reference"],"markdown":"### Introduction\n\nCfgBrains allows to tweak some global AI behavior. Exposed and working are countermeasure reaction, suppression reaction and targeting capabilities.\n\n### Default exposed setup\n\n```cpp\nclass CfgBrains\n{\n    class DefaultSoldierBrain\n    {\n        class Components\n        {\n            class AIBrainAimingErrorComponent\n            {\n            };\n            class AIBrainCountermeasuresComponent\n            {\n                minReactionTime = 0.1;\n                maxReactionTime = 3;\n                randomReactionTimePercent = 0.3;\n                CMOnTargettedProbability = 0.5;\n            };\n            class AIBrainSuppressionComponent\n            {\n            };\n            class AIBrainTargetSelectorComponent // seems not implemented in 1.82\n            {\n            };\n        };\n    };\n    class DefaultCivilianBrain\n    {\n        class Components\n        {\n        };\n    };\n    class DefaultAnimalBrain\n    {\n        class Components\n        {\n        };\n    };\n};\n```\n\n### Available parameters\n\n```cpp\nclass AIBrainCountermeasuresComponent\n{\n    useSmokeGrenadeDelay = 20;\n    CMCheckDelay = 0.8;\n    suppressionThreshold = 0.8;\n    nonLeaderSmokeProbability = 0.1;\n    CMOnTargettedProbability =0.1;\n    suppressionTimerMax = 2;\n    minimalThrowDistance = 900;\n    minReactionTime = 0.1;\n    maxReactionTime = 3;\n    randomReactionTimePercent = 0.2;\n};\nclass AIBrainSuppressionComponent\n{\n    maxSuppression = 1;\n    worstDecreaseTime = 10;// in seconds for 0 skill\n    bestDecreaseTime = 1;// in seconds for 1 skill\n    SuppressionRange = 20;\n    CauseFireWeight = 0.5;\n    CauseHitWeight = 0.5;\n    CauseExplosionWeight = 0.5;\n    CauseBulletCloseWeight = 0.5;\n    SuppressionThreshold = 0.7;\n};\nclass AIBrainAimingErrorComponent\n{\n    maxAngularError = 0.1309;// half of the error cone in radians\n    maxAngularErrorTurrets = 0.0872;// half of the error cone in radians, used for turrets\n    worstDecreaseTime = 2;// how long (in seconds) it should take 0 skilled soldier to stabilize the aim completely\n    bestDecreaseTime = 0.2;// how long (in seconds) it should take 1 skilled soldier to stabilize the aim completely\n    lostTargetTimeMin = 0.5;// how soon after loosing sight of target, error starts to raise\n    lostTargetTimeMax = 3;// how long error is raising after loosing sight of target\n    shootingInfluence = 0.4;// importance of shooting in algorithm, multiplier\n    movingInfluence = 1;// importance of moving in algorithm, multiplier\n    turningInfluence = 1;// importance of turning in algorithm, multiplier\n    damageCoef = 10;// importance of damage of entity, multiplier\n    fatigueCoef = 10;// importance of fatigue of entity, multiplier\n    suppressionCoef = 0.5;// importance of suppression value, multiplier\n    lostTargetCoef = 3;// importance of loosing target event, multiplier\n};\n```","sections":[{"heading":"Introduction","level":3,"markdown":"CfgBrains allows to tweak some global AI behavior. Exposed and working are countermeasure reaction, suppression reaction and targeting capabilities."},{"heading":"Default exposed setup","level":3,"markdown":"```cpp\nclass CfgBrains\n{\n    class DefaultSoldierBrain\n    {\n        class Components\n        {\n            class AIBrainAimingErrorComponent\n            {\n            };\n            class AIBrainCountermeasuresComponent\n            {\n                minReactionTime = 0.1;\n                maxReactionTime = 3;\n                randomReactionTimePercent = 0.3;\n                CMOnTargettedProbability = 0.5;\n            };\n            class AIBrainSuppressionComponent\n            {\n            };\n            class AIBrainTargetSelectorComponent // seems not implemented in 1.82\n            {\n            };\n        };\n    };\n    class DefaultCivilianBrain\n    {\n        class Components\n        {\n        };\n    };\n    class DefaultAnimalBrain\n    {\n        class Components\n        {\n        };\n    };\n};\n```"},{"heading":"Available parameters","level":3,"markdown":"```cpp\nclass AIBrainCountermeasuresComponent\n{\n    useSmokeGrenadeDelay = 20;\n    CMCheckDelay = 0.8;\n    suppressionThreshold = 0.8;\n    nonLeaderSmokeProbability = 0.1;\n    CMOnTargettedProbability =0.1;\n    suppressionTimerMax = 2;\n    minimalThrowDistance = 900;\n    minReactionTime = 0.1;\n    maxReactionTime = 3;\n    randomReactionTimePercent = 0.2;\n};\nclass AIBrainSuppressionComponent\n{\n    maxSuppression = 1;\n    worstDecreaseTime = 10;// in seconds for 0 skill\n    bestDecreaseTime = 1;// in seconds for 1 skill\n    SuppressionRange = 20;\n    CauseFireWeight = 0.5;\n    CauseHitWeight = 0.5;\n    CauseExplosionWeight = 0.5;\n    CauseBulletCloseWeight = 0.5;\n    SuppressionThreshold = 0.7;\n};\nclass AIBrainAimingErrorComponent\n{\n    maxAngularError = 0.1309;// half of the error cone in radians\n    maxAngularErrorTurrets = 0.0872;// half of the error cone in radians, used for turrets\n    worstDecreaseTime = 2;// how long (in seconds) it should take 0 skilled soldier to stabilize the aim completely\n    bestDecreaseTime = 0.2;// how long (in seconds) it should take 1 skilled soldier to stabilize the aim completely\n    lostTargetTimeMin = 0.5;// how soon after loosing sight of target, error starts to raise\n    lostTargetTimeMax = 3;// how long error is raising after loosing sight of target\n    shootingInfluence = 0.4;// importance of shooting in algorithm, multiplier\n    movingInfluence = 1;// importance of moving in algorithm, multiplier\n    turningInfluence = 1;// importance of turning in algorithm, multiplier\n    damageCoef = 10;// importance of damage of entity, multiplier\n    fatigueCoef = 10;// importance of fatigue of entity, multiplier\n    suppressionCoef = 0.5;// importance of suppression value, multiplier\n    lostTargetCoef = 3;// importance of loosing target event, multiplier\n};\n```"}],"categories":["AI","Arma 3: Reference Lists"],"groups":["Reference Lists"]}