GROUND VEHICLE CONFIG EXAMPLES
This section contains examples of the contents of the sim.cfg
file for various different ground vehicles.
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. 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 individual pages for each type of Ground Vehicle:
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>