AI Skill – Arma 3

From Bohemia Interactive Community
Jump to navigation Jump to search
Line 160: Line 160:
*[[skillFinal]]
*[[skillFinal]]


== Finding the right AI Skill ==
== Changing AI Skill ==
=== Players ===
=== Players ===
* As player one can only influence AI skill by changing the global skill settings '''Skill''' and '''Precision'''. One has also the option to choose one of the default '''AI Levels'''.
* As player one can only influence AI skill by changing the global skill settings '''Skill''' and '''Precision'''. One has also the option to choose one of the default '''AI Levels'''.

Revision as of 11:15, 23 December 2018

Template:wip

Some information on this page were not confirmed by BIS!
AI skill/level/final skill
Difficulty Menu
Skill setting in Eden Editor

Overview

This page contains all information about Arma 3`s artificial intelligence, short AI.

AI Skill

The AI is characterized by a set of sub-skills. Each sub-skill is influence by one of the following:

  • Inherited from the value set via setSkill
  • Skill set in Eden Editor
  • Exact value set by the setSkill command
  • AI skill is also influenced by the global setting in the difficulty menu.

Each sub-skill is then interpolated with the values set in CfgAISkill.

Sub-Skills

Sub-skills are a set of parameters ultimately defining the individual AI unit performance in the game.

Sub-Skill Effect Influence
aimingAccuracy
  • Affects how well the AI can lead a target
  • Affects how accurately the AI estimate range and calculates bullet drop
  • Affects how well the AI compensates for weapon dispersion
  • Affects how much the AI will know to compensate for recoil
  • Affects how certain the AI must be about its aim on target before opening fire
  • Higher value means the AI can lead a target better
  • Higher value means the Ai can estimate range and calculate bullet drop more precicely
  • Higher value means the AI can compensate weapon dispersion better
  • Higher value means the AI can control the recoil better
  • Higher value means the AI needs to now less to open up fire
aimingSpeed
  • Affects how quickly the AI can rotate and stabilize its aim
  • Higher value means the AI can rotate and stabilize its aim faster
commanding
  • Affects how quickly recognized targets are shared with the group
  • Higher value means the AI can report targets faster
courage
  • Affects unit's subordinates' morale
  • Higher value means the AI has got more courage
endurance
  • Disabled in Arma3
  • Disabled
general
  • Raw "Skill", value is distributed to sub-skills unless defined otherwise. Affects the AI's decision making.
  • ?
reloadSpeed
  • Affects the delay between switching or reloading a weapon
  • Higher value means the AI can switch or reload weapons faster
spotDistance
  • Affects the AI ability to spot targets within it's visual or audible range
  • Affects the accuracy of the information
  • Higher value means the AI is better at spotting targets
  • Higher value means the AI will collect information about targets more precisely
spotTime
  • Affects how quick the AI react to death, damage or observing an enemy
  • Higher value means the AI will react faster to death, damage or enemies
aimingShake
  • Affects how steadily the AI can hold a weapon
  • Higher value means the AI will be more precise

CfgAISkill

CfgAISkill is a set of arrays, related to Sub-Skills, defining the interpolation curve of each of the sub-skill. They can be changed by a mod for example.

Example

Interpolation with vanilla A3 CfgAISkill

In {w, x, y, z} value from (w,y) gets interpolated into (x,z)

  • spotDistance[] = {0, 0.2, 1, 0.4};
    • Value in a range 0-1 will change into value in a range 0.2-0.4.
  • setSkill ["spotDistance", 0.5]
    • Results in skill "spotDistance" returning 0.3

Notes

More than 2 pairs of defining values can be used (minimum is 2 pairs).

The values are used to interpolate on run-time, so even after setting sub-skill by script command it will be interpolated and bound by this array.

Defaults for Arma 3

Table

Sub-Skill minInputSkillLimit (w) resultingSubSkillLowerBoundary (x) maxInputSkillLimit (y) resultingSubSkillLowerBoundary (z)
aimingAccuracy 0 0 1 1
aimingShake 0 0 1 1
aimingSpeed 0 0.5 1 1
commanding 0 0 1 1
courage 0 0 1 1
endurance 0 0 1 1
general 0 0 1 1
reloadSpeed 0 0 1 1
spotDistance 0 0 1 1
spotTime 0 0 1 1

Config

aimingAccuracy[] = {0, 0, 1, 1};
aimingShake[] = {0, 0, 1, 1};
aimingSpeed[] = {0, 0.5, 1, 1};
commanding[] = {0, 0, 1, 1};
courage[] = {0, 0, 1, 1};
endurance[] = {0, 0, 1, 1}; Has been disabled in Arma 3
general[] = {0, 0, 1, 1};
reloadSpeed[] = {0, 0, 1, 1};
spotDistance[] = {0, 0, 1, 1};
spotTime[] = {0, 0, 1, 1};

Related Commands

Changing AI Skill

Players

  • As player one can only influence AI skill by changing the global skill settings Skill and Precision. One has also the option to choose one of the default AI Levels.
    • Skill: Influences multiple sub-skills related to the AIs "intelligence". If the value is set too low, the AI will be dumb.
    • Precision: Influences sub-skilles related to AIs precision. If the value is set too high, the AI will have a super human precision. Lower values result mostly in interesting fire fights.

Scenario Designers

  • A scenario designer has four ways to influence the AI skill.

Modders

  • A modder can influence the AI skill by overwriting CfgAISkill.

External Links