Modules

From Bohemia Interactive Community
Revision as of 17:01, 17 June 2018 by R3vo (talk | contribs) (See Also: removed see also, it's linked already)
Jump to navigation Jump to search

SideTOC

Introduction

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 Arma 3 and existing module documentation.

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 myTag_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 wouldn't recognize the addon.
  • Make sure the addon and all objects start with your tag, e.g. myTag
class CfgPatches
{
	class myTag_addonName
	{
		units[] = {"myTag_ModuleNuke"};
		requiredVersion = 1.0;
		requiredAddons[] = {"A3_Modules_F"};
	};
};


Module Category

  • Modules are placed into basic categories which makes finding a desired module easier for an user. Use can use on of the existing categories:
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

Alternatively, you can create your own one:

class CfgFactionClasses
{
	class NO_CATEGORY;
	class myTag_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. While modules inheriting from some other class will be still displayed in the Modules menu (F7), they won't be using the module framework and all benefits tied to it.
  • 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 (see the section about writing a function below).

Example: Show text


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

class CfgFunctions 
{
	class myTag
	{
		class Effects
		{
			file = "\myTag_addonName\functions";
			class moduleNuke{};
		};
	};
};


Writing the Module Function

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


Example: Show text


Module Properties

Feature arma3

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's 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's 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's 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'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.
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).

Arma 3 Modules (List)

Last updated: Arma 3 logo black.png1.82

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.
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's 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.
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

Export Function Show text


Module Documentation

Here you'll find link to modules which have been documented on this wiki.

Arma 2

Arma 3

Take On Helicopters