SNKMAN – User talk
FSM: ( Fine State Machine )
In ArmA 2 we have 2 different .fsm which are used to set how A.I. should behave in combat.
1. NativeFSM ( CACharacters\CfgFSMs.hpp )
2. ScriptedFSM ( CACharacters\Scripts\Danger.fsm )
Bouth FSMs are initialized in the "CACharacter" >> "CfgVehicles" >> "CAManBase".
The NativeFSM is used to control the general behaviour of A.I. units in combat.
It will choose if A.I. should go to cover or attack a known enemy.
If A.I. should reload while in cover or if A.I. should look any another ( may better ) cover.
It also let you choose if A.I. should provide cover or if they should try fighting on their own.
The ScriptedFSM is used to control the general behaviour of A.I. in situations which are dangerous.
The ScriptedFSM Conditions:
Detect Weapon fire: This will trigger every time a unit has fired a weapon. Note: The A.I. which should detect weapon fire must have the chance to know more then 0 about the unit which has fired the weapon.
Detect Enemys: This will trigger every time A.I. has detected a enemy unit.
Detect Enemys Near: This will trigger every time A.I. has detected a enemy unit which is very close.
Detect Explosions: This will trigger every time after something is exploded?
Detect Dead Bodys: This will trigger every time A.I. has detected a dead body. Note: Exploded vehicles are triggered here too.
Detect Stop Fire: This will trigger randomly and make A.I. to stop moving for 4 - 8 sec.