AI Skill – Arma 3
m (→AI Skill) |
m (→Example) |
||
Line 101: | Line 101: | ||
[[File:CfgAISkill.jpg|thumb|Interpolation with vanilla A3 CfgAISkill]] | [[File:CfgAISkill.jpg|thumb|Interpolation with vanilla A3 CfgAISkill]] | ||
In {w, x, y, z} value from (w,y) gets interpolated into (x,z) | In {w, x, y, z} value from (w,y) gets interpolated into (x,z) | ||
''spotDistance[] = {0,0.2, 1,0.4};'' | |||
''setSkill ["spotDistance", 0.5]'' | *''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=== | ===Notes=== | ||
More than 2 pairs of defining values can be used (minimum is 2 pairs). | More than 2 pairs of defining values can be used (minimum is 2 pairs). |
Revision as of 18:04, 21 December 2018
![](/wikidata/images/thumb/f/f9/A3_AISkill_EdenEditor.jpg/300px-A3_AISkill_EdenEditor.jpg)
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
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};