This is an old revision of the document!
This guide walks through creating an Arma 3 Advanced Flight Model RotorLib XML profile for a custom helicopter. It is written to match the RotorLib XML Profile Builder workflow and assumes the final XML will be tested in Arma 3 with Advanced Flight Model enabled. The first XML is not a finished flight model. Treat it as a structured, documented starting point. Every estimated value should be recorded, tested, and replaced when better source data becomes available.
Before entering values, collect these files and references:
RotorLibHelicopterProperties / RTDconfig reference.Use the closest proven RotorLib XML as the baseline. Match by:
Keep the selected baseline recorded in the tool. Some sections, especially drive trains and control-system conventions, are easier to preserve from a working profile than to recreate from documentation.
RotorLib coordinates use:
| Axis | Direction |
|---|---|
X | Right |
Y | Forward |
Z | Up |
All position values must be converted into this coordinate system. Do not assume Arma model-space labels or visual axes match the value names without checking the model and a known working XML. Useful rules:
X moves a point to the aircraft right side.Y moves a point toward the nose.Z moves a point upward.If the exact datum is unclear, compare the baseline XML values against visible geometry and memory points. Preserve the same convention when adapting it.
Enter:
| Value | Where To Find It | Notes |
|---|---|---|
| Profile name | XML file name or aircraft class name | Use a readable name such as RTD_MyHelicopter. |
| Vehicle class | CfgVehicles target class | Must be the exact class that will reference the XML. |
| XML path in addon | Planned packed PBO path | Use addon-relative paths only. Do not use Q:\, C:\, or other local absolute paths. |
| Closest baseline XML | Bundled BIS XML or another working profile | Record this for later comparison and tuning notes. |
Example Arma config pattern:
class RotorLibHelicopterProperties { RTDconfig = "\my_addon\air\RTD_MyHelicopter.xml"; };
Verify the exact placement and property names against a working vanilla helicopter config before packing.
Enter mass in kilograms. Best sources, in order:
Start with a realistic operating/test mass, not necessarily the absolute maximum load. Later, test loaded and unloaded behavior separately.
Enter approximate dimensions in meters:
| Value | How To Measure |
|---|---|
| Length | Nose to tail extent, excluding main rotor unless using it deliberately for rough inertia. |
| Width | Left-right body/gear/skid span. For ground stability, gear/skid span is often more useful than fuselage width. |
| Height | Bottom contact point to upper fuselage/mast area. Use a consistent rough body height for inertia estimates. |
These dimensions are used for first-pass inertia and generated contact positions. They are not a substitute for measured contact or rotor stations.