side: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(moved rare used SQS example to the bottom of the list of examples)
(Page reformat and comment cleanup)
Line 7: Line 7:
____________________________________________________________________________________________
____________________________________________________________________________________________


| Returns the side of a unit, vehicle, object or location. Once dead, a unit will be on the [[civilian]] side. Query the side of the [[Group]] to get a reliable result.<br><br>
| Returns the side of a unit, vehicle, object or location.
* a renegade soldier's side will return a [[sideEnemy]]
* an empty vehicle will return [[civilian]]
* a crewed vehicle will return, if present, commander's > gunner's > driver's or > cargo's side, in this order
* a captive or dead unit will return [[civilian]]. Use <tt>[[side]] [[group]] _unit</tt> to get the underlying side
* you can use [[playerSide]] to know the real player's side


When used in conjunction with a [[format]] statement <tt>[[hint]] [[format]]["%1", [[side]] [[player]]]</tt>, the returned strings are: <tt>"[[west|WEST]]"</tt>, <tt>"[[east|EAST]]"</tt>, <tt>"[[resistance|GUER]]"</tt>, <tt>"[[civilian|CIV]]"</tt>, <tt>"[[sideLogic|LOGIC]]"</tt>, <tt>"[[sideEnemy|ENEMY]]"</tt> (eg: renegades), <tt>"[[sideFriendly|FRIENDLY]]"</tt>, <tt>"[[sideAmbientLife|AMBIENT LIFE]]"</tt>, <tt>"[[sideEmpty|EMPTY]]"</tt> or <tt>"[[sideUnknown|UNKNOWN]]"</tt>.
{{note|converting a side to string (''via'' [[str]] or [[format]]} will '''not''' return the side command:
* [[east]] {{=}} "EAST"
* [[west]] {{=}} "WEST"
* [[resistance]] {{=}} "GUER"
* [[civilian]] {{=}} "CIV"
* [[sideUnknown]] {{=}} "UNKNOWN"
* [[sideEnemy]] {{=}} "ENEMY"
* [[sideFriendly]] {{=}} "FRIENDLY"
* [[sideLogic]] {{=}} "LOGIC"
* [[sideEmpty]] {{=}} "EMPTY"
* [[sideAmbientLife]] {{=}} "AMBIENT LIFE"
}}
|= Description
|= Description
____________________________________________________________________________________________
____________________________________________________________________________________________


|'''side''' object |= Syntax
| '''side''' object |= Syntax


|p1= object: [[Object]] or [[Group]] |= Parameter 1
|p1= object: [[Object]], [[Group]] or [[Location]] |= Parameter 1


| [[Side]] |= Return value
| [[Side]] |= Return value
|s2='''side''' location |= Syntax
|p21= location: [[Location]]|= Parameter 1
|r2= [[Side]] |= Return value
____________________________________________________________________________________________
____________________________________________________________________________________________
 


|x1= <code>[[if]] ([[side]] [[player]] == [[west]]) [[then]] {[[hint]] "Player is on the West side"};</code> |= Example 2
|x1= <code>[[if]] ([[side]] [[player]] == [[west]]) [[then]] { [[hint]] "Player is on the West side" };</code> |= Example 1


|x2= <code>_sideAlsoWorkingForDead = [[side]] [[group]] [[player]];</code> |= Example 3
|x2= <code>_sideAlsoWorkingForDead = [[side]] [[group]] [[player]];</code> |= Example 2


|x3= <code>_sideLocation = [[side]] myLocation;</code> |= Example 3
|x3= <code>_sideLocation = [[side]] myLocation;</code> |= Example 3
|x4= SQS <code>? ([[side]] [[player]] <nowiki>==</nowiki> [[west]]) : [[hint]] "Player is on the West side."</code> |= Example 1
 
|x4= <code>if (side player != [[playerSide]]) [[then]] { [[hint]] "player is renegade or dead"; };</code> |= Example 4
____________________________________________________________________________________________
____________________________________________________________________________________________


| [[CfgVehicles_Config_Reference#side|CfgVehicles config side value]], [[Side]], [[playerSide]], [[west]], [[east]], [[resistance]], [[civilian]], [[sideLogic]], [[sideFriendly]], [[sideEnemy]], [[sideUnknown]], [[sideEmpty]], [[sideAmbientLife]], [[Side relations]]|= See also
| [[CfgVehicles_Config_Reference#side|CfgVehicles config side value]], [[Side]], [[playerSide]], [[west]], [[east]], [[resistance]], [[civilian]], [[sideLogic]], [[sideFriendly]], [[sideEnemy]], [[sideUnknown]], [[sideEmpty]], [[sideAmbientLife]], [[Side relations]], [[BIS_fnc_sideID]] |= See also


}}
}}
Line 43: Line 53:
<!-- Note Section BEGIN -->
<!-- Note Section BEGIN -->
<dd class="notedate">
<dd class="notedate">
<dt class="note">'''[[User:Ceeeb|Ceeeb]]'''
<dt class="note">[[User:Ceeeb|Ceeeb]]
<dd class="note">In '''ArmA''', the following objects are on side [[civilian]]: dead bodies and vehicles, empty vehicles, all mission editor placed objects (that do not have an inherit side), all objects with interactive components such as ladders and doors, man made structures such as buildings (including classless wrp placed objects), docks, high tension powerlines, see-saws, large rubbish bins, fountains. Basically if an object uses a non-simple damage or physics simulation it is likely to be on the civilian side.
<dd class="note">In '''ArmA''', the following objects are on side [[civilian]]: dead bodies and vehicles, empty vehicles, all mission editor placed objects (that do not have an inherit side), all objects with interactive components such as ladders and doors, man made structures such as buildings (including classless wrp placed objects), docks, high tension powerlines, see-saws, large rubbish bins, fountains. Basically if an object uses a non-simple damage or physics simulation it is likely to be on the civilian side.<br>
 
'''NOTE:''' If you need to know the side of a dead body, you can use [[faction]] command as a workaround -- [[User:Killzone_Kid|Killzone_Kid]]
NOTE: If you need to know the side of a dead body, you can use [[faction]] command as a workaround -- [[User:Killzone_Kid|Killzone_Kid]]
 
<dd class="notedate">
<dt class="note">'''[[User:Bdfy|Bdfy]]'''
<dd class="note">In '''OFP 1.96''', side return value for empty vehicles will be [[civilian]].
 
<dd class="notedate">
<dt class="note">'''[[User:Ceeeb|Ceeeb]]'''
<dd class="note">
In '''OFP v1.96''', the side return value for a vehicle is based on the side of it's commander, then gunner, then driver, then cargo. It will retain it's side value until it is either empty, or a unit of another side takes over in a equal or higher role, irrespective of the side of other units still on board. This can be used to simulate friendly fire, as a vehicle can be made to appear to be an enemy even though all units on board are actually friendly.
 
 
<dd class="notedate">
<dt class="note">'''[[User:Crowe|Crowe]]'''
<dd class="note">
Units with negative score(rating) are [[sideEnemy]].
 


<dd class="notedate">
<dd class="notedate">
<dt class="note">'''[[User:Shuko|Shuko]]'''
<dt class="note">[[User:Ceeeb|Ceeeb]]
<dd class="note">
<dd class="note">
The [[Side]] for civilians is [[civilian]] and the string name of the side is "CIV". For Resistance/Independent (Guerilla) they are [[resistance]] and "GUER".
In '''OFP v1.96''', the side return value for a vehicle is based on the side of its commander, then gunner, then driver, then cargo. It will retain its side value until it is either empty, or a unit of another side takes over in a equal or higher role, irrespective of the side of other units still on board. This can be used to simulate friendly fire, as a vehicle can be made to appear to be an enemy even though all units on board are actually friendly.


<dd class="notedate">
<dd class="notedate">
<dt class="note">'''[[User:Tankbuster|Tankbuster]]'''
<dt class="note">[[User:Tankbuster|Tankbuster]]
<dd class="note">As CEEB says above, in '''ArmA2''', side for a vehicle often depends on who the command or driver is, for example, A KA52, piloted by a USMC guy will have side WEST. For an accurate result of what 'where the vehicle was made', use [[faction]]. This ignores the pilot/commander, so in my example here, this KA52 will always return faction "RU". Note that faction returns different values to side though.
<dd class="note">As CEEB says above, in '''ArmA2''', side for a vehicle often depends on who the command or driver is, for example, A KA52, piloted by a USMC guy will have side WEST. For an accurate result of what 'where the vehicle was made', use [[faction]]. This ignores the pilot/commander, so in my example here, this KA52 will always return faction "RU". Note that faction returns different values to side though.


<dd class="February 4, 2011">
<dd class="notedate">February 4, 2011
<dt class="note">'''[[User:RKurtzDmitriyev|RKurtzDmitriyev]]'''
<dt class="note">[[User:RKurtzDmitriyev|RKurtzDmitriyev]]
<dd class="note">
<dd class="note">
Side values for ambient life (animals) are bizarre. ''side _unit'' returns "CIV", but [[playerSide]] returns "AMBIENT LIFE" when the player is an animal. In that case, ''playerSide == side player'' returns false!
Side values for ambient life (animals) are bizarre. ''side _unit'' returns "CIV", but [[playerSide]] returns "AMBIENT LIFE" when the player is an animal. In that case, ''playerSide == side player'' returns false!


Fortunately, you can easily check if a unit is an animal with ''_unit [[isKindOf]] "ANIMAL"'
Fortunately, you can easily check if a unit is an animal with ''_unit [[isKindOf]] "ANIMAL"'
<dd class="notedate">
<dt class="note">'''[[User:Lester|Lester]]'''
<dd class="note">
Units who set via 'this setcaptive true' are always on side [[civilian]].


<!-- Note Section END -->
<!-- Note Section END -->
Line 101: Line 86:
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on July 30, 2015 - 09:23 (UTC)</dd>
<dt class="note">[[User:IT07|IT07]]</dt>
<dd class="note">
This is probably the most confusing section of the wiki so here I give my clarification: <br>
In ArmA3 1.48, forEach'ing playableUnits to find certain players from certain sides, you will need to do it like this: <br>
<code>if (side _x isEqualTo EAST) then { diag_log format["%1's side is %2", name _x, side _x];</code><br>
Instead, this page might trick you into thinking that you will need to check for player's side like this: <br>
<code>side _x isEqualTo "EAST"</code> ^^^^^ That does NOT work.
</dd>
</dl>
<!-- DISCONTINUE Notes -->

Revision as of 11:04, 25 March 2018

Hover & click on the images for description

Description

Description:
Returns the side of a unit, vehicle, object or location.
  • a renegade soldier's side will return a sideEnemy
  • an empty vehicle will return civilian
  • a crewed vehicle will return, if present, commander's > gunner's > driver's or > cargo's side, in this order
  • a captive or dead unit will return civilian. Use side group _unit to get the underlying side
  • you can use playerSide to know the real player's side
Template:note
Groups:
Uncategorised

Syntax

Syntax:
side object
Parameters:
object: Object, Group or Location
Return Value:
Side

Examples

Example 1:
if (side player == west) then { hint "Player is on the West side" };
Example 2:
_sideAlsoWorkingForDead = side group player;
Example 3:
_sideLocation = side myLocation;
Example 4:
if (side player != playerSide) then { hint "player is renegade or dead"; };

Additional Information

See also:
CfgVehicles config side valueSideplayerSidewesteastresistanceciviliansideLogicsideFriendlysideEnemysideUnknownsideEmptysideAmbientLifeSide relationsBIS_fnc_sideID

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Ceeeb
In ArmA, the following objects are on side civilian: dead bodies and vehicles, empty vehicles, all mission editor placed objects (that do not have an inherit side), all objects with interactive components such as ladders and doors, man made structures such as buildings (including classless wrp placed objects), docks, high tension powerlines, see-saws, large rubbish bins, fountains. Basically if an object uses a non-simple damage or physics simulation it is likely to be on the civilian side.
NOTE: If you need to know the side of a dead body, you can use faction command as a workaround -- Killzone_Kid
Ceeeb
In OFP v1.96, the side return value for a vehicle is based on the side of its commander, then gunner, then driver, then cargo. It will retain its side value until it is either empty, or a unit of another side takes over in a equal or higher role, irrespective of the side of other units still on board. This can be used to simulate friendly fire, as a vehicle can be made to appear to be an enemy even though all units on board are actually friendly.
Tankbuster
As CEEB says above, in ArmA2, side for a vehicle often depends on who the command or driver is, for example, A KA52, piloted by a USMC guy will have side WEST. For an accurate result of what 'where the vehicle was made', use faction. This ignores the pilot/commander, so in my example here, this KA52 will always return faction "RU". Note that faction returns different values to side though.
February 4, 2011
RKurtzDmitriyev
Side values for ambient life (animals) are bizarre. side _unit returns "CIV", but playerSide returns "AMBIENT LIFE" when the player is an animal. In that case, playerSide == side player returns false! Fortunately, you can easily check if a unit is an animal with _unit isKindOf "ANIMAL"'

Bottom Section