createMarker

From Bohemia Interactive Community
Revision as of 13:12, 25 October 2020 by R3vo (talk | contribs) (removed note 1 & 2 and moved their information into the command description. Also cleaned up the description. Improved examples so they will now show an actually marker when used.)
Jump to navigation Jump to search
-wrong parameter ("Arma") defined!-1.00
Hover & click on the images for description

Description

Description:
Creates a new map marker at the given position. The marker name has to be unique, if a marker with the given name exists, the command will be ignored. Use deleteMarker to delete global marker.
The marker will be visible once at least markerType has been defined:
_markerName = createMarker ["markername", player]; _markerName setMarkerType "hd_dot";
If position is given in 3D format, the z coordinate is stored with the marker and will be used when marker is passed to commands like createVehicle, createUnit, createAgent, createMine, setVehiclePosition for example. When marker is manually placed in the editor, z is 0, which means it is placed on the ground. However when user manually places marker on the map in game, it is placed on the water, so z of the marker will be: -getTerrainHeightASL markerPos <USERMARKER>
Multiplayer optimisation: Global marker commands always broadcast the entire marker state over the network. As such, the number of network messages exchanged when creating or editing a marker can be reduced by performing all but the last operation using local marker commands, then using a global marker command for the last change (and subsequent global broadcast of all changes applied to the marker).
Multiplayer:
createMarker is global which means it will be created for every client and also for JIP, use createMarkerLocal if you want to create a local marker.
Groups:
Markers

Syntax

Syntax:
createMarker [name, position, channelID, creator]
Parameters:
[name, position, channel, creator]: Array
name: String - Name of the marker. If "_USER_DEFINED" is added as prefix, the marker can be deleted by the player
position: Array or Object - format position: Position2D, PositionAGL or Object (object's PositionWorld is used)
channelID: Number - (Optional) The marker channel for MP. Template:since
creator: Object - (Optional) The marker creator for MP. Template:since
Return Value:
String

Examples

Example 1:
_marker1 = createMarker ["Marker1", position player]; _marker1 setMarkerType "hd_dot";
Example 2:
_marker2 = createMarker ["Marker2", player]; _marker2 setMarkerType "hd_dot"; // since Arma 3 v1.50
Example 3:
_marker3 = createMarker ["_USER_DEFINED_Marker3", player]; _marker3 setMarkerType "hd_dot"; // This marker can be deleted by the player who created it

Additional Information

See also:
allMapMarkersdeleteMarkercreateMarkerLocalallMapMarkers setMarkerBrushsetMarkerColorsetMarkerDir setMarkerPossetMarkerShapesetMarkerSize setMarkerTextsetMarkerTypesetMarkerAlphaBIS_fnc_markerToStringBIS_fnc_stringToMarker

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

Bottom Section

Posted on April 11, 2019 - 07:10 (UTC)
killzone_kid
Passing object as argument for position may produce slightly different position than when explicitly obtaining object position via position commands, as in createMarker ["marker1", _obj] may slightly differ from createMarker ["marker1", ASLtoAGL getPosASL _obj] This is because when object passed as position, the raw getPosWorld is used createMarker ["marker1", ASLtoAGL getPosWorld _obj] will produce identical result in this case, but may not be what is required
Posted on May 3, 2019 - 15:53 (UTC)
7erra
Arma 3 logo black.png1.92 There is a new function with which you can create a marker with all settings applied in one step: BIS_fnc_stringToMarker and BIS_fnc_stringToMarkerLocal