Arma 3 Scripting

Side Relations

  • Also known as Side relations

Topic · Markdown · JSON · original wiki page

Note

This page deals with all Arma 3 sides, which has more than previous games. See the Side page to see previous titles' available sides.

Also:

Sides Relations

Note

Extraction script can be found on the Biki Export Scripts page.

Sides Friendship

Helper function: BIS_fnc_sideIsFriendly

↓ is friendly to → east west resistance civilian sideAmbientLife sideUnknown sideEnemy sideFriendly sideEmpty sideLogic
east ✓ ✗ ✗ ✓ ✗ ✗ ✗ ✓ ✗ ✗
west ✗ ✓ ✓ ✓ ✗ ✗ ✗ ✓ ✗ ✗
resistance ✗ ✓ ✓ ✓ ✗ ✗ ✗ ✓ ✗ ✗
civilian ✗ ✓ ✓ ✓ ✗ ✗ ✗ ✓ ✗ ✗
sideAmbientLife ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗
sideUnknown ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗
sideEnemy ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗
sideFriendly ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗
sideEmpty ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗
sideLogic ✓ ✓ ✓ ✓ ✗ ✗ ✗ ✓ ✗ ✗

Sides Enmity

Helper function: BIS_fnc_sideIsEnemy

↓ is enemy to → east west resistance civilian sideAmbientLife sideUnknown sideEnemy sideFriendly sideEmpty sideLogic
east ✗ ✓ ✓ ✗ ✗ ✗ ✓ ✗ ✗ ✗
west ✓ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗ ✗
resistance ✓ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗ ✗
civilian ✓ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗ ✗
sideAmbientLife ✓ ✓ ✓ ✓ ✗ ✗ ✓ ✗ ✗ ✗
sideUnknown ✓ ✓ ✓ ✓ ✗ ✗ ✓ ✗ ✗ ✗
sideEnemy ✓ ✓ ✓ ✓ ✗ ✗ ✓ ✗ ✗ ✗
sideFriendly ✓ ✓ ✓ ✓ ✗ ✗ ✓ ✗ ✗ ✗
sideEmpty ✓ ✓ ✓ ✓ ✗ ✗ ✓ ✗ ✗ ✗
sideLogic ✗ ✗ ✗ ✗ ✗ ✗ ✓ ✗ ✗ ✗

Change Relations

// will make east friendly to west and vice versa
east setFriend [west, 1];
west setFriend [east, 1];

One Way Hostility

Using the setCaptive command allows you to stop enemy units to fire on the target unit.

_soldier setCaptive true; // _soldier can shoot at enemy but enemy will not return fire

You can re-activate hostility by canceling captive status.

_soldier setCaptive false; // _soldier will be shot at again by enemy units

Two Way Hostility With Civilians

To make a civilian a potential target to other sides, you can either:

_civilian addRating -10000; // this will cause sides to shoot civilian, but not civilian to shoot back - for that, use setFriend

Note

The renegade rating threshold is below -2000 (e.g -2001, -5000 etc).

Set in the Editor

  1. Group your civilians with an east leader
  2. Delete the east leader on mission load:
    • Put deleteVehicle this in the officer's initialisation field.
    • Alternatively, set the probability of presence slider of the officer to zero.
  3. On mission start, the east leader will not be here but the civilians will be on the east side.