createMarker: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "| arma |" to "| arma1 |")
m (Text replacement - "\[\[Category:[ _]?Scripting[ _]Commands[ _]Armed[ _]Assault(\|.*)]]" to "{{GameCategory|arma1|Scripting Commands}}")
Line 76: Line 76:
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP Elite |{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP Elite |{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Armed Assault|{{uc:{{PAGENAME}}}}]]
{{GameCategory|arma1|Scripting Commands}}
[[Category:Scripting Commands Arma 2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Take On Helicopters|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Take On Helicopters|{{uc:{{PAGENAME}}}}]]

Revision as of 00:00, 7 January 2021

Hover & click on the images for description

Description

Description:
Creates a new map marker at the given position. The marker will be created for every player on network as well as JIP. 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, use createMarkerLocal if you want to create a local marker.
Groups:
Markers

Syntax

Syntax:
createMarker [name, position, channel, creator]
Parameters:
[name, position, channel, creator]: Array
name: String
position: Array or Object - format position: Position2D, PositionAGL or Object (object's PositionWorld is used)
channel: 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];
Example 2:
_marker2 = createMarker ["Marker2", player]; // since Arma 3 v1.50

Additional Information

See also:
allMapMarkersdeleteMarkercreateMarkerLocal 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

Notes

Posted on September 19, 2015 - 21:02 (UTC)
Soldia (JP)
createMarker accepts an object as position parameter as well (A3 - 1.50.131969). You could try this with the following code (both SP/MP) _markerstr = createMarker ["markername", player]; _markerstr setMarkerShape "RECTANGLE"; _markerstr setMarkerSize [100, 100];
Posted on May 28, 2018 - 11:57 (UTC)
x39
In Arma 3, one can create markers which are deletable by the user by prefixing the name with `_USER_DEFINED`. Example: createMarker "_USER_DEFINED someMarkerName"


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