Navigation

  • index
  • next |
  • previous |
  • Antistasi Guide documentation »
  • Dev Guide »
  • Advanced build methods

Logo of Antistasi Guide

Table of Contents

  • Beginners Guide for Antistasi v3.0
  • Detailed Reference Guide
  • Dev Guide
    • General
    • Development
      • Dev Tools Starter Setup
      • How to build Antistasi
      • Advanced build methods
        • With VS code Arma Dev Extension
        • With batch scripting
        • With Arma 3 Tools
        • Live editing
      • Antistasi Porting Instructions
      • How to Extend Antistasi?
      • Technical Standards for Core Code Contributions
      • Addon Functions & Folders Library
      • Debug Console Commands for Devs
      • Translation-Localization of Antistasi via Tolgee
    • Deprecated

GitHub

Star
Follow @official-antistasi-community

Advanced build methods

This page lists a few more advanced methods for building the mod if you’re looking for true workflow optimization, or if none of the previous methods worked for you.

With VS code Arma Dev Extension

With VS code Arma Dev Extension

  • Install extension from marketplace

  • configure the extension from the Antistasi workspace by opening the command pallet Ctrl/ ⌘ + Shift + P and running the Arma 3: configure command

  • fill in the configuration .json file something like this

{
   "title": "A3 Antistasi",
   "name": "A3A",
   "author": "Official Antistasi dev team",
   "website": "https://antistasi.de/",
   "version": "2.5.4",
   "buildPath": "build",
   "privateKey": "", //add the path to a private bikey for signing when building
   "serverDirs": [],
   "serverUse32bit": false,
   "clientDirs": [ //should list all addons the mod provides
          "A3A/addons/config_fixes",
          "A3A/addons/core",
          "A3A/addons/Events",
          "A3A/addons/Garage",
          "A3A/addons/gear",
          "A3A/addons/GUI",
          "A3A/addons/jeroen_arsenal",
          "A3A/addons/Logistics",
          "A3A/addons/maps",
          "A3A/addons/patcom"
     ],
   "clientMods": [
      // Example:
          // "!Workshop/@CBA_A3",
          // "!Workshop/@ace",
          // "!Workshop/@User Input Menus",
          // "!Workshop/@Extended Function Viewer",
          // "!Workshop/@Debug Console",
          // "!Workshop/@Zeus Enhanced",
          // "!Workshop/@Zeus Enhanced - ACE3 Compatibility",
          // "!Workshop/@Enhanced Movement",
          // "!Workshop/@DUI - Squad Radar"
   ],
   "ftpConnection": {},
   "steamPath": "H:\\SteamLibrary" //arma 3 install steam library, arma 3 tools should be in the same folder
}
  • Run the command Extensions: Open Extension Folder and navigate to ole1986.arma-dev-0.0.20 -> out -> helpers -> runArma.js -> ln 54 and add -debug to the list

let args = [
       '2', '1', '0', '-exe', 'arma3_x64.exe',
       '-mod=' + clientMods.join(';'),
       '-nosplash',
       '-world empty',
       '-skipIntro',
       '-debug'
   ];
  • now run the Arma 3: Build command, this will output into your build folder with packed addons (and signed if you have a key designated)

  • run the Arma 3: Toggle code live command this will create symlinked folders in your arma directory for filepatching, allowing “live editing” of code, by editing the source files (dosnt include anything processed by the config.cpp)

  • run the Arma 3: Run client or Arma 3: Run client (with logging) command arma should start with everything ready for you, (the logging alternate will open the rpt thats created on arma launch)

With batch scripting

With batch scripting

  • This method allows you to “somewhat” easily sign your mod with a private key if you want to run your mod on a dedicated server with signature verification.

  • To use the following batch script, copy it into a text file and rename the extension to .bat

  • Make sure to change all of the marked paths to the relevant absolute paths.

  • You can remove the portions about filepatching, private key signing, and public key signing if those parts are not needed.

@echo off
setlocal

rem *******Edit these three to match local config*********
set builderpath="C:\Program Files (x86)\Steam\steamapps\common\Arma 3 Tools\AddonBuilder\AddonBuilder.exe"
set armapath="G:\SteamLibrary\steamapps\common\Arma 3"
set keypath="C:\Projects\BISkeys\Antistasi__NAME__.biprivatekey"

set sourcedir="%CD%\A3A\addons"
set builddir="%CD%\build\@A3A\addons"
set extraparams=-packonly -sign=%keypath%

del /Q %builddir%\*.*
for /F %%x in ('dir /A:D /B /D %sourcedir%') do (
   %builderpath% %sourcedir%\%%x %builddir% %extraparams% -prefix=x\A3A\addons\%%x
)

rem *******Create links to mod and file patching data*******
rmdir %armapath%\@A3ALocal
mklink /J %armapath%\@A3ALocal "%CD%\build\@A3A"
rmdir %armapath%\x\A3A
mklink /J %armapath%\x\A3A "%CD%\A3A"

endlocal

With Arma 3 Tools

With Arma 3 Tools

Note that this guide exists almost solely for reference; building the mod this way is extremely inefficient and should be automated with one of the previous methods.

Packing

  • Open Addon Builder from Arma 3 Tools

  • Click options
    • Add to List of files to copy directly these file extensions; *.p3d;*.paa;*.hpp;*.sqf

    • Click the three dots next to Path to project folder and navigate to the repository’s A3A folder

    • Add the prefix in the format x/A3A/{folder to build}

    • Optionally add a path to a .biprivatekey for signing, this allows you to leave key verification on for dedicated server testing

  • Back in the main window, add a source directory, this will be in turn each addon folder in repository -> A3A -> addons -> {folder to build}

  • Add a destination folder, this would be for example: repository -> build -> @A3A -> addons

  • Ensure for testing that it doesn’t binarize the files

  • Now, simply press build and repeat for each folder in the A3A -> addons

Running

  • Copy the folder in your build directory to your arma 3 directory (or symbolic link it, recommended)

  • In the arma 3 launcher, under the Mods tab, click ... More -> Add watched folder... -> Add 'Arma 3' folder. This will automatically add local mods in your arma directory to your mods list for easy loading.

Live editing

Live editing

  • Live editing is where you use an option known as “filepatching” to make changes in-game without having to restart the entire game. It is not essential for building, but can help optimize your workflow.

  • For live editing you need to create this folder structure in your arma 3 directory; x/A3A/addons, and then create symbolic links from each folder in your repository A3A/addons folder to the one in your arma directory.

  • Next you need to go in your ArmA 3 launchers Parameters tab and under All Parameters, in the Advanced section, tick the parameter Enable File-Patching, then under the section Author, tick the parameter Debug Mode. I recommend favoriting these two for ease of use later on.

  • Now when you start with the build loaded under the Mods tab, it will start in Dev mode and allow for recompilation of functions on the go either by reloading the mission or by calling the function A3A_fnc_prepFunctions.

Navigation

  • index
  • next |
  • previous |
  • Antistasi Guide documentation »
  • Dev Guide »
  • Advanced build methods
© Copyright 2025, Official Antistasi Community. Last updated 2025/July/14