Side Relations

From Bohemia Interactive Community
Revision as of 01:00, 8 February 2021 by R3vo (talk | contribs) (Text replacement - "{{Checkbox|no}}" to "{{Icon|unchecked}}")
Jump to navigation Jump to search
Arma 3
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

Sides friendship

Helper function: BIS_fnc_sideIsFriendly

is friendly to east west resistance civilian sideAmbientLife sideUnknown sideEnemy sideFriendly sideEmpty sideLogic
east Template:Checkbox Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
west Unchecked Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
resistance Unchecked Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
civilian Unchecked Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
sideAmbientLife Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
sideUnknown Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
sideEnemy Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
sideFriendly Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
sideEmpty Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked
sideLogic Template:Checkbox Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked

Sides enmity

Helper function: BIS_fnc_sideIsEnemy

is enemy to east west resistance civilian sideAmbientLife sideUnknown sideEnemy sideFriendly sideEmpty sideLogic
east Unchecked Template:Checkbox Template:Checkbox Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
west Template:Checkbox Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
resistance Template:Checkbox Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
civilian Template:Checkbox Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
sideAmbientLife Template:Checkbox Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
sideUnknown Template:Checkbox Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
sideEnemy Template:Checkbox Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
sideFriendly Template:Checkbox Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
sideEmpty Template:Checkbox Template:Checkbox Template:Checkbox Template:Checkbox Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked
sideLogic Unchecked Unchecked Unchecked Unchecked Unchecked Unchecked Template:Checkbox Unchecked Unchecked Unchecked


Change relations

  • You can set which sides resistance is friendly/enemy to in the mission editor (click on the Intel box).
  • Everyone is friendly toward civilians. Civilians AI have a total impunity and can kill any enemy without retaliation (same as captive units).
  • You can use the setFriend command to set relations between any sides (even east and west).
// 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:

  • make the civilian a renegade by using the addRating command. This will make him a renegade, meaning an enemy to everyone including other civilians.
_civilian addRating -10000; // will cause sides to shoot civilian, but not civilian to shoot back - for that, use setFriend
the renegade rating threshold is below -2000 (e.g -2001, -5000 etc).
  • make the civilian join an enemy group, e.g east:
private _eastGroup = createGroup east;
[_civilian] joinSilent _eastGroup;

Set in the editor

  1. Group your civilians with an east leader
  2. Delete the east leader on mission load:
  3. On mission start, the east leader will not be here but the civilians will be on the east side.


Code used to generate the tables:

private _func = BIS_fnc_sideIsFriendly;
private _sidesAsString = ["east", "west", "resistance", "civilian", "sideAmbientLife", "sideUnknown", "sideEnemy", "sideFriendly", "sideEmpty", "sideLogic"];
private _sideResults = [];
{
	private _sideAsString = _x;
	private _side = call compile _sideAsString;
	_sideResults pushBack ([_sideAsString] + (_sidesAsString apply { [_side, call compile _x] call _func }));
} forEach _sidesAsString;

private _result = "{{| class=""wikitable"" style=""text-align: center""\n|-\n";
{
	_result = _result + "! [[" + _x +"]]\n";
} forEach _sidesAsString;
{
	private _results = _x;
	{
		if (_x isEqualType true) then
		{
			if (_x) then
			{
				_result = _result + "| {{Checkbox|yes}}\n";
			}
 			else
			{
				_result = _result + "| {{Icon|unchecked}}\n";
			}
		}
		else
		{
			_result = _result + ("| [[" + _x + "]]\n");
		}
	} forEach _results;

	_result = _result + "|-\n";
} forEach _sideResults;

_result = _result + "|}";

_result;
↑ Back to spoiler's top