Modules: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Fixed whitespace behind variable name)
 
(42 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{SideTOC}}
{{TOC|side}}
== Introduction ==
This page can be considered a hub when it comes to [[Modules]].
This page can be considered a hub when it comes to '''modules'''. Here you'll find everything you need to know when it comes to creating modules, available modules in {{arma3}} and existing module documentation.
Here you will find everything you need to know when it comes to creating modules, available modules in {{arma3}} and existing module documentation.




== General Information ==
== General Information ==
* Modules are executed before initServer.sqf, initPlayerLocal.sqf and initPlayerServer.sqf (See [[Initialization Order]])
 
* Modules are executed before initServer.sqf, initPlayerLocal.sqf and initPlayerServer.sqf (See [[Initialisation Order]])
* Modules are very easy to set up, even for unexperienced users
* Modules are very easy to set up, even for unexperienced users
* They can easily be used to create mission templates
* They can easily be used to create mission templates




== Spawning a Module by script ==
== Create a Module by Script ==
A module can be created using [[createUnit]]. Same as normal units, a [[Group]] must be created first.<br />
 
A module can be created using [[createUnit]] (do '''not''' use [[createVehicle]] or [[createAgent]]). Same as normal units, a [[Group]] must be created first.<br>
Since {{GVI|arma3|1.86}} the variable [[BIS_fnc_initModules]]_disableAutoActivation must be set to [[false]] in its init to allow its init code to run.
Since {{GVI|arma3|1.86}} the variable [[BIS_fnc_initModules]]_disableAutoActivation must be set to [[false]] in its init to allow its init code to run.


'''Example'''
'''Example:'''
<sqf>
private _moduleGroup = createGroup sideLogic;
"ModuleSmokeWhite_F" createUnit [
getPosATL player,
_moduleGroup,
"this setVariable ['BIS_fnc_initModules_disableAutoActivation', false, true];"
];
</sqf>


[[private]] _moduleGroup = [[createGroup]] [[sideLogic]];
"ModuleSmokeWhite_F" [[createUnit]] [
[[getPosATL]] [[player]],
_moduleGroup,
"[[this]] [[setVariable]] ['BIS_fnc_initModules_disableAutoActivation', [[false]], [[true]]];"
];


== Creating a Module ==


== Creating a Module ==
{{arma3}} introduces a module framework which aims to simplify the configuration of modules and the way their functions are executed (Globally,[[Multiplayer Scripting#Join In Progress|JIP]])
{{arma3}} introduces a module framework which aims to simplify the configuration of modules and the way their functions are executed (Globally,[[JIP]])
 
=== Create a Module Addon ===


=== 1. Create a Module Addon ===
* Make a folder named ''{{Color|purple|TAG}}_addonName'' a create a ''config.cpp'' file in it.
* Make a folder named ''<span style="color:indigo">myTag</span>_addonName'' a create a ''config.cpp'' file in it.
* Inside, declare a CfgPatches class with your addon and its modules (in the ''units'' array). Without this, the game would not recognise the addon.
* Inside, declare a CfgPatches class with your addon and its modules (in the ''units'' array). Without this, the game wouldn't recognize the addon.
* Make sure the addon and all objects start with your tag, e.g. {{Color|purple|TAG_}}.
* Make sure the addon and all objects start with your tag, e.g. <span style="color:indigo">myTag</span>
'''Example'''
'''Example'''
  class CfgPatches
  class CfgPatches
  {
  {
  class <span style="color:indigo">myTag</span>_addonName
  class {{Color|purple|TAG}}_addonName
  {
  {
  units[] = {"<span style="color:indigo">myTag</span>_<span style="color:green">Module</span><span style="color:orangered;">Nuke</span>"};
  units[] = { "{{Color|purple|TAG}}_{{Color|green|Module}}{{Color|orangered|Nuke}}" };
  requiredVersion = 1.0;
  requiredVersion = 1.0;
  requiredAddons[] = {"A3_Modules_F"};
  requiredAddons[] = { "A3_Modules_F" };
  };
  };
  };
  };


=== 2. Module Category ===  
=== Module Category ===
* Modules are placed into basic categories which makes finding a desired module easier. You can use on of the existing categories ''(See table to the right)'' or create your own category ''(See example below)''
 
{| class="wikitable" style="float: right; margin: 0 0 0 2.2em; max-width: 50%;"
* Modules are placed into basic categories which makes finding a desired module easier.
You can use on of the existing categories ''(See table to the right)'' or create your own category (see example below).
 
{| class="wikitable float-right" style="max-width: 50%"
! class
! class
! displayName
! displayName
Line 81: Line 89:
| Supports
| Supports
|}
|}
'''Example'''<br>
'''Example'''
  class CfgFactionClasses
  class CfgFactionClasses
  {
  {
  class NO_CATEGORY;
  class NO_CATEGORY;
  class <span style="color:indigo">myTag</span>_<span style="color:teal">explosions</span>: NO_CATEGORY
  class {{Color|purple|TAG}}_{{Color|teal|explosions}}: NO_CATEGORY
  {
  {
  displayName = "Explosions";
  displayName = "Explosions";
Line 91: Line 99:
  };
  };


=== 3. Creating the Module Config ===  
=== Creating the Module Config ===
 
* All in-game objects (soldiers, vehicles, buildings, logics, modules, ...) are defined in ''CfgVehicles'' class.
* All in-game objects (soldiers, vehicles, buildings, logics, modules, ...) are defined in ''CfgVehicles'' class.
* '''All modules must inherit from Module_F''' parent class, either directly or through some additional sub-parent.
* '''All modules must inherit from Module_F''' parent class, either directly or through some additional sub-parent.
* Modules functions are by default '''not''' executed when in [[Eden Editor]] workspace. It can be enabled using '''is3DEN''' property, but that will also change format of function params.
* Modules functions are by default '''not''' executed when in [[:Category:Eden Editor|Eden Editor]] workspace. It can be enabled using '''is3DEN''' property, but that will also change format of function params.
 
'''Example:'''
<spoiler>
<syntaxhighlight lang="cpp">
class CfgVehicles
{
class Logic;
class Module_F : Logic
{
class AttributesBase
{
class Default;
class Edit; // Default edit box (i.e. text input field)
class Combo; // Default combo box (i.e. drop-down menu)
class Checkbox; // Default checkbox (returned value is Boolean)
class CheckboxNumber; // Default checkbox (returned value is Number)
class ModuleDescription; // Module description
class Units; // Selection of units on which the module is applied
};
 
// Description base classes (for more information see below):
class ModuleDescription
{
class AnyBrain;
};
};
 
class TAG_Module_Nuke : Module_F
{
// Standard object definitions:
scope = 2; // Editor visibility; 2 will show it in the menu, 1 will hide it.
displayName = "Nuclear Explosion"; // Name displayed in the menu
icon = "\TAG_addonName\data\icon_Nuke_ca.paa"; // Map icon. Delete this entry to use the default icon.
category = "Effects";
 
function = "TAG_fnc_moduleNuke"; // Name of function triggered once conditions are met
functionPriority = 1; // Execution priority, modules with lower number are executed first. 0 is used when the attribute is undefined
isGlobal = 1; // 0 for server only execution, 1 for global execution, 2 for persistent global execution
isTriggerActivated = 1; // 1 for module waiting until all synced triggers are activated
isDisposable = 1; // 1 if modules is to be disabled once it is activated (i.e. repeated trigger activation will not work)
is3DEN = 1; // 1 to run init function in Eden Editor as well
curatorCanAttach = 1; // 1 to allow Zeus to attach the module to an entity
curatorInfoType = "RscDisplayAttributeModuleNuke"; // Menu displayed when the module is placed or double-clicked on by Zeus


'''Example'''<br>
// 3DEN Attributes Menu Options
<spoiler> class CfgVehicles
canSetArea = 1; // Allows for setting the area values in the Attributes menu in 3DEN
{
canSetAreaShape = 1; // Allows for setting "Rectangle" or "Ellipse" in Attributes menu in 3DEN
class Logic;
canSetAreaHeight = 1; // Allows for setting height or Z value in Attributes menu in 3DEN
class Module_F: Logic
class AttributeValues
{
{
class AttributesBase
// This section allows you to set the default values for the attributes menu in 3DEN
{
size3[] = { 100, 100, -1 }; // 3D size (x-axis radius, y-axis radius, z-axis radius)
class Default;
isRectangle = 0; // Sets if the default shape should be a rectangle or ellipse
class Edit; {{codecomment|// Default edit box (i.e., text input field)}}
};
class Combo; {{codecomment|// Default combo box (i.e., drop-down menu)}}
 
class Checkbox; {{codecomment|// Default checkbox (returned value is [[Bool]])}}
// Module attributes (uses https://community.bistudio.com/wiki/Eden_Editor:_Configuring_Attributes#Entity_Specific):
class CheckboxNumber; {{codecomment|// Default checkbox (returned value is [[Number]])}}
class Attributes : AttributesBase
class ModuleDescription; {{codecomment|// Module description}}
{
class Units; {{codecomment|// Selection of units on which the module is applied}}
// Arguments shared by specific module type (have to be mentioned in order to be present):
};
class Units : Units
{{codecomment|// Description base classes, for more information see below}}
{
class ModuleDescription
property = "TAG_Module_Nuke_Units";
{
};
class AnyBrain;
 
};
// Module-specific arguments:
};
class Yield : Combo
class <span style="color:indigo">myTag</span>_<span style="color:green">Module</span><span style="color:orangered;">Nuke</span>: Module_F
{
{
property = "TAG_Module_Nuke_Yield"; // Unique property (use "<tag>_<moduleClass>_<attributeClass>" format to ensure that the name is unique)
{{codecomment|// Standard object definitions}}
displayName = "Nuclear weapon yield"; // Argument label
scope = 2; {{codecomment|// Editor visibility; 2 will show it in the menu, 1 will hide it.}}
tooltip = "How strong will the explosion be"; // Tooltip description
displayName = "Nuclear Explosion"; {{codecomment|// Name displayed in the menu}}
typeName = "NUMBER"; // Value type, can be "NUMBER", "STRING" or "BOOL"
icon = "\<span style="color:indigo">myTag</span>_addonName\data\icon<span style="color:orangered;">Nuke</span>_ca.paa"; {{codecomment|// Map icon. Delete this entry to use the default icon}}
defaultValue = "50"; // Default attribute value. Warning: this is an expression, and its returned value will be used (50 in this case).
category = "<span style="color:teal">Effects</span>";
 
// Listbox items
{{codecomment|// Name of function triggered once conditions are met}}
class Values
function = "<span style="color:indigo">myTag</span>_fnc_module<span style="color:orangered;">Nuke</span>";
{
{{codecomment|// Execution priority, modules with lower number are executed first. 0 is used when the attribute is undefined}}
class 50Mt { name = "50 megatons"; value = 50; };
functionPriority = 1;
class 100Mt { name = "100 megatons"; value = 100; };
{{codecomment|// 0 for server only execution, 1 for global execution, 2 for persistent global execution}}
};
isGlobal = 1;
};
{{codecomment|// 1 for module waiting until all synced triggers are activated}}
 
isTriggerActivated = 1;
class Name : Edit
{{codecomment|// 1 if modules is to be disabled once it's activated (i.e., repeated trigger activation won't work)}}
{
isDisposable = 1;
displayName = "Name";
{{codecomment|// // 1 to run init function in [[Eden Editor]] as well}}
tooltip = "Name of the nuclear device";
is3DEN = 1;
property = "TAG_Module_Nuke_Name";
// Default text for the input box:
{{codecomment|// Menu displayed when the module is placed or double-clicked on by Zeus}}
defaultValue = """Tsar Bomba"""; // Because this is an expression, one must have a string within a string to return a string
curatorInfoType = "RscDisplayAttribute<span style="color:green">Module</span><span style="color:orangered;">Nuke</span>";
};
 
{{codecomment|// Module attributes, uses https://community.bistudio.com/wiki/Eden_Editor:_Configuring_Attributes#Entity_Specific}}
class ModuleDescription : ModuleDescription {}; // Module description should be shown last
class Attributes: AttributesBase
};
{
 
{{codecomment|// Arguments shared by specific module type (have to be mentioned in order to be present)}}
// Module description (must inherit from base class, otherwise pre-defined entities won't be available)
class Units: Units
class ModuleDescription : ModuleDescription
{
{
property = "<span style="color:indigo">myTag</span>_<span style="color:green">Module</span><span style="color:orangered;">Nuke</span>_Units";
description = "Short module description"; // Short description, will be formatted as structured text
};
sync[] = { "LocationArea_F" }; // Array of synced entities (can contain base classes)
{{codecomment|// Module specific arguments}}
 
class Yield: Combo
class LocationArea_F
  {
{
{{codecomment|// Unique property, use "<moduleClass>_<attributeClass>" format to make sure the name is unique in the world}}
description[] = { // Multi-line descriptions are supported
property = "<span style="color:indigo">myTag</span>_<span style="color:green">Module</span><span style="color:orangered;">Nuke</span>_Yield";
"First line",
displayName = "Nuclear weapon yield"; {{codecomment|// Argument label}}
"Second line"
tooltip = "How strong will the explosion be"; {{codecomment|// Tooltip description}}
};
typeName = "NUMBER"; {{codecomment|// Value type, can be "NUMBER", "STRING" or "BOOL"}}
position = 1; // Position is taken into effect
defaultValue = "50"; {{codecomment|// Default attribute value. WARNING: This is an expression, and its returned value will be used (50 in this case)}}
direction = 1; // Direction is taken into effect
class Values
optional = 1; // Synced entity is optional
{
duplicate = 1; // Multiple entities of this type can be synced
class 50Mt {name = "50 megatons"; value = 50;}; {{codecomment|// Listbox item}}
synced[] = { "BluforUnit", "AnyBrain" }; // Pre-defined entities like "AnyBrain" can be used (see the table below)
class 100Mt {name = "100 megatons"; value = 100;};
};
};
 
};
class BluforUnit
class Name: Edit
{
  {
description = "Short description";
displayName = "Name";
displayName = "Any BLUFOR unit"; // Custom name
tooltip = "Name of the nuclear device";
icon = "iconMan"; // Custom icon (can be file path or CfgVehicleIcons entry)
{{codecomment|// Default text filled in the input box}}
side = 1; // Custom side (determines icon color)
{{codecomment|// Because it's an expression, to return a [[String]] one must have a string within a string}}
};
defaultValue = """Tsar Bomba""";
};
};
};
class ModuleDescription: ModuleDescription{}; {{codecomment|// Module description should be shown last}}
};
};
</syntaxhighlight>
</spoiler>
{{codecomment|// Module description. Must inherit from base class, otherwise pre-defined entities won't be available}}
class ModuleDescription: ModuleDescription
{
description = "Short module description"; {{codecomment|// Short description, will be formatted as structured text}}
sync[] = {"LocationArea_F"}; {{codecomment|// Array of synced entities (can contain base classes)}}
class LocationArea_F
{
description[] = { {{codecomment|// Multi-line descriptions are supported}}
"First line",
"Second line"
};
position = 1; {{codecomment|// Position is taken into effect}}
direction = 1; {{codecomment|// Direction is taken into effect}}
optional = 1; {{codecomment|// Synced entity is optional}}
duplicate = 1; {{codecomment|// Multiple entities of this type can be synced}}
synced[] = {"BLUFORunit","AnyBrain"}; {{codecomment|// Pre-define entities like "AnyBrain" can be used. See the list below}}
};
class BLUFORunit
{
description = "Short description";
displayName = "Any BLUFOR unit"; {{codecomment|// Custom name}}
icon = "iconMan"; {{codecomment|// Custom icon (can be file path or CfgVehicleIcons entry)}}
side = 1; {{codecomment|// Custom side (will determine icon color)}}
};
};
};
};</spoiler>


[[File:A3 modules info.jpg|230px|thumb|[[2D Editor]]: The description is available after clicking on "Show Info" button when editing the module]]
[[File:A3 modules info.jpg|230px|thumb|[[2D Editor]]: The description is available after clicking on "Show Info" button when editing the module]]
[[File:A3 3den ModuleDescription.jpg|thumb|230px|[[Eden Editor]]: The description is available after opening the modules' attributes window]]
[[File:A3 3den ModuleDescription.jpg|thumb|230px|[[:Category:Eden Editor|Eden Editor]]: The description is available after opening the modules' attributes window]]


* Pre-defined sync preview entities can be:
Pre-defined sync preview entities can be:
{| class="wikitable"
{| class="wikitable"
! Class
! Class
Line 214: Line 238:
|-
|-
| ''Anything''
| ''Anything''
| Any object - persons, vehicles, static objects, etc.
| Any object - persons, vehicles, static objects, etc.
|-
|-
| ''AnyPerson''
| ''AnyPerson''
| Any person. Not vehicles or static objects.
| Any person. Not vehicles or static objects.
|-
|-
| ''AnyVehicle''
| ''AnyVehicle''
Line 241: Line 265:
|}
|}


=== 4. Configuring the Module Function ===
=== Configuring the Module Function ===
* Place '' class CfgFunctions'' to ''config.cpp''. See [[Functions Library (Arma 3)]] for more info about functions configuration.
 
* Place '' class CfgFunctions'' to ''config.cpp''. See [[Arma 3: Functions Library]] for more info about functions configuration.
'''Example'''<br>
'''Example'''<br>
<spoiler>
<spoiler>
  class CfgFunctions  
  class CfgFunctions
  {
  {
  class <span style="color:indigo">myTag</span>
  class {{Color|indigo|TAG}}
  {
  {
  class <span style="color:teal">Effects</span>
  class {{Color|teal|Effects}}
  {
  {
  file = "\<span style="color:indigo">myTag</span>_addonName\functions";
  file = "\{{Color|indigo|TAG}}_addonName\functions";
  class <span style="color:green">module</span><span style="color:orangered;">Nuke</span>{};
  class {{Color|green|module}}{{Color|orangered|Nuke}} {};
  };
  };
  };
  };
  };</spoiler>
  };
</spoiler>
 
=== Writing the Module Function ===


=== 5. Writing the Module Function ===
* Create the ''functions'' folder within the addon folder and place *.sqf or *.fsm files there.
* Create the ''functions'' folder within the addon folder and place *.sqf or *.fsm files there.
* Example: ''\<span style="color:indigo">myTag</span>_addonName\functions\fn_<span style="color:green">module</span><span style="color:orangered;">Nuke</span>.sqf''
* Example: ''\{{Color|indigo|TAG}}_addonName\functions\fn_{{Color|green|module}}{{Color|orangered|Nuke}}.sqf''
* Input parameters differ based on value of ''is3DEN'' property.
* Input parameters differ based on value of ''is3DEN'' property.


'''Default Example''' (is3DEN = 0)<br>
'''Default Example''' (is3DEN = 0)<br>
<spoiler>
<spoiler>
{{codecomment|// Argument 0 is module logic.}}
<sqf>
_logic = param [0,objNull,[objNull]];
params [
{{codecomment|// Argument 1 is list of affected units (affected by value selected in the 'class Units' argument))}}
["_logic", objNull, [objNull]], // Argument 0 is module logic
_units = param [1,[],<nowiki>[</nowiki>[]]];
["_units", [], [[]]], // Argument 1 is a list of affected units (affected by value selected in the 'class Units' argument))
{{codecomment|// True when the module was activated, false when it's deactivated (i.e., synced triggers are no longer active)}}
["_activated", true, [true]] // True when the module was activated, false when it is deactivated (i.e., synced triggers are no longer active)
_activated = param [2,true,[true]];
];
{{codecomment|// Module specific behavior. Function can extract arguments from logic and use them.}}
 
if (_activated) then {
// Module specific behavior. Function can extract arguments from logic and use them.
{{codecomment|// Attribute values are saved in module's object space under their class names}}
if (_activated) then
_bombYield = _logic [[getVariable]] ["Yield",-1]; {{codecomment|//(as per the previous example, but you can define your own.) }}
{
hint format ["Bomb yield is: %1", _bombYield ]; {{codecomment|// will display the bomb yield, once the game is started }}
// Attribute values are saved in module's object space under their class names
};
private _bombYield = _logic getVariable ["Yield", -1]; // (as per the previous example, but you can define your own)
{{codecomment|// Module function is executed by [[spawn]] command, so returned value is not necessary, but it's good practice.}}
hint format ["Bomb yield is: %1", _bombYield]; // will display the bomb yield, once the game is started
true</spoiler>
};
// Module function is executed by spawn command, so returned value is not necessary, but it is good practice.
true;
</sqf>
</spoiler>


'''Example Eden Editor''' (is3DEN = 1)<br>
'''Example Eden Editor''' (is3DEN = 1)<br>
<spoiler>
<spoiler>
When '''is3DEN = 1''' is set in module config, different, more detailed params are passed to the function.
When '''is3DEN = 1''' is set in module config, different, more detailed params are passed to the function.
_mode = param [0,"",[""]];
<sqf>
_input = param [1,[],<nowiki>[</nowiki>[]]];
params [
["_mode", "", [""]],
switch _mode do {
["_input", [], [[]]]
{{codecomment|// Default object init}}
];
case "init": {
_logic = _input param [0,objNull,[objNull]]; {{codecomment|// Module logic}}
_isActivated = _input param [1,true,[true]]; {{codecomment|// True when the module was activated, false when it's deactivated}}
_isCuratorPlaced = _input param [2,false,[true]]; {{codecomment|// True if the module was placed by Zeus}}
{{codecomment|// ... code here...}}
};
{{codecomment|// When some attributes were changed (including position and rotation)}}
case "attributesChanged3DEN": {
_logic = _input param [0,objNull,[objNull]];
{{codecomment|// ... code here...}}
};
{{codecomment|// When added to the world (e.g., after undoing and redoing creation)}}
case "registeredToWorld3DEN": {
_logic = _input param [0,objNull,[objNull]];
{{codecomment|// ... code here...}}
};
{{codecomment|// When removed from the world (i.e., by deletion or undoing creation)}}
case "unregisteredFromWorld3DEN": {
_logic = _input param [0,objNull,[objNull]];
{{codecomment|// ... code here...}}
};
{{codecomment|// When connection to object changes (i.e., new one is added or existing one removed)}}
case "connectionChanged3DEN": {
_logic = _input param [0,objNull,[objNull]];
{{codecomment|// ... code here...}}
};
{{codecomment|// When object is being dragged}}
case "dragged3DEN": {
_logic = _input param [0,objNull,[objNull]];
{{codecomment|// ... code here...}}
};
};
true</spoiler>


switch _mode do
{
// Default object init
case "init":
{
_input params [
["_logic", objNull, [objNull]], // Module logic
["_isActivated", true, [true]], // True when the module was activated, false when it is deactivated
["_isCuratorPlaced", false, [true]] // True if the module was placed by Zeus
];
// ... code here...
};
// When some attributes were changed (including position and rotation)
case "attributesChanged3DEN": {
_input params [
["_logic", objNull, [objNull]]
];
// ... code here...
};
// When added to the world (e.g., after undoing and redoing creation)
case "registeredToWorld3DEN": {
_input params [
["_logic", objNull, [objNull]]
];
// ... code here...
};
// When removed from the world (i.e., by deletion or undoing creation)
case "unregisteredFromWorld3DEN": {
_input params [
["_logic", objNull, [objNull]]
];
// ... code here...
};
// When connection to object changes (i.e., new one is added or existing one removed)
case "connectionChanged3DEN": {
_input params [
["_logic", objNull, [objNull]]
];
// ... code here...
};
// When object is being dragged
case "dragged3DEN": {
_input params [
["_logic", objNull, [objNull]]
];
// ...code here...
};
};
true;
</sqf>
</spoiler>


== Module Properties ==
== Module Properties ==
{{Feature arma3|If you use the [[Eden Editor]] please visit [[Eden Editor: System]].}}
 
{{Feature|arma3|If you use the [[:Category:Eden Editor|Eden Editor]] please visit [[Eden Editor: System]].}}
{| class="wikitable"
{| class="wikitable"
! Property Name
! Property Name
Line 329: Line 379:
|-
|-
| ''Name''
| ''Name''
| The name of a module can be used to refer to the object in script code. Like all variable names, the name must not contain any spaces or reserved characters. You should try to make it something meaningful and avoid conflicts. Note that if a variable exists with an identical name, no warning will be given and the name will refer to the variable first, rather than the named unit. If you copy and paste a named entity, the duplicate will be automatically have an underscore and number appended to it's name to avoid conflicts.
| The name of a module can be used to refer to the object in script code. Like all variable names, the name must not contain any spaces or reserved characters. You should try to make it something meaningful and avoid conflicts. Note that if a variable exists with an identical name, no warning will be given and the name will refer to the variable first, rather than the named unit. If you copy and paste a named entity, the duplicate will be automatically have an underscore and number appended to it is name to avoid conflicts.
|-
|-
| ''Initialization''
| ''Initialization''
| Any [[Scripting|script]] code placed in this box will be executed as the mission begins. Script code is extremely powerful and useful - it allows you to create many effects and change aspects of the mission that would not be possible using only the graphical interface of the mission editor. For example, to make a soldier begin the mission unarmed, add "[[removeAllWeapons]] [[this]]" (without the quotation marks) to it's initialization string. Any [[Expression|expressions]] in the initialization field must return [[Nothing|nothing]], or an error message will prevent the unit dialogue from closing.
| Any [[Scripting|script]] code placed in this box will be executed as the mission begins. Script code is extremely powerful and useful - it allows you to create many effects and change aspects of the mission that would not be possible using only the graphical interface of the mission editor. For example, to make a soldier begin the mission unarmed, add "[[removeAllWeapons]] [[Magic Variables#this_2|this]]" (without the quotation marks) to it is initialization string. Any [[Expression|expressions]] in the initialization field must return [[Nothing|nothing]], or an error message will prevent the unit dialogue from closing.
|-
|-
| ''Description''
| ''Description''
| The description property is not used by modules. However, it's used by some functions and it changes the tooltip in [[Eden Editor]] when hovering over the module icon.
| The description property is not used by modules. However, it is used by some functions and it changes the tooltip in [[:Category:Eden Editor|Eden Editor]] when hovering over the module icon.
|-
|-
| ''Probability of Presence''
| ''Probability of Presence''
Line 342: Line 392:
|-
|-
| ''Condition of Presence''
| ''Condition of Presence''
| This is a script code condition which must return true in order for the object to appear in the mission. By default this reads "true" which means the object will appear as defined by it's ''Probability of Presence''. For an example, if you wanted a unit to appear only if the mission is being played in Veteran mode, place "![[cadetMode]]" (without quotation marks) in it's Condition of Presence box. A unit with a Condition of Presence that returns false will not exist in the mission, irrespective of its ''Probability of Presence''.
| This is a script code condition which must return true in order for the object to appear in the mission. By default this reads "true" which means the object will appear as defined by it is ''Probability of Presence''. For an example, if you wanted a unit to appear only if the mission is being played in Veteran mode, place "![[cadetMode]]" (without quotation marks) in it is Condition of Presence box. A unit with a Condition of Presence that returns false will not exist in the mission, irrespective of its ''Probability of Presence''.
|-
|-
| ''Placement Radius''
| ''Placement Radius''
Line 348: Line 398:
|}
|}


== Arma 3 Modules (List) ==  
 
<spoiler>
== Module Documentation ==
Last updated: {{GVI|arma3|1.87}}
 
{| class='wikitable'
Here you can find links to modules which are documented on this wiki.
!Module Name !!Category !!Addon !!Function !!Description
 
=== {{arma2}} ===
 
* [[Simple Support Module]]
* [[Ambient Animals]]
* [[Environment - Colors]]
* [[:Category:Arma 2: Editor Modules|Arma 2: Editor Modules]]
 
=== {{arma3}} ===
 
Last updated: {{GVI|arma3|2.10}}
{| class="wikitable"
! Module Name !! Category !! Addon !! Function !! Description
|-
|-
|Hide Terrain Objects
| Hide Terrain Objects
||Environment
| Environment
||Arma 3
| Arma 3
||[[BIS_fnc_moduleHideTerrainObjects]]
| [[BIS_fnc_moduleHideTerrainObjects]]
||
|
|-
|-
|Edit Terrain Object
| Edit Terrain Object
||Environment
| Environment
||Arma 3
| Arma 3
||[[BIS_fnc_moduleEditTerrainObject]]
| [[BIS_fnc_moduleEditTerrainObject]]
||
|
|-
|-
|Timeline
| Timeline
||Keyframe Animation
| Keyframe Animation
||Arma 3
| Arma 3
||
|
||
|
|-
|-
|Rich Curve
| Rich Curve
||Keyframe Animation
| Keyframe Animation
||Arma 3
| Arma 3
||
|
||
|
|-
|-
|Rich Curve Key
| Rich Curve Key
||Keyframe Animation
| Keyframe Animation
||Arma 3
| Arma 3
||
|
||
|
|-
|-
|Rich Curve Key Control Point
| Rich Curve Key Control Point
||Keyframe Animation
| Keyframe Animation
||Arma 3
| Arma 3
||
|
||
|
|-
|-
|Camera
| Camera
||Keyframe Animation
| Keyframe Animation
||Arma 3
| Arma 3
||
|
||
|
|-
|-
|Smoke Grenade
| Smoke Grenade
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleGrenade]]
| [[BIS_fnc_moduleGrenade]]
||Create a smoke shell.
| Create a smoke shell.
|-
|-
|Chem light
| Chem light
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleGrenade]]
| [[BIS_fnc_moduleGrenade]]
||Create a chem light.
| Create a chem light.
|-
|-
|Tracers
| Tracers
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleTracers]]
| [[BIS_fnc_moduleTracers]]
||Shoot tracers upwards to create an illusion of battle.
| Shoot tracers upwards to create an illusion of battle.
|-
|-
|Plankton
| Plankton
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
| [[BIS_fnc_moduleEffectsEmitterCreator]]
||Plankton module creates an underwater plankton effect around player.
| Plankton module creates an underwater plankton effect around player.
|-
|-
|Bubbles
| Bubbles
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
| [[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates underwater bubbles on position of the module. Unless you set the position of the module manually (via script commands), bubbles will be created at the bottom.
| Creates underwater bubbles on position of the module. Unless you set the position of the module manually (via script commands), bubbles will be created at the bottom.
|-
|-
|Cartridges
| Cartridges
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
| [[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates empty cartridges on the position of the module.
| Creates empty cartridges on the position of the module.
|-
|-
|Smoke
| Smoke
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
| [[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates smoke on a position of the module.
| Creates smoke on a position of the module.
|-
|-
|Fire
| Fire
||Effects
| Effects
||Arma 3
| Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
| [[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates fire on a position of the module.
| Creates fire on a position of the module.
|-
|-
|Date
| Date
||Events
| Events
||Arma 3
| Arma 3
||[[BIS_fnc_moduleDate]]
| [[BIS_fnc_moduleDate]]
||Set mission date.
| Set mission date.
|-
|-
|Weather
| Weather
||Environment
| Environment
||Arma 3
| Arma 3
||[[BIS_fnc_moduleWeather]]
| [[BIS_fnc_moduleWeather]]
||Set mission weather. Certain changes can take some time to appear.
| Set mission weather. Certain changes can take some time to appear.
|-
|-
|Save Game
| Save Game
||Events
| Events
||Arma 3
| Arma 3
||[[BIS_fnc_moduleSaveGame]]
| [[BIS_fnc_moduleSaveGame]]
||Set the mission progress. Will replace the previous automatic save. User save won't be affected.
| Set the mission progress. Will replace the previous automatic save. User save won't be affected.
|-
|-
|Radio Chat
| Radio Chat
||Events
| Events
||Arma 3
| Arma 3
||[[BIS_fnc_moduleChat]]
| [[BIS_fnc_moduleChat]]
||Show a chat message.
| Show a chat message.
|-
|-
|Volume
| Volume
||Events
| Events
||Arma 3
| Arma 3
||[[BIS_fnc_moduleVolume]]
| [[BIS_fnc_moduleVolume]]
||Set mission sound/music volume. Changes won't affect user options.
| Set mission sound/music volume. Changes won't affect user options.
|-
|-
|Generic radio message
| Generic radio message
||Events
| Events
||Arma 3
| Arma 3
||[[BIS_fnc_moduleGenericRadio]]
| [[BIS_fnc_moduleGenericRadio]]
||Show a chat message.
| Show a chat message.
|-
|-
|Set Callsign
| Set Callsign
||Group Modifiers
| Group Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleGroupID]]
| [[BIS_fnc_moduleGroupID]]
||Assign group callsign. Each group has to have a unique callsign - assigning an existing one will remove it from the group which used it previously.
| Assign group callsign. Each group has to have a unique callsign - assigning an existing one will remove it from the group which used it previously.
|-
|-
|Combat Get In
| Combat Get In
||Group Modifiers
| Group Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleCombatGetIn]]
| [[BIS_fnc_moduleCombatGetIn]]
||
|
|-
|-
|High Command - Commander
| High Command - Commander
||Others
| Others
||Arma 3
| Arma 3
||
|
||Set person as a high commander, giving him an ability to control whole groups.
| Set person as a high commander, giving him an ability to control whole groups.
|-
|-
|Skip time
| Skip time
||Environment
| Environment
||Arma 3
| Arma 3
||[[BIS_fnc_moduleSkiptime]]
| [[BIS_fnc_moduleSkiptime]]
||Skip mission time.
| Skip mission time.
|-
|-
|Create Task
| Create Task
||Intel
| Intel
||Arma 3
| Arma 3
||[[BIS_fnc_ModuleTaskCreate]]
| [[BIS_fnc_moduleTaskCreate]]
||Add a task to synced objects or to larger pool of units.
| Add a task to synced objects or to larger pool of units.
|-
|-
|Set Task Description
| Set Task Description
||Intel
| Intel
||Arma 3
| Arma 3
||[[BIS_fnc_ModuleTaskSetDescription]]
| [[BIS_fnc_moduleTaskSetDescription]]
||Set task description.
| Set task description.
|-
|-
|Set Task Destination
| Set Task Destination
||Intel
| Intel
||Arma 3
| Arma 3
||[[BIS_fnc_ModuleTaskSetDestination]]
| [[BIS_fnc_moduleTaskSetDestination]]
||Set task destination.
| Set task destination.
|-
|-
|Set Task State
| Set Task State
||Intel
| Intel
||Arma 3
| Arma 3
||[[BIS_fnc_ModuleTaskSetState]]
| [[BIS_fnc_moduleTaskSetState]]
||Set task state.
| Set task state.
|-
|-
|Create Diary Record
| Create Diary Record
||Intel
| Intel
||Arma 3
| Arma 3
||[[BIS_fnc_moduleCreateDiaryRecord]]
| [[BIS_fnc_moduleCreateDiaryRecord]]
||Create a diary record for synced objects or for larger a pool of units.
| Create a diary record for synced objects or for larger a pool of units.
|-
|-
|Headquarters Entity
| Headquarters Entity
||Intel
| Intel
||Arma 3
| Arma 3
||[[BIS_fnc_moduleHQ]]
| [[BIS_fnc_moduleHQ]]
||Virtual headquarters unit which can be used for playing radio messages.
| Virtual headquarters unit which can be used for playing radio messages.
|-
|-
|Military Symbols
| Military Symbols
||Others
| Others
||Arma 3
| Arma 3
||
|
||
|
|-
|-
|Zone Restriction
| Zone Restriction
||Others
| Others
||Arma 3
| Arma 3
||[[BIS_fnc_moduleZoneRestriction]]
| [[BIS_fnc_moduleZoneRestriction]]
||Set punishment for leaving the Area of Operation.
| Set punishment for leaving the Area of Operation.
|-
|-
|Trident
| Trident
||Others
| Others
||Arma 3
| Arma 3
||[[BIS_fnc_moduleTrident]]
| [[BIS_fnc_moduleTrident]]
||Set diplomacy options. When involved sides start killing each other, they won't be punished by a negative rating. Once too many kills are reached, the sides will turn hostile.
| Set diplomacy options. When involved sides start killing each other, they won't be punished by a negative rating. Once too many kills are reached, the sides will turn hostile.
|-
|-
|Unlock Object
| Unlock Object
||Others
| Others
||Arma 3
| Arma 3
||[[BIS_fnc_moduleUnlockObject]]
| [[BIS_fnc_moduleUnlockObject]]
||Unlock addons of synced objects for the curator. E.g., when synced to a BLUFOR soldier, all BLUFOR soldiers will be unlocked, because they belong to the same addon.
| Unlock addons of synced objects for the curator. E.g., when synced to a BLUFOR soldier, all BLUFOR soldiers will be unlocked, because they belong to the same addon.
|-
|-
|Unlock Area
| Unlock Area
||Others
| Others
||Arma 3
| Arma 3
||[[BIS_fnc_moduleUnlockArea]]
| [[BIS_fnc_moduleUnlockArea]]
||Unlock area for curator unit spawning.
| Unlock area for curator unit spawning.
|-
|-
|Friendly Fire
| Friendly Fire
||Others
| Others
||Arma 3
| Arma 3
||[[BIS_fnc_moduleFriendlyFire]]
| [[BIS_fnc_moduleFriendlyFire]]
||Set punishment for killing friendly units.
| Set punishment for killing friendly units.
|-
|-
|Sector
| Sector
||Multiplayer
| Multiplayer
||Arma 3
| Arma 3
||[[BIS_fnc_moduleSector]]
| [[BIS_fnc_moduleSector]]
||
|
|-
|-
|Respawn Position
| Respawn Position
||Multiplayer
| Multiplayer
||Arma 3
| Arma 3
||[[BIS_fnc_moduleRespawnPosition]]
| [[BIS_fnc_moduleRespawnPosition]]
||Add a respawn position.
| Add a respawn position.
|-
|-
|Vehicle Respawn
| Vehicle Respawn
||Multiplayer
| Multiplayer
||Arma 3
| Arma 3
||[[BIS_fnc_moduleRespawnVehicle]]
| [[BIS_fnc_moduleRespawnVehicle]]
||Set vehicle respawn parameters.
| Set vehicle respawn parameters.
|-
|-
|Show / Hide
| Show / Hide
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleShowHide]]
| [[BIS_fnc_moduleShowHide]]
||Show/hide synced objects. They will become invisible and their simulation will be disabled.
| Show/hide synced objects. They will become invisible and their simulation will be disabled.
|-
|-
|Set Position / Rotation
| Set Position / Rotation
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_modulePositioning]]
| [[BIS_fnc_modulePositioning]]
||Set position and rotation of synced objects.
| Set position and rotation of synced objects.
|-
|-
|Set Skill
| Set Skill
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleSkill]]
| [[BIS_fnc_moduleSkill]]
||Set AI skill of synced objects. Has no effect on players.
| Set AI skill of synced objects. Has no effect on players.
|-
|-
|Set Character Damage
| Set Character Damage
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleHealth]]
| [[BIS_fnc_moduleHealth]]
||Set damage of synced persons.
| Set damage of synced persons.
|-
|-
|Set Vehicle Damage
| Set Vehicle Damage
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleDamage]]
| [[BIS_fnc_moduleDamage]]
||Set damage of synced vehicles.
| Set damage of synced vehicles.
|-
|-
|Set Vehicle Fuel
| Set Vehicle Fuel
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleFuel]]
| [[BIS_fnc_moduleFuel]]
||Set fuel of synced vehicles.
| Set fuel of synced vehicles.
|-
|-
|Set Ammo
| Set Ammo
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleAmmo]]
| [[BIS_fnc_moduleAmmo]]
||Set total ammo of synced objects. Affects only ammo of their weapons, not ammo carried in cargo space (e.g., ammo boxes).
| Set total ammo of synced objects. Affects only ammo of their weapons, not ammo carried in cargo space (e.g., ammo boxes).
|-
|-
|Set Mode
| Set Mode
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleMode]]
| [[BIS_fnc_moduleMode]]
||Set behavior pattern of synced objects.
| Set behavior pattern of synced objects.
|-
|-
|Set Rank
| Set Rank
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleRank]]
| [[BIS_fnc_moduleRank]]
||Set military rank of synced objects.
| Set military rank of synced objects.
|-
|-
|Set AI Mode
| Set AI Mode
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleAI]]
| [[BIS_fnc_moduleAI]]
||Enable/disable AI modes.
| Enable/disable AI modes.
|-
|-
|Add Rating / Score
| Add Rating / Score
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleRating]]
| [[BIS_fnc_moduleRating]]
||Add rating to synced objects. Rating is automatically awarded for killed enemies and players can see it in the debriefing screen. Shooting friendlies will lead to a negative rating and turning hostile to your own units.
| Add rating to synced objects. Rating is automatically awarded for killed enemies and players can see it in the debriefing screen. Shooting friendlies will lead to a negative rating and turning hostile to your own units.
|-
|-
|Open / Close Doors
| Open / Close Doors
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleDoorOpen]]
| [[BIS_fnc_moduleDoorOpen]]
||Open/close door of synced objects.
| Open/close door of synced objects.
|-
|-
|Simulation Manager
| Simulation Manager
||Object Modifiers
| Object Modifiers
||Arma 3
| Arma 3
||[[BIS_fnc_moduleSimulationManager]]
| [[BIS_fnc_moduleSimulationManager]]
||Keep all AI units disabled until someone from the player's group gets near.
| Keep all AI units disabled until someone from the player's group gets near.
|-
|-
|Open Strategic Map
| Open Strategic Map
||Strategic
| Strategic
||Arma 3
| Arma 3
||[[BIS_fnc_moduleStrategicMapOpen]]
| [[BIS_fnc_moduleStrategicMapOpen]]
||Open a strategic map.
| Open a strategic map.
|-
|-
|Support Requester
| Support Requester
||Supports
| Supports
||Arma 3
| Arma 3
||[[BIS_fnc_moduleSupportsInitRequester]]
| [[BIS_fnc_moduleSupportsInitRequester]]
||Supports framework. A support requester unit has to be synchronized with the Requester module. The Requester module has to be synchronized with Provider module(s). A Provider module has to be synchronized with a support provider unit(s), unless a Virtual Provider module is used.
| Supports framework. A support requester unit has to be synchronized with the Requester module. The Requester module has to be synchronized with Provider module(s). A Provider module has to be synchronized with a support provider unit(s), unless a Virtual Provider module is used.
|-
|-
|Posters
| Firing Drill
||Others
| Firing Drills
||Arma 3
| Arma 3
||[[BIS_fnc_modulePoster]]
| [[BIS_fnc_moduleFiringDrill]]
||Creates posters and leafets on walls of buildings. Those buildings are made indestructible.
|
|-
|-
|Animals
| Posters
||Others
| Others
||Arma 3 Zeus
| Arma 3
||[[BIS_fnc_moduleAnimals]]
| [[BIS_fnc_modulePoster]]
||Creates a group of animals and handles their basic behavior. Deleting the module will delete the animals as well.
| Creates posters and leafets on walls of buildings. Those buildings are made indestructible.
|-
|-
|Close Air Support (CAS)
| Animals
||Effects
| Others
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCAS]]
| [[BIS_fnc_moduleAnimals]]
||Send an air strike on the module position. It will take a few seconds before the plane arrives at the module’s position. Unless it's destroyed, it will be deleted after flying away.
| Creates a group of animals and handles their basic behavior. Deleting the module will delete the animals as well.
|-
|-
|Game Master
| Close Air Support (CAS)
||Zeus
| Effects
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCurator]]
| [[BIS_fnc_moduleCAS]]
||Zeus logic which provides access to the 3D real-time editor.
| Send an air strike on the module position. It will take a few seconds before the plane arrives at the module's position. Unless it is destroyed, it will be deleted after flying away.
|-
|-
|Manage Addons
| Game Master
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddAddons]]
| [[BIS_fnc_moduleCurator]]
||Manage addons (i.e. object packs) available to Zeus.
| Zeus logic which provides access to the 3D real-time editor.
|-
|-
|Manage Resources
| Manage Addons
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddPoints]]
| [[BIS_fnc_moduleCuratorAddAddons]]
||Add or subtract resources available to Zeus. They are required for placing or editing objects.
| Manage addons (i.e. object packs) available to Zeus.
|-
|-
|Add Editing Area
| Manage Resources
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddEditingArea]]
| [[BIS_fnc_moduleCuratorAddPoints]]
||Add an area inside of which Zeus is allowed to place or edit objects.
| Add or subtract resources available to Zeus. They are required for placing or editing objects.
|-
|-
|Restrict Editing Around Players
| Add Editing Area
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddEditingAreaPlayers]]
| [[BIS_fnc_moduleCuratorAddEditingArea]]
||
| Add an area inside of which Zeus is allowed to place or edit objects.
|-
|-
|Set Editing Area Type
| Restrict Editing Around Players
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetEditingAreaType]]
| [[BIS_fnc_moduleCuratorAddEditingAreaPlayers]]
||Set whether editing in all editing areas is allowed or restricted.
|
|-
|-
|Add Camera Area
| Set Editing Area Type
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddCameraArea]]
| [[BIS_fnc_moduleCuratorSetEditingAreaType]]
||Add an area inside of which Zeus can move with the camera.
| Set whether editing in all editing areas is allowed or restricted.
|-
|-
|Set Camera Position
| Add Camera Area
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetCamera]]
| [[BIS_fnc_moduleCuratorAddCameraArea]]
||Move the Zeus camera to the module position.
| Add an area inside of which Zeus can move with the camera.
|-
|-
|Add Editable Objects
| Set Camera Position
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddEditableObjects]]
| [[BIS_fnc_moduleCuratorSetCamera]]
||Add objects which Zeus can edit.
| Move the Zeus camera to the module position.
|-
|-
|Set Editing Costs
| Add Editable Objects
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetCoefs]]
| [[BIS_fnc_moduleCuratorAddEditableObjects]]
||Set coefficients for operations Zeus can perform. The object cost is multiplied by these. Use a large negative value (e.g. -1e10) to disable the operation.
| Add objects which Zeus can edit.
|-
|-
|Set Costs (Default)
| Set Editing Costs
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetCostsDefault]]
| [[BIS_fnc_moduleCuratorSetCoefs]]
||
| Set coefficients for operations Zeus can perform. The object cost is multiplied by these. Use a large negative value (e.g. -1e10) to disable the operation.
|-
|-
|Set Costs (Side)
| Set Costs (Default)
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetCostsSide]]
| [[BIS_fnc_moduleCuratorSetCostsDefault]]
||Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
|
|-
|-
|Set Costs - Soldiers & Vehicles
| Set Costs (Side)
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetCostsVehicleClass]]
| [[BIS_fnc_moduleCuratorSetCostsSide]]
||Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
| Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
|-
|-
|Add Icon
| Set Costs - Soldiers & Vehicles
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorAddIcon]]
| [[BIS_fnc_moduleCuratorSetCostsVehicleClass]]
||Show icon visible only to a specific Zeus.
| Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
|-
|-
|Set Attributes - Objects
| Add Icon
||Zeus
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCuratorSetAttributes]]
| [[BIS_fnc_moduleCuratorAddIcon]]
||Set which attributes are available for objects. The attribute window is accessed when Zeus double-clicks LMB on an object.
| Show icon visible only to a specific Zeus.
|-
|-
|Post-Process
| Set Attributes - Objects
||Environment
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_modulePostprocess]]
| [[BIS_fnc_moduleCuratorSetAttributes]]
||Set a scene Post-Processing effect (e.g. color correction or film grain)
| Set which attributes are available for objects. The attribute window is accessed when Zeus double-clicks LMB on an object.
|-
|-
|IR Grenade
| Post-Process
||Effects
| Environment
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleGrenade]]
| [[BIS_fnc_modulePostprocess]]
||
| Set a scene Post-Processing effect (e.g. color correction or film grain)
|-
|-
|Time Acceleration
| IR Grenade
||Environment
| Effects
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleTimeMultiplier]]
| [[BIS_fnc_moduleGrenade]]
||
|
|-
|-
|Flare
| Time Acceleration
||Effects
| Environment
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleProjectile]]
| [[BIS_fnc_moduleTimeMultiplier]]
||Creates a signal flare on the module position (visible only at night).
|
|-
|-
|End Scenario
| Flare
||Scenario Flow
| Effects
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleEndMission]]
| [[BIS_fnc_moduleProjectile]]
||End the scenario for all players.
| Creates a signal flare on the module position (visible only at night).
|-
|-
|Scenario Name
| End Scenario
||Scenario Flow
| Scenario Flow
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleMissionName]]
| [[BIS_fnc_moduleEndMission]]
||Set the scenario name. It's shown to every player upon joining and after each respawn.
| End the scenario for all players.
|-
|-
|Zeus Lightning Bolt
| Scenario Name
||Zeus
| Scenario Flow
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleLightning]]
| [[BIS_fnc_moduleMissionName]]
||Creates a lightning strike powerful enough to destroy an object where it impacts.
| Set the scenario name. It's shown to every player upon joining and after each respawn.
|-
|-
|Cover Map
| Zeus Lightning Bolt
||Others
| Zeus
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCoverMap]]
| [[BIS_fnc_moduleLightning]]
||Highlight an Area of Operations in the map by enclosing it and covering the unused part.
| Creates a lightning strike powerful enough to destroy an object where it impacts.
|-
|-
|Create Radio Channel
| Cover Map
||Others
| Others
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleRadioChannelCreate]]
| [[BIS_fnc_moduleCoverMap]]
||Creates a custom radio channel for the given sides / Zeus players.
| Highlight an Area of Operations in the map by enclosing it and covering the unused part.
|-
|-
|Zone Protection
| Create Radio Channel
||Scenario Flow
| Others
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleZoneProtection]]
| [[BIS_fnc_moduleRadioChannelCreate]]
||Prevents players from entering the given area.
| Creates a custom radio channel for the given sides / Zeus players.
|-
|-
|Countdown
| Zone Protection
||Scenario Flow
| Scenario Flow
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleCountdown]]
| [[BIS_fnc_moduleZoneProtection]]
||
| Prevents players from entering the given area.
|-
|-
|Respawn Tickets
| Countdown
||Scenario Flow
| Scenario Flow
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleRespawnTickets]]
| [[BIS_fnc_moduleCountdown]]
||Set the number of respawn tickets available to each side.
|
|-
|-
|Bleed Tickets
| Respawn Tickets
||Scenario Flow
| Scenario Flow
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleBleedTickets]]
| [[BIS_fnc_moduleRespawnTickets]]
||Allow ticket bleeding when one side is holding the majority of sectors.
| Set the number of respawn tickets available to each side.
|-
|-
|Ordnance
| Bleed Tickets
||Effects
| Scenario Flow
||Arma 3 Zeus
| Arma 3 Zeus
||[[BIS_fnc_moduleProjectile]]
| [[BIS_fnc_moduleBleedTickets]]
||Create an artillery shell on the module position. It will take a few seconds until it hits the ground.
| Allow ticket bleeding when one side is holding the majority of sectors.
|-
|-
|Spawn AI
| Ordnance
||Others
| Effects
||Arma 3 Helicopters
| Arma 3 Zeus
||[[BIS_fnc_moduleSpawnAI]]
| [[BIS_fnc_moduleProjectile]]
||
| Create an artillery shell on the module position. It will take a few seconds until it hits the ground.
|-
|-
|Spawn AI: Spawnpoint
| Time Trial
||Others
| Time Trials
||Arma 3 Helicopters
| Arma 3 Karts
||[[BIS_fnc_moduleSpawnAIPoint]]
| [[BIS_fnc_moduleTimeTrial]]
||
|
|-
|-
|Spawn AI: Sector Tactic
| Spawn AI
||Others
| Others
||Arma 3 Helicopters
| Arma 3 Helicopters
||[[BIS_fnc_moduleSpawnAISectorTactic]]
| [[BIS_fnc_moduleSpawnAI]]
||
|
|-
|-
|Spawn AI: Options
| Spawn AI: Spawnpoint
||Others
| Others
||Arma 3 Helicopters
| Arma 3 Helicopters
||[[BIS_fnc_moduleSpawnAIOptions]]
| [[BIS_fnc_moduleSpawnAIPoint]]
||
|
|-
|-
|Sling Load
| Spawn AI: Sector Tactic
||Others
| Others
||Arma 3 Helicopters
| Arma 3 Helicopters
||[[BIS_fnc_moduleSlingload]]
| [[BIS_fnc_moduleSpawnAISectorTactic]]
||
|
|-
|-
|EndGame Objectives Instance
| Spawn AI: Options
||Objectives
| Others
||Arma 3 Marksmen
| Arma 3 Helicopters
||[[BIS_fnc_moduleHvtObjectives]]
| [[BIS_fnc_moduleSpawnAIOptions]]
||
|
|-
|-
|End Game Simple Objective
| Sling Load
||Objectives
| Others
||Arma 3 Marksmen
| Arma 3 Helicopters
||[[BIS_fnc_moduleHvtObjectives]]
| [[BIS_fnc_moduleSlingload]]
||
|
|-
|-
|End Game Start Game Objective
| EndGame Objectives Instance
||Objectives
| Objectives
||Arma 3 Marksmen
| Arma 3 Marksmen
||[[BIS_fnc_moduleHvtObjectives]]
| [[BIS_fnc_moduleHvtObjectives]]
||
|
|-
|-
|End Game - End Game Objective
| End Game Simple Objective
||Objectives
| Objectives
||Arma 3 Marksmen
| Arma 3 Marksmen
||[[BIS_fnc_moduleHvtObjectives]]
| [[BIS_fnc_moduleHvtObjectives]]
||
|
|-
|-
|Combat Patrol Init
| End Game Start Game Objective
||Combat Patrol
| Objectives
||Arma 3 Malden
| Arma 3 Marksmen
||[[BIS_fnc_CPInit]]
| [[BIS_fnc_moduleHvtObjectives]]
||Initializes the Combat Patrol mode upon scenario start.
|
|-
|-
|Combat Patrol Location Add
| End Game - End Game Objective
||Combat Patrol
| Objectives
||Arma 3 Malden
| Arma 3 Marksmen
||
| [[BIS_fnc_moduleHvtObjectives]]
||Adds a new selectable location to the map.
|
|-
|-
|Combat Patrol Location Remove
| Combat Patrol Init
||Combat Patrol
| Combat Patrol
||Arma 3 Malden
| Arma 3 Malden
||
| [[BIS_fnc_CPInit]]
||Removes the nearest location in a 1000m radius from the map selection.
| Initializes the Combat Patrol mode upon scenario start.
|-
|-
|Combat Patrol Location Reposition
| Combat Patrol Location Add
||Combat Patrol
| Combat Patrol
||Arma 3 Malden
| Arma 3 Malden
||
|
||Moves the nearest location in a 1000m radius to this module's position.
| Adds a new selectable location to the map.
|-
|-
|Combat Patrol Azimuth Blacklist
| Combat Patrol Location Remove
||Combat Patrol
| Combat Patrol
||Arma 3 Malden
| Arma 3 Malden
||
|
||Blacklists the nearest location's in a 1000m radius azimuth range so it can't be used for the starting / ending position or reinforcements spawning point.
| Removes the nearest location in a 1000m radius from the map selection.
|-
|-
|Civilian Presence
| Combat Patrol Location Reposition
||Ambient
| Combat Patrol
||Arma 3 Tac-Ops
| Arma 3 Malden
||[[BIS_fnc_moduleCivilianPresence]]
|
||
| Moves the nearest location in a 1000m radius to this module's position.
|-
|-
|Civilian Presence Spawnpoint
| Combat Patrol Azimuth Blacklist
||Ambient
| Combat Patrol
||Arma 3 Tac-Ops
| Arma 3 Malden
||[[BIS_fnc_moduleCivilianPresenceUnit]]
|
||
| Blacklists the nearest location's in a 1000m radius azimuth range so it can't be used for the starting / ending position or reinforcements spawning point.
|-
|-
|Civilian Presence Position
| Civilian Presence
||Ambient
| Ambient
||Arma 3 Tac-Ops
| Arma 3 Tac-Ops
||[[BIS_fnc_moduleCivilianPresenceSafeSpot]]
| [[BIS_fnc_moduleCivilianPresence]]
||
|
|-
|-
|Vanguard: Starting Area
| Civilian Presence Spawnpoint
||Gameplay Modes
| Ambient
||Arma 3 Tanks
| Arma 3 Tac-Ops
||[[BIS_fnc_moduleVanguardFob]]
| [[BIS_fnc_moduleCivilianPresenceUnit]]
||
|
|-
|-
|Vanguard: Score Persistence
| Civilian Presence Position
||Gameplay Modes
| Ambient
||Arma 3 Tanks
| Arma 3 Tac-Ops
||[[BIS_fnc_moduleVanguardScorePersistence]]
| [[BIS_fnc_moduleCivilianPresenceSafeSpot]]
||
|
|-
|-
|Vanguard: Objective Area
| Vanguard: Starting Area
||Gameplay Modes
| Gameplay Modes
||Arma 3 Tanks
| Arma 3 Tanks
||[[BIS_fnc_moduleVanguardObjective]]
| [[BIS_fnc_moduleVanguardFob]]
||
|
|-
|-
|}
| Vanguard: Score Persistence
Total number of modules: 125
| Gameplay Modes
</spoiler>
| Arma 3 Tanks
 
| [[BIS_fnc_moduleVanguardScorePersistence]]
'''Export Function'''<br>
|
<spoiler>
<syntaxhighlight lang="cpp">private _version = format ["Last updated: {{GVI|arma3|%1}}",productVersion # 2 / 100]; 
private _counter = 0; 
private _export = _version + endl + "{| class='wikitable'" + endl + "!Module Name !!Category !!Addon !!Function !!Description" + endl + "|-" + endl; 
private _modules = "(configName inheritsFrom _x) == 'Module_F'" configClasses (configFile >> "CfgVehicles");
if ((getNumber (_x >> "scope") > 1)) then 
  private _name = getText (_x >> "displayName"); 
  private _cat = getText (_x >> "category"); 
  private _mod = configSourceMod _x; 
  private _fnc = getText (_x >> "function"); 
  if !(_fnc isEqualTo "") then 
  { 
    _fnc = _fnc select [7]; 
    _fnc = "[[BIS_fnc" + _fnc + "]]"; 
  }; 
  private _desc = getText (_x >> "ModuleDescription" >> "Description"); 
  if (_desc isEqualTo "") then {_desc = ""}; 
  if (_mod == "") then {_mod = "A3"}; 
  private _modName = modParams [_mod,["name"]]; 
  _modName = _modName select 0; 
  _cat = getText (configFile >> "CfgFactionClasses" >> _cat >> "displayName"); 
  if (_cat isEqualto "") then {_cat = "Others"}; 
 
  _export = _export + "|" + _name + endl + "||" + _cat + endl + "||" + _modName + endl + "||" + _fnc + endl + "||" + _desc + endl + "|-" + endl; 
}; 
_counter = _counter + 1; 
} forEach _modules; 
 
_export = _export + "|}" + endl + format ["Total number of modules: %1",_counter]; 
copyToClipboard _export;</syntaxhighlight></spoiler>
 
== Module Documentation ==
Here you find links to modules which are documented on this wiki.
 
=== {{arma2}} ===
*[[Simple Support Module]]
*[[Ambient Animals]]
*[[Environment - Colors]]
*[[:Category:ArmA 2: Editor Modules|Complete List]]
 
=== {{arma3}} ===
Last updated: {{GVI|arma3|1.97}}
{| class='wikitable'
!Module Name !!Category !!Addon !!Function !!Description
|-
|-
|[[Hide Terrain Objects]]
| Vanguard: Objective Area
||Environment
| Gameplay Modes
||Arma 3
| Arma 3 Tanks
||[[BIS_fnc_moduleHideTerrainObjects]]
| [[BIS_fnc_moduleVanguardObjective]]
||
|
|-
|[[Edit Terrain Object]]
||Environment
||Arma 3
||[[BIS_fnc_moduleEditTerrainObject]]
||
|-
|[[Timeline]]
||Keyframe Animation
||Arma 3
||
||
|-
|[[Rich Curve]]
||Keyframe Animation
||Arma 3
||
||
|-
|[[Rich Curve Key]]
||Keyframe Animation
||Arma 3
||
||
|-
|[[Rich Curve Key Control Point]]
||Keyframe Animation
||Arma 3
||
||
|-
|[[Camera]]
||Keyframe Animation
||Arma 3
||
||
|-
|[[Smoke Grenade]]
||Effects
||Arma 3
||[[BIS_fnc_moduleGrenade]]
||Create a smoke shell.
|-
|[[Chem light]]
||Effects
||Arma 3
||[[BIS_fnc_moduleGrenade]]
||Create a chem light.
|-
|[[Tracers]]
||Effects
||Arma 3
||[[BIS_fnc_moduleTracers]]
||Shoot tracers upwards to create an illusion of battle.
|-
|[[Plankton]]
||Effects
||Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
||Plankton module creates an underwater plankton effect around player.
|-
|[[Bubbles]]
||Effects
||Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates underwater bubbles on position of the module. Unless you set the position of the module manually (via script commands), bubbles will be created at the bottom.
|-
|[[Cartridges]]
||Effects
||Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates empty cartridges on the position of the module.
|-
|[[Smoke]]
||Effects
||Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates smoke on a position of the module.
|-
|[[Fire]]
||Effects
||Arma 3
||[[BIS_fnc_moduleEffectsEmitterCreator]]
||Creates fire on a position of the module.
|-
|[[Date]]
||Events
||Arma 3
||[[BIS_fnc_moduleDate]]
||Set mission date.
|-
|[[Weather]]
||Environment
||Arma 3
||[[BIS_fnc_moduleWeather]]
||Set mission weather. Certain changes can take some time to appear.
|-
|[[Save Game]]
||Events
||Arma 3
||[[BIS_fnc_moduleSaveGame]]
||Set the mission progress. Will replace the previous automatic save. User save won't be affected.
|-
|[[Radio Chat]]
||Events
||Arma 3
||[[BIS_fnc_moduleChat]]
||Show a chat message.
|-
|[[Volume]]
||Events
||Arma 3
||[[BIS_fnc_moduleVolume]]
||Set mission sound/music volume. Changes won't affect user options.
|-
|[[Generic radio message]]
||Events
||Arma 3
||[[BIS_fnc_moduleGenericRadio]]
||Show a chat message.
|-
|[[Set Callsign]]
||Group Modifiers
||Arma 3
||[[BIS_fnc_moduleGroupID]]
||Assign group callsign. Each group has to have a unique callsign - assigning an existing one will remove it from the group which used it previously.
|-
|[[Combat Get In]]
||Group Modifiers
||Arma 3
||[[BIS_fnc_moduleCombatGetIn]]
||
|-
|[[High Command - Commander]]
||Others
||Arma 3
||
||Set person as a high commander, giving him an ability to control whole groups.
|-
|[[Skip time]]
||Environment
||Arma 3
||[[BIS_fnc_moduleSkiptime]]
||Skip mission time.
|-
|[[Create Task]]
||Intel
||Arma 3
||[[BIS_fnc_ModuleTaskCreate]]
||Add a task to synced objects or to larger pool of units.
|-
|[[Set Task Description]]
||Intel
||Arma 3
||[[BIS_fnc_ModuleTaskSetDescription]]
||Set task description.
|-
|[[Set Task Destination]]
||Intel
||Arma 3
||[[BIS_fnc_ModuleTaskSetDestination]]
||Set task destination.
|-
|[[Set Task State]]
||Intel
||Arma 3
||[[BIS_fnc_ModuleTaskSetState]]
||Set task state.
|-
|[[Create Diary Record]]
||Intel
||Arma 3
||[[BIS_fnc_moduleCreateDiaryRecord]]
||Create a diary record for synced objects or for larger a pool of units.
|-
|[[Headquarters Entity]]
||Intel
||Arma 3
||[[BIS_fnc_moduleHQ]]
||Virtual headquarters unit which can be used for playing radio messages.
|-
|[[Military Symbols]]
||Others
||Arma 3
||
||
|-
|[[Zone Restriction]]
||Others
||Arma 3
||[[BIS_fnc_moduleZoneRestriction]]
||Set punishment for leaving the Area of Operation.
|-
|[[Trident]]
||Others
||Arma 3
||[[BIS_fnc_moduleTrident]]
||Set diplomacy options. When involved sides start killing each other, they won't be punished by a negative rating. Once too many kills are reached, the sides will turn hostile.
|-
|[[Unlock Object]]
||Others
||Arma 3
||[[BIS_fnc_moduleUnlockObject]]
||Unlock addons of synced objects for the curator. E.g., when synced to a BLUFOR soldier, all BLUFOR soldiers will be unlocked, because they belong to the same addon.
|-
|[[Unlock Area]]
||Others
||Arma 3
||[[BIS_fnc_moduleUnlockArea]]
||Unlock area for curator unit spawning.
|-
|[[Friendly Fire]]
||Others
||Arma 3
||[[BIS_fnc_moduleFriendlyFire]]
||Set punishment for killing friendly units.
|-
|[[Sector]]
||Multiplayer
||Arma 3
||[[BIS_fnc_moduleSector]]
||
|-
|[[Respawn Position]]
||Multiplayer
||Arma 3
||[[BIS_fnc_moduleRespawnPosition]]
||Add a respawn position.
|-
|[[Vehicle Respawn]]
||Multiplayer
||Arma 3
||[[BIS_fnc_moduleRespawnVehicle]]
||Set vehicle respawn parameters.
|-
|[[Show / Hide]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleShowHide]]
||Show/hide synced objects. They will become invisible and their simulation will be disabled.
|-
|[[Set Position / Rotation]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_modulePositioning]]
||Set position and rotation of synced objects.
|-
|[[Set Skill]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleSkill]]
||Set AI skill of synced objects. Has no effect on players.
|-
|[[Set Character Damage]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleHealth]]
||Set damage of synced persons.
|-
|[[Set Vehicle Damage]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleDamage]]
||Set damage of synced vehicles.
|-
|[[Set Vehicle Fuel]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleFuel]]
||Set fuel of synced vehicles.
|-
|[[Set Ammo]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleAmmo]]
||Set total ammo of synced objects. Affects only ammo of their weapons, not ammo carried in cargo space (e.g., ammo boxes).
|-
|[[Set Mode]]
||Object Modifiers
||Arma 3
||[[BIS_fnc_moduleMode]]
||Set behavior pattern of synced objects.
|-
|-
|[[Set Rank]]
| Old Man Sector
||Object Modifiers
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleRank]]
|
||Set military rank of synced objects.
| Module for configuring sectors. All vehicles and groups placed inside will be persistently spawned. Sectors must not overlap! This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Set AI Mode]]
| Old Man Patrol Area
||Object Modifiers
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleAI]]
|
||Enable/disable AI modes.
| Module for randomly spawning groups in an area. Groups that have some unit synchronized are used as a template; units will randomly spawn in positions inside the patrol area. If you synchronize multiple groups, a random group will be selected. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Add Rating / Score]]
| Old Man Restricted Area
||Object Modifiers
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleRating]]
|
||Add rating to synced objects. Rating is automatically awarded for killed enemies and players can see it in the debriefing screen. Shooting friendlies will lead to a negative rating and turning hostile to your own units.
| Sets up restricted areas which will raise player's threat level if seen within it. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Open / Close Doors]]
| Old Man Relationship
||Object Modifiers
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleDoorOpen]]
|
||Open/close door of synced objects.
| Set up the relationship with a given side. Do not set up for player's own side. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Simulation Manager]]
| Old Man QRF
||Object Modifiers
| Others
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleSimulationManager]]
|
||Keep all AI units disabled until someone from the player's group gets near.
| QRF Module. Synchronized units will be spawned on QRF activation. Only one instance of the module is allowed. It cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Open Strategic Map]]
| Old Man Smart Markers
||Strategic
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleStrategicMapOpen]]
| [[BIS_fnc_OM_moduleSmartMarkers]]
||Open a strategic map.
| Managing smart marker enhancements, interactive smart marker compositions, and LODing of the information. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Support Requester]]
| Old Man Insurgent Agent
||Supports
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_moduleSupportsInitRequester]]
| [[BIS_fnc_OM_moduleSyndikatAgent]]
||Supports framework. A support requester unit has to be synchronized with the Requester module. The Requester module has to be synchronized with Provider module(s). A Provider module has to be synchronized with a support provider unit(s), unless a Virtual Provider module is used.
| Module manages insurgent resources. It generates attack events. It cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Posters]]
| Old Man Insurgent Team
||Others
| Old Man
||Arma 3
| Arma 3 Apex
||[[BIS_fnc_modulePoster]]
| [[BIS_fnc_OM_moduleSyndikatTeam]]
||Creates posters and leafets on walls of buildings. Those buildings are made indestructible.
| Manages size of insurgent teams and income. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Animals]]
| Old Man Insurgent Camp Position
||Others
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleAnimals]]
|
||Creates a group of animals and handles their basic behavior. Deleting the module will delete the animals as well.
| Defines the placement of a camp. Synchronize the position with a unit, which will serve as a template for the unit actually spawned in the camp. Behavior and waypoints will be inherited, as well as code from any synchronized init. script module. It cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Close Air Support (CAS)]]
| Old Man Economy
||Effects
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCAS]]
| [[BIS_fnc_OM_moduleEconomy]]
||Send an air strike on the module position. It will take a few seconds before the plane arrives at the module’s position. Unless it's destroyed, it will be deleted after flying away.
| Manage player income and starting money. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Game Master]]
| Oldman Action Queue
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCurator]]
| [[BIS_fnc_OM_moduleActionQueue]]
||Zeus logic which provides access to the 3D real-time editor.
| Action Queue can be used for the sequential execution of actions (scripts, dialogues) in a non-specified time.
|-
|-
|[[Manage Addons]]
| Old Man Radio
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddAddons]]
| [[BIS_fnc_OM_moduleRadio]]
||Manage addons (i.e. object packs) available to Zeus.
| Sets parameters for radio stations and what content will be aired. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Manage Resources]]
| Old Man Reputation
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddPoints]]
| [[BIS_fnc_OM_moduleReputation]]
||Add or subtract resources available to Zeus. They are required for placing or editing objects.
| Reputation calculated in conjunction with the Relationship module. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Add Editing Area]]
| Old Man Awareness
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddEditingArea]]
| [[BIS_fnc_OM_moduleAwareness]]
||Add an area inside of which Zeus is allowed to place or edit objects.
| Player's awareness regarding his relationship to the enemy via ambient radio chatter. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Restrict Editing Around Players]]
| Old Man Protected Vehicle
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddEditingAreaPlayers]]
|
||
| Vehicle that will be marked as stolen by a given side. It will elicit an appropriate response if taken. Note that all CSAT, NATO, and Gendarmerie vehicles are registered by default. This module must be synchronized to a vehicle. It cannot be used without first adding the Old Man Init. Module.
|-
|-
|[[Set Editing Area Type]]
| Old Man Init. Script
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetEditingAreaType]]
|
||Set whether editing in all editing areas is allowed or restricted.
| Init. script applied to any unit synchronized with a module. Do not use system: Init. field. Instead, use the field in the lower part of the module. Script will be called every time a unit in the sector is created.
|-
|-
|[[Add Camera Area]]
| Old Man Init.
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddCameraArea]]
| [[BIS_fnc_OM_init]]
||Add an area inside of which Zeus can move with the camera.
| Integral module for Old Man, enabling all functionality. If you create a new mission, do not forget the common description.ext to enable the rest of the functions.<br/>It is possible to include other missions directly into this mission. You must have them all in one folder, with the path mapped in this module. Furthermore, in each mission folder, you must have the missionName.sqf file included. For the name of the included mission, use the mission name, without the accompanying terrain suffix.
|-
|-
|[[Set Camera Position]]
| Old Man Night
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetCamera]]
|
||Move the Zeus camera to the module position.
| Synchronize units you want to spawn to the closest sector. According to the module settings, synchronized units will remain at night. Use this module for each sector that should be different from a sector in the daytime. It cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Add Editable Objects]]
| Old Man Intel
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddEditableObjects]]
|
||Add objects which Zeus can edit.
| Module for creating collectible intel. It adds a new diary record and can reveal sector markers. It cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Set Editing Costs]]
| Old Man Tracked Device
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetCoefs]]
|
||Set coefficients for operations Zeus can perform. The object cost is multiplied by these. Use a large negative value (e.g. -1e10) to disable the operation.
| Synchronize this module with any object that should be audible on the player's phone's geo-finder. The module itself will only prime the object. It will be despawned after. Do not use on vehicles or units inside a sector which can be despawned. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Set Costs (Default)]]
| Old Man Drop-off Point
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetCostsDefault]]
| [[BIS_fnc_OM_moduleDepot]]
||
| Player is able to unload/sell equipment inside of the sector area. Synchronize a container so it can be used to store items from inventory. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Set Costs (Side)]]
| Old Man Rest Point
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetCostsSide]]
| [[BIS_fnc_OM_moduleRestPoint]]
||Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
| Player is able to rest at synchronized object(s). This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Set Costs - Soldiers & Vehicles]]
| Old Man Mosquitoes
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetCostsVehicleClass]]
| [[BIS_fnc_OM_Epicentrum]]
||Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
| Creates an area infested with mosquitoes. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Add Icon]]
| Old Man Market
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorAddIcon]]
| [[BIS_fnc_OM_moduleMarket]]
||Show icon visible only to a specific Zeus.
| Player is able to shop at a synchronized container when talking to a synchronized shopkeeper. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Set Attributes - Objects]]
| Old Man Random Conversations
||Zeus
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleCuratorSetAttributes]]
|
||Set which attributes are available for objects. The attribute window is accessed when Zeus double-clicks LMB on an object.
| Synchronize one or two units to talk to each other or to the player. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[Post-Process]]
| Old Man Fast Travel
||Environment
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_modulePostprocess]]
| [[BIS_fnc_OM_moduleFastTravel]]
||Set a scene Post-Processing effect (e.g. color correction or film grain)
| Module for handling player Fast Travel. This module cannot be used without first adding the Old Man Init. module.
|-
|-
|[[IR Grenade]]
| Old Man Fast Travel Position
||Effects
| Old Man
||Arma 3 Zeus
| Arma 3 Apex
||[[BIS_fnc_moduleGrenade]]
|
||
| Defines the position where the player should be transported to after Fast Travel. This module cannot be used without first adding the Old Man Init. module.
|-
|[[Time Acceleration]]
||Environment
||Arma 3 Zeus
||[[BIS_fnc_moduleTimeMultiplier]]
||
|-
|[[Flare]]
||Effects
||Arma 3 Zeus
||[[BIS_fnc_moduleProjectile]]
||Creates a signal flare on the module position (visible only at night).
|-
|[[End Scenario]]
||Scenario Flow
||Arma 3 Zeus
||[[BIS_fnc_moduleEndMission]]
||End the scenario for all players.
|-
|[[Scenario Name]]
||Scenario Flow
||Arma 3 Zeus
||[[BIS_fnc_moduleMissionName]]
||Set the scenario name. It's shown to every player upon joining and after each respawn.
|-
|[[Zeus Lightning Bolt]]
||Zeus
||Arma 3 Zeus
||[[BIS_fnc_moduleLightning]]
||Creates a lightning strike powerful enough to destroy an object where it impacts.
|-
|[[Cover Map]]
||Others
||Arma 3 Zeus
||[[BIS_fnc_moduleCoverMap]]
||Highlight an Area of Operations in the map by enclosing it and covering the unused part.
|-
|[[Create Radio Channel]]
||Others
||Arma 3 Zeus
||[[BIS_fnc_moduleRadioChannelCreate]]
||Creates a custom radio channel for the given sides / Zeus players.
|-
|[[Zone Protection]]
||Scenario Flow
||Arma 3 Zeus
||[[BIS_fnc_moduleZoneProtection]]
||Prevents players from entering the given area.
|-
|[[Countdown]]
||Scenario Flow
||Arma 3 Zeus
||[[BIS_fnc_moduleCountdown]]
||
|-
|[[Respawn Tickets]]
||Scenario Flow
||Arma 3 Zeus
||[[BIS_fnc_moduleRespawnTickets]]
||Set the number of respawn tickets available to each side.
|-
|[[Bleed Tickets]]
||Scenario Flow
||Arma 3 Zeus
||[[BIS_fnc_moduleBleedTickets]]
||Allow ticket bleeding when one side is holding the majority of sectors.
|-
|[[Ordnance]]
||Effects
||Arma 3 Zeus
||[[BIS_fnc_moduleProjectile]]
||Create an artillery shell on the module position. It will take a few seconds until it hits the ground.
|-
|[[Spawn AI]]
||Others
||Arma 3 Helicopters
||[[BIS_fnc_moduleSpawnAI]]
||
|-
|[[Spawn AI: Spawnpoint]]
||Others
||Arma 3 Helicopters
||[[BIS_fnc_moduleSpawnAIPoint]]
||
|-
|[[Spawn AI: Sector Tactic]]
||Others
||Arma 3 Helicopters
||[[BIS_fnc_moduleSpawnAISectorTactic]]
||
|-
|[[Spawn AI: Options]]
||Others
||Arma 3 Helicopters
||[[BIS_fnc_moduleSpawnAIOptions]]
||
|-
|[[Sling Load]]
||Others
||Arma 3 Helicopters
||[[BIS_fnc_moduleSlingload]]
||
|-
|[[EndGame Objectives Instance]]
||Objectives
||Arma 3 Marksmen
||[[BIS_fnc_moduleHvtObjectives]]
||
|-
|[[End Game Simple Objective]]
||Objectives
||Arma 3 Marksmen
||[[BIS_fnc_moduleHvtObjectives]]
||
|-
|[[End Game Start Game Objective]]
||Objectives
||Arma 3 Marksmen
||[[BIS_fnc_moduleHvtObjectives]]
||
|-
|[[End Game - End Game Objective]]
||Objectives
||Arma 3 Marksmen
||[[BIS_fnc_moduleHvtObjectives]]
||
|-
|[[Combat Patrol Init]]
||Combat Patrol
||Arma 3 Malden
||[[BIS_fnc_CPInit]]
||Initializes the Combat Patrol mode upon scenario start.
|-
|[[Combat Patrol Location Add]]
||Combat Patrol
||Arma 3 Malden
||
||Adds a new selectable location to the map.
|-
|[[Combat Patrol Location Remove]]
||Combat Patrol
||Arma 3 Malden
||
||Removes the nearest location in a 1000m radius from the map selection.
|-
|[[Combat Patrol Location Reposition]]
||Combat Patrol
||Arma 3 Malden
||
||Moves the nearest location in a 1000m radius to this module's position.
|-
|[[Combat Patrol Azimuth Blacklist]]
||Combat Patrol
||Arma 3 Malden
||
||Blacklists the nearest location's in a 1000m radius azimuth range so it can't be used for the starting / ending position or reinforcements spawning point.
|-
|[[Civilian Presence]]
||Ambient
||Arma 3 Tac-Ops
||[[BIS_fnc_moduleCivilianPresence]]
||
|-
|[[Civilian Presence Spawnpoint]]
||Ambient
||Arma 3 Tac-Ops
||[[BIS_fnc_moduleCivilianPresenceUnit]]
||
|-
|[[Civilian Presence Position]]
||Ambient
||Arma 3 Tac-Ops
||[[BIS_fnc_moduleCivilianPresenceSafeSpot]]
||
|-
|[[Vanguard: Starting Area]]
||Gameplay Modes
||Arma 3 Tanks
||[[BIS_fnc_moduleVanguardFob]]
||
|-
|[[Vanguard: Score Persistence]]
||Gameplay Modes
||Arma 3 Tanks
||[[BIS_fnc_moduleVanguardScorePersistence]]
||
|-
|[[Vanguard: Objective Area]]
||Gameplay Modes
||Arma 3 Tanks
||[[BIS_fnc_moduleVanguardObjective]]
||
|-
|-
|}
|}
Total number of modules: 125
Total number of modules: 154


'''Export Function'''<br>
{{Wiki|extractionScript}}
<spoiler>
<syntaxhighlight lang="cpp">private _version = format ["Last updated: {{GVI|arma3|%1}}",productVersion # 2 / 100]; 
private _counter = 0; 
private _export = _version + endl + "{| class='wikitable'" + endl + "!Module Name !!Category !!Addon !!Function !!Description" + endl + "|-" + endl; 
private _modules = "(configName inheritsFrom _x) == 'Module_F'" configClasses (configFile >> "CfgVehicles");
if ((getNumber (_x >> "scope") > 1)) then 
  private _name = _name = format ["[[%1]]",getText (_x >> "displayName")];
  private _cat = getText (_x >> "category"); 
  private _mod = configSourceMod _x; 
  private _fnc = getText (_x >> "function"); 
  if !(_fnc isEqualTo "") then 
  { 
    _fnc = _fnc select [7]; 
    _fnc = "[[BIS_fnc" + _fnc + "]]"; 
  }; 
  private _desc = getText (_x >> "ModuleDescription" >> "Description"); 
  if (_desc isEqualTo "") then {_desc = ""}; 
  if (_mod == "") then {_mod = "A3"}; 
  private _modName = modParams [_mod,["name"]]; 
  _modName = _modName select 0; 
  _cat = getText (configFile >> "CfgFactionClasses" >> _cat >> "displayName"); 
  if (_cat isEqualto "") then {_cat = "Others"}; 
 
  _export = _export + "|" + _name + endl + "||" + _cat + endl + "||" + _modName + endl + "||" + _fnc + endl + "||" + _desc + endl + "|-" + endl; 
}
_counter = _counter + 1; 
} forEach _modules; 
 
_export = _export + "|}" + endl + format ["Total number of modules: %1",_counter]; 
copyToClipboard _export;</syntaxhighlight></spoiler>


=== {{tkoh}} ===
=== {{tkoh}} ===
*[[Ambient Boats]]
*[[Ambient Helicopters]]
*[[:Category:Take On Helicopters: Editor Modules|Complete List]]


[[Category:Arma 3: Editing]]
* [[Ambient Boats]]
[[Category:Arma 2: Editing]]
* [[Ambient Helicopters]]
* [[:Category:Take On Helicopters: Editor Modules|Take On Helicopters: Editor Modules]]
 
 
{{GameCategory|arma2|Editing}}
{{GameCategory|arma3|Editing}}
[[Category:Take On Helicopters: Editing]]

Latest revision as of 22:31, 28 March 2024

This page can be considered a hub when it comes to Modules. Here you will find everything you need to know when it comes to creating modules, available modules in Arma 3 and existing module documentation.


General Information

  • Modules are executed before initServer.sqf, initPlayerLocal.sqf and initPlayerServer.sqf (See Initialisation Order)
  • Modules are very easy to set up, even for unexperienced users
  • They can easily be used to create mission templates


Create a Module by Script

A module can be created using createUnit (do not use createVehicle or createAgent). Same as normal units, a Group must be created first.
Since Arma 3 logo black.png1.86 the variable BIS_fnc_initModules_disableAutoActivation must be set to false in its init to allow its init code to run.

Example:

private _moduleGroup = createGroup sideLogic; "ModuleSmokeWhite_F" createUnit [ getPosATL player, _moduleGroup, "this setVariable ['BIS_fnc_initModules_disableAutoActivation', false, true];" ];


Creating a Module

Arma 3 introduces a module framework which aims to simplify the configuration of modules and the way their functions are executed (Globally,JIP)

Create a Module Addon

  • Make a folder named TAG_addonName a create a config.cpp file in it.
  • Inside, declare a CfgPatches class with your addon and its modules (in the units array). Without this, the game would not recognise the addon.
  • Make sure the addon and all objects start with your tag, e.g. TAG_.

Example

class CfgPatches
{
	class TAG_addonName
	{
		units[] = { "TAG_ModuleNuke" };
		requiredVersion = 1.0;
		requiredAddons[] = { "A3_Modules_F" };
	};
};

Module Category

  • Modules are placed into basic categories which makes finding a desired module easier.

You can use on of the existing categories (See table to the right) or create your own category (see example below).

class displayName
Effects Effects
Events Events
Modes Gameplay Modes
GroupModifiers Group Modifiers
Intel Intel
NO_CATEGORY Misc
Multiplayer Multiplayer
ObjectModifiers Object Modifiers
Sites Sites
StrategicMap Strategic
Supports Supports

Example

class CfgFactionClasses
{
	class NO_CATEGORY;
	class TAG_explosions: NO_CATEGORY
	{
		displayName = "Explosions";
	};
};

Creating the Module Config

  • All in-game objects (soldiers, vehicles, buildings, logics, modules, ...) are defined in CfgVehicles class.
  • All modules must inherit from Module_F parent class, either directly or through some additional sub-parent.
  • Modules functions are by default not executed when in Eden Editor workspace. It can be enabled using is3DEN property, but that will also change format of function params.

Example:

class CfgVehicles
{
	class Logic;
	class Module_F : Logic
	{
		class AttributesBase
		{
			class Default;
			class Edit;					// Default edit box (i.e. text input field)
			class Combo;				// Default combo box (i.e. drop-down menu)
			class Checkbox;				// Default checkbox (returned value is Boolean)
			class CheckboxNumber;		// Default checkbox (returned value is Number)
			class ModuleDescription;	// Module description
			class Units;				// Selection of units on which the module is applied
		};

		// Description base classes (for more information see below):
		class ModuleDescription
		{
			class AnyBrain;
		};
	};

	class TAG_Module_Nuke : Module_F
	{
		// Standard object definitions:
		scope = 2;										// Editor visibility; 2 will show it in the menu, 1 will hide it.
		displayName = "Nuclear Explosion";				// Name displayed in the menu
		icon = "\TAG_addonName\data\icon_Nuke_ca.paa";	// Map icon. Delete this entry to use the default icon.
		category = "Effects";

		function = "TAG_fnc_moduleNuke";	// Name of function triggered once conditions are met
		functionPriority = 1;				// Execution priority, modules with lower number are executed first. 0 is used when the attribute is undefined
		isGlobal = 1;						// 0 for server only execution, 1 for global execution, 2 for persistent global execution
		isTriggerActivated = 1;				// 1 for module waiting until all synced triggers are activated
		isDisposable = 1;					// 1 if modules is to be disabled once it is activated (i.e. repeated trigger activation will not work)
		is3DEN = 1;							// 1 to run init function in Eden Editor as well
		curatorCanAttach = 1;				// 1 to allow Zeus to attach the module to an entity
		curatorInfoType = "RscDisplayAttributeModuleNuke"; // Menu displayed when the module is placed or double-clicked on by Zeus

		// 3DEN Attributes Menu Options
		canSetArea = 1;						// Allows for setting the area values in the Attributes menu in 3DEN
		canSetAreaShape = 1;				// Allows for setting "Rectangle" or "Ellipse" in Attributes menu in 3DEN
		canSetAreaHeight = 1;				// Allows for setting height or Z value in Attributes menu in 3DEN
		class AttributeValues
		{
			// This section allows you to set the default values for the attributes menu in 3DEN
			size3[] = { 100, 100, -1 };		// 3D size (x-axis radius, y-axis radius, z-axis radius)
			isRectangle = 0;				// Sets if the default shape should be a rectangle or ellipse
		};

		// Module attributes (uses https://community.bistudio.com/wiki/Eden_Editor:_Configuring_Attributes#Entity_Specific):
		class Attributes : AttributesBase
		{
			// Arguments shared by specific module type (have to be mentioned in order to be present):
			class Units : Units
			{
				property = "TAG_Module_Nuke_Units";
			};

			// Module-specific arguments:
			class Yield : Combo
			{
				property = "TAG_Module_Nuke_Yield";				// Unique property (use "<tag>_<moduleClass>_<attributeClass>" format to ensure that the name is unique)
				displayName = "Nuclear weapon yield";			// Argument label
				tooltip = "How strong will the explosion be";	// Tooltip description
				typeName = "NUMBER";							// Value type, can be "NUMBER", "STRING" or "BOOL"
				defaultValue = "50";							// Default attribute value. Warning: this is an expression, and its returned value will be used (50 in this case).

				// Listbox items
				class Values
				{
					class 50Mt	{ name = "50 megatons";	value = 50; };
					class 100Mt	{ name = "100 megatons"; value = 100; };
				};
			};

			class Name : Edit
			{
				displayName = "Name";
				tooltip = "Name of the nuclear device";
				property = "TAG_Module_Nuke_Name";
				// Default text for the input box:
				defaultValue = """Tsar Bomba"""; // Because this is an expression, one must have a string within a string to return a string
			};

			class ModuleDescription : ModuleDescription {}; // Module description should be shown last
		};

		// Module description (must inherit from base class, otherwise pre-defined entities won't be available)
		class ModuleDescription : ModuleDescription
		{
			description = "Short module description";	// Short description, will be formatted as structured text
			sync[] = { "LocationArea_F" };				// Array of synced entities (can contain base classes)

			class LocationArea_F
			{
				description[] = { // Multi-line descriptions are supported
					"First line",
					"Second line"
				};
				position = 1;	// Position is taken into effect
				direction = 1;	// Direction is taken into effect
				optional = 1;	// Synced entity is optional
				duplicate = 1;	// Multiple entities of this type can be synced
				synced[] = { "BluforUnit", "AnyBrain" };	// Pre-defined entities like "AnyBrain" can be used (see the table below)
			};

			class BluforUnit
			{
				description = "Short description";
				displayName = "Any BLUFOR unit";	// Custom name
				icon = "iconMan";					// Custom icon (can be file path or CfgVehicleIcons entry)
				side = 1;							// Custom side (determines icon color)
			};
		};
	};
};
↑ Back to spoiler's top

2D Editor: The description is available after clicking on "Show Info" button when editing the module
Eden Editor: The description is available after opening the modules' attributes window

Pre-defined sync preview entities can be:

Class Descripton
Anything Any object - persons, vehicles, static objects, etc.
AnyPerson Any person. Not vehicles or static objects.
AnyVehicle Any vehicle. No persons or static objects.
GroupModifiers Group Modifiers
AnyStaticObject Any static object. Not persons or vehicles.
AnyBrain Any AI or player. Not empty objects
AnyAI Any AI unit. Not players or empty objects
AnyPlayer Any player. Not AI units or empty objects
EmptyDetector Any trigger

Configuring the Module Function

Example

class CfgFunctions
{
	class TAG
	{
		class Effects
		{
			file = "\TAG_addonName\functions";
			class moduleNuke {};
		};
	};
};

Writing the Module Function

  • Create the functions folder within the addon folder and place *.sqf or *.fsm files there.
  • Example: \TAG_addonName\functions\fn_moduleNuke.sqf
  • Input parameters differ based on value of is3DEN property.

Default Example (is3DEN = 0)

params [ ["_logic", objNull, [objNull]], // Argument 0 is module logic ["_units", [], [[]]], // Argument 1 is a list of affected units (affected by value selected in the 'class Units' argument)) ["_activated", true, [true]] // True when the module was activated, false when it is deactivated (i.e., synced triggers are no longer active) ]; // Module specific behavior. Function can extract arguments from logic and use them. if (_activated) then { // Attribute values are saved in module's object space under their class names private _bombYield = _logic getVariable ["Yield", -1]; // (as per the previous example, but you can define your own) hint format ["Bomb yield is: %1", _bombYield]; // will display the bomb yield, once the game is started }; // Module function is executed by spawn command, so returned value is not necessary, but it is good practice. true;

Example Eden Editor (is3DEN = 1)

When is3DEN = 1 is set in module config, different, more detailed params are passed to the function.

params [ ["_mode", "", [""]], ["_input", [], [[]]] ]; switch _mode do { // Default object init case "init": { _input params [ ["_logic", objNull, [objNull]], // Module logic ["_isActivated", true, [true]], // True when the module was activated, false when it is deactivated ["_isCuratorPlaced", false, [true]] // True if the module was placed by Zeus ]; // ... code here... }; // When some attributes were changed (including position and rotation) case "attributesChanged3DEN": { _input params [ ["_logic", objNull, [objNull]] ]; // ... code here... }; // When added to the world (e.g., after undoing and redoing creation) case "registeredToWorld3DEN": { _input params [ ["_logic", objNull, [objNull]] ]; // ... code here... }; // When removed from the world (i.e., by deletion or undoing creation) case "unregisteredFromWorld3DEN": { _input params [ ["_logic", objNull, [objNull]] ]; // ... code here... }; // When connection to object changes (i.e., new one is added or existing one removed) case "connectionChanged3DEN": { _input params [ ["_logic", objNull, [objNull]] ]; // ... code here... }; // When object is being dragged case "dragged3DEN": { _input params [ ["_logic", objNull, [objNull]] ]; // ...code here... }; }; true;

↑ Back to spoiler's top

Module Properties

Arma 3
If you use the Eden Editor please visit Eden Editor: System.
Property Name Description
Name The name of a module can be used to refer to the object in script code. Like all variable names, the name must not contain any spaces or reserved characters. You should try to make it something meaningful and avoid conflicts. Note that if a variable exists with an identical name, no warning will be given and the name will refer to the variable first, rather than the named unit. If you copy and paste a named entity, the duplicate will be automatically have an underscore and number appended to it is name to avoid conflicts.
Initialization Any script code placed in this box will be executed as the mission begins. Script code is extremely powerful and useful - it allows you to create many effects and change aspects of the mission that would not be possible using only the graphical interface of the mission editor. For example, to make a soldier begin the mission unarmed, add "removeAllWeapons this" (without the quotation marks) to it is initialization string. Any expressions in the initialization field must return nothing, or an error message will prevent the unit dialogue from closing.
Description The description property is not used by modules. However, it is used by some functions and it changes the tooltip in Eden Editor when hovering over the module icon.
Probability of Presence Defines how likely it is that the entity will exist each time the mission is played. This can be used to add a bit of randomness to missions. Moving the slider all the way to the right means the object will always be there, all the way to the left means the unit will never appear. Note the Condition of Presence must also return true if the entity is to appear in the mission.
Condition of Presence This is a script code condition which must return true in order for the object to appear in the mission. By default this reads "true" which means the object will appear as defined by it is Probability of Presence. For an example, if you wanted a unit to appear only if the mission is being played in Veteran mode, place "!cadetMode" (without quotation marks) in it is Condition of Presence box. A unit with a Condition of Presence that returns false will not exist in the mission, irrespective of its Probability of Presence.
Placement Radius Changes the object's starting position to a random point within a circle of this radius, in metres. This can be used to add some randomness to your mission. For grouped units, the placement radius is only used by the group leader, and group members with a special setting of None (or In Cargo for a group without suitable vehicle).


Module Documentation

Here you can find links to modules which are documented on this wiki.

Arma 2

Arma 3

Last updated: Arma 3 logo black.png2.10

Module Name Category Addon Function Description
Hide Terrain Objects Environment Arma 3 BIS_fnc_moduleHideTerrainObjects
Edit Terrain Object Environment Arma 3 BIS_fnc_moduleEditTerrainObject
Timeline Keyframe Animation Arma 3
Rich Curve Keyframe Animation Arma 3
Rich Curve Key Keyframe Animation Arma 3
Rich Curve Key Control Point Keyframe Animation Arma 3
Camera Keyframe Animation Arma 3
Smoke Grenade Effects Arma 3 BIS_fnc_moduleGrenade Create a smoke shell.
Chem light Effects Arma 3 BIS_fnc_moduleGrenade Create a chem light.
Tracers Effects Arma 3 BIS_fnc_moduleTracers Shoot tracers upwards to create an illusion of battle.
Plankton Effects Arma 3 BIS_fnc_moduleEffectsEmitterCreator Plankton module creates an underwater plankton effect around player.
Bubbles Effects Arma 3 BIS_fnc_moduleEffectsEmitterCreator Creates underwater bubbles on position of the module. Unless you set the position of the module manually (via script commands), bubbles will be created at the bottom.
Cartridges Effects Arma 3 BIS_fnc_moduleEffectsEmitterCreator Creates empty cartridges on the position of the module.
Smoke Effects Arma 3 BIS_fnc_moduleEffectsEmitterCreator Creates smoke on a position of the module.
Fire Effects Arma 3 BIS_fnc_moduleEffectsEmitterCreator Creates fire on a position of the module.
Date Events Arma 3 BIS_fnc_moduleDate Set mission date.
Weather Environment Arma 3 BIS_fnc_moduleWeather Set mission weather. Certain changes can take some time to appear.
Save Game Events Arma 3 BIS_fnc_moduleSaveGame Set the mission progress. Will replace the previous automatic save. User save won't be affected.
Radio Chat Events Arma 3 BIS_fnc_moduleChat Show a chat message.
Volume Events Arma 3 BIS_fnc_moduleVolume Set mission sound/music volume. Changes won't affect user options.
Generic radio message Events Arma 3 BIS_fnc_moduleGenericRadio Show a chat message.
Set Callsign Group Modifiers Arma 3 BIS_fnc_moduleGroupID Assign group callsign. Each group has to have a unique callsign - assigning an existing one will remove it from the group which used it previously.
Combat Get In Group Modifiers Arma 3 BIS_fnc_moduleCombatGetIn
High Command - Commander Others Arma 3 Set person as a high commander, giving him an ability to control whole groups.
Skip time Environment Arma 3 BIS_fnc_moduleSkiptime Skip mission time.
Create Task Intel Arma 3 BIS_fnc_moduleTaskCreate Add a task to synced objects or to larger pool of units.
Set Task Description Intel Arma 3 BIS_fnc_moduleTaskSetDescription Set task description.
Set Task Destination Intel Arma 3 BIS_fnc_moduleTaskSetDestination Set task destination.
Set Task State Intel Arma 3 BIS_fnc_moduleTaskSetState Set task state.
Create Diary Record Intel Arma 3 BIS_fnc_moduleCreateDiaryRecord Create a diary record for synced objects or for larger a pool of units.
Headquarters Entity Intel Arma 3 BIS_fnc_moduleHQ Virtual headquarters unit which can be used for playing radio messages.
Military Symbols Others Arma 3
Zone Restriction Others Arma 3 BIS_fnc_moduleZoneRestriction Set punishment for leaving the Area of Operation.
Trident Others Arma 3 BIS_fnc_moduleTrident Set diplomacy options. When involved sides start killing each other, they won't be punished by a negative rating. Once too many kills are reached, the sides will turn hostile.
Unlock Object Others Arma 3 BIS_fnc_moduleUnlockObject Unlock addons of synced objects for the curator. E.g., when synced to a BLUFOR soldier, all BLUFOR soldiers will be unlocked, because they belong to the same addon.
Unlock Area Others Arma 3 BIS_fnc_moduleUnlockArea Unlock area for curator unit spawning.
Friendly Fire Others Arma 3 BIS_fnc_moduleFriendlyFire Set punishment for killing friendly units.
Sector Multiplayer Arma 3 BIS_fnc_moduleSector
Respawn Position Multiplayer Arma 3 BIS_fnc_moduleRespawnPosition Add a respawn position.
Vehicle Respawn Multiplayer Arma 3 BIS_fnc_moduleRespawnVehicle Set vehicle respawn parameters.
Show / Hide Object Modifiers Arma 3 BIS_fnc_moduleShowHide Show/hide synced objects. They will become invisible and their simulation will be disabled.
Set Position / Rotation Object Modifiers Arma 3 BIS_fnc_modulePositioning Set position and rotation of synced objects.
Set Skill Object Modifiers Arma 3 BIS_fnc_moduleSkill Set AI skill of synced objects. Has no effect on players.
Set Character Damage Object Modifiers Arma 3 BIS_fnc_moduleHealth Set damage of synced persons.
Set Vehicle Damage Object Modifiers Arma 3 BIS_fnc_moduleDamage Set damage of synced vehicles.
Set Vehicle Fuel Object Modifiers Arma 3 BIS_fnc_moduleFuel Set fuel of synced vehicles.
Set Ammo Object Modifiers Arma 3 BIS_fnc_moduleAmmo Set total ammo of synced objects. Affects only ammo of their weapons, not ammo carried in cargo space (e.g., ammo boxes).
Set Mode Object Modifiers Arma 3 BIS_fnc_moduleMode Set behavior pattern of synced objects.
Set Rank Object Modifiers Arma 3 BIS_fnc_moduleRank Set military rank of synced objects.
Set AI Mode Object Modifiers Arma 3 BIS_fnc_moduleAI Enable/disable AI modes.
Add Rating / Score Object Modifiers Arma 3 BIS_fnc_moduleRating Add rating to synced objects. Rating is automatically awarded for killed enemies and players can see it in the debriefing screen. Shooting friendlies will lead to a negative rating and turning hostile to your own units.
Open / Close Doors Object Modifiers Arma 3 BIS_fnc_moduleDoorOpen Open/close door of synced objects.
Simulation Manager Object Modifiers Arma 3 BIS_fnc_moduleSimulationManager Keep all AI units disabled until someone from the player's group gets near.
Open Strategic Map Strategic Arma 3 BIS_fnc_moduleStrategicMapOpen Open a strategic map.
Support Requester Supports Arma 3 BIS_fnc_moduleSupportsInitRequester Supports framework. A support requester unit has to be synchronized with the Requester module. The Requester module has to be synchronized with Provider module(s). A Provider module has to be synchronized with a support provider unit(s), unless a Virtual Provider module is used.
Firing Drill Firing Drills Arma 3 BIS_fnc_moduleFiringDrill
Posters Others Arma 3 BIS_fnc_modulePoster Creates posters and leafets on walls of buildings. Those buildings are made indestructible.
Animals Others Arma 3 Zeus BIS_fnc_moduleAnimals Creates a group of animals and handles their basic behavior. Deleting the module will delete the animals as well.
Close Air Support (CAS) Effects Arma 3 Zeus BIS_fnc_moduleCAS Send an air strike on the module position. It will take a few seconds before the plane arrives at the module's position. Unless it is destroyed, it will be deleted after flying away.
Game Master Zeus Arma 3 Zeus BIS_fnc_moduleCurator Zeus logic which provides access to the 3D real-time editor.
Manage Addons Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddAddons Manage addons (i.e. object packs) available to Zeus.
Manage Resources Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddPoints Add or subtract resources available to Zeus. They are required for placing or editing objects.
Add Editing Area Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddEditingArea Add an area inside of which Zeus is allowed to place or edit objects.
Restrict Editing Around Players Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddEditingAreaPlayers
Set Editing Area Type Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetEditingAreaType Set whether editing in all editing areas is allowed or restricted.
Add Camera Area Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddCameraArea Add an area inside of which Zeus can move with the camera.
Set Camera Position Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetCamera Move the Zeus camera to the module position.
Add Editable Objects Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddEditableObjects Add objects which Zeus can edit.
Set Editing Costs Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetCoefs Set coefficients for operations Zeus can perform. The object cost is multiplied by these. Use a large negative value (e.g. -1e10) to disable the operation.
Set Costs (Default) Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetCostsDefault
Set Costs (Side) Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetCostsSide Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
Set Costs - Soldiers & Vehicles Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetCostsVehicleClass Simplified definition of object costs. Can be combined with other "Set Costs" modules (e.g., cost of a BLUFOR soldier can be defined by "Set Costs - Sides" and "Set Costs - Soldiers & Vehicles" module. All matching values are multiplied together).
Add Icon Zeus Arma 3 Zeus BIS_fnc_moduleCuratorAddIcon Show icon visible only to a specific Zeus.
Set Attributes - Objects Zeus Arma 3 Zeus BIS_fnc_moduleCuratorSetAttributes Set which attributes are available for objects. The attribute window is accessed when Zeus double-clicks LMB on an object.
Post-Process Environment Arma 3 Zeus BIS_fnc_modulePostprocess Set a scene Post-Processing effect (e.g. color correction or film grain)
IR Grenade Effects Arma 3 Zeus BIS_fnc_moduleGrenade
Time Acceleration Environment Arma 3 Zeus BIS_fnc_moduleTimeMultiplier
Flare Effects Arma 3 Zeus BIS_fnc_moduleProjectile Creates a signal flare on the module position (visible only at night).
End Scenario Scenario Flow Arma 3 Zeus BIS_fnc_moduleEndMission End the scenario for all players.
Scenario Name Scenario Flow Arma 3 Zeus BIS_fnc_moduleMissionName Set the scenario name. It's shown to every player upon joining and after each respawn.
Zeus Lightning Bolt Zeus Arma 3 Zeus BIS_fnc_moduleLightning Creates a lightning strike powerful enough to destroy an object where it impacts.
Cover Map Others Arma 3 Zeus BIS_fnc_moduleCoverMap Highlight an Area of Operations in the map by enclosing it and covering the unused part.
Create Radio Channel Others Arma 3 Zeus BIS_fnc_moduleRadioChannelCreate Creates a custom radio channel for the given sides / Zeus players.
Zone Protection Scenario Flow Arma 3 Zeus BIS_fnc_moduleZoneProtection Prevents players from entering the given area.
Countdown Scenario Flow Arma 3 Zeus BIS_fnc_moduleCountdown
Respawn Tickets Scenario Flow Arma 3 Zeus BIS_fnc_moduleRespawnTickets Set the number of respawn tickets available to each side.
Bleed Tickets Scenario Flow Arma 3 Zeus BIS_fnc_moduleBleedTickets Allow ticket bleeding when one side is holding the majority of sectors.
Ordnance Effects Arma 3 Zeus BIS_fnc_moduleProjectile Create an artillery shell on the module position. It will take a few seconds until it hits the ground.
Time Trial Time Trials Arma 3 Karts BIS_fnc_moduleTimeTrial
Spawn AI Others Arma 3 Helicopters BIS_fnc_moduleSpawnAI
Spawn AI: Spawnpoint Others Arma 3 Helicopters BIS_fnc_moduleSpawnAIPoint
Spawn AI: Sector Tactic Others Arma 3 Helicopters BIS_fnc_moduleSpawnAISectorTactic
Spawn AI: Options Others Arma 3 Helicopters BIS_fnc_moduleSpawnAIOptions
Sling Load Others Arma 3 Helicopters BIS_fnc_moduleSlingload
EndGame Objectives Instance Objectives Arma 3 Marksmen BIS_fnc_moduleHvtObjectives
End Game Simple Objective Objectives Arma 3 Marksmen BIS_fnc_moduleHvtObjectives
End Game Start Game Objective Objectives Arma 3 Marksmen BIS_fnc_moduleHvtObjectives
End Game - End Game Objective Objectives Arma 3 Marksmen BIS_fnc_moduleHvtObjectives
Combat Patrol Init Combat Patrol Arma 3 Malden BIS_fnc_CPInit Initializes the Combat Patrol mode upon scenario start.
Combat Patrol Location Add Combat Patrol Arma 3 Malden Adds a new selectable location to the map.
Combat Patrol Location Remove Combat Patrol Arma 3 Malden Removes the nearest location in a 1000m radius from the map selection.
Combat Patrol Location Reposition Combat Patrol Arma 3 Malden Moves the nearest location in a 1000m radius to this module's position.
Combat Patrol Azimuth Blacklist Combat Patrol Arma 3 Malden Blacklists the nearest location's in a 1000m radius azimuth range so it can't be used for the starting / ending position or reinforcements spawning point.
Civilian Presence Ambient Arma 3 Tac-Ops BIS_fnc_moduleCivilianPresence
Civilian Presence Spawnpoint Ambient Arma 3 Tac-Ops BIS_fnc_moduleCivilianPresenceUnit
Civilian Presence Position Ambient Arma 3 Tac-Ops BIS_fnc_moduleCivilianPresenceSafeSpot
Vanguard: Starting Area Gameplay Modes Arma 3 Tanks BIS_fnc_moduleVanguardFob
Vanguard: Score Persistence Gameplay Modes Arma 3 Tanks BIS_fnc_moduleVanguardScorePersistence
Vanguard: Objective Area Gameplay Modes Arma 3 Tanks BIS_fnc_moduleVanguardObjective
Old Man Sector Old Man Arma 3 Apex Module for configuring sectors. All vehicles and groups placed inside will be persistently spawned. Sectors must not overlap! This module cannot be used without first adding the Old Man Init. module.
Old Man Patrol Area Old Man Arma 3 Apex Module for randomly spawning groups in an area. Groups that have some unit synchronized are used as a template; units will randomly spawn in positions inside the patrol area. If you synchronize multiple groups, a random group will be selected. This module cannot be used without first adding the Old Man Init. module.
Old Man Restricted Area Old Man Arma 3 Apex Sets up restricted areas which will raise player's threat level if seen within it. This module cannot be used without first adding the Old Man Init. module.
Old Man Relationship Old Man Arma 3 Apex Set up the relationship with a given side. Do not set up for player's own side. This module cannot be used without first adding the Old Man Init. module.
Old Man QRF Others Arma 3 Apex QRF Module. Synchronized units will be spawned on QRF activation. Only one instance of the module is allowed. It cannot be used without first adding the Old Man Init. module.
Old Man Smart Markers Old Man Arma 3 Apex BIS_fnc_OM_moduleSmartMarkers Managing smart marker enhancements, interactive smart marker compositions, and LODing of the information. This module cannot be used without first adding the Old Man Init. module.
Old Man Insurgent Agent Old Man Arma 3 Apex BIS_fnc_OM_moduleSyndikatAgent Module manages insurgent resources. It generates attack events. It cannot be used without first adding the Old Man Init. module.
Old Man Insurgent Team Old Man Arma 3 Apex BIS_fnc_OM_moduleSyndikatTeam Manages size of insurgent teams and income. This module cannot be used without first adding the Old Man Init. module.
Old Man Insurgent Camp Position Old Man Arma 3 Apex Defines the placement of a camp. Synchronize the position with a unit, which will serve as a template for the unit actually spawned in the camp. Behavior and waypoints will be inherited, as well as code from any synchronized init. script module. It cannot be used without first adding the Old Man Init. module.
Old Man Economy Old Man Arma 3 Apex BIS_fnc_OM_moduleEconomy Manage player income and starting money. This module cannot be used without first adding the Old Man Init. module.
Oldman Action Queue Old Man Arma 3 Apex BIS_fnc_OM_moduleActionQueue Action Queue can be used for the sequential execution of actions (scripts, dialogues) in a non-specified time.
Old Man Radio Old Man Arma 3 Apex BIS_fnc_OM_moduleRadio Sets parameters for radio stations and what content will be aired. This module cannot be used without first adding the Old Man Init. module.
Old Man Reputation Old Man Arma 3 Apex BIS_fnc_OM_moduleReputation Reputation calculated in conjunction with the Relationship module. This module cannot be used without first adding the Old Man Init. module.
Old Man Awareness Old Man Arma 3 Apex BIS_fnc_OM_moduleAwareness Player's awareness regarding his relationship to the enemy via ambient radio chatter. This module cannot be used without first adding the Old Man Init. module.
Old Man Protected Vehicle Old Man Arma 3 Apex Vehicle that will be marked as stolen by a given side. It will elicit an appropriate response if taken. Note that all CSAT, NATO, and Gendarmerie vehicles are registered by default. This module must be synchronized to a vehicle. It cannot be used without first adding the Old Man Init. Module.
Old Man Init. Script Old Man Arma 3 Apex Init. script applied to any unit synchronized with a module. Do not use system: Init. field. Instead, use the field in the lower part of the module. Script will be called every time a unit in the sector is created.
Old Man Init. Old Man Arma 3 Apex BIS_fnc_OM_init Integral module for Old Man, enabling all functionality. If you create a new mission, do not forget the common description.ext to enable the rest of the functions.
It is possible to include other missions directly into this mission. You must have them all in one folder, with the path mapped in this module. Furthermore, in each mission folder, you must have the missionName.sqf file included. For the name of the included mission, use the mission name, without the accompanying terrain suffix.
Old Man Night Old Man Arma 3 Apex Synchronize units you want to spawn to the closest sector. According to the module settings, synchronized units will remain at night. Use this module for each sector that should be different from a sector in the daytime. It cannot be used without first adding the Old Man Init. module.
Old Man Intel Old Man Arma 3 Apex Module for creating collectible intel. It adds a new diary record and can reveal sector markers. It cannot be used without first adding the Old Man Init. module.
Old Man Tracked Device Old Man Arma 3 Apex Synchronize this module with any object that should be audible on the player's phone's geo-finder. The module itself will only prime the object. It will be despawned after. Do not use on vehicles or units inside a sector which can be despawned. This module cannot be used without first adding the Old Man Init. module.
Old Man Drop-off Point Old Man Arma 3 Apex BIS_fnc_OM_moduleDepot Player is able to unload/sell equipment inside of the sector area. Synchronize a container so it can be used to store items from inventory. This module cannot be used without first adding the Old Man Init. module.
Old Man Rest Point Old Man Arma 3 Apex BIS_fnc_OM_moduleRestPoint Player is able to rest at synchronized object(s). This module cannot be used without first adding the Old Man Init. module.
Old Man Mosquitoes Old Man Arma 3 Apex BIS_fnc_OM_Epicentrum Creates an area infested with mosquitoes. This module cannot be used without first adding the Old Man Init. module.
Old Man Market Old Man Arma 3 Apex BIS_fnc_OM_moduleMarket Player is able to shop at a synchronized container when talking to a synchronized shopkeeper. This module cannot be used without first adding the Old Man Init. module.
Old Man Random Conversations Old Man Arma 3 Apex Synchronize one or two units to talk to each other or to the player. This module cannot be used without first adding the Old Man Init. module.
Old Man Fast Travel Old Man Arma 3 Apex BIS_fnc_OM_moduleFastTravel Module for handling player Fast Travel. This module cannot be used without first adding the Old Man Init. module.
Old Man Fast Travel Position Old Man Arma 3 Apex Defines the position where the player should be transported to after Fast Travel. This module cannot be used without first adding the Old Man Init. module.

Total number of modules: 154

Extraction script can be found on the Biki Export Scripts page.

Take On Helicopters