sim.cfg
Every Microsoft Flight Simulator 2024 SimObject that is not an aircraft is defined by a mandatory Configuration File called sim.cfg
. It mainly provides general information about the SimObject and its variations within the simulation. Most of the data in this file can be set dynamically using The SimObject Editor - specifically from the Sim tab.
Below you can find information on the different sections used in the sim.cfg
file as well as what parameters and values are expected within them. It should be noted that not all sim.cfg
parameters can be used by all SimObject types, and so the tables below have a "Used By" column to show which types of SimObject can use the parameter.
For examples of the different sim.cfg
file contents, please see here:
For information regarding ground vehicle SimObjects, please see here:
[Version]
The [Version]
section provides version information for the configuration file. In Microsoft Flight Simulator 2024, 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 |
[General]
This section controls some general details relating to the SimObject being defined.
Available parameters are:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
category |
|
The category for the SimObject. This will tell the simulation what other parameters to expect and initialise certain internal parameters for it. |
Enum (aircraft.cfg only):
Enum (sim.cfg only):
|
Yes |
DistanceToNotAnimate |
|
This is the distance (in meters) to turn off animation and model behavior systems, which lowers the processing overheads for the SimObjects. The approximate values by category would be:
When the SimObject is farther away from the viewpoint of the camera, its ModelBehaviors and other animations are not executed in order to improve general sim performance. If the camera gets farther than this distance during an animation and then comes back closer, the animation will immediately skip to the frame it should have been on and, for model behaviors, the SimVar |
Float | No |
HasMovingPlatform |
|
When this is set to 1 (TRUE), the SimObject is registered in the simulation as being a "moving platform". This designation will change how aircraft calculate the surface velocity when flying over the sim objector coming in to land. | Boolean | No |
AttachedAirport |
|
This parameter permits you to link the SimObject with an airport. Once linked, the airport will then move along with the SImObject. This is only usually used for helipads that are on boats, for example. The parameter requires the filename of the airport to use, with the following format:
Where |
String | No |
[Surface]
This section controls the surface collisions for the SimObject.
The only available parameter is:
[DesignSpecs]
This section controls the specification related to the movement of the SimObject being defined.
Available parameters are:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
max_speed_mph |
|
The maximum speed of the SimObject, in mph. If you have added the speed in Knots this is not required, but one of the two must be present. Value must be greater than 0. |
Float | Yes |
max_speed_knots |
|
The maximum speed of the SimObject, in Knot. If you have added the speed in mph this is not required, but one of the two must be present. Value must be greater than 0. |
Float | Yes |
acceleration_constants |
|
2 value table used to control the SimObject acceleration. The first value is a time constant of effect responsiveness (higher value for faster reactions), while the second one is a maximum acceleration in Gs. |
List of 2 Floats |
No |
deceleration_constants |
|
2 value table used to control the SimObject deceleration. The first value is a time constant of effect responsiveness (higher value for faster reactions), while the second one is a maximum acceleration in Gs. |
List of 2 Floats |
No |
turning_constants |
|
4 value table used to control how the SimObject turns. The first value is a time constant of effect responsiveness (higher value for faster reactions), the second value is the maximum number of degrees it can turn, third is the optimal turning speed (in Knots), and fourth is the maximum turning speed (in Knots). |
List of 4 Floats |
No |
SternPosition |
|
The distance in ft relative to the datum reference position, where a wake effect should start. For aircraft, this is set in the [WEIGHT_AND_BALANCE] section of the flight_model.cfg file, but for boats this is considered as the visual model center. |
Float | No |
length |
|
The approximate length of the ship, in meters. | Float | No |
width |
|
The approximate width of the ship, in meters. | Float | No |
shipCategory |
|
The category of ship that is being spawned. This (combined with the width/length parameters) will be used to decide where the ship should spawn in the world based off of real-world traffic data about the types of ships in any specific location. |
String:
|
No |
[PILOT]
This optional section controls the pilot that will be using the SimObject.
Available parameters are:
Note that the models of Human Characters used in the vehicles are determined by the <GroundVehiclePilots>
section of the Living World configuration file. The name of the "animation" specified here must be the name of a proper BlendTreeState for the model of Human Character used as pilot (you can find more more details in the Model Animation Definitions page). If BlendTree animation layers are used by the Human Character, the pilot_default_animation
can actually contain more data, in the form pilot_default_animation = A,B,C,D,E,F,...
where: A
is the name of a BlendTreeState, B
is the layer containing this state (default to "Base"), C
is another BlendTreeState with D
its layer, and so on... Each of these BlendTreeStates must belong to different layers.
[contact_points]
This optional section controls the contact points for the SimObject with the ground. Although the SimObject could work fine with the default values set when omitting this section, we recommend including this section explicitly.
The available parameters are:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
static_cg_height |
|
The distance, in ft, between the center of the SimObject model and the ground. This should be a positive value if the center of the model is above the ground. Note that with a major [Version] number less than 1.0 (or unspecified), static_cg_height should actually contain this distance +1, due to FSX backward-compatibility, even though this is rather counter-intuitive. |
Float | No |
static_pitch |
|
The pitch of the SimObject when at rest on flat ground, in degrees. | ||
wheel_radius |
|
The radius of the wheels of the SimObject. Note that while creatures/humans don't have wheels, this is still required for defining the way it connects with the ground. Generally this would be set to 1 for anything other than vehicles. |
[WAYPOINT]
This section contains various parameters controlling the way that the SimObject will move along waypoints, or along the internal simulation world paths. All of these parameters are optional and have default values.
Available parameters are:
[LIGHTS]
This optional section permits you to define lights for the SimObject. It has one parameter that can be listed multiple times to define multiple lights, starting with newlight.0
:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
newlight.N |
|
This defines a single light on the vehicle using 4 values in a table. These values are (in order of use):
For example:
|
List of 4 Strings |
No |
[WagonLink] (Baggage Cart Only)
This section is for defining the way the different parts of the Baggage Cart ground vehicle are linked. For more information on this vehicle type, please see here:
It can have the following parameters:
[BaggageLoader] (Baggage Loader Only)
This section is for defining the the Baggage Loader ground ramp position. For more information on this vehicle type, please see here:
It can have the following parameters:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
ramp_pivot_position_YZ |
|
This parameter takes two values corresponding to the coordinates, in meters, of the pivot point in the ramp (i.e: the point of the ramp that does not move throughout the inclination animation). Those coordinates are along the Y and Z axes for Microsoft Flight Simulator 2024, in other words the vertical axis and the back-to-front axis. |
List of 2 Floats |
Yes |
ramp_end_position_YZ |
|
This parameter takes two values corresponding to the coordinates, in meters, of a point at the end of the ramp. This point will aim to end up about 10cm above the interior edge of the cargo compartment of the aircraft. This point is not necessarily on the conveyor belt, and can be located in some form of cushion below the ramp for example. The coordinates should be expressed with the default ramp inclination (i.e. the first frame of the inclination animation). |
[BoardingRamp] (Boarding Ramp Only)
This section is for defining the Boarding Ramp position when extended and retracted. For more information on this vehicle type, please see here:
It can have the following parameters:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
top_position_when_fully_extended_YZ |
|
This parameter takes two values corresponding to the coordinates, in meters, of the contact point when the ramp is correctly inclined and fully extended. The coordinates are those on the vertical axis, and the back-to-front axis, respectively. |
List of 2 Floats |
Yes |
top_position_when_contracted_YZ |
|
This parameter takes two values corresponding to the coordinates, in meters, of the contact point when the angle of the ramp is correct, but the stairs are not extended (i.e. when the ASOBO_BoardingRamp_Elevation_Template animation is at its first frame). |
[CateringTruck] (Catering Truck Only)
This section is for defining the Catering Truck door position. For more information on this vehicle type, please see here:
It can have the following parameter:
[FuelTruck] (Fuel Truck Only)
This section is for defining the fuel trucks connection point with the aircraft. For more information on this vehicle type, please see here:
It can have the following parameter:
[GroundPowerUnit] (Ground Power Unit Only)
This section is for defining the ground power units connection point with the aircraft. For more information on this vehicle type, please see here:
It can have the following parameter:
[WINCH] (Winch Vehicle Only)
This section is for defining the number of drums that a winch ground vehicle has. For more information on this vehicle type, please see here:
It can have the following parameter:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
drum_count |
|
The number of cable drums available to the winch. A value between 1 and 3. |
Integer |
Yes |
[TAXI] (Boarding Ramp and Catering Truck Only)
This section is for defining the Boarding Ramp or Catering Truck position relative to the lane line when moving. For more information on these vehicle types, please see here:
It can have the following parameter:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
DistanceToLaneLine |
|
This parameter defines an offset (in meters) relative to the lane line that the ground vehicle follows. |
Float |
No |
[Effects]
The effects section of the file refers to the visual effect that should be used for the SimObject wake on the surface of water.
IMPORTANT! This section relates to using legacy effects from previous versions of the product. For the current way of creating and using effects please see the section on Visual Effects.
The table below outlines the boat effects parameter:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
wake |
|
A wake effect for water. Default would be fx_wake . |
String | No |
[Carrier]
This optional section is for telling Microsoft Flight Simulator 2024 that the SimObject is an aircraft carrier. The following parameter exists in this section:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
carrier |
|
When set to 1 (TRUE) the boat will be considered as an aircraft carrier. Default value is 0 (FALSE). |
Boolean | No |
[fltsim.N]
The [fltsim.N]
section(s) are used to define the variations of the SimObject. You can define multiple of these sections numbering them from 0, where each section is a different variation of the object. Note that you cannot "skip" numbers, so you can't have [fltsim.0]
and then follow it with [fltsim.2]
.
Each parameter listed below will take a default empty string "" which signifies the default folder, as explained in the descriptions for each parameter. However, should you wish to have variations, the name you give in each parameter will be appended onto the base folder name. For example, the base folder for a model is simply "model
", so any variations would be in folders called "model.<variation>
". The config file would then look like this:
[fltsim.0]
title=MyCompany_WindSock
model=""
texture=""
[fltsim.1]
title=MyCompany_Windsock_Red
model="Red" ; folder would be "model.Red"
texture="Red" ; folder would be "texture.Red"
The following parameters exist for this section:
Parameter | Used By | Description | Type | Required |
---|---|---|---|---|
title |
All |
The scenery object variation name. Names are a unique identifier of SimObj objects and their variants. We recommend using your company name as a prefix, to guarantee the uniqueness of your SimObj object even when included with objects produced by other 3rd party developers. Note that for the "AircraftPilot" SimObject type, you can set this to "AircraftPilot" and then add in the pilot properties using the [Pilot.N] section. Alternatively, you can use one of the built in pilot types aby giving one of the title strings listed here: List Of Included Pilot/Copilot/Instructor SimObjects |
String | Yes |
model |
All | The folder for the scenery object model (if it's the default "model" folder, leave as an empty string ""). | String | No |
texture |
All | The folder for the scenery object textures (if it's the default "texture" folder, leave as an empty string ""). | String | No |
animation |
All | The folder for the scenery object animation (if it's the default "animation" folder, leave as an empty string ""). | String | No |
sound |
All | The folder for the scenery object sounds (if it's the default "sound" folder, leave as an empty string ""). | String | No |
soundai |
All | The folder for the scenery object AI sounds (if it's the default "soundai" folder, leave as an empty string ""). | String | No |
[InteractionMgr.N]
This section initialises the interaction manager for the SimObject. This section must be added if there are interactions between SimObjects in an aircraft or the world, for example, the interaction between an airport luggage ramp and the luggage itself. You can define multiple of these sections numbering them from 0. You can find further information on interactions from the the following page:
This section can have the following parameters: