AI Skill – Arma 3
| Line 113: | Line 113: | ||
===Defaults for Arma 3=== | ===Defaults for Arma 3=== | ||
==Config Arrays== | |||
<spoiler> | |||
aimingAccuracy[] = {0, 0, 1, 1}; | aimingAccuracy[] = {0, 0, 1, 1}; | ||
aimingShake[] = {0, 0, 1, 1}; | aimingShake[] = {0, 0, 1, 1}; | ||
| Line 123: | Line 125: | ||
spotDistance[] = {0, 0, 1, 1}; | spotDistance[] = {0, 0, 1, 1}; | ||
spotTime[] = {0, 0, 1, 1}; | spotTime[] = {0, 0, 1, 1}; | ||
</spoiler> | |||
==Table== | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| Line 147: | Line 151: | ||
| spotTime || 0 || 0 || 1 || 1 | | spotTime || 0 || 0 || 1 || 1 | ||
|} | |} | ||
*w: Original minimal value set by [[setSkill]] or [[Eden Editor]] | |||
*x: Minimal allowed value, if w is lower. It will be clamped to this value | |||
*y: Original maximal value set by [[setSkill]] or [[Eden Editor]] | |||
*z: Maximal allowed value, if w is lower. It will be clamped to this value | |||
== Related Commands == | == Related Commands == | ||
Revision as of 01:54, 23 December 2018
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
_unit setSkill 0.8;
- Skill set in Eden Editor
- Exact value set by the setSkill command
_unit setSkill ["reloadSpeed", 0.8];
- 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 |
|
|
| aimingSpeed |
|
|
| commanding |
|
|
| courage |
|
|
| endurance |
|
|
| general |
|
|
| reloadSpeed |
|
|
| spotDistance |
|
|
| spotTime |
|
|
| aimingShake |
|
|
CfgAISkill
CfgAISkill is a set of arrays, related to AI Sub-skills, defining the interpolation curve of each of the sub-skill.
Example
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
Config Arrays
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};
Table
| Sub-Skill | w | x | y | 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 |
- w: Original minimal value set by setSkill or Eden Editor
- x: Minimal allowed value, if w is lower. It will be clamped to this value
- y: Original maximal value set by setSkill or Eden Editor
- z: Maximal allowed value, if w is lower. It will be clamped to this value