setCaptive: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (template:command argument fix)
(Add score/rating note)
 
(55 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| ofp |= Game name
|game1= ofp
|version1= 1.00


|1.00|= Game version
|game2= ofpe
|version2= 1.00


|eff= global|= Effects in MP
|game3= arma1
|arg= local|= Arguments in MP
|version3= 1.00
____________________________________________________________________________________________


| Mark a unit as captive. If unit is a vehicle, commander is marked. A captive is neutral to everyone (belong to [[civilian]] [[side]]), and will not trigger "detected by" conditions for its original [[side]].
|game4= arma2
|version4= 1.00


<br><br>Using a number (instead of a boolean) for the status has no further effect on the engine's behavior, but can be used by [[captiveNum]] to keep track of the captivity status at a finer resolution (e.g. handcuffed, grouped, etc.). The numbered status syntax was introduced in Arma 2. |DESCRIPTION=
|game5= arma2oa
|version5= 1.50


____________________________________________________________________________________________
|game6= tkoh
|version6= 1.00


| unitName '''setCaptive''' status |SYNTAX=
|game7= arma3
|version7= 0.50


|p1= unitName: [[Object]] |PARAMETER1=
|eff= global
|p2= status: [[Boolean]]  - [[true]] means [[captive]]|PARAMETER2=


| [[Nothing]] |RETURNVALUE=
|arg= local


| s2= unitName '''setCaptive''' status |SYNTAX=
|gr1= Object Manipulation


|p21= unitName: [[Object]] |PARAMETER1=
|gr2= Sides
|p22= status:  [[Number]] - 0 or non zero. A non zero value means [[captive]]|PARAMETER2=


| r2= [[Nothing]] |RETURNVALUE=
|descr= Mark a unit as captive. If unit is a vehicle, commander is marked. A captive unit:
____________________________________________________________________________________________
* is seen as belonging to the [[civilian]] [[Side]]
 
* will not be fired upon
|x1= <code>_soldier1 [[setCaptive]] [[true]];</code> |EXAMPLE1=
* will still shoot at its real side's enemies
|x2= <code>_soldier1 [[setCaptive]] 1;</code> |EXAMPLE2=
* will make its killer earn/lose [[score]]/[[rating]] as usual
____________________________________________________________________________________________
* will not get its weapons removed (see [[removeAllWeapons]])
* will not trigger "detected by" conditions for its original [[Side]].
{{Feature|informative|The number used as status can be retrieved by [[captiveNum]] to keep track of the captivity status at a finer resolution (e.g. handcuffed, grouped, etc).}}


| [[captive]], [[captiveNum]] |SEEALSO=
|s1= unitName [[setCaptive]] status


}}
|p1= unitName: [[Object]]
 
|p2= status: [[Boolean]] - [[true]] means [[captive]]
 
|r1= [[Nothing]]
 
|s2= unitName [[setCaptive]] statusNumber
 
|s2since= arma2 1.00
 
|p21= unitName: [[Object]]
 
|p22= statusNumber:  [[Number]] - zero means non-captive, a non-zero value means [[captive]]; see [[captiveNum]]
 
|r2= [[Nothing]]
 
|x1= <sqf>
_soldier1 setCaptive true;
side _soldier1; // returns civilian
side group _soldier1; // returns e.g blufor
</sqf>


<h3 style="display:none">Notes</h3>
|x2= <sqf>
<dl class="command_description">
_soldier1 setCaptive 1;
<!-- Note Section BEGIN -->
captive _soldier1; // returns true
<dd class="notedate">Posted on August 4, 2006 - 23:49
<dt class="note">'''[[User:Hoz|hoz]]'''<dd class="note"> This function does not remove unit's weapons.


If you make a unit captive, that unit will still fire on the enemy, but the enemy will not fire back.
_soldier1 setCaptive 42;
<dd class="notedate">Posted on January 1, 2011 - 13:11
captive _soldier1; // returns true
<dt class="note">'''[[User:Talkingtoaj|Talkingtoaj]]'''<dd class="note">
If you change a unit from captive to no longer captive (for example, to "reveal" an undercover unit), enemy units that already have prior knowledge of the unit as a captive will only partially engage, making it very easy for the undercover unit. This seems to be a bug.


However other enemy unit the unit later encounters will engage freely with full force.
_soldier1 setCaptive 0;
captive _soldier1; // returns false
</sqf>


|seealso= [[captive]] [[captiveNum]]
}}


<!-- Note Section END -->
{{Note
</dl>
|user= Talkingtoaj
|timestamp= 20110101131100
|text= If you change a unit from captive to no longer captive (for example, to "reveal" an undercover unit), enemy units that already have prior knowledge of the unit as a captive will only partially engage, making it very easy for the undercover unit. This seems to be a bug.


<h3 style="display:none">Bottom Section</h3>
However other enemy unit the unit later encounters will engage freely with full force.
[[Category:Scripting Commands|SETCAPTIVE]]
}}
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP 1.96|SETCAPTIVE]]
[[Category:Scripting Commands OFP 1.46|SETCAPTIVE]]
[[Category:Scripting Commands ArmA|SETCAPTIVE]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]


<!-- CONTINUE Notes -->
{{Note
<dl class="command_description">
|user= Lou Montana
<dd class="notedate">Posted on November 19, 2017 - 10:58 (UTC)</dd>
|timestamp= 20171119105800
<dt class="note">[[User:Lou Montana|Lou Montana]]</dt>
|text= '''[[User:Talkingtoaj|Talkingtoaj]]'''<nowiki/>'s note does not apply to {{arma3}} anymore (earlier than 1.76)<br>
<dd class="note">
'''Talkingtoaj''' note doesn't apply to Arma 3 anymore (earlier than 1.76)<br />
A captive unit will immediately be shot (after a normal "human" reaction time from the AI)
A captive unit will immediately be shot (after a normal "human" reaction time from the AI)
</dd>
}}
</dl>
 
<!-- DISCONTINUE Notes -->
{{Note
|user= DreadedEntity
|timestamp= 20220426011528
|text= In '''A3 2.08.149102''', entering an empty vehicle with the same [[side]] as the player as defined in <sqf inline>configFile >> "CfgVehicles" >> _vehicleClassname >> "side"</sqf> will briefly switch the side of the vehicle to the side of the player soldier (specifically, while the get in animation is playing), even if captive. Once exiting the vehicle, it will retain that side until the player enters a new vehicle or, seemingly arbitrarily, moves more than 100 meters away from the vehicle <sqf inline>player distance _vehicle > 100</sqf>. If the player gets within 100 meters of the vehicle without entering a new vehicle, it will again switch to the players side. This is probably a bug, in my opinion
}}

Latest revision as of 12:44, 24 March 2023

Hover & click on the images for description

Description

Description:
Mark a unit as captive. If unit is a vehicle, commander is marked. A captive unit:
  • is seen as belonging to the civilian Side
  • will not be fired upon
  • will still shoot at its real side's enemies
  • will make its killer earn/lose score/rating as usual
  • will not get its weapons removed (see removeAllWeapons)
  • will not trigger "detected by" conditions for its original Side.
The number used as status can be retrieved by captiveNum to keep track of the captivity status at a finer resolution (e.g. handcuffed, grouped, etc).
Groups:
Object ManipulationSides

Syntax

Syntax:
unitName setCaptive status
Parameters:
unitName: Object
status: Boolean - true means captive
Return Value:
Nothing

Alternative Syntax

Syntax:
unitName setCaptive statusNumber
Parameters:
unitName: Object
statusNumber: Number - zero means non-captive, a non-zero value means captive; see captiveNum
Return Value:
Nothing

Examples

Example 1:
_soldier1 setCaptive true; side _soldier1; // returns civilian side group _soldier1; // returns e.g blufor
Example 2:
_soldier1 setCaptive 1; captive _soldier1; // returns true _soldier1 setCaptive 42; captive _soldier1; // returns true _soldier1 setCaptive 0; captive _soldier1; // returns false

Additional Information

See also:
captive captiveNum

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
Talkingtoaj - c
Posted on Jan 01, 2011 - 13:11 (UTC)
If you change a unit from captive to no longer captive (for example, to "reveal" an undercover unit), enemy units that already have prior knowledge of the unit as a captive will only partially engage, making it very easy for the undercover unit. This seems to be a bug. However other enemy unit the unit later encounters will engage freely with full force.
Lou Montana - c
Posted on Nov 19, 2017 - 10:58 (UTC)
Talkingtoaj's note does not apply to Arma 3 anymore (earlier than 1.76)
A captive unit will immediately be shot (after a normal "human" reaction time from the AI)
DreadedEntity - c
Posted on Apr 26, 2022 - 01:15 (UTC)
In A3 2.08.149102, entering an empty vehicle with the same side as the player as defined in configFile >> "CfgVehicles" >> _vehicleClassname >> "side" will briefly switch the side of the vehicle to the side of the player soldier (specifically, while the get in animation is playing), even if captive. Once exiting the vehicle, it will retain that side until the player enters a new vehicle or, seemingly arbitrarily, moves more than 100 meters away from the vehicle player distance _vehicle > 100. If the player gets within 100 meters of the vehicle without entering a new vehicle, it will again switch to the players side. This is probably a bug, in my opinion