getPlayerUID: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "\[\[Category:ArmA 2: New Scripting Commands List\|{{uc:{{PAGENAME}}}}\]\]\s*" to "") |
m (Text replacement - "{{uc:{{PAGENAME}}}}" to "") |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
|1.02|Game version= | |1.02|Game version= | ||
|gr1 = Multiplayer |GROUP1= | |||
|arg= global |Multiplayer Arguments= | |arg= global |Multiplayer Arguments= | ||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| | | Return a UniqueID of the given unit (player). | ||
| | {{Important|Up until [[{{arma2oa}}]] v1.60, the result always consisted of a [[str|stringified]] number (see [[getPlayerUIDOld]]), but always had to be considered and processed as a [[String]].<!-- | ||
--> Converting it to a [[Number]] could cause precision problems, as [[Number]] cannot accurately represent integers above 16777216 (2<sup>24</sup>).<!-- | |||
--> Moreover, games since [[{{arma2oa}}]] v1.61 provide a value that is not all-numeric.}} | |||
| | {{Feature arma3|The returned string is the player's steamID64: | ||
<code>[[private]] _steamProfileUrl {{=}} "http://<nowiki/>steamcommunity.com/profiles/" + ([[getPlayerUID]] [[player]]);</code>}} |DESCRIPTION= | |||
| | |pr= In some cases, the identity of certain player units might fail to propagate to other clients and the server, | ||
which causes [[isPlayer]] and [[getPlayerUID]] to incorrectly return <tt>[[false]]</tt> and <tt>""</tt> respectively, | |||
where the affected units are [[not]] [[local]] - see [https://github.com/michail-nikolaev/task-force-arma-3-radio/issues/1096 this bug report (GitHub)]. | |||
Therefore, beware of false negatives. |PROBLEMS= | |||
____________________________________________________________________________________________ | |||
| | | [[getPlayerUID]] unit |SYNTAX= | ||
| [[ | |p1= unit: [[Object]] |PARAMETER1= | ||
| | |||
| | | [[String]] "_SP_AI_" or "_SP_PLAYER_" in SP, "" or UID in MP.<br> | ||
The unique ID may be up to 100 characters long and may contain numbers, uppercase letters and underscores.<br> | |||
The value can be used to construct a valid variable name by appending to another valid variable name,<br> | |||
e.g {{Inline code|[[missionNamespace]] [[setVariable]] ["TAG_player" + _uid, _unit];}} |RETURNVALUE= | |||
|x1= <code>[[private]] _uid = [[getPlayerUID]] [[player]];</code> |EXAMPLE1= | |||
____________________________________________________________________________________________ | ____________________________________________________________________________________________ | ||
| [[getPlayerUIDOld]], [[getClientState]], [[getClientStateNumber]] |SEEALSO= | | [[BIS_fnc_getUnitByUID]], [[getPlayerUIDOld]], [[getClientState]], [[getClientStateNumber]] |SEEALSO= | ||
}} | }} | ||
Line 40: | Line 46: | ||
<dl class='command_description'> | <dl class='command_description'> | ||
<!-- Note Section BEGIN --> | <!-- Note Section BEGIN --> | ||
<!-- Note Section END --> | <!-- Note Section END --> | ||
</dl> | </dl> | ||
Line 47: | Line 52: | ||
<h3 style='display:none'>Bottom Section</h3> | <h3 style='display:none'>Bottom Section</h3> | ||
[[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 | |||
Revision as of 22:08, 25 September 2020
Description
- Description:
- Return a UniqueID of the given unit (player).
- Problems:
- In some cases, the identity of certain player units might fail to propagate to other clients and the server, which causes isPlayer and getPlayerUID to incorrectly return false and "" respectively, where the affected units are not local - see this bug report (GitHub). Therefore, beware of false negatives.
- Groups:
- Multiplayer
Syntax
- Syntax:
- getPlayerUID unit
- Parameters:
- unit: Object
- Return Value:
- String "_SP_AI_" or "_SP_PLAYER_" in SP, "" or UID in MP.
The unique ID may be up to 100 characters long and may contain numbers, uppercase letters and underscores.
The value can be used to construct a valid variable name by appending to another valid variable name,
e.gmissionNamespace setVariable ["TAG_player" + _uid, _unit];
Examples
- Example 1:
private _uid = getPlayerUID player;
Additional Information
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