From Bohemia Interactive Community
Jump to navigation Jump to search
Introduced with Armed Assault version 1.001.00This scripting command must be executed on the server to work properly in multiplayer
Hover & click on the images for descriptions


This command will execute attached code whenever a player is leaving an MP session. The code will receive a number of special variables:
  • _id: Number - is the unique DirectPlay ID. Quite useless as the number is too big for in-built string representation and gets rounded. It is also the same id used for user placed markers.
  • _uid: String - is getPlayerUID of the leaving player. In Arma 3 it is also the same as Steam ID.
  • _name: String - is profileName of the leaving player.
  • _jip: (since Arma 3 v1.49) Boolean - is a flag that indicated whether or not the player joined after the mission has started (Joined In Progress). true - if the player was JIP, otherwise false.
  • _owner: (since Arma 3 v1.49) Number - is owner id of the leaving player. Can be used for kick or ban purposes or just for publicVariableClient.
  • _idstr: (since Arma 3 v1.95) String - same as _id but in string format, so could be exactly compared to user marker ids.

Since Arma 3 v1.57 a stackable version of this EH is available: PlayerDisconnected

Arma 3
In order to keep compatibility between official and community content the functions BIS_fnc_addStackedEventHandler and BIS_fnc_removeStackedEventHandler should be used instead.
In MP onPlayerDisconnected is executed only on the server


onPlayerDisconnected code
code: String or Code
Return Value:


Example 1:
onPlayerDisconnected "diag_log [_id, _uid, _name]";
Example 2:
onPlayerDisconnected { if (count allPlayers == 0) then { endMission "END1"; }; };

Additional Information

See also:
MultiplayerEvent Handlers


Only post proven facts here. Report bugs on the Feedback Tracker and discuss on the Arma Discord or on the Forums.


Bottom Section

Posted on January 14, 2015 - 19:21 (UTC)
For Arma 3 v1.32 and onward, one might want to consider using instead the HandleDisconnect mission event handler for greater flexibility.