Arma 3 Scripting

Arma 3 scripting reference

Topics

60 topics in 3 groups. A page can belong to several groups.

Data Types

  • AnythingA variable of type Anything may be of any data types or Nothing.
  • ArrayAn Array is a list of items of varying variable types (including other arrays). Different types can coexist within the same array.
  • BooleanDescription:
  • CodeCode represents data consisting of commands and their parameters. It is defined in script by being wrapped in `{`/`}` brackets, and is precompiled by…
  • ConfigDescription: Config file entry.
  • ControlDescription: Control UI object.
  • Diary RecordDescription: A Diary Record is created by createDiaryRecord - introduced in Arma 2.
  • DisplayDisplay is a UI object that holds Dialogs and Controls. Similar to how controls are identified by IDCs, displays and dialogs are identified by IDDs.
  • Editor ObjectDescription:
  • For TypeDescription: This type handles 'For' cycles.
  • GroupA group is its own data type in the scripting language. All units belong to a group. If units are linked together in the editor, they are all part of…
  • HashMapArma 3 v2.02
  • HashMapKeyHashMapKey is a virtual compound type containing all the possible types that can be used as keys in a HashMap.
  • If TypeDescription: Helper type used in if...then construct.
  • LocationA location is an extended type of marker. For example city names displayed on the map are locations; their information can be accessed and modified…
  • NamespaceArma 2 v1.00
  • NaNDescription:
  • NothingAn expression of type Nothing is no value. It cannot be assigned to a variable. It exists because each expression needs to return some value and…
  • NumberA number is, depending on scope, either a single precision floating-point number (when talking about scripting) or a range of numerical types when…
  • ObjectObject refers to a building block within a scenario. In general when using this term the author refers to the representation of an object (soldier,…
  • Script HandleA Script Handle, used to identify scripts in script operations called using spawn or execVM. Introduced with Armed Assault, does not refer to…
  • Side| Id | Side | Description | Commands | Can<br>createCenter | String version | Present in | | | | | | |…
  • StringA string is a variable type that contains text. Possible length and characters depend on the game and its version.
  • Structured TextStructured Text is a Data Type that has been introduced with Armed Assault. It is a rich text, which is able to include images and formatting. It can…
  • Switch TypeDescription:
  • TaskA Task is a Data Type that contains a task's details, such as location, title and description.
  • TeamDescription: : n/a
  • Team MemberDescription: n/a - see Command Group: Teams.
  • VoidA variable of type Void is an undefined variable.
  • While TypeDescription: Helper type used in while...do construct.
  • With TypeDescription:

Event Handlers

Scripting

  • Arma 3: Actions*unit* action [*"actionType"*, *parameter(s)*]
  • Arma 3: CuratorCurator is a technical name for Arma 3 Zeus game master system. Every involved scripting command, event handler or class name contains the name.
  • Arma 3: Functions LibraryArma 3's Functions Library is the way to declare mission, campaign or addon's Functions. The main difference from older Function Libraries is that it…
  • Arma 3: Remote ExecutionRemote Execution is one of the cornerstones of Multiplayer Scripting in Arma 3.
  • Arma 3: Tree View PathTree View path for referencing Tree View item is not the same as the path used for adding items to the Tree View. This may cause quite a bit of…
  • Arma 3: Writing a FunctionThe most important thing to remember when writing a function is that other people are going to use it. Most of them won't understand how it works,…
  • Code Best PracticesIn the domain of development, any rule is a rule of thumb. If a rule states for example that it is better that a line of code doesn't go over 80…
  • Code OptimisationThis article will try to be a general guide about improving your code and its performance. - The first part (Rules) focuses on having a clean,…
  • ColorColor is a format of an Array, namely an Array of Numbers in format `[r, g, b]` or `[r, g, b, a]`, values ranging from 0 to 1.
  • Control StructuresControl Structures are statements which are used to control execution flow in the scripts. They are sequences of scripting code which help to control…
  • Description.extThe Description.ext file is a missionConfigFile and is used to set the overall mission attributes or to define global properties that will be…
  • Event Scripts__NOTOC____NOEDITSECTION__
  • ExpressionAn expression is a piece of code that returns a value.
  • Identifier__NOTOC__ An Identifier is the name given to a variable that the scripter can choose: It is the name that *identifies* the variable.
  • Initialisation OrderWhenever a mission is launched (or joined in Multiplayer) certain tasks are performed to ensure the mission's various components are initialised…
  • Magic Variables__NOEDITSECTION__ Magic variables are engine-maintained variables that serve a specific purpose within a given scope and are often used by the engine…
  • Multiplayer ScriptingThis page aims to explain notions and specificities of Multiplayer Scripting and its differences with Singleplayer Scripting.
  • OperatorsOperators are the base commands each programming language is built on. They provide ability to perform basic mathematical and logical operations.
  • Order of PrecedenceOrder of operations, also called operator precedence, is a set of rules specifying which procedures should be performed first in a mathematical…
  • PositionPositions in Arma games are always represented as arrays. There are two types of positions: - 2D position: `[X, Y]` - 3D position: `[X, Y, Z]`
  • PreProcessor CommandsThe PreProcessor and the Config Parser allow to use macros in configs. The purpose of macros is to re-use the same definition in scripts and configs…
  • SchedulerThe Scheduler is the part of the game engine that decides which script runs at a certain point in time. It has the ability to pause a running script,…
  • SQF SyntaxSQF stands for Status Quo Function - a successor of Status Quo Script, which is deprecated since Armed Assault but could still be used in Arma 3.
  • VariablesA variable is a "storage container" or "named placeholder" for data. You can read and modify the data once this container is created.
  • Vector3D*See also Vector2D.* Format: