>> HDC file explained by Alex Rhaan aka Alexi99 <<

>> all comments will be in // GTR2 Seat Toledo high-detail Car parameter file.

// It is pointed to by one or more *.car files.

//

// Any range has the following values: (minimum, step size, number of steps)

// Any setting refers to the step from 0 to .

//

// Everything is in SI units (kg, m, kPa, N, etc.), except:

// Engine speed is measured in RPM.

// Angles are measured in degrees.

//

// +x = left

// +y = up

// +z = rear

//

// Pushrod connections are adjusted from the values found in this file

// based on the graphical location of the wheels. If the graphical location

// does not match the physical location (found in a .sp file), then all

// suspension joints (including the pushrods) are adjusted to match the

// graphical locations. It should be also noted that suspension joints

// are also adjusted after setting the camber and toe-in.

//

// Aerodynamic variables:

// Lift variables creating downforce are negative numbers

//

 

[GENERAL]

Rules=0 // what rules to apply to garage setups (0=none, 1=stock car)

GarageDisplayFlags=7 // how settings are displayed in garage (add): 1=rear wing, 2=radiator, 4=more gear info

FeelerFlags=0 // how collision feelers are generated (add): 1=box influence 2=reduce wall-jumping 4=allow adjustment hack 8=top directions

Mass=1230.0 // all mass except fuel (1150kg car + 80kg driver weight)

Inertia=(1199.0,1366.0,290.0) // all inertia except fuel

FuelTankPos=(0.0, 0.200, -1.190) // location of tank affects center of gravity (very close and even slightly ahead of CG in F1)

FuelTankMotion=(560.0,0.7) // simple model of fuel movement in tank (spring rate per kg, critical damping ratio)

Notes="Seat Toledo"

Symmetric=1 <0= different right & left setups, 1= same setup effects right & left>DamageFile=Seat_damage.dmg // file to find physical and graphical damage info

CGHeight=0.245 // height of body mass (excluding fuel) above reference plane CGRightRange=(0.50, 0.000, 0) // fraction of weight on left tires <0.50= 50%, an even distribution><1st number is the default ballance, 2nd is the amount changed per 'tick', 3rd is the number of 'ticks' allowed>CGRightSetting=0 CGRearRange=(0.54, 0.005, 0) <2nd is the amount changed per 'tick', 3rd is the number of 'ticks' allowed>CGRearSetting=0 GraphicalOffset=(0.0, 0.00, 0.0) // does not affect physics!

Undertray00=(0.85, -0.00, -1.800) // offset from center of car, and between axles// LF (Left front corner of splitter) (forward is negative, right is negative)

Undertray01=(-0.85, -0.00, -1.800) // offset from center of car, and between axles// RF (Right front corner of splitter)

Undertray02=(0.85, -0.00, 1.000) // offset from center of car, and between axles // LR (Left rear corner of floor

Undertray03=(-0.85, -0.00, 1.000) // offset from center of car, and between axles // RR (Right rear corner of floor)

Undertray04=(0.35, -0.00, -2.295) // offset from center of car, and between axles// Left center front nose

Undertray05=(-0.35, -0.00, -2.295) // offset from center of car, and between axles// Right center front nose

Undertray06=(0.85, -0.00, 0.000) // offset from center of car, and between axles // Center/bottom of Left rocker panel

Undertray07=(-0.85, -0.00, 0.000) // offset from center of car, and between axles // Center/bottom of right rocker panel

Undertray08=(0.35, -0.00, -0.900) // offset from center of car, and between axles// Floor LF corner

Undertray09=(-0.35, -0.00, -0.900) // offset from center of car, and between axles// Floor RF corner

Undertray10=(0.85, -0.00, 1.900) // offset from center of car, and between axles // Diffuser LR corner

Undertray11=(-0.85, -0.00, 1.900) // offset from center of car, and between axles // Diffuser RR corner

UndertrayParams=(262500.0,11600.0, 4.0) // undertray spring rate, damper rate, and coefficient of friction

TireBrand=Dunlop_NGT // must appear before tire compound setting (references *.tyr file)

FrontTireCompoundSetting=1 // Front compound index within brand

RearTireCompoundSetting=1 // Rear compound index within brand

FuelRange=(1.0, 1.0, 100) <1st & 2nd numbers unknown, 3rd is the maximum capacity of the fuel cell in litres>FuelSetting=49 <49 litres or 49%>NumPitstopsRange=(0, 1, 4)<3rd number is the default total number of pitstops that can be pre-assigned in the hdc file>NumPitstopsSetting=3 Pitstop1Range=(1.0, 1.0, 100) <1st number unknown, 2nd= number of liters per 'tick'><3rd number maximum number of 'ticks', indicates the maximum fuel in liters that can be taken at THIS pit stop>Pitstop1Setting=99 Pitstop2Range=(1.0, 1.0, 100)

Pitstop2Setting=99

Pitstop3Range=(1.0, 1.0, 100)

Pitstop3Setting=99

AIMinPassesPerTick=2 // minimum passes per tick (can use more accurate spring/damper/torque values, but takes more CPU)

AIRotationThreshold=0.12 // rotation threshold (rads/sec) to temporarily increment passes per tick

AIEvenSuspension=0.0 // averages out spring and damper rates to improve stability (0.0 - 1.0)

AISpringRate=1.0 // spring rate adjustment for AI physics (improves stability)

AIDamperSlow=1.2 // contribution of average slow damper into simple AI damper

AIDamperFast=0.4 // contribution of average fast damper into simple AI damper

AIDownforceZArm=0.150 // hard-coded center-of-pressure offset from vehicle CG

AIDownforceBias=0.0 // bias between setup and hard-coded value (0.0-1.0)

AITorqueStab=(1.25, 1.25, 1.25) // torque adjustment to keep AI stable

//FeelerFlags=15 // how collision feelers are generated (add): 1=box influence 2=reduce wall-jumping 4=allow adjustment hack 8=top directions

//FeelerOffset=(0.0, 0.0, 0.0) // offset from cg to use when generating feelers

//FeelersAtCGHeight=1 // whether corner and side feelers are automatically adjusted to CG height

//FeelerFrontLeft=(1.003,0.384,-2.554) // front-left corner collision feeler

//FeelerFrontRight=(-1.003,0.384,-2.554) // front-right corner collision feeler

//FeelerRearLeft=(1.003,0.384,2.586) // rear-left corner collision feeler

//FeelerRearRight=(-1.003,0.384,2.586) // rear-right corner collision feeler

//FeelerFront=(0.064,0.384,-2.639) // front side collision feeler

//FeelerRear=(0.064,0.384,2.587) // rear side collision feeler

//FeelerRight=(-1.039,0.384,-0.247) // right side collision feeler

//FeelerLeft=(1.039,0.384,-0.247) // left side collision feeler

//FeelerTopFrontLeft=(-0.478,1.540,-0.298) // top front-left collision feeler

//FeelerTopFrontRight=(0.478,1.540,-0.298) // top front-right collision feeler

//FeelerTopRearLeft=(-0.652,1.511,2.323) // top rear-left collision feeler

//FeelerTopRearRight=(0.652,1.511,2.323) // top rear-right collision feeler

//FeelerBottom=(0.064,0.249,-0.247) // bottom feeler

 

[FRONTWING]

FWRange=(2.0, 1.0, 2) // front wing range <1st=unknown, 2nd=change per 'tick', 3rd= # of 'ticks'>FWSetting=1 // front wing setting FWMaxHeight=(0.10) // maximum height to take account of for downforce

FWDragParams=(0.0077, 0.0084, 0.0004) // base drag and 1st and 2nd order with setting

FWLiftParams=(-0.139, -0.081, 0.00003) // base lift and 1st and 2nd order with setting

FWLiftHeight=(0.335) // effect of current height on lift coefficient

FWLiftSideways=(0.0) // dropoff in downforce with yaw (0.0 = none, 1.0 = max)

FWLeft=(-0.005, 0.0, 0.0) // aero forces from moving left

FWRight=(0.005, 0.0, 0.0) // aero forces from moving right

FWUp=(0.0, -0.04, -0.001) // aero forces from moving up

FWDown=(0.0, 0.02, 0.001) // aero forces from moving down

FWAft=(0.0, 0.02, -0.02) // aero forces from moving rearwards

FWFore=(0.0, 0.0, 0.0) // aero forces from moving forwards (recomputed from settings)

FWRot=(0.05, 0.025, 0.075) // aero torque from rotating

FWCenter=(0.00, -0.00, -0.60) // center of front wing forces (offset from center of front axle in ref plane)

 

[REARWING]

RWRange=(6.0, 1.0, 10) // rear wing range

<1st=unknown, 2nd=change per 'tick', 3rd= # of 'ticks'>RWSetting=9 // rear wing setting RWDragParams=(0.0035, 0.0049, 0.0001) // base drag and 1st and 2nd order with setting

RWLiftParams=(-0.352, -0.0253, 0.00003) // base lift and 1st and 2nd order with setting

RWLiftSideways=(0.0) // dropoff in downforce with yaw (0.0 = none, 1.0 = max)

RWPeakYaw=(12.0, 0.90) // angle of peak, multiplier at peak

RWLeft=(-0.005, 0.0, 0.0) // aero forces from moving left

RWRight=(0.005, 0.0, 0.0) // aero forces from moving right

RWUp=(0.0, -0.08, -0.002) // aero forces from moving up

RWDown=(0.0, 0.04, 0.002) // aero forces from moving down

RWAft=(0.0, 0.03, -0.4) // aero forces from moving rearwards

RWFore=(0.0, 0.0, 0.0) // aero forces from moving forwards (recomputed from settings)

RWRot=(0.07, 0.04, 0.10) // aero torque from rotating

RWCenter=(0.00, 0.60, 0.50) // center of rear wing forces (offset from center of rear axle at ref plane)

 

[BODYAERO]

BodyDragBase=(0.34) // base drag BodyDragHeightAvg=(0.22) // drag increase with average ride height

BodyDragHeightDiff=(0.47) // drag increase with front/rear ride height difference

BodyMaxHeight=(0.20) // maximum ride height that affects drag/lift

BodyLeft=(-0.6, 0.0, 0.0) // aero forces from moving left

BodyRight=(0.6, 0.0, 0.0) // aero forces from moving right

BodyUp=(0.0, -0.9, 0.0) // aero forces from moving up

BodyDown=(0.0, 0.9, 0.0) // aero forces from moving down

BodyAft=(0.0, 0.5, -0.8) // aero forces from moving rearwards

BodyFore=(0.0, -0.160, 0.435) // aero forces from moving forwards (lift value important!)

BodyRot=(9.45, 7.0, 4.70) // aero torque from rotating

BodyCenter=(0.0, 0.50, -1.45) // center of body aero forces (offset from center of rear axle at ref plane)

RadiatorRange=(0.0, 1.0, 4) // radiator range

<1st=unknown, 2nd= a variable that changes per 'tick' [found in the eng file], 3rd= total number of 'ticks'>RadiatorSetting=3 // radiator setting

RadiatorDrag=(0.003) // effect of radiator setting on drag

RadiatorLift=(0.00275) // effect of radiator setting on lift

BrakeDuctRange=(0.0, 1.0, 5) // brake duct range

<1st=?, 2nd=a variable that changes per 'tick' [found later in THIS hdc file], 3rd= maximum # of 'ticks'>BrakeDuctSetting=3 // brake duct setting

BrakeDuctDrag=(0.002) // effect of brake duct setting on drag

BrakeDuctLift=(0.00425) // effect of brake duct setting on lift

 

[DIFFUSER]

DiffuserBase=(-0.250, -2.33, 43.0) // base lift and 1st/2nd order with rear ride height

DiffuserFrontHeight=(0.000) // 1st order with front ride height

DiffuserRake=(0.005, -5.0, 150.0) // Optimum rake (rear - front ride height), 1st order with current difference from opt, 2nd order

DiffuserLimits=(0.010, 0.100, 0.055) // Min ride height before stalling begins (0.0 to disable), max rear ride height for computations, max rake difference for computations

DiffuserStall=(0.0, 1.0) // function to compute stall ride height (0.0=minimum, 1.0=average), downforce lost when bottoming out (0.0=none,1.0=complete stall)

DiffuserSideways=(0.3) // dropoff with yaw (0.0 = none, 1.0 = max)

DiffuserCenter=(0.0, 0.10, -1.340) // center of diffuser forces (offset from center of rear axle at ref plane)

 

[SUSPENSION]

PhysicalModelFile=Seat.sp

ApplySlowToFastDampers=0 // whether to apply slow damper settings to fast damper settings

CorrectedInnerSuspHeight=0.235 // instead of moving inner susp height relative with ride height, use this offset (set to -1 for original behavior)

AdjustSuspRates=1 // adjust suspension rates due to motion ratio ( 0=enable, 1=disable)

AlignWheels=1 // correct for minor graphical offsets

FrontWheelTrack=0 // if non-zero, forces the front wheels to be specified track width

RearWheelTrack=0 // if non-zero, forces the rear wheels to be specified track width

LeftWheelBase=0 // if non-zero, forces the left side to use specified wheelbase

RightWheelBase=0 // if non-zero, forces the right side to use specified wheelbase

SpringBasedAntiSway=1 // 0=diameter-based, 1=spring-based

FrontAntiSwayBase=0.0

FrontAntiSwayRange=(10000.0, 10000.0, 25) <1st= strength rating of the sway bar, 2nd=amount change per 'tick', 3rd=number of 'ticks'>FrontAntiSwaySetting=12 FrontAntiSwayRate=(1.36e11, 4.0) // not applicable with spring-based antisway

AllowNoAntiSway=1 // Whether first setting gets overridden to mean no antisway bar

RearAntiSwayBase=0.0

RearAntiSwayRange=(5000.0, 5000.0, 20) <1st= strength rating of the sway bar, 2nd=amount change per 'tick', 3rd=number of 'ticks'>RearAntiSwaySetting=5 RearAntiSwayRate=(1.36e11, 4.0) // not applicable with spring-based antisway

FrontToeInRange=(-2.0, 0.1, 41) <1st= # of cm of the toe[a negative number is a toe in, a possitive number is a toe out]><2nd=amount of cm per 'tick', 3rd= maximum number of 'ticks'>FrontToeInSetting=19 RearToeInRange=(-2.0, 0.1, 41) RearToeInSetting=21 LeftCasterRange=(-0.0, 0.25, 29) // front-left caster

 

http://www.hunter.com/pub/undercar/2573T/index.htm >LeftCasterSetting=12

RightCasterRange=(-0.0, 0.25, 29) // front-right caster

RightCasterSetting=12

 

[CONTROLS]

SteeringFFBMult=1.0

UpshiftAlgorithm=(0.97,0.0) // percentage of the rev limit to upshift at. If the 2nd value is non-zero, then we will use it as the exact RPM to upshift at.

DownshiftAlgorithm=(0.9,0.85,0.6) // percentage of "optimum" downshift point in high gears, percentage of "optimum" downshift point in low gears, oval adjustment.

SteerLockRange=(5.0, 0.5, 37) <1st=minimum cm range, 2nd=# of cm per 'tick', 3rd=# of 'ticks'>SteerLockSetting=20 RearBrakeRange=(0.200, 0.005, 121) <1st=minimum range, 2nd= change per 'tick', 3rd=# of 'ticks'>RearBrakeSetting=52 BrakePressureRange=(0.80, 0.01, 21) <1st=base amount of hydraulic pressure, 2nd= amout change per 'tic', 3rd=# of 'ticks">BrakePressureSetting=20 HandbrakePressRange=(0.00, 0.05, 21) //

HandbrakePressSetting=0

AutoUpshiftGripThresh=0.63 // auto upshift waits until all driven wheels have this much grip (reasonable range: 0.4-0.9)

AutoDownshiftGripThresh=0.63 // auto downshift waits until all driven wheels have this much grip (reasonable range: 0.4-0.9)

TractionControlGrip=(1.00, 0.20) // average driven wheel grip multiplied by 1st number, then added to 2nd

TractionControlLevel=(0.30, 0.90) // effect of grip on throttle for low TC and high TC

ABS4Wheel=1 // 0 = old-style single brake pulse, 1 = more effective 4-wheel ABS

ABSGrip=(1.00, 0.20) // grip multiplied by 1st number and added to 2nd

ABSLevel=(0.30, 0.90) // effect of grip on brakes for low ABS and high ABS