• Tracker

    Spaces
    Browse
    Statistics
  • /
  • /General
  • /A3G-80
Back
2

[Feature Request] Script command to dynamically toggle RTD / Advanced Flight Model (AFM)

Feature Request
2

State

Open
Issue key
A3G-80
Access
Public
Space
Arma 3
Project
General
Creator
gruman
Created
Sep 15, 2026
Views
31
Issue Type
Feature Request
Severity
Just a suggestion
Description

Summary

Currently, mission makers and modders can query the status of the Advanced Flight Model via difficultyOption "rotorLib" or enforce AFM globally via mission/difficulty settings (forceRotorLib = 1;).

However, there is no script command (e.g., enableRotorLib / setRotorLib) available in the RTD command suite to dynamically toggle the flight model during runtime without forcing the player to manually open the game options menu. We request an engine command to dynamically switch between the Standard Flight Model (SFM) and the Advanced Flight Model (AFM) via script.

Problem & Current Limitation

  • Global Enforcement vs. Dynamic Scenarios: forceRotorLib locks the flight model for the entire mission or server session. This lacks flexibility in complex mission environments where different airframes or specific scenario phases require different flight characteristics.

  • Modded Airframe Incompatibilities: Not all community-created helicopters feature functional, tuned, or stable RotorLib configurations. When a pilot flying with AFM boards an aircraft that only supports the Standard Flight Model (or has a broken AFM configuration), they are currently forced to disconnect, change mission difficulty, or manually toggle the option in the UI.

  • Lack of Workaround Capabilities: Scripted workarounds (such as temporarily falling back to SFM during scripted winch operations, specific sling-loading sequences, or handling airframe-specific AFM edge cases) are currently impossible without breaking immersion.

Proposed Solution

Introduce a dedicated SQF command with local effect to toggle RTD/AFM dynamically.

Syntax Suggestion:

Code-Snippet

// Variant A: Global client switch (local execution)
setRotorLib [enable, (optional) autoTrim];

// Variant B: Object-based override (forces model while player occupies specific vehicle)
vehicle setVehicleRotorLib enabled;

Complementary Getter:

  • While difficultyOption "rotorLib" exists, an airframe-aware or client-state getter (e.g., isRotorLibEnabled [unit/vehicle]) would provide cleaner state tracking for scripted frameworks.

Concrete Use Cases

  1. Airframe-Specific Fallback: Missions utilizing a mixed fleet (high-fidelity AFM helicopters alongside legacy or light SFM-only helicopters) can automatically switch the pilot's flight model upon GetIn/GetOut event handlers.

  2. Dynamic Training & Qualification Systems: Flight schools and training missions can seamlessly switch trainee pilots between flight models on the fly during scripted exercises without restarting the mission.

  3. Handling Scripted Edge Cases: Allowing mission scripts to temporarily drop to SFM during complex interactions (e.g., specific autopilot loops, sling-load physics workarounds, or custom fast-roping systems) and restore AFM once the sequence completes.

Additional Notes

This command would only need local effect (EL / Engine Local), as flight physics calculations for player-piloted helicopters are already handled client-side. Adding this would significantly reduce friction for helicopter-centric communities, mil-sim units, and mod developers working extensively with AFM.

Reactions

Activity

    4 days ago
  • gruman
    created issue4 days ago

You are not signed in. Please sign in to see more details and to reply.

State

Open
Issue key
A3G-80
Access
Public
Space
Arma 3
Project
General
Creator
gruman
Created
Sep 15, 2026
Views
31