STATIC OBJECT sim.cfg
As with any other SimObject, a static object 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 of the Model Definitions page. Static Objects 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 static objects are up-to-date with the base version of Microsoft Flight Simulator. Without any specified version number, 0.0 is assumed, and the object should keep some functionality. This is permitted for FSX backward-compatibility, but will mean the object 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 static object. You can define multiple of these sections numbering them from 0, where each section is a 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 | Description | Type | Required |
---|---|---|---|
title |
The static object 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 static object model (if it's the default "model" folder, leave as an empty string ""). | String | No |
texture |
The folder for the static object textures (if it's the default "texture" folder, leave as an empty string ""). | String | No |
animation |
The folder for the static object animation (if it's the default "animation" folder, leave as an empty string ""). | String | No |
sound |
The folder for the static object 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 static SimObj. Available parameters are:
Parameter | Description | Type | Required |
---|---|---|---|
category |
The category for the SimObject (in this case it will always be "StaticObject"). |
Enum:
|
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 static object is farther away from the viewpoint of the camera of, 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 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 |
Float | No |
[Surface]
This section controls the surface collisions for the static object. The available parameter is:
Parameter | Description | Type | Required |
---|---|---|---|
IgnoreObjectsCollision |
This determines whether the object will be placed on the ground while ignoring other object collisions (TRUE, 1), and thus possibly be inside a SceneryObject building, or take those collisions into account when placed on the ground (FALSE, 0). It defaults to 0 (FALSE). | Float | Yes |