<!--
Hello my friends and welcome to the Articulated Suspension Definition File Format

Suspension definitions have all bodies with wheels oriented perfectly straight, parallel to car forward axis. No compression or dangly bits.

We have measured points in space with respect to suspension diagrams in "\\depot\main\Design\Suspension\Point_Definition\"
This format contains information regarding the resultant suspension geometry as defined in \\depot\main\Design\Suspension\Suspension_Measure.xls"

Suspension geometry can be defined by a combination of the following components:
	Locator - Point in space corresponding to location in suspension diagram
	CoilSpring
	Damper
	Body(or whatever name you want to use) - Defined by a list of locators (max 8).
	
special thingies! These are both special named bodys used by the simulation. Every suspension must have a Chassis, Upright, and S (Spindle)
	S(Spindle) - Point at which tire mounts. Generally, x = -HalfTrack, y = TireRadius, z = 0
	Chassis (a named Body) - Straightforward, where the suspension connects to the body of the car
	Upright (a named Body)- The rigid piece the spindle is attached to
	Kingpin (a named.. thing) - Must be specified for steered suspensions. This denotes the two pivots about which the upright must rotate
	AngularConstraint (Makes sure the angle between the two links formed by the three locators (start, pivot, end) is always enforced)
-->

<!-- BMW E36 Front -->
<!-- "\\depot\main\Design\Suspension\Point_Definition\Strut.jpg" -->
<!-- MaxBump/Droop are in place to define mechanical limits of the suspension before it starts producing undesired behavior.
		This travel is relative to the stock suspension and scales when applied to other vehicles 
	 TireWidth is in place so we can get the track outer by adding it to half-track at run-time -->
<Suspension Steered="true" HalfTrack="0.7112" TireRadius="0.32" LinearAntiDiveEffectScalar="1.0"  TireWidth="0.24" DroopTravel="-0.16" BumpTravel="0.20" UnsprungMassPortionOfBodyMassPerWheel="0.0055">
<!--
By convention, locators have been researched in a different coordinate system than the simulation. See "\\depot\main\Design\Suspension\Point_Definition\Axis.jpg"
The game consumes these values assuming they are authored with respect to its own car axis. See "\\depot\main\Design\Suspension\Point_Definition\SimulationAxis.jpg"
Please apply the following conversion to researched values:

				GAME | RESEARCH
				 X       -Y
				 Y        Z
				 Z        X

It is also assumed all suspension measurements are of the left side of the car, So all of the x components will likely be negative once converted to game values.
-->
	<Locator Id="A" x="-0.660" y="0.165" z="0.000" /> 
	<Locator Id="B" x="-0.330" y="0.160" z="0.046" /> 
	<Locator Id="C" x="-0.325" y="0.152" z="-0.351"/> 
	<Locator Id="D" x="-0.610" y="0.251" z="0.03"/> 
	<Locator Id="E" x="-0.470" y="0.787" z="-0.075"/>
	<Locator Id="S" x="-0.7112" y="0.32" z="0.0"/>
	<Locator Id="W" x="-0.610" y="0.251" z="-0.075"/>
	<Locator Id="Z" x="-0.710" y="0.251" z="-0.175"/>
	<Chassis NumLocators="3">
		<Locator Id="B"/>
		<Locator Id="C"/>
		<Locator Id="E"/>
	</Chassis>
	<Upright NumLocators="5">
		<Locator Id="A"/>
		<Locator Id="D"/>
		<Locator Id="S"/>
		<Locator Id="W"/>
		<Locator Id="Z"/>
	</Upright>
	<LowerControlArm NumLocators="3">
		<Locator Id="A"/>
		<Locator Id="B"/>
		<Locator Id="C"/>
	</LowerControlArm>
	<CoilSpring NumLocators="2">
		<Locator Id="E"/>
		<Locator Id="D"/>
	</CoilSpring>
	<Damper NumLocators="2">
		<Locator Id="E"/>
		<Locator Id="D"/>
	</Damper>
	<Kingpin NumLocators="2">
		<Locator Id="E"/>
		<Locator Id="A"/>
	</Kingpin>
	<!-- Three angular constraints to enforce the slider joint formed by the spring and the upright -->
	<AngularConstraint NumLocators="3">
		<Locator Id="E"/>
		<Locator Id="W"/>
		<Locator Id="A"/>
	</AngularConstraint>
	<AngularConstraint NumLocators="3">
		<Locator Id="E"/>
		<Locator Id="W"/>
		<Locator Id="S"/>
	</AngularConstraint>
	<AngularConstraint NumLocators="3">
		<Locator Id="E"/>
		<Locator Id="A"/>
		<Locator Id="Z"/>
	</AngularConstraint>
	<!-- X axis extends linearly Rest to MaxCompression. -->


<SpringProgression>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.01"/>
<Scale Value="1.01"/>
<Scale Value="1.02"/>
<Scale Value="1.03"/>
<Scale Value="1.06"/>
<Scale Value="1.11"/>
<Scale Value="1.19"/>
<Scale Value="1.32"/>
<Scale Value="1.54"/>
<Scale Value="1.91"/>
<Scale Value="2.50"/>
<Scale Value="3.46"/>
<Scale Value="5.00"/>
</SpringProgression>
<SpringProgressionDamping>
<Scale Value="1.00"/>   <!--Mean F  Drop-start1  power6  scaler1  clamp1.5-Bump-start1  power 16  scaler2  clamp3-->
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.01"/>
<Scale Value="1.01"/>
<Scale Value="1.02"/>
<Scale Value="1.02"/>
<Scale Value="1.04"/>
<Scale Value="1.06"/>
<Scale Value="1.08"/>
<Scale Value="1.12"/>
<Scale Value="1.18"/>
<Scale Value="1.26"/>
<Scale Value="1.37"/>
<Scale Value="1.53"/>
<Scale Value="1.74"/>
<Scale Value="2.04"/>
<Scale Value="2.45"/>
<Scale Value="3.00"/>
</SpringProgressionDamping> 
<SpringProgressionReboundDamping>
<Scale Value="1.00"/>   <!--Mean F  Drop-start1  power1  scaler1  clamp1.5-Bump-start1  power 20  scaler3.5  clamp4.5-->
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.00"/>
<Scale Value="1.01"/>
<Scale Value="1.01"/>
<Scale Value="1.02"/>
<Scale Value="1.04"/>
<Scale Value="1.07"/>
<Scale Value="1.11"/>
<Scale Value="1.17"/>
<Scale Value="1.27"/>
<Scale Value="1.43"/>
<Scale Value="1.66"/>
<Scale Value="2.02"/>
<Scale Value="2.55"/>
<Scale Value="3.34"/>
<Scale Value="4.50"/>
</SpringProgressionReboundDamping> 



<SuspensionXAxis>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
</SuspensionXAxis>
<SuspensionZAxis>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
</SuspensionZAxis>   
<SuspensionxAxisRear>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
</SuspensionxAxisRear> 
<SuspensionZAxisRear>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
    <Gradient Value="0.0"/>
</SuspensionZAxisRear>   
</Suspension>