User Tools

Site Tools


a3_documentation:cvwp:cvwp_mission_control_tool

This is an old revision of the document!


RKSL CVWP Pylon Manager - Mission Configuration

The RKSL CVWP Pylon Manager allows mission makers to control which aircraft stores may be fitted during a mission and, optionally, require aircraft to be near a suitable ammunition or servicing vehicle before the Pylon Manager can be used.

Mission restrictions are configured in the mission's:

description.ext

The configuration is optional.

If no RKSLA3_PylonManager class is present, the Pylon Manager retains its normal unrestricted behaviour.

Quick Start

A basic mission configuration looks like this:

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 0;
    allowNativeMagazines = 1;
    allowedMagazines[] = {};
 
    requireRearmVehicle = 0;
    rearmDistance = 50;
    rearmVehicleClasses[] = {};
};

This example enables mission configuration but does not impose any restrictions.

Configuration Class

New missions should use:

class RKSLA3_PylonManager
{
    ...
};

The older:

class RKSLA3_CVWP_PylonManager

name exists only as a compatibility fallback and should not be used for new missions.

Magazine Restriction Modes

The Pylon Manager supports three main restriction modes.

Mode restrictMagazines allowNativeMagazines allowedMagazines[] Behaviour
Unrestricted 0 Any Any Normal Pylon Manager behaviour.
Native + Selected 1 1 Populated Aircraft-native magazines plus specifically permitted magazines.
Strict Whitelist 1 0 Populated Only magazines listed in allowedMagazines[] may be selected.
Native Only 1 1 Empty Only magazines native to the aircraft are permitted.

Unrestricted Mode

To leave the Pylon Manager unrestricted:

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 0;
};

This is effectively the normal Pylon Manager behaviour.

Native Magazines Plus Selected Stores

This mode retains magazines normally compatible with the aircraft while adding a mission-defined list of additional permitted stores.

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 1;
    allowNativeMagazines = 1;
 
    allowedMagazines[] =
    {
        "RKSLA3_EXAMPLE_MAGAZINE_1",
        "RKSLA3_EXAMPLE_MAGAZINE_2"
    };
};

This is useful when a mission maker wants to allow the aircraft's normal loadout options while adding a limited set of CVWP weapons.

Strict Whitelist

Strict whitelist mode permits only the magazines explicitly listed by the mission.

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 1;
    allowNativeMagazines = 0;
 
    allowedMagazines[] =
    {
        "RKSLA3_EXAMPLE_MAGAZINE_1",
        "RKSLA3_EXAMPLE_MAGAZINE_2",
        "RKSLA3_EXAMPLE_MAGAZINE_3"
    };
};

Aircraft-native magazines are not automatically added in this mode.

Only the listed magazines are available for newly fitted stores.

Native Only

To permit only stores considered native to the aircraft:

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 1;
    allowNativeMagazines = 1;
 
    allowedMagazines[] = {};
};

Because the whitelist is empty, no additional magazines are added.

Important Behaviour

Magazine restrictions apply to newly fitted stores.

The Pylon Manager does not automatically remove existing weapons merely because they are not present in the mission whitelist.

For example, if an aircraft begins the mission carrying a store which is not permitted by the mission configuration, that store will remain fitted until the loadout is changed.

This prevents mission configuration from unexpectedly altering aircraft loadouts placed by the mission designer.

The whitelist also does not override normal pylon compatibility.

A magazine still needs to be compatible with the selected aircraft pylon before it can be fitted.

Rearm Vehicle Requirement

The Pylon Manager can optionally require the aircraft to be close to a suitable ammunition or servicing source.

Enable this using:

requireRearmVehicle = 1;

Example:

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 0;
 
    requireRearmVehicle = 1;
    rearmDistance = 50;
 
    rearmVehicleClasses[] = {};
};

In this example the aircraft must be within 50 metres of a suitable rearm source before the Pylon Manager can be used.

Automatic Rearm Source Detection

If:

rearmVehicleClasses[] = {};

is empty, the Pylon Manager automatically looks for suitable ammunition support vehicles.

This is normally the simplest configuration and is recommended when no mission-specific servicing vehicle is required.

Explicit Rearm Vehicle Classes

Mission makers may instead provide specific vehicle or object classes.

Example:

class RKSLA3_PylonManager
{
    enabled = 1;
 
    requireRearmVehicle = 1;
    rearmDistance = 40;
 
    rearmVehicleClasses[] =
    {
        "B_Truck_01_ammo_F",
        "B_Truck_01_repair_F"
    };
};

When explicit classes are supplied, they define the permitted support sources.

Example Support Vehicle Classes

Some useful Arma 3 support vehicle classes include:

Side / Type Classname
NATO Ammunition Truck B_Truck_01_ammo_F
CSAT Ammunition Truck O_Truck_03_ammo_F
AAF Ammunition Truck I_Truck_02_ammo_F
NATO Repair Truck B_Truck_01_repair_F
CSAT Repair Truck O_Truck_03_repair_F
Repair Depot Land_RepairDepot_01_tan_F
Vehicle Service Area Land_CarService_F

Multiple classes may be permitted:

rearmVehicleClasses[] =
{
    "B_Truck_01_ammo_F",
    "B_Truck_01_repair_F",
    "Land_RepairDepot_01_tan_F"
};

Rearm Distance

The allowed distance from a servicing source is controlled with:

rearmDistance = 50;

The value is expressed in metres.

For example:

rearmDistance = 25;

requires the aircraft to be within approximately 25 metres of an eligible servicing source.

Full Strict-Whitelist Example

The following example:

  • enables mission restrictions;
  • disables automatic native magazines;
  • permits only the listed stores;
  • requires an ammunition vehicle;
  • requires that vehicle to be within 50 metres.
class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 1;
    allowNativeMagazines = 0;
 
    allowedMagazines[] =
    {
        "RKSLA3_EXAMPLE_MAGAZINE_1",
        "RKSLA3_EXAMPLE_MAGAZINE_2",
        "RKSLA3_EXAMPLE_MAGAZINE_3"
    };
 
    requireRearmVehicle = 1;
    rearmDistance = 50;
 
    rearmVehicleClasses[] =
    {
        "B_Truck_01_ammo_F"
    };
};

Native Plus Whitelist Example

This example allows the aircraft's normal native stores together with a mission-defined selection of additional magazines:

class RKSLA3_PylonManager
{
    enabled = 1;
 
    restrictMagazines = 1;
    allowNativeMagazines = 1;
 
    allowedMagazines[] =
    {
        "RKSLA3_EXAMPLE_MAGAZINE_1",
        "RKSLA3_EXAMPLE_MAGAZINE_2"
    };
 
    requireRearmVehicle = 0;
};

Pylon Manager Access

When a servicing requirement is enabled, the Pylon Manager checks whether a valid support source is within the configured distance.

If no suitable source is nearby, Pylon Manager access is unavailable.

Moving an eligible support vehicle into range allows access.

Moving it outside the permitted range removes access again.

The servicing check is therefore based on the current situation rather than only being evaluated when the mission starts.

Multiplayer Behaviour

Pylon changes use locality-aware application logic.

The system validates the requested loadout before applying it to the vehicle which currently owns the aircraft.

The same mission restrictions are therefore enforced when the Pylon Manager is used in multiplayer.

Mission restriction checks are performed both when presenting the available loadout and when validating the requested change.

This prevents a client from bypassing the mission-defined restrictions simply by submitting a different magazine classname.

Single Player Behaviour

Single-player operation uses the same transaction system as multiplayer.

In SP the player and aircraft normally report:

requesterOwner=0
vehicleOwner=0
MP=false

This is normal.

The Pylon Manager supports repeated Apply operations, including:

  • normal store changes;
  • CVWP bridged stores;
  • immediate consecutive Apply operations;
  • Apply operations where no pylon actually changes.

CVWP Compatibility Bridge

The Pylon Manager includes a generic CVWP compatibility bridge.

This allows compatible CVWP magazines to be offered on suitable aircraft pylons without requiring aircraft-specific compatibility patches for every possible aircraft addon.

Native aircraft compatibility remains available alongside bridged CVWP compatibility.

Mission restrictions operate on top of this compatibility system.

Therefore:

  • compatibility determines whether a store can physically be fitted to a pylon;
  • mission restrictions determine whether the mission maker allows that store to be selected.

Mission Pylon Config Builder

RKSL provides a web-based tool for generating the RKSLA3_PylonManager section automatically.

CVWP Mission Pylon Config Builder

The builder uses the current CVWP pylon catalogue and allows mission makers to:

  • search the CVWP weapon catalogue;
  • filter weapons by category or country;
  • select individual magazine / mounting combinations;
  • choose unrestricted, native-plus-selected, or strict-whitelist behaviour;
  • configure rearm vehicle requirements;
  • configure servicing distance;
  • specify permitted service vehicle classes;
  • generate a ready-to-paste description.ext block.

The generated configuration can be copied directly into the mission's description.ext.

Updating Mission Weapon Lists

The Mission Pylon Config Builder catalogue is generated directly from the CVWP Config Factory.

This means the mission tool does not maintain a separate manually curated weapon database.

As the CVWP weapon library changes, the tool catalogue can be replaced with the latest exported:

cvwp_pylon_catalogue.json

Troubleshooting

Pylon Manager does not appear

Check:

  • the aircraft supports dynamic pylons;
  • the RKSL CVWP Pylon Manager is loaded;
  • mission servicing restrictions are satisfied;
  • the aircraft is close enough to a required support vehicle.

A weapon does not appear

Check:

  • the weapon magazine classname is present in allowedMagazines[] when restrictions are enabled;
  • allowNativeMagazines is configured correctly;
  • the selected pylon is compatible with that magazine;
  • the magazine is not being excluded by a strict whitelist.

Existing weapon remains fitted despite not being permitted

This is expected.

Mission restrictions control newly fitted stores.

They do not automatically strip stores already present on the aircraft.

Pylon Manager disappears when the rearm truck moves away

This is expected when:

requireRearmVehicle = 1;

The aircraft must remain within rearmDistance of an eligible support source to access the Pylon Manager.

A magazine appears on one pylon but not another

This is normally a compatibility issue rather than a mission restriction issue.

Each aircraft pylon has its own hardpoint and weight compatibility rules.

A magazine permitted by the mission is still only shown on pylons where it is considered compatible.

For most missions:

  1. Select the weapons which should be available.
  2. Choose the required restriction policy.
  3. Enable a rearm vehicle requirement if appropriate.
  4. Copy the generated block into description.ext.
  5. Test one aircraft in the mission.
  6. Verify that permitted stores appear and restricted stores do not.
  7. Verify the servicing distance if enabled.

Once verified, the same configuration applies to the mission without requiring individual aircraft scripting.

Configuration Reference

Property Typical Value Description
enabled 1 Enables mission-level Pylon Manager configuration.
restrictMagazines 0 or 1 Enables magazine restrictions.
allowNativeMagazines 0 or 1 Controls whether aircraft-native magazines are automatically retained when restrictions are active.
allowedMagazines[] Array Mission-defined permitted pylon magazine classnames.
requireRearmVehicle 0 or 1 Requires a valid servicing source near the aircraft.
rearmDistance 50 Maximum servicing distance in metres.
rearmVehicleClasses[] Array Explicit permitted servicing vehicle/object classes. Empty array uses automatic support detection.

Current Validation Status

The mission-control system has been tested with:

  • unrestricted Pylon Manager operation;
  • magazine restrictions;
  • strict whitelisting;
  • aircraft-native plus whitelist operation;
  • rearm-source gating;
  • servicing distance changes;
  • automatic disappearance of Pylon Manager access when the support source moves away;
  • CVWP bridged magazine compatibility;
  • repeated single-player Apply operations;
  • no-change Apply operations;
  • Mission Pylon Config Builder generated description.ext configurations.

The current mission configuration API is considered stable.

a3_documentation/cvwp/cvwp_mission_control_tool.1787662727.txt.gz · Last modified: by rock