sim.cfg EXAMPLES
This section contains examples of the contents of the sim.cfg
file for various different SimObjects.
Boat - General Example
The lines below come from the definition of any basic boat SimObject:
[fltsim.0]
title = Yacht01
model = ""
texture = ""
[General]
category = Boat
[contact_points]
static_pitch = 0.0
static_cg_height = 0.0
[DesignSpecs]
max_speed_mph = 50
acceleration_constants = 0.5, 0.4
deceleration_constants = 2.0, 0.5
SternPosition = 0
[Effects]
wake = fx_wake_s
Boat - Whale Example
The lines below come from the definition of a "whale" object, which - although technically a "living thing" - is considered as a boat SimObject since it goes in the water:
[fltsim.0]
title = OrcaWhale
model = ""
texture = ""
[General]
category = Boat
[contact_points]
static_pitch = 0.0
static_cg_height = 0.0
[DesignSpecs]
max_speed_mph = 30
acceleration_constants = 0.5, 0.4
deceleration_constants = 2.0, 0.5
SternPosition = 10
[Effects]
wake = fx_wake_ss
Flying Animal - Seagull Example
The lines below come from the definition of a "FlyingAnimal" sim object:
[Version]
Major=1
Minor=0
[fltsim.0]
title=Seagull
model=Seagull
texture=Seagull
animation=
[General]
category=FlyingAnimal
DistanceToNotAnimate=500
[contact_points]
wheel_radius=1
static_pitch=0.0
static_cg_height=0
[DesignSpecs]
max_speed_mph = 15
acceleration_constants = 1, 5
deceleration_constants = 1, 5
[WAYPOINT]
CanReverse = 0
Ground Animal - Bears Example
The lines below come from the definition of a "Animal" object with two different skins:
[Version]
Major=1
Minor=0
[fltsim.0]
title=BlackBear
model=BlackBear
texture=BlackBear
animation=
[fltsim.1]
title=GrizzlyBear
model=GrizzlyBear
texture=GrizzlyBear
[fltsim.2]
title=PolarBear
model=PolarBear
texture=PolarBear
[fltsim.3]
title=SyrianBear
model=SyrianBear
texture=SyrianBear
[General]
category=Animal
DistanceToNotAnimate=1500
[contact_points]
wheel_radius=1
static_pitch=0.0
static_cg_height=0
[DesignSpecs]
max_speed_mph = 15
acceleration_constants = 0.3, 0.4
deceleration_constants = 0.2, 0.4
[WAYPOINT]
CanReverse = 0
Human - Ground Staff Example
The lines below come from the definition of a "Human" object that will be used as a marshaller, with 8 different models being used, two different animations and a single base texture:
[Version]
Major=1
Minor=0
[fltsim.0]
title=Marshaller_Male_Summer_African
model=Marshaller_Male_Summer_African
texture=
animation=Marshaller_Male
[fltsim.1]
title=Marshaller_Male_Summer_Arab
model=Marshaller_Male_Summer_Arab
texture=
animation=Marshaller_Male
[fltsim.2]
title=Marshaller_Male_Summer_Asian
model=Marshaller_Male_Summer_Asian
texture=
animation=Marshaller_Male
[fltsim.3]
title=Marshaller_Male_Summer_Caucasian
model=Marshaller_Male_Summer_Caucasian
texture=
animation=Marshaller_Male
[fltsim.4]
title=Marshaller_Female_Summer_African
model=Marshaller_Female_Summer_African
texture=
animation=Marshaller_Female
[fltsim.5]
title=Marshaller_Female_Summer_Arab
model=Marshaller_Female_Summer_Arab
texture=
animation=Marshaller_Female
[fltsim.6]
title=Marshaller_Female_Summer_Asian
model=Marshaller_Female_Summer_Asian
texture=
animation=Marshaller_Female
[fltsim.7]
title=Marshaller_Female_Summer_Caucasian
model=Marshaller_Female_Summer_Caucasian
texture=
animation=Marshaller_Female
[General]
category=Human
[contact_points]
wheel_radius=1
static_pitch=0.0
static_cg_height=0
[DesignSpecs]
max_speed_mph = 15
acceleration_constants = 0.3, 0.4
deceleration_constants = 0.2, 0.4
Human - Pilot Example
The lines below come from the definition of a "AircraftPilot" object:
[Version]
Major=1
Minor=0
[fltsim.0]
title=Pilot_Male_Casual
model=Pilot_Male_Casual
texture=
[fltsim.1]
title=Pilot_Female_Casual
model=Pilot_Female_Casual
texture=
[fltsim.2]
title=Pilot_Male_Uniform
model=Pilot_Male_Uniform
texture=
[General]
category=AircraftPilot
DistanceToNotAnimate=500
[Pilot.0]
name=TT:MENU.MISC_PILOT_AVATAR_001
image=images\Male_Casual_Caucasian.png
biography=$$:Nothing for now
copilot=1
instructor=0
[Pilot.1]
name=TT:MENU.MISC_PILOT_AVATAR_002
image=images\Female_Casual_Caucasian.png
biography=$$:Nothing for now
copilot=1
instructor=0
female=1
[Pilot.2]
name=TT:MENU.MISC_PILOT_AVATAR_003
image=images\Male_Uniform_Caucasian.png
biography=$$:Nothing for now
copilot=1
instructor=0
female=0
[contact_points]
wheel_radius=1
static_pitch=0.0
static_cg_height=0
[DesignSpecs]
max_speed_mph = 15
acceleration_constants = 0.3, 0.4
deceleration_constants = 0.2, 0.4
Scenery Sim Object - Windmill Example
The lines below come from the definition of a "windmill" scenery static object:
[Version]
Major=1.0
Minor=0.0
[fltsim.0]
title=my_company_Windmill
model=""
texture=""
[General]
category=StaticObject
DistanceToNotAnimate=7500
Scenery Sim Object - Marshaller Stick Example
The lines below come from the definition of a "marshaller stick" static object:
[Version]
Major=1.0
Minor=0.0
[fltsim.0]
title=my_company_Marshaller_Stick
model=""
texture=""
[General]
category=StaticObject
Scenery Sim Object - Flag Example
The lines below come from the definition of a "flag" scenery static object that has two variations:
[Version]
Major=1.0
Minor=0.0
[fltsim.0]
title=my_company_Flag
model=""
texture=""
[fltsim.1]
title=my_company_Flag_White
model="White"
texture="White"
[General]
category=StaticObject
DistanceToNotAnimate=7500
Baggage Cart Example
The lines below come from the definition of a BaggageCart:
[Version]
Major=1
Minor=0
[fltsim.0]
title=ASO_Baggage_Cart01
model=""
texture=""
animation=""
[General]
category=GroundVehicle
[contact_points]
wheel_radius=3.18
static_pitch=0.0 ;degrees, pitch when at rest on the ground (+=Up, -=Dn)
static_cg_height=0 ;feet, altitude of CG when at rest on the ground
[DesignSpecs]
max_speed_mph = 115
acceleration_constants = 0.3, 0.4 ;Time constant (effects responsiveness), and max G acceleration
deceleration_constants = 0.2, 0.4 ;Time constant (effects responsiveness), and max G acceleration
[WagonLink]
frontLinkLength = 0.62 ; meters, positive length of the link between wagons at the front of the vehicle
frontLinkStartPosition = 1.173 ; meters, signed position along the "forward" axis of the start of the front link
backLinkLength = 0 ; meters, positive length of the link between wagons at the back of the vehicle
backLinkStartPosition = -1.08 ; meters, signed position along the "forward" axis of the start of the back link
Baggage Loader Example
The lines below come from the definition of a BaggageLoader:
[Version]
Major=1
Minor=0
[fltsim.0]
title=Aso_Baggage_Loader_01
model=""
texture=""
[General]
category=GroundVehicle
[PILOT]
pilot_default_animation = "Driving_BaggageLoader"
pilot_attach_node = "PILOT_0"
[contact_points]
wheel_radius=3.18
static_pitch=0.0 ;degrees, pitch when at rest on the ground (+=Up, -=Dn)
static_cg_height=0 ;feet, altitude of CG when at rest on the ground
[DesignSpecs]
max_speed_mph = 25
acceleration_constants = 0.3, 0.4 ;Time constant (effects responsiveness), and max G acceleration
deceleration_constants = 0.2, 0.4 ;Time constant (effects responsiveness), and max G acceleration
[WAYPOINT]
StopDistance = 0.6
FrontRadiusMeters = 2.5
[TAXI]
DistanceToLaneLine = 1.5
[BaggageLoader]
ramp_pivot_position_YZ = 0.656, -1.649 ;Position YZ of the "pivot" of the ramp, i.e. the point of the ramp that stays at the same position during its inclination animation
ramp_end_position_YZ = 0.542, 2.789 ;Position YZ of the end of the ramp, the part that goes inside the cargo door, when horizontal
[LIGHTS]
newlight.0 = HeadLight, Headlight_R, Headlight_Mesh, Headlight_Emi
newlight.1 = HeadLight, Headlight_L, Headlight_Mesh, Headlight_Emi
newlight.2 = BackLight, BackLight_R, Backlight_Mesh, Backlight_Emi
newlight.3 = BackLight, BackLight_L, Backlight_Mesh, Backlight_Emi
Boarding Ramp Example
The lines below come from the definition of a BoardingRamp, set up with three different liveries:
[Version]
Major=1
Minor=0
[fltsim.0]
title=ASO_Boarding_Stairs
model=""
texture=""
[fltsim.1]
title=ASO_Boarding_Stairs_Red
model="Red"
texture="Red"
[fltsim.2]
title=ASO_Boarding_Stairs_Yellow
model="Yellow"
texture="Yellow"
[General]
category=GroundVehicle
[PILOT]
pilot_default_animation = "Driving_GPU"
pilot_attach_node = "PILOT_0"
[contact_points]
wheel_radius=3.18
static_pitch=0.0 ;degrees, pitch when at rest on the ground (+=Up, -=Dn)
static_cg_height=0 ;feet, altitude of CG when at rest on the ground
[DesignSpecs]
max_speed_mph = 25
acceleration_constants = 0.3, 0.4 ;Time constant (effects responsiveness), and max G acceleration
deceleration_constants = 0.2, 0.4 ;Time constant (effects responsiveness), and max G acceleration
turning_constants = 4.0, 90, 8.0, 30.0 ;Time constant (effects responsiveness), max deg/s acceleration, optimal (knots) turning speed, max (knots) turning speed
[WAYPOINT]
StopDistance = 0.6
[TAXI]
DistanceToLaneLine = 2.0
[BoardingRamp]
top_position_when_fully_extended_YZ = 5.952, 7.358 ;Position YZ on the top of the stairs (relative to CG) when fully extended
top_position_when_contracted_YZ = 3.329, 3.89 ;Position YZ on the top of the stairs (relative to CG) when stairs are contracted, but rotated for normal boarding stairs angle
[LIGHTS]
newlight.0 = HeadLight, Headlight_R, Headlight_Mesh, Headlight_Emi
newlight.1 = HeadLight, Headlight_L, Headlight_Mesh, Headlight_Emi
newlight.2 = BackLight, BackLight_R, Backlight_Mesh, Backlight_Emi
newlight.3 = BackLight, BackLight_L, Backlight_Mesh, Backlight_Emi
newlight.4 = GyroLight, GyroLight_O1, Gyro_Mesh, Gyrolight_O_Emi
newlight.5 = GyroLight, GyroLight_O2, Gyro_Mesh, Gyrolight_O_Emi
Model Behavior Helpers Example
Several templates useful for Ground Vehicles are available in the package fs-base-aircrafts-common
, one of the core packages of Microsoft Flight Simulator 2024. They can be accessed by including the following line in the <Behaviors>
section of the *.xml
of a vehicle:
<Include Path="Asobo\Misc\GroundVehicles.xml"/>
Here is an example of use of these helpers:
<Behaviors>
<Include Path="Asobo\Misc\GroundVehicles.xml"/>
<Component ID="Wheels">
<UseTemplate Name="ASOBO_Wheel_Roll">
<ANIM_NAME>Wheel_Rotation</ANIM_NAME>
<WHEEL_RADIUS>0.364</WHEEL_RADIUS> <!-- in meters -->
</UseTemplate>
<UseTemplate Name="ASOBO_Wheel_Turn">
<ANIM_NAME>Wheel_Orientation</ANIM_NAME>
<ORDER_MULTIPLIER>-1</ORDER_MULTIPLIER> <!-- 1 if first frame of animation is turning left, -1 if turning right -->
<PERCENT_PER_SECOND>50</PERCENT_PER_SECOND> <!-- speed of the anim in percent per second. 100 means from max left to max right in 1 second -->
</UseTemplate>
</Component>
<Component ID="Lights">
<UseTemplate Name="ASOBO_GroundVehicle_HeadLights"/>
<UseTemplate Name="ASOBO_GroundVehicle_BackLights"/>
<UseTemplate Name="ASOBO_GroundVehicle_Gyrolights_Animated">
<ANIM_NAME>Gyrolight</ANIM_NAME> <!-- Anim for rotating the light -->
<PERCENT_PER_SECOND>100</PERCENT_PER_SECOND> <!-- which percentage of the anim is played in 1 second. 200 means anim is played twice per second -->
</UseTemplate>
</Component>
</Behaviors>
For more information on these helper files, please see the the following page:
Or go to the page specific to each type of Ground Vehicle:
- BaggageCart
- BaggageLoader
- BoardingRamp
- CateringTruck
- FuelTruck
- GroundPowerUnit
- Pushback
- AirportServices
Parachute Animation
The following example file is what would typically be used as part of a parachute sim object package, used in conjunction with a Winch sim object. The XML shown below would be placed in an animations.xml
file, and saved to the same location as the root sim.cfg
file for the parachute, and it illustrates how to animate the five "states" that parachutes have:
<?xml version="1.0" encoding="utf-8" ?>
<ModelInfo version="1.1" guid="{A5BC9F1E-7046-4874-B95F-BE6D9293BFEE}">
<Animation name="Parachute_Closed" guid="850E8748-B2F9-40ed-9D22-9F263A2D5994" type="Standard"/>
<Animation name="Parachute_Opening" guid="7349515B-32BD-4bc8-BF9E-9F56DDCDDCBB" type="Standard"/>
<Animation name="Parachute_Opened" guid="B83E1D15-6114-4264-9EF6-2F6C1762D31C" type="Standard"/>
<Animation name="Parachute_Landing" guid="83A265D5-B4DD-4b39-AC59-D2E995C4E7F2" type="Standard"/>
<Animation name="Parachute_Landed" guid="A35C7D73-8ADA-413e-B254-72E291E750E8" type="Standard"/>
<AnimGraph>
<DefaultState name="Parachute_Closed"/>
<BlendTreeState name="Parachute_Closed">
<Animations>
<Animation guid="850E8748-B2F9-40ed-9D22-9F263A2D5994" loop ="True" speed="1"/>
</Animations>
</BlendTreeState>
<BlendTreeState name="Parachute_Opening">
<Animations>
<Animation guid="7349515B-32BD-4bc8-BF9E-9F56DDCDDCBB" loop ="False" speed="1"/>
</Animations>
</BlendTreeState>
<BlendTreeState name="Parachute_Opened">
<Animations>
<Animation guid="B83E1D15-6114-4264-9EF6-2F6C1762D31C" loop ="True" speed="1"/>
</Animations>
</BlendTreeState>
<BlendTreeState name="Parachute_Landing">
<Animations>
<Animation guid="83A265D5-B4DD-4b39-AC59-D2E995C4E7F2" loop ="False" speed="1"/>
</Animations>
</BlendTreeState>
<BlendTreeState name="Parachute_Landed">
<Animations>
<Animation guid="A35C7D73-8ADA-413e-B254-72E291E750E8" loop ="True" speed="1"/>
</Animations>
</BlendTreeState>
<!--Transition-->
<Transition start="Parachute_Closed" end ="Parachute_Opening">
<Condition>(A:PARACHUTE OPEN, BOOL)</Condition>
</Transition>
<Transition start="Parachute_Opening" end ="Parachute_Opened" ExitTime="1.0"/>
<Transition start="Parachute_Opened" end ="Parachute_Landing">
<Condition>(A:SIM ON GROUND, BOOL)</Condition>
</Transition>
<Transition start="Parachute_Landing" end ="Parachute_Landed" ExitTime="1.0"/>
</AnimGraph>
</ModelInfo>