Module Framework – Arma 3
Jump to navigation
Jump to search
Arma 3 introduces a module framework, which lets designer to simplify the configuration and chose how the module function will be executed (e.g., globally and for every player who joins later).
How to Create a Module
When creating a new module, follow these steps:
- 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
- Create config for module logic
- 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 inherting 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.
- Pre-defined sync preview entities are:
- Anything - Any object - persons, vehicles, static objects, etc.
- AnyPerson - Any person. Not vehicles or static objects.
- AnyVehicle - Any vehicle. No persons or static objects.
- 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
- Configure module function
- Place class CfgFunctions to config.cpp. See Functions Library (Arma 3) for more info about functions configuration.
- Write 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
- Create module logic icon
- Right click on the image on left and Save Image As' to get the default module icon.
- Create a simple icon presenting the module in the circle. Avoid using too much detail, as the icon may downsized in the game.
- Save the image to \myTag_addonName\data\iconNuke_ca.paa
If you cannot or don't want to create a custom image, avoid using icon entry in the module config. The default icon will then be inherited from Module_F base class.