systems.cfg

The systems.cfg file is an optional aircraft file for defining different aircraft systems. Below you can find information on the different sections used in the systems.cfg file as well as what parameters and values are expected within them.

 

 

[VERSION]

The [VERSION] section provides version information for the configuration file. In Microsoft Flight Simulator, major versions should always be at least equal to 1. Note that this section information is mandatory and should always be included.

 

Parameter Description Type Required
major Major CFG file version number, values must be greater than 0. Integer Yes
minor Minor CFG file version number, values must be greater than 0. Integer Yes

 

 

[BRAKES]

This section controls the aircraft's brake systems. Available parameters are:

 

Parameter Description Type Required
parking_brake

The type of parking brake available.

Default value is 1.

Integer:

  1. 0 = none
  2. 1 = parking brake
  3. 2 = ground restraint brake
No
differential_braking_scale

Differential braking is a function of using both brakes and the rudder pedal input. The amount of difference between the left and right brake is scaled by this value. Setting this to 0.0 means no differential braking is desired, while a setting of 1.0 is the normal setting for when differential braking is desired - which is particularly useful for tailwheel airplanes.

Default value is 0.

Float
toe_brakes_scale

Sets the scaling of the toe braking effectiveness. Note that a setting of 0.0 scales the brakes to no effectiveness.

Default value is 1.

Float
parking_brake_linked_to_toe_brakes

This parameter governs whether the parking brake will release upon application of the toe brakes.

Default value is 1 (TRUE), but a setting of 0 (FALSE) will prevent this behavior.

Bool
hydraulic_system_scalar

On brakes dependent on the hydraulic system, this is the ratio of hydraulic system to maximum brake hydraulic pressure.

Default value is 0.

Float
show_brake_message

Whether to show the braking message (TRUE, 1) or not (FALSE, 0) in the UI.

Default value is 1 (TRUE).

Bool
auto_brakes

The number of autobrakes available (0 means no autobrakes).

Default value is 0.

Integer
autobrakes_disabled_on_takeoff

Whether the autobrake is disabled (TRUE, 1) or not (FALSE, 0) for takeoff.

Default value is 0 (FALSE).

Bool
autobrakes_requires_antiskid

Whether the autobrake systems require anti-skid (TRUE, 1) or not (FALSE, 0).

Default value is 0 (FALSE).

Bool
autobrakes_disabled_on_braking

Whether the autobrake is disabled (TRUE, 1) or not (FALSE, 0) when manually braking.

Default value is 0 (FALSE).

Bool
autobrakes_disabled_on_thrust

Whether the autobrake is disabled (TRUE, 1) or not (FALSE, 0) on reverse thrust.

Default value is 0 (FALSE).

Bool
autobrakes_disabled_on_stop

Whether the autobrake is disabled (TRUE, 1) or not (FALSE, 0) when the plane stops after a landing.

Default value is 0 (FALSE).

Bool
rto_disabled_on_stop

Whether the autobrake is automatically disabled (TRUE, 1) or not (FALSE, 0) when the aircraft stops after an RTO.

Default value is 0 (FALSE).

Bool
rto_disabled_on_takeoff

Whether the autobrake is disabled (TRUE, 1) or not (FALSE, 0) for an RTO.

Default value is 0 (FALSE).

Bool
no_toe_brake_input_smoothing

Whether to disable (TRUE, 1) or not (FALSE, 0) input soothing for toe brakes.

Default value is 0 (FALSE).

Bool

 

 

[GEAR_WARNING_SYSTEM]

This section defines the functionality of the gear warning system for the aircraft. This is generally related to the throttle lever position and the flap deflection. Available parameters are:

 

Parameter Description Type Required
gear_warning_available Sets the type of gear warning system available on the aircraft.

Integer:

  1. 0 = None
  2. 1 = Normal
  3. 2 = Amphibian
  4. (audible alert for water vs. land setting)
Yes
pct_throttle_limit

The throttle limit, below which the gear warning will activate if the gear is not down and locked while the flaps are deflected to at least the setting for flap_limit_idle below. This flap limit can be 0 so that the warning effectively is a function of the throttle. A value between: 0 (idle) and 1.0 (Max throttle).

Default value is 0.

Float No
flap_limit_idle

This limit is the flap deflection above which the warning will activate if the gear is not down and locked while the throttle is below the limit specified by pct_throttle_limit. Setting this limit to a value greater than 0, the pilot can reduce the throttle to idle without activating the warning (this is often utilized in jets to decelerate/descend the aircraft).

Default value is 0.

Float No
flap_limit_power

The flap limit, above which the warning will activate (regardless of throttle position).

Default value is 0.

Float No

 

 

[LIGHTS]

This section controls the lights on the aircraft. The given index value can then be passed to the corresponding light simvar to apply a different behavior to different lights.

 

Available parameters are:

 

Parameter Description Type Required
lightdef.N
Each light has it's own definition as a hash map (explained below) where each item in the table has it's own definition. Lights are numbered from 0.

Hash Map

(see Data Types for more information)

No

 

The hash map that each light takes is comprised of the following key:value pairs, separated by the # symbol:

 

Key Value Description Required
Type

Integer:

  1. 0 = None
  2. 1 = Beacon
  3. 2 = Strobe
  4. 3 = Navigation or Position
  5. 4 = Panel
  6. 5 = Landing
  7. 6 = Taxi
  8. 7 = Recognition
  9. 8 = Wing
  10. 9 = Logo
  11. 10 = Cabin
  12. 11 = Pedestal
  13. 12 = Glareshield
  14. 13 = Ambient
Tells the sim what type of light is being defined for the aircraft. Note that if the light type is "None" then the light is not connected to any circuit type, and you have to write to their LIGHT_POTENTIOMETER simvar to control them. Also note that the "Ambient" light type is only for using the cockpit. Yes
Index Integer This is the index of the electrical circuit.N that controls the light. Note that the value is the type index for the circuit, not the circuit index itself. Note that if you set an index of 0 - or omit this key from the map - then the light will be part of the "general" circuit, meaning that a change to any light circuit will affect all lights with index 0 (or no defined index). No
LocalPosition

1D Table of 3 values: z, x, y

The local position offset relative to the Datum Reference Point. Values are in ft. Yes
LocalRotation 1D Table of 3 values: x, y, z The local angle of rotation for the light. Values are in degrees from -360° to 360°. Yes
EffectFile FX file ID The FX file that describes the light. These files have *.fx extensions and should be placed in the root effects folder. Yes
Node Node name The aircraft node to which you attach the light. No
PotentiometerIndex Integer This drives the intensity of the light indexed when using the SimVar LIGHT_POTENTIOMETER. Yes
EmMesh File ID The name of the emissive mesh to use. Note that the material used for the mesh must be named LIGHTS and use the Standard material type. No

 

Below you can see an example of a light definition:

lightdef.18 = Type:4#Index:0#LocalPosition:-1.2,0.65,14.0#LocalRotation:0,0,0#EffectFile:fx_cockpit_small_yellow,#PotentiometerIndex:2

 

Legacy Lights

When working with legacy aircraft from FSX (for example) you will find that lights were defined slightly differently. Here we explain the format used for those lights, but for new aircraft you should be using the lightdef.N parameter.

 

Legacy lights are defined using the following parameter:

 

Parameter Description Type Required
light.N
This is a light definition comprised of a 1D table of values. Lights are numbered from 0.

1D Table of Values

(see Data Types for more information)

No

 

The table for these lights takes 8 entries, listed below:

 

Position Description Type Required
0 This defines which circuit, or switch, the light is connected to. Multiple lights may be connected to a single switch.

Integer:

1 = Beacon
2 = Strobe
3 = Navigation or Position
4 = Panel
5 = Landing
6 = Taxi
7 = Recognition
8 = Wing
9 = Logo

10 = Cabin

11 = Pedestal

12 = Glareshield

13 = Ambient

Yes
1 The z position relative to the Datum Reference Point, in ft. Float

Yes

(unless a NODE is specified, see below)

2 The x position relative to the Datum Reference Point, in ft. Float
3 The y position relative to the Datum Reference Point, in ft. Float
4 The X axis rotation, in degrees. Float No
5 The Y axis rotation, in degrees. Float
6 The Z axis rotation, in degrees. Float
7 The FX file name that is used by this light (for example, fx_navred). These files have *.fx extensions and should be placed in the root effects folder. String Yes

 

When writing out a light definition, you may specify a node on the aircraft model instead of the (z/x/y) position, and omit or include the rotation parameters depending on requirements. Below are examples of various combinations of data you can use to define a light:

; light.n = CircuitType, NODE_HELPER_NAME, fxfile
light.0 = 3, light_navigation_node, fx_navred

; light.n = CircuitType, ZOffset, XOffset, YOffset, XRotationInDegrees, YRotationInDegrees, ZRotationInDegrees, fxfile
light.0 = 3, -2.6, -17.4, 3.6, 90.0, 0.0, 0.0, fx_navred

; light.n = CircuitType, NODE_HELPER_NAME, XRotationInDegrees, YRotationInDegrees, ZRotationInDegrees, fxfile
light.0 = 3, light_navigation_node, 90.0, 0.0, 0.0, fx_navred

 

 

[ELECTRICAL]

This section controls everything related to the aircraft electrical systems. Given the complexity involved in setting up aircraft systems, the information for this section can be found on its own dedicated page here:

 

 

[HYDRAULIC_SYSTEM]

This section controls the hydraulic pressure systems. Available parameters are:

 

Parameter Description Type Required
normal_pressure

The normal hydraulic pressure, in psi.

Default value is 0.

Float No
electric_pumps

The number of electric pumps for the hydraulics.

Default value is 0.

Integer
engine_map

This is a table of whether an engine has a hydraulic unit or not. For example:

1, 0, 0, 1, 0, 0, 0 ,0 ,0, 0, 0, 0, 0, 0, 0, 0, 0

This means there are pumps on engines 1 and 4, but not on any other.

Default value is 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.

1D Table of bools

(see Data Types for more information)

ailerons_require_hydraulics

Sets whether the ailerons require hydraulics (TRUE, 1) or not (FALSE, 0).

Default is 0 (FALSE).

Bool
rudder_require_hydraulics

Sets whether the rudder requires hydraulics (TRUE, 1) or not (FALSE, 0).

Default is 0 (FALSE).

Bool
spoilers_require_hydraulics

Sets whether the spoilers require hydraulics (TRUE, 1) or not (FALSE, 0).

Default is 0 (FALSE).

Bool
elevator_require_hydraulics

Sets whether the elevator requires hydraulics (TRUE, 1) or not (FALSE, 0).

Default is 0 (FALSE).

Bool

 

 

[PNEUMATIC_SYSTEM]

This section controls the pneumatic system of the aircraft. Available parameters are:

 

Parameter Description Type Required
max_pressure

The maximum permitted pressure for the pneumatic system, in psi.

Default value is 0.

Float No
apu_max_pressure

The maximum pressure from the bleed permitted for the APU, in psi.

Default value is 18.

Float No
bleed_air_scalar

Pneumatic pressure is a function of bleed air from the turbine engine. This scalar is used to multiply this bleed air pressure.

Default value is 1.

Float No

 

 

[VACUUM_SYSTEM]

This section controls the aircraft vacuum system. Available parameters are:

 

Parameter Description Type Required
max_pressure

The maximum suction pressure, in inHg.

Default value is 0.

Float No
vacuum_type

The type of vacuum system installed on the aircraft.

Default value is 1.

Integer:

1 = engine pump
2 = pneumatic
3 = venturi

No
electric_backup_pressure

The electrical backup pressure value, in inHg.

Default value is 0.

Float No
engine_map

This is a table of whether an engine has a vacuum pump unit or not. For example:

1, 0, 0, 1, 0, 0, 0 ,0 ,0, 0, 0, 0, 0, 0, 0, 0, 0

This means there are pumps on engines 1 and 4, but not on any other.

Default value is 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.

1D Table of bools

(see Data Types for more information)

No
suction_gain

Speed at which suction grows.

Default value is 0.85.

Float No
suction_min

Minimum suction value possible when system is operating.

Default value is 4.05.

Float No

 

 

[PITOT_STATIC]

A pitot-static system is a system of pressure-sensitive instruments that is most often used in aviation to determine an aircraft's airspeed, Mach number, altitude, and altitude trend. This section permits you to set certain attributes for using this system. Available parameters are:

 

Parameter Description Type Required
vertical_speed_time_constant This is a speed-time constant, used for the vertical speed generation in gauges. Values in 1/seconds. Increasing will cause a more instantaneous reaction in the visual speed indicator Float Yes
pitot_heat Pitot heat scalar value used to weight temperature increase for pitot system. Float Yes

 

 

[STALL_WARNING]

This section controls the stall warning system. Available parameters are:

 

Parameter Description Type Required
type

The warning system type.

Default value is 0.

Integer:

0 = normal
1 = electric

No
stick_shaker Whether force feedback stick shaking is enabled (TRUE, 1) or not (FALSE, 0). Bool No

 

 

[DEICE_SYSTEM]

This section controls the de-ice system. Available parameter is:

 

Parameter Description Type Required
structural_deice_type

The deice type on the aircraft.

Default value is 0.

Integer:

  1. 0 = none
  2. 1 = bleed air heated leading edge
  3. 2 = bleed air boots
  4. 3 = engine vacuum pump boots
No
windshield_deice_rate

Sets the rate at which the windshield will get deiced when the deice system is enabled. Value is in percent/second.

Default value is 0.00223 %/sec.

Float No
structural_deice_rate

Sets the rate at which the a¡rcraft structure will get deiced when the deice system is enabled. Value is in percent/second.

Default value is 0.00128 %/sec.

Float No

 

 

[RADIOS]

This section controls the aircraft radios. Note all systems listed here start at N = 1, and the available parameters are:

 

Parameter Description Type Required
CollisionAvoidance

This parameter can be used to indicate the presence of TCAS and / or FLARM systems. If supplying this parameter you give two values separated with a comma (val1, val2) where the first corresponds to the TCAS and the second to the FLARM.

 

For the TCAS you can give one of the following values:

  1. 0 - No TCAS capability (no transponder)
  2. 1 - Only transponder responses
  3. 2 - Standard TCAS
  4. 3 - External TCAS

 

For the FLARM it can have the following values:

  1. 0 - No Flarm
  2. 1 - Flarm installed

1D Table of Integers

(see Data Types for more information)

No
TransponderDefault

Default Frequency of the aircraft (will be overridden by FLT and ATC values).

Default value is 1234.

Float No
Flarm The distance below which the FLARM system will detect threat objects, in meters.

Float

No
Audio.N Set whether audio system N is available (TRUE, 1) or not (FALSE; 0). At least 1 audio system needs to be defined. Bool Yes
Com.N Set whether the com receiver N is available (TRUE, 1) or not (FALSE; 0) and whether it has a standby (TRUE, 1) or not (FALSE, 0). At least 1 com receiver needs to be defined, and you can have a maximum of 2.

1D Table of Bools

(see Data Types for more information)

Yes
Nav.N Set whether the navigation receiver N is available (TRUE, 1) or not (FALSE; 0), whether it has a standby (TRUE, 1) or not (FALSE, 0), and whether it has glide-slope (TRUE, 1) or not (FALSE, 0). At least 1 navigation receiver needs to be defined, and you can have a maximum of 4.

1D Table of Bools

(see Data Types for more information)

Yes
Adf.N Set whether the ADF system N is available (TRUE, 1) or not (FALSE; 0) and whether it has a standby (TRUE, 1) or not (FALSE, 0). At least 1 ADF system needs to be defined, and you can have a maximum of 2.

1D Table of Bools

(see Data Types for more information)

Yes
Transponder.N Set whether the transponder N is available (TRUE, 1) or not (FALSE; 0). At least 1 transponder needs to be defined. Bool Yes
Marker.N Set whether the marker system N is available (TRUE, 1) or not (FALSE; 0). At least 1 marker system needs to be defined. Bool Yes
Tacan.N

Set whether Tacan N is available, where N can be 1 or 2 (only a maximum of 2 Tacan systems can be on any aircraft).

When you add this parameter it requires two values where the first sets whether the active frequency is available (1, TRUE) or not (0, FALSE) and the second sets whether the standby frequency is available (1, TRUE) or not (0, FALSE). For example:

Tacan.1 = 1, 0

The line above adds the first Tacan receiver with an active frequency and no standby frequency.

1D Table of Bools

(see Data Types for more information)

No

 

 

[AUTOPILOT]

This section controls the aircraft autopilot systems.

IMPORTANT! This section is not used currently for helicopters.

Available parameters are:

 

Parameter Description Type Required
autopilot_available Setting this to 1 (TRUE) makes the autopilot system available to the aircraft, otherwise set it to 0 (FALSE) to disable autopilot. Bool Yes
flight_director_available Setting this to 1 (TRUE) makes the flight director available to the aircraft, otherwise setting it to 0 (FALSE) will disable the flight director. Bool Yes
min_feet_for_ap Set the height (in ft) below which the autopilot is automatically disabled. Default is -1000 (essentially disabled). Float No
min_flight_time_for_ap Set the time (in seconds) after takeoff until the autopilot can be enabled. Default is 0 (essentially disabled). Float No
default_vertical_speed The default vertical speed, in ft per second, that the autopilot will command when selecting a large altitude change. Float No
autothrottle_available When this is set to 1 (TRUE) it makes available an autothrottle system on the aircraft. Set to 0 (FALSE) otherwise. Bool No
autothrottle_arming_required When this is set to 1 (TRUE) the autothrottle is required to be armed prior to it being engaged. Setting it to 0 (FALSE) allows the autothrottle to be engaged directly. Bool No
autothrottle_does_not_move_lever When this is set to 1 (TRUE) the autothrottle will not move the throttle lever. Set it to 0 (FALSE) if this is not the behavior you require. Bool No
autothrottle_managed_by_plane When this is set to 1 (TRUE) the autothrottle will be managed automatically by the aircraft. Set it to 0 (FALSE) if this is not the behavior you require. Bool No
autothrottle_takeoff_ga If this is set to 1 (TRUE) then takeoff / go-around operations with the autothrottle will be enabled. 0 (FALSE) disables this behavior. Float No
autothrottle_max_rpm This sets the highest engine speed that the autothrottle will attempt to maintain as a percentage of the maximum engine speed. Float No
pitch_takeoff_ga The default pitch that the Takeoff/Go-Around mode references, in degrees. Float No
autoland_available

Setting this to 1 (TRUE) makes the autopilot autoland system available to the aircraft, otherwise set it to 0 (FALSE) to disable autoland.

IMPORTANT! This is a legacy parameter that is no longer supported by the simulation and will do nothing if edited/included.

Bool No
altimeter_indicator Indicates which altimeter indicator system on the aircraft is being referenced by the autopilot. Integer No
attitude_indicator Indicates which attitude indicator system on the aircraft is being referenced by the autopilot Integer No
direction_indicator Indicates which direction indicator system on the aircraft is being referenced by the autopilot, where 0 is the first (and default). Integer No
use_no_default_pitch Setting this to 1 (TRUE) tells the autopilot not to use the default pitch option. Set to 0 (FALSE) to use it. Bool No
default_pitch_mode This determines the default pitch mode when the autopilot is enabled.

Integer:

  1. 0 = None
  2. 1 = Pitch
  3. 2 = Altitude
  4. 3 = Vertical Speed
No
pitch_use_trim When set to 1 (TRUE) the autopilot will use the trim to hold pitch, and when set to 0 (FALSE) it will use the elevator directly. Bool No
max_pitch The maximum pitch angle, in degrees, that the autopilot will command either up or down.  Float No
max_pitch_acceleration The maximum angular pitch acceleration, in degrees per second squared, that the autopilot will command up or down. Float No
max_pitch_velocity_lo_alt The maximum angular pitch velocity, in degrees per second, which the autopilot will command when at an altitude below that specified by the parameter max_pitch_velocity_lo_alt_breakpoint. Float No
max_pitch_velocity_hi_alt The maximum angular pitch velocity, in degrees per second, which the autopilot will command when at an altitude above the altitude specified by the parameter max_pitch_velocity_hi_alt_breakpoint. The maximum velocity is interpolated between the hi and lo altitude velocities when between the hi and lo altitude breakpoints. Float No
max_pitch_velocity_lo_alt_breakpoint The altitude below which the autopilot maximum pitch velocity is limited by the parameter max_pitch_velocity_lo_alt. Float No
max_pitch_velocity_hi_alt_breakpoint The altitude above which the autopilot maximum pitch velocity is limited by the parameter max_pitch_velocity_hi_alt. The maximum velocity is interpolated between the hi and lo altitude velocities when between the hi and lo altitude breakpoints. Float No
max_pitch_velocity_lo_ang

This defines the fly-by-wire load factor hold system's max pitch velocity at low angle differences. This parameter - along with max_pitch_velocity_hi_ang - gives more control over the fly-by-wire pitch rate and therefore the maximum load factor achievable by the aircraft. 

Default value is 1.

Float No
max_pitch_velocity_hi_ang

This defines the fly-by-wire load factor hold system's max pitch velocity at high angle differences. This parameter - along with max_pitch_velocity_lo_ang - gives more control over the fly-by-wire pitch rate and therefore the maximum load factor achievable by the aircraft. 

Default value is 5.

Float No
use_no_default_bank Setting this to 1 (TRUE) tells the autopilot not to use the default bank option. Set to 0 (FALSE) to use it.

Bool

No
default_bank_mode This determines the default bank mode when the autopilot is enabled.

Enum:

  1. 0 = None
  2. 1 = Wing level
  3. 2 = Heading
  4. 3 = Roll Hold
No
max_bank_acceleration

The maximum angular bank acceleration, in degrees per second squared, that the autopilot will command left or right.

Default value is 1.8.

Float No
max_bank_velocity

The maximum angular bank velocity, in degrees per second, which the autopilot will command left or right. This parameter takes a series of values, separated by commas, where each value corresponds to a specific bank switch position (see AP_MAX_BANK_SET). Example:

max_bank_velocity = 225, 10

Note that the number of entries given for this parameter should correspond with the number of values given for max_bank.

Default value is 3, and you can have a maximum of 6 values.

1D Table of Floats

(see Data Types for more information)

No
max_bank The maximum bank angle, in degrees, that the autopilot will command either left or right. 

This parameter takes a series of values, separated by commas, where each value corresponds to a specific bank switch position (see AP_MAX_BANK_SET). Example:

max_bank = 210, 30

Note that the number of entries given for this parameter should correspond with the number of values given for max_bank_velocity.

Default value is 25, and you can have a maximum of 6 values.

1D Table of Floats

(see Data Types for more information)

No
auto_max_bank

If 1 (TRUE) it adds an extra max bank selection for the autopilot that automatically changes depending on the airspeed. For more information, please see AP_MAX_BANK_SET.

Set to 0 (FALSE) to disable the option.

Bool No
auto_max_bank_table

Sets the correspondence between an airspeed (in Knots) and a max bank value (in degrees), when auto_max_bank is enabled. For example:

auto_max_bank_table=0.000000:15.000000, 249.900000:15.000000, 250.000000:25.000000

2D Table of Floats

(see Data Types for more information)

No
auto_max_bank_velocity_table

Sets the correspondence between the angular bank velocity (in Knots) and a max bank value (in degrees / second). For example:

auto_max_bank_velocity_table=0:30, 200:30, 550:10

2D Table of Floats

(see Data Types for more information)

No
auto_max_bank_min_alt Sets the altitude (in ft) above ground level below which the max bank angle is limited (see auto_max_bank_min_alt_angle) in feet. Float No
auto_max_bank_min_alt_angle Sets the max bank angle (in degrees) when the plane is in auto max bank angle mode below the minimum altitude set by auto_max_bank_min_alt. Float No
max_throttle_rate This value sets the maximum rate at which the autothrottle will move the throttle position. Float No
pitch_pid_reset_mode

This parameter can be used to set the way that the pitch PID calculations will be updated. It can have the following values:

  • 0 - The PID will be "dirty", ie: it maintains the accumulated integral. The behavior of the autopilot will depend on what was happening when the autopilot was switched off previously. The autopilot will jump to the last pitch input and will start adjusting from there. This could mean there will be extremely exaggerated corrections.
  • 1 - The PID will be reset to 0The autopilot will always go back to a 0 (neutral) input and start adjusting from there. If the current input is strong, a noticeable correction will be made. If not, the correction may not be noticeable.
  • 2 - The PID will be reset to the current plane state. The autopilot will start adjusting from the current input position. There should be no correction felt and the transition to autopilot control should be smooth in all cases. This is the recommended mode.

NOTE: A PID reset is triggered if the PID controller is executed in a frame and was not executed for the previous 10 frames. Usually this happens when an autopilot mode using the PID is switched ON.

Default value is 0. 

Integer:

  1. 0 - Dirty
  2. 1 - Reset
  3. 2 - Current
    (recommended)
No
pitch_pid_max_I_accumulation

This sets the maximum accumulation permitted for the integral of the pitch PID.

Default value is 1.

Float No
pitch_proportional_control Pitch proportional controller constant. Float No
pitch_integrator_control Pitch integral controller constant. Float No
pitch_derivative_control Pitch derivative controller constant. Float No
pitch_integrator_boundary The boundary, or maximum signal error, in degrees in which the pitch integrator function is active. Float No
pitch_derivative_boundary The boundary, or maximum signal error, in degrees in which the pitch derivative function is active. Float No
roll_pid_reset_mode

This parameter can be used to set the way that the roll PID calculations will be updated. It can have the following values:

  • 0 - The PID will be "dirty", ie: it maintains the accumulated integral. The behavior of the autopilot will depend on what was happening when the autopilot was switched off previously. The autopilot will jump to the last pitch input and will start adjusting from there. This could mean there will be extremely exaggerated corrections.
  • 1 - The PID will be reset to 0The autopilot will always go back to a 0 (neutral) input and start adjusting from there. If the current input is strong, a noticeable correction will be made. If not, the correction may not be noticeable.
  • 2 - The PID will be reset to the current plane state. The autopilot will start adjusting from the current input position. There should be no correction felt and the transition to autopilot control should be smooth in all cases. This is the recommended mode.

NOTE: A PID reset is triggered if the PID controller is executed in a frame and was not executed for the previous 10 frames. Usually this happens when an autopilot mode using the PID is switched ON.

Default value is 0. 

Integer:

  1. 0 - Dirty
  2. 1 - Reset
  3. 2 - Current
    (recommended)
No
roll_pid_max_I_accumulation

This sets the maximum accumulation permitted for the integral of the roll PID.

Default value is 1.

Float No
roll_proportional_control Roll proportional controller constant. Float No
roll_integrator_control Roll integral controller constant. Float No
roll_derivative_control Roll derivative controller constant. Float No
roll_integrator_boundary The boundary, or maximum signal error, in degrees in which the roll integrator function is active. Float No
roll_derivative_boundary The boundary, or maximum signal error, in degrees in which the roll derivative function is active. Float No
heading_pid_reset_mode

This parameter can be used to set the way that the heading PID calculations will be updated. It can have the following values:

  • 0 - The PID will be "dirty", ie: it maintains the accumulated integral. The behavior of the autopilot will depend on what was happening when the autopilot was switched off previously. The autopilot will jump to the last pitch input and will start adjusting from there. This could mean there will be extremely exaggerated corrections.
  • 1 - The PID will be reset to 0The autopilot will always go back to a 0 (neutral) input and start adjusting from there. If the current input is strong, a noticeable correction will be made. If not, the correction may not be noticeable.
  • 2 - The PID will be reset to the current plane state. The autopilot will start adjusting from the current input position. There should be no correction felt and the transition to autopilot control should be smooth in all cases. This is the recommended mode.

NOTE: A PID reset is triggered if the PID controller is executed in a frame and was not executed for the previous 10 frames. Usually this happens when an autopilot mode using the PID is switched ON.

Default value is 0. 

Integer:

  1. 0 - Dirty
  2. 1 - Reset
  3. 2 - Current
    (recommended)
No
heading_pid_max_I_accumulation

This sets the maximum accumulation permitted for the integral of the heading PID.

Default value is 0.05.

Float No
hdg_proportional_control Heading proportional controller constant. Float No
hdg_integrator_control Heading integral controller constant. Float No
hdg_derivative_control Heading derivative controller constant. Float No
hdg_integrator_boundary The boundary, or maximum signal error, in degrees in which the heading integrator function is active. Float No
hdg_derivative_boundary The boundary, or maximum signal error, in degrees in which the heading derivative function is active. Float No
vs_proportional_control Vertical speed proportional controller constant. Float No
vs_integrator_control Vertical speed integral controller constant. Float No
vs_derivative_control Vertical speed derivative controller constant. Float No
vs_integrator_boundary The boundary, or maximum signal error, in degrees in which the vertical speed integrator function is active. Float No
vs_derivative_boundary The boundary, or maximum signal error, in degrees in which the vertical speed derivative function is active. Float No
nav_proportional_control_ex1 Proportional controller constant in lateral navigation modes. Float No
nav_integrator_control_ex1 Integral controller constant in lateral navigation modes. Float No
nav_derivative_control_ex1 Derivative controller constant in lateral navigation modes. Float No
nav_integrator_boundary_ex1 The boundary, or maximum signal error, in degrees in which the integrator function is active. Float No
nav_derivative_boundary_ex1 The boundary, or maximum signal error, in degrees in which the derivative function is active. Float No
nav_yaw_proportional_control Proportional controller constant in yaw navigation modes. Float No
nav_yaw_integrator_control Integral controller constant in yaw navigation modes. Float No
nav_yaw_derivative_control Derivative controller constant in yawnavigation modes. Float No
nav_yaw_integrator_boundary The boundary, or maximum signal error, in degrees in which the yaw integrator function is active. Float No
nav_yaw_derivative_boundary The boundary, or maximum signal error, in degrees in which the yaw derivative function is active. Float No
gs_proportional_control Proportional controller constant in glideslope mode. Float No
gs_integrator_control Integral controller constant in glideslope mode. Float No
gs_derivative_control Derivative controller constant in glideslope mode. Float No
gs_integrator_boundary The boundary, or maximum signal error, in degrees in which the glideslope integrator function is active. Float No
gs_derivative_boundary The boundary, or maximum signal error, in degrees in which the derivative function is active. Float No
yaw_damper_gain The proportional gain on the yaw dampers yaw rate error. Float No
head_hold_pid

The full heading hold PID definition for the propeller, as a table. Follows the format of:

P, I1, I2, D, I1-boundary, 12-Boundary, D-boundary

1D Table of Floats

(see Data Types for more information)

No
airspeed_hold_pid

The full airspeed hold PID definition for the propeller, as a table. Follows the format of:

P, I1, I2, D, I1-boundary, 12-Boundary, D-boundary

1D Table of Floats

(see Data Types for more information)

No
min_altitude_ref

Sets the minimum altitude (in ft) that can be set in the Autopilot.

Defaults to -99900.

Float No
max_altitude_ref

Sets the maximum altitude (in ft) that can be set in the Autopilot.

Defaults to 99900.

Float No
min_vertical_speed_ref

Sets the minimum vertical speed (in ft per minute) that can be set in the Autopilot.

Defaults to -9900.

Float No
max_vertical_speed_ref

Sets the maximum vertical speed (in ft per minute) that can be set in the Autopilot.

Defaults to 9900.

Float No
min_IAS_ref

Sets the minimum IAS reference (in kias) that can be set in the Autopilot.

Default is 0.

Float No
max_IAS_ref

Sets the maximum IAS reference (in kias) that can be set in the Autopilot.

Default is 990.

Float No
min_Mach_ref

Sets the minimum Mach that can be set in the Autopilot.

Defaults to 0.

Float No
max_Mach_ref

Sets the maximum Mach that can be set in the Autopilot.

Defaults to 3.

Float No
alt_mode_slot_index

Set the default alt mode slot index (from 0 to 3). This is the index for the SimVar AUTOPILOT ALTITUDE LOCK VAR which the altitude hold mode will track when captured. You can change this using the ALTITUDE_SLOT_INDEX_SET event ID or retrieve it using the AUTOPILOT ALTITUDE SLOT INDEX SimVar.

When this parameter is set to 1, 2 or 3, the altitude capture will watch the altitude set at that index, unless overridden by changing the currently observed slot using the key event ALTITUDE_SLOT_INDEX_SET. If the currently observed slot has been changed when altitude is captured, the set altitude in the currently observed slot will be copied to the alt_mode_slot_index slot and the currently observed slot will also be changed to that slot.

When this config parameter is set to 0, the altitude capture will always use whatever the currently observed slot is set to and will not change slots or write to any slots on capture.

Integer No
flc_proportional_control

The FLC proportional control mode value.

Default is 20.0.

Float No
flc_integrator_control

The FLC integrator control mode value.

Default is 1.0.

Float No
flc_derivative_control

The FLC derivative control mode value.

Default is 50.0.

Float No
flc_integrator_boundary

The FLC integrator control boundary.

Default is 100.0.

Float No
flc_derivative_boundary

The FLC derivative control boundary.

Default is 1000.0.

Float No
flc_min_pitch_low_alt Sets the minimum AP pitch (in degrees) when the plane is in FLC mode and below flc_min_low_alt_limit. Float No
flc_min_low_alt_limit

Sets the maximum height (in ft) below which the pitch in FLC mode is limited. Disabled if <=0.

Default is 0.

Float No
min_feet_for_athr

Set the height (in ft) below which the auto-throttle is automatically disabled.

Disabled by default.

Float No
altitude_english_slow_increment Sets the slow increments (in ft) of the autopilot's altitude when in english units. Float No
altitude_english_fast_increment Sets the fast increments (in ft) of the autopilot's altitude when in english units. Float No
altitude_english_fastest_increment Sets the fastest increments (in ft) of the autopilot's altitude when in english units. Float No
altitude_metric_slow_increment Sets the slow increments (in meters) of the autopilot's altitude when in metric units. Float No
altitude_metric_fast_increment Sets the fast increments (in meters) of the autopilot's altitude when in metric units. Float No
altitude_metric_fastest_increment Sets the fastest increments (in meters) of the autopilot's altitude when in metric units. Float No
metric_VS_increment Sets the increments of the autopilot's vertical speed when in metric units (meters per minute). Float No
english_VS_increment Sets the increments of the autopilot's vertical speed when in english units (ft per minute). Float No
IAS_slow_increment Sets the slow increments of the autopilot's target speed (in Knots). Float No
IAS_fast_increment Sets the fast increments of the autopilot's target speed (in Knots). Float No
IAS_fastest_increment Sets the fastest increments of the autopilot's target speed (in Knots). Float No
mach_increment Sets the increments of the autopilot's target speed (in Mach). Float No
hdg_ref_var Set the compass variable to be used as the source of heading reference.

Enum:

  1. 0 = Magnetic
  2. 1 = Gyro
No
auto_throttle_hold_vs

If set to 0 (FALSE), the auto throttle will not attempt to hold the VS when attempting to hold an airspeed. If set to 1 (TRUE) it will.

Default value is 1 (TRUE).

Boolean No
auto_rudder_use_pedals

If set to 0 (FALSE), the auto rudder will not move the cockpit pedals. If set to 1 (TRUE) it will.

Default value is 1 (TRUE).

Boolean No
auto_disengage_with_pilot_input

When this is set to 1 (TRUE) then the autopilot will be disengaged when any pilot action on inputs is greater than 50% of the axis for more than 1 second.

Default value is 1 (TRUE).

Boolean No
basic_modes_disengage_with_FBW

If set to 1 (TRUE) and the fly-by-wire is set to "ON" and the auto-pilot is on, then the Pitch, Bank and Yaw dampening modes are disengaged.

Default value is 1 (TRUE).

Boolean No
no_alt_capture_in_vs_mode

When set to 1 (TRUE), this will disable the altitude capture by autopilot when the VS mode is engaged.

Default value is 0 (FALSE).

Boolean No
pitch_use_elevator_only

If set to 1 (TRUE), the autopilot/fly-by-wire will not use trim for pitch inputs.

Default value is 0 (FALSE), so it uses trimming for pitch inputs.

Boolean No
FBWPitchTrimSpeedScalar

This value can be used to scale the speed at which pitch trim is applied using a fly-by-wire system.

Default value is 1.

Float No
FBWHighSpeedRollSpeedScalar

This value can be used to scale the speed at which roll is applied using a fly-by-wire system.

Default value is 1.

Float No

 

 

[SMOKESYSTEM]

This section controls the aircraft smoke system. Available parameter is:

 

Parameter Description Type Required
smoke.N

Each parameter N defines a smoke point position, where N starts at 0. Points are defined as a table of values using the following order:

z, x, y, fx_name

The position values are the local position offset relative to the Datum Reference Point (in ft) and the fx_name value is the name of one of the FX files that should be used.

1D Table of Floats

(see Data Types for more information)

No

 

 

[folding_wings]

If the aircraft being defined has folding wings, this section should be included. Available parameters are:

 

Parameter Description Type Required
wing_fold_system_type

The type of system used to fold the wings.

Default value is 0.

Integer:

  1. 0 = Hydraulic
  2. 1 = Electrical
  3. 2 = Pneumatic
  4. 3 = Manual
No
fold_rates

The folding rates for the left wing and right wing, as a table of two values (left, right). Rates are expressed as 1/seconds.

Default values are 0.1, 0.12.

1D Table of Floats

(see Data Types for more information)

No

 

 

[TailHook]

This section controls the tailhook of the aircraft (if required). Available parameters are:

 

Parameter Description Type Required
has_tailhook

Sets whether the aircraft has a tailhook (1, TRUE) or not (0, FALSE). Note that you will need to have set up the [INTERACTIVE POINTS] correctly for the aircraft - see here for details: Carrier Landings.

Default value is 0 (FALSE).

Boolean No
cable_force_adjust

This is a scaling factor that can be used to adjust the cable spring force when an aircraft is hooked. The value acts as a multiplier, so a value of 2 would be double the spring force, while a value of 0.5 would half the spring force. You can change this value from the default if you're not satisfied with how the aircraft is arrested by the cables: for example, stopping a lightweight aircraft may require a lower force multiplier compared to stopping a very heavy one.

Default value is 1.

Float No

 

 

[launch_assistance]

This section controls the launchbar (assisted takeoff) parameters for an aircraft that requires them. Available parameters are:

NOTE: These parameters are currently purely visual as you cannot set an aircraft to take off from an aircraft carrier. Future updates may change this.

 

Parameter Description Type Required
launch_bar_pivot

Position of pivot attachment point relative to the Datum Reference Point. Values are in ft.

Default value is 0, 0, 0.

1D Table of Floats

(see Data Types for more information)

No
launch_bar_lug

Position of lug attachment point relative to the Datum Reference Point. Values are in ft.

Default value is 0, 0, 0.

1D Table of Floats

(see Data Types for more information)

No
launch_bar_moveable

Sets whether the launchbar is movable or not.

Default value is 0 (FALSE).

Boolean No

 

 

[VOICEALERTS]

This section controls any voice alerts for the aircraft. Available parameters are:

 

Parameter Description Type Required
LowFuelPct

Sets the low fuel warning voice alert, as a table of 3 values in the following order:

check_value, check_type, check_frequency

For check_type +1, -1, or 0, representing greater than, less than or equal to.

1D Table of Floats

(see Data Types for more information)

No
OverGLimit

Sets the over G limit, as a table of 3 values in the following order:

check_value, check_type, check_frequency

For check_type +1, -1, or 0, representing greater than, less than or equal to.

1D Table of Floats

(see Data Types for more information)

No

 

 

[PRESSURIZATION]

This section controls the cabin pressurization systems. Available parameters are:

 

Parameter Description Type Required
design_cabin_pressure The cabin pressure, as designed, in psi. This value is used to set the PRESSURIZATION_CABIN_ALTITUDE_GOAL SimVar. Float No
max_pressure_differential The maximum pressure deferential permitted, in psi. Float No

 

 

[AUXILIARY POWER UNIT]

This section controls APU systems. Available parameter is:

 

Parameter Description Type Required
Available Indicates whether there is an APU system (TRUE, 1) or not (FALSE, 0). Bool No

 

 

[WATER BALLAST SYSTEM]

This section controls the water balance system. Available parameters are:

 

Parameter Description Type Required
Version

The version of the water ballast system being used. This will impact how the Tank.N parameter is defined.

If not supplied then the version will be considered as 1. 

Integer No
NumberOfReleaseValves The number of ballast release valves available. Integer No
DumpRate The dump rate for the ballast, in Gallons per second. Float No

Tank.N

Version 2 And Above:

Each parameter N defines a ballast tank, where N starts at 0. Tank details are defined as a hash map with the following format:

Tank.N = #Name:<string> #Capacity:<val> #position: <x>,<y>,<z> #Valve:<index> #DefaultFillPct:<val>
  • Name: The name of the tank
  • Capacity: The tank capacity, in Gallons
  • Position: The local position offset relative to the Datum Reference Point (in ft)
  • Valve: the valve index (from 1 to NumberOfReleaseValves).
  • DefaultFillPct: The default percentage of the tank that should be filled.

 

Versions before 2:

Each parameter N defines a ballast tank, where N starts at 0. Tank details are defined as a table of values in the following order:

max_weight, z, x, y, valve_index

The weight is in Gallons, the position values are the local position offset relative to the Datum Reference Point (in ft, and the index is the valve index (from 1 to NumberOfReleaseValves). Tanks are numbered from 0 to 5 where:

  • 0 = Front Fuselage
  • 1 = Rear Fuselage
  • 2 = Left Outboard
  • 3 = Left Inboard
  • 4 = Right Inboard
  • 5 = Right Outboard

NOTE: You can only define a maximum of 6 water ballast tanks using the legacy version.

Version 2+:

Hash map

 

Previous Versions:

1D Table of Floats

 

(see Data Types for more information)

No

 

 

[LocalVars]

This section can be used to set the initial value of persistent local variables to be used in the XML Model Behaviours templates and gauges. These local vars are accessed using the "L:" var identifier in Reverse Polish Notation, and if you are using the JavaScript API then it's done the same way as for SimVars, using the GetSimVarValue(name, unit, dataSource = "") function.

 

When an aircraft is selected by a user and the flight is first started, these "L:" vars are defined using the LocalVar.N parameter and then initialised using a default value (done using the LocalVarDefault.N parameter). Any changes to these variables that have been made will then be saved to a file (state.cfg) when the flight is exited. This file will be saved to a local location on the users computer using the following path schema:

STEAM: C:\Users\<USERNAME>\AppData\Roaming\Microsoft Flight Simulator\SimObjects\<AIRCRAFT_NAME>\state.cfg
MS STORE: C:\Users\<USERNAME>\AppData\Local\Packages\Microsoft.FlightSimulator_8wekyb3d8bbwe\LocalCache\SimObjects\<AIRCRAFT_NAME>\state.cfg

The next time the aircraft is used, the local variables will be initialised as before, only now they will be set to the values stored in the state.cfg.

IMPORTANT! The variables defined here take precedence over those stored in the FLT file, and will overwrite any with the same name that are saved to that file when an aircraft is loaded.

Note that if you define a variable here but don't initialise it with a default value, then the first time it is used it will be considered as having a value of 0.

 

Parameter Description Type Required
LocalVar.N

This defines the name of one or more local variables that will have their value saved. Each variable should be defined as a string, and is indexed from 1. For example:

LocalVar.1 = myLocalVariable

String No
LocalVarDefault.N

This defines a local variable default value. Each variable defined using the parameter should have a corresponding default value and index, with the indexing starting at 1. For example:

LocalVarDefault.1 = 10

int/float/string, etc... No

 

Note that if you require non-persistent local variables, then you should be setting them up using the [LocalVars.N] section of the FLT file.