2024-02-10 16:13:42 -08:00
2024-02-10 16:13:42 -08:00
2023-06-19 00:57:30 -05:00
2023-06-19 00:57:30 -05:00
2023-06-19 00:57:30 -05:00
2023-12-29 12:14:36 -06:00
2023-06-19 00:57:30 -05:00
2023-06-19 00:57:30 -05:00
2024-02-07 23:25:23 -06:00
2024-02-09 21:37:59 -08:00
2023-06-19 00:57:30 -05:00

Installation Instructions

The only file which should be pre-existing in your mission folder is mission.sqm, once freshly saved from Arma 3's EDEN Editor.

Download the latest mission template zip from the latest release and copy its contents to the folder where your mission file lives.

Once copied, the final structure should appear similar to the following:

├── aaFrameworkUtils/
├── defines/
├── framework/
├── images/
├── scripts/
├── sounds/
├── textures/
├── CHANGELOG.md
├── description.ext
├── mission_settings.hpp
├── mission.jpg
├── mission.sqm

Note: If you're building a mission for use and not actively developing code, the aaFrameworkUtils and framework\x directories should be deleted. These are for the purposes of development and add size bloat to the mission download when players connect to your mission.

After the requisite configuration file edits have been made, your mission is ready to be packed into a pbo for deployment.

Files

Almost none of the template files should be edited in anyway as they have been formatted specially and specifically for their purpose.

The following files however must be edited: mission_settings.hpp

The following files however should be edited: mission.jpg

mission_settings.hpp

The contents of this file must be edited to reflect the naming of your mission for display purposes. All variables are self-documented inside the file to clearly identify the purpose of each piece of required text

The contents of the lower half of the file are where the mission maker is able to add/replace/modify the built in #ace-fortify preset

mission.jpg

This file will be displayed the client mission loading screen. File should remain small (under 300KiB) and should optimally be 1024px by 512px in resolution

defines/

This directory contains the definition files use by the framework in various places. Contents should not be edited

framework/

This directory contains the code for the mission framework. Contents must not be edited.

images/

This directory is for organizational purposes for any images you wish to use in your mission

scripts/

This directory is for organizational purposes for any custom scripts you wish to use in your mission.

Note: Scripts may need to be edited to account for their new location

sounds/

This directory is for organizational purposes for any custom scripts you wish to use in your mission.

Note: Using custom sounds require adding the proper CfgSounds codeblock into mission_settings.hpp

textures/

This directory is for organizational purposes for textures files used by mission scripts.

Development Notes

All modules are broken apart as such in /framework. Client and server inits are managed in /framework/init.

Pay attention to framework/script_mod.hpp prior to deployment of releases, as the debug settings within will determine what is logged during prod missions.

CfgFunctions is sensitive to the folder/script_component.hpp of each module.

defines Directory

This directory contains a number of hpp files used to define constants throughout the framework. These should ONLY be edited by or with the supervision of a developer to reflect format battalion-wide changes.

  • ApprovedAssets.hpp: Contains subclasses for approved aerial assets with their assigned callsigns. Used primarily in fbcb2_assets.
  • BattalionInfo.hpp: Used for representing Battalion structure, element callsigns, and radio frequency assignments. Used primarily in fbcb2_main.
  • DisallowedEquipment.hpp: Contains flagged item classnames by category that players may not use, or may use only in specific roles. Used to monitor and enforce equipment restrictions.
  • SignalColors.hpp: Contains smoke/flare/chemlight colors and what they represent in the field. Used primarily in fbcb2_main for the Signal Colors diary record.
  • SupplyCrates.hpp: Contains the types, contents, and metadata for all supply crate types in the resupply module.
  • VehicleFlags.hpp: Defines system information, flag categories, and flag options used to populate ACE3 interaction menus for vehicles. Used by the vehicleFlags module.

Modules List

Within framework:

  • ambience:
    • Adds ambient flak capabilities.
  • client:
    • Contains core client-side event handlers and actions that don't fit into other modules.
  • common:
    • Contains common functions and variables used by multiple modules.
  • fbcb2_main:
    • Contains the main FBCB2 functionality and initialization code. Populates the briefing/diary with mission information.
  • fbcb2_assets:
    • A subcomponent of fbcb2_main. Used to gather, display, and manage diary records as intel for assets near known bases.
  • init:
    • Contains core initialization functions. Both server and client inits across all modules are managed here.
  • mapcopy:
    • Gives players the ability to copy each other's maps.
  • performance:
    • Contains functionality for monitoring and logging performance data.
  • reinsert:
    • Provides a reinsertion queue system for players and pilots to maximize efficiency of the reinsertion process.
  • resupply:
    • Provides a Zeus module and standalone function to spawn pre-equipped supply crates onto the battlefield.
    • Supply crate definitions are stored in defines/SupplyCrates.hpp.
    • Optionally, allows players to spawn supply crates from arsenal boxes.
  • triageIcons:
    • For those with medical permissions (ace_medical), provides a configurable 3D icon over unconscious units indicating their current ACE Triage Card status.
  • vehicleFlags:
    • Provides an ACE3 interaction menu that allows players to attach and remove flags from vehicles.
    • Flags are defined in defines/VehicleFlags.hpp.
Description
No description provided
Readme 6.4 MiB
4.2.4 Latest
2025-11-09 21:14:18 -06:00
Languages
SQF 57.8%
C++ 41.8%
Python 0.4%