GROUND VEHICLE sim.cfg

As with any other SimObject, a Ground Vehicle folder generally contain a model folder, a texture folder, and a sound folder, or possibly several of these for variants. Moreover, the model folder contains an *.xml file referencing LODs and model behaviors, as described in the corresponding section here: <Behaviors>. Ground Vehicles have a single *.cfg file at their root folder, which is the file sim.cfg.

 

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.

 

 

[VERSION]

The [VERSION] section provides version information for the configuration file. The version number of 1.0 is to ensure vehicles are up-to-date with the base version of Microsoft Flight Simulator. Without any specified version number, 0.0 is assumed, and the vehicle should keep some functionality. This is permitted for FSX backward-compatibility, but will mean the vehicle will lack some new improvements, such as model behaviors.

 

Parameter Description Type Required
major Major CFG file version number. Integer No
minor Minor CFG file version number. Integer No

 

 

[fltsim.N]

The [fltsim.N] section(s) are used to define the basics of the ground vehicle. You can define multiple of these sections numbering them from 0, where each section is a variation of the vehicle. 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_Boarding_Stairs
model=""
texture=""
 
[fltsim.1]
title=MyCompany_Boarding_Stairs_Red
model="Red" ; folder would be "model.Red"
texture="Red" ; folder would be "texture.Red"

 

The following parameters exist for this section:

 

Parameter Description Type Required
title The vehicle variation name. Names are a unique identifier of SimObjects and their variants. We recommend using your company name as a prefix, to guarantee the uniqueness of your SimObject even when included with objects produced by other 3rd party developers. String Yes
model The folder for the vehicle model (if it's the default "model" folder, leave as an empty string ""). String No
texture The folder for the vehicle textures (if it's the default "texture" folder, leave as an empty string ""). String No
animation The folder for the vehicle animation (if it's the default "animation" folder, leave as an empty string ""). String No
sound The folder for the vehicle sounds (if it's the default "sound" folder, leave as an empty string ""). String No

 

 

[General]

This section controls some general details relating to the ground vehicle SimObj. Available parameters are:

 

Parameter Description Type Required
category The category for the SimObject (in this case it will always be "GroundVehicle").

Enum:

  1. "Airplane"
  2. "Boat"
  3. "GroundVehicle"
  4. "Animal"
  5. "FlyingAnimal"
  6. "Human"
  7. "StaticObject"
  8. "AircraftPilot"
  9. "GroundVehiclePilot"
  10. "Winch"
  11. "Parachute"
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:

  • AircraftPilot = 100 meters
  • FlyingAnimals = 250 meters
  • All others (GroundVehicles) = 1000 meters

When the vehicle is farther away from the viewpoint of the camera of, its model behaviors and other animations are not executed in order to improve general sim performance. If the camera gets farther than this distance during an animation then comes back closer, the animation will immediately skip to the frame it should have been without the interruption and, for model behaviors, the simvar ANIMATION DELTA TIME will contain the total time of interruption instead of the current frame delta time. This means that, as long as the animations/behaviors are not visible from this distance, this performance optimization will have no visible impact whatsoever for the user.

Float No

 

 

[DesignSpecs]

This section controls the specification related to the ground vehicle, like movement speed. Available parameters are:

 

Parameter Description Type Required
max_speed_mph The maximum speed of the vehicle, 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 vehicle, 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 vehicle 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.

1D table of 2 Floats

(see Data Types for more information)

No
deceleration_constants 2 value table used to control the vehicle 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.

1D table of 2 Floats

(see Data Types for more information)

No
turning_constants 4 value table used to control how the vehicle 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).

1D table of 4 Floats

(see Data Types for more information)

No

 

 

[PILOT]

This optional section controls the ground vehicle pilot. Available parameters are:

 

Parameter Description Type Required
pilot_default_animation A string representing the animation (BlendTreeState) that will be used by the Human Character pilot. String No
pilot_attach_node A string which is the name of a Node in the model of the aircraft, where the pilot will be attached. The default value is "PILOT_0" String No

 

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 vehicle with the ground. Although the ground vehicle could work fine with the default values, we recommend including this section explicitly. Available parameters are:

 

Parameter Description Type Required
static_cg_height The distance, in ft, between the center of the vehicle 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 vehicle when at rest on flat ground, in degrees.
wheel_radius The radius of the vehicle wheels, in degrees.

 

 

[WAYPOINT]

This section contains various parameters controlling the AI that drives the ground vehicle along waypoints, all of which are optional due to default values. Available parameters are:

 

Parameter Description Type Required
SlowDownDistance The distance, in meters, at which the vehicle start slowing down before a sharp turn or its destination. Default value is 50.0m. Float No
StopDistance The distance, in meters, from the destination at which the vehicle considers it has reached its destination, and will start actually braking to reach a full stop. Default is 2.0m
FrontRadiusMeters The length, in meters, from the center of the vehicle to the front of it. It is used by the AI to better manage turns. The default is 0, which means an approximate exaggerated value is computed by using a bounding box on the model.
CanReverse Sets whether the vehicle can reverse (TRUE, 1) or not (FALSE, 0). Default is TRUE. Bool
SlowDownOnLastWayPoint This determines if the vehicle should start really slowing down (but not trying to fully stop either), on the last 5 meters before its destination (TRUE, 1) or not (FALSE, 0). Default to TRUE.  

 

 

[LIGHTS]

This optional section permits you to define lights for the ground vehicle. It has one parameter that can be listed multiple times to define multiple lights, starting with newlight.0:

 

Parameter 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):

  • An enum describing the type of light, either: "HeadLight", "BackLight" or "GyroLight"
  • The name of a FlightSimLight Node
  • The name of a node containing an emissive material
  • The name of the material

For example:

newlight.0 = HeadLight, <lightname>, <nodename>, <materialname>

1D table of 4 Floats

(see Data Types for more information)

No