#SEMI-PRO SLED $Id: slphys02.txt,v 1.10 2002/09/13 03:54:23 chuck Exp $



# Dry weights vary from less than 400 lbs? (175 kg) for Redline (flyweight?) 

# to 560 lbs (255 kg) for Polaris 800 XC (aggressive). 

# Add ~16 gal (60 L) for fuel/oil (assuming 0.75 g/ml, 60 L = 45 kg).

# Lightest = 220 kg, heaviest = 300 kg.

mass = 390 # Was 360.



# Sled center of mass in x, y and z axis (0, 0.1, 0.45) (0.36)

COM = 0, -0.02, 0.15

COM_CRASH = 0, 0.5, 0.15



# Sled moment of inertia in kg * m^2 on each axis. (350, 350, 125)

MOI = 140, 350, 125



# Rider mass in kg. Assuming 176 lbs rider.

ridermass = 80



# Wind drag coefficient (2.29, 1.79, 3.29 4.58)

winddrag = 3.27 #was 2.0



# Air state damping.

# Larger numbers mean less damping.

GYRO_DAMP_X 0.3 #was 1.0

GYRO_DAMP_Y 1.0



# Ground Angular Velocity Damping Threshold (R)(Tm)

# I really don't know what this means too well... It has something

# to do with when the ground AV damping *really* kicks in

# (in radians per second)... Basically, lower numbers damp more

# higher numbers damp less.... Seems to suck more the further from

# 2.0 you go. (Bring down once friction is reasonable.) (3.65)

GYRO_DAMP_GAV_PACK  2.3 #was 3.5, 2.7, 1.8, 1.9, 2.6
GYRO_DAMP_GAV_DEEP  1.7 #was 1.7, 1.9
GYRO_DAMP_GAV_ICE   2.7 #was 2,7, 1.8, 1.9, 1.7
GYRO_DAMP_GAV_WATER 1.7 #was 1.8, 1.9
GYRO_DAMP_GAV_MUD   2.0 #was 1.7, 1.9
GYRO_DAMP_GAV_HARD  2.0 #was 2.0, 1.9
# This has been dropped to accomodate ice, but it won't allow quick spins.



# How fast sliding friction goes from max to min (range per second) (5.0)

SLIDE_FRICTION_DOWN_RATE 20.0 #was 20.0 #old 8.0, 5.0



# How fast sliding friction goes from min to max (range per second)

# (range per second means how far thru the range it goes per second

# so 1.0 takes 1 second, 3.0 takes 1/3 second, etc., so higher is faster) (1.0)

SLIDE_FRICTION_UP_RATE 50.0 #was 20.0 #old 8.0, 3.0, 5.0, 0.25



# Ramp-up time for player controlled mid-air pitch/roll changes.

PITCH_TIMEOUT 0.05



# Factor controlling how much acceleration is given by gas/brake in the air.

# Modify this if the moment of inertia continues to change.

AIR_PITCH_FACTOR 675.0 #was 375.0



# Amount of acceleration on X that the player can create (m/s^2)

AIR_LATERAL_CONTROL 2.5



# Maximum amount skis can be turned. (0.350 = 20)

MAX_SKI_YAW .350



# Ski turn less at high speed hack

# This is the speed that the skis lock straight (obviously, this should always

# be higher than the maximum possible speed)  Ski turn ratio goes from 1.0 

# at speed zero, to 0.0 at this given speed 

# (50 m/s ~ 110 mph, 53.5 ~ 120 mph, 60 ~ 134 mph)

SKI_YAW_ZERO_SPEED 55

# Just in case, this is the minimum ratio that the ski max can be reduced to

SKI_YAW_MIN_MAX_RATIO 0.1



# Factor used to determine how much auto-roll is applied in the air.

AUTO_ROLL_FACTOR 1.0



# Ramp-up time for mid-air auto-roll.

AUTO_ROLL_TIMEOUT 0.5



# How far it's possible to lean. 

# This limit can be doubled if auto and manual lean go in the same direction.

LEAN_LIMIT_X 0.7

LEAN_LIMIT_Z 0.7



# Maximum amount of "up" force put on the skis when leaning back (newtons). (2425)

# This will need to be changed if the sled's mass, it's c.m., the gravity, or 

# the force at the tread change.

MAX_SKI_UP_FORCE 6000.0



# YE OLD NORMAL CODE OF THE MORTALS

# This modifies the upforce significantly

# crictical angle is actually the sine of the angle, I think.. It might be cosine :(

# Smackdown is the factor multiplied when the force is downward

UPFORCE_CRITICAL_ANGLE 0.52

UPFORCE_CRITICAL_SMACKDOWN 3.0



# Above "up" force is only applied when accelerating forward more than

# this many m/s. This is a hack to prevent the sled from flipping. (2.5)

SKI_UP_FORCE_ACCEL 2.5



# How long the rider is forced to lean back when the clutch engages (ms).

CLUTCH_LEAN_TIME 1500



# How fast the rider is forced back when the clutch engages.  He is pushed

# back at this rate until he reaches LEAN_LIMIT_Z. (3.0) (1.2)

CLUTCH_LEAN_RATE 3.0



# RPM where the clutch engages.

CLUTCH_ENGAGE_RPM 5000.0



# How much force is applied by the brakes to slow the track.  If the track is

# producing less force than this and the brakes are applied, the track stops

# and generates no force.  Otherwise, the track is slowed proportionally and

# produces less force. (6000)

BRAKING_TRACK_FORCE 200.0 #was 1500.0



# How much ground friction force is created when the track is moving slower

# than the sled. (900, 750)

BRAKING_GROUND_FORCE 10.0 #was 400.0



# How long it takes for brakes to reach full force (s) (0.8)

BRAKE_TIME 2.0 #was 0.01, 1.2



# As the sled throttles up and down the current RPM move towards the target

# RPM in a linear fashion.  This number scales the speed at which the RPM

# changes.  A larger numbers equal slower RPM adjustment.

RPM_APPROACH_RATE 5000 #was 3458.0, 3333.0



# Maximum RPMs

RPM_MAX 9000.0



# Nitro boost time

NITRO_TIME 6.0



# Gear sizes.  These are the maximum and minimum sizes of each of the sled's gears

# or pulleys or whatever they're called.  Units are unimportant as the primary and

# secondary gears are compared to get a gear ratio.

#

# The sled starts with the belt at PRI_GEAR_LOW and SEC_GEAR_HIGH.  Divide these two

# numbers to get the lowest gear ratio.  The maximum gear ratio is PRI_GEAR_HIGH

# divided by SEC_GEAR_LOW. (0.1, 1.0, 1.4, 1.2, 1.6)

PRI_GEAR_LOW  0.1

PRI_GEAR_LOCK_HIGH 1.0

PRI_GEAR_HIGH 1.33 #was 1.28

SEC_GEAR_LOW  1.2

SEC_GEAR_HIGH 1.6



# The gears shift at this rate.  This is measured in units/sec.  For example, if

# PRI_GEAR_LOW is 0.4 and PRI_GEAR_HIGH is 1.0 and PRI_SHIFT_RATE is 0.2, the belt

# will move through the entire range in 3 seconds.

PRI_SHIFT_RATE 0.2

SEC_SHIFT_RATE 0.1



# This determines how much the secondary clutch PERCIEVES the load due to gravity.

# It does not affect gravity itself, just how much gravity affects the clutch.

# Low load factor is on straight & level... high load factor is totally vertical

# Things in between are somewhere in between

GRAVITY_LOAD_FACTOR_LOW 1.5

GRAVITY_LOAD_FACTOR_HIGH 6.18 #was 6.37



# Rate of load factor change per second

GRAVITY_LOAD_FACTOR_RATE 0.75



# Amount of load on the sled at the secondary clutch low and high ratio

CLUTCH_LOAD_LOW 4000

CLUTCH_LOAD_HIGH 12000



# Amount of drag that has something to due with engine drag.  Lower numbers drag

# the engine more, It should not be less than CLUTCH_LOAD_LOW, or the effect will

# be the opposite of what you want.

ENGINE_DRAG_LOAD 4500



# The maximum amount of horsepower is generated at this RPM.  This is used to determine

# when the primary gear begins to shift.

MAX_HP_RPM 8750.0



# The torque curve of the engine is two lines.  Below MAX_TORQUE_RPM, the first line

# is used.  Above MAX_TORQUE_RPM, the second line is used.  The first line has an

# upward slow of TORQUE_SLOPE_UP and the second line has a downward slope of

# TORQUE_SLOPE_DOWN.

MAX_TORQUE_RPM 8000.0

TORQUE_SLOPE_DOWN 0.025



# The engine's RPMs are scaled by the gear ratio to get a track RPM.  That RPM is

# the scaled by this number to get a track speed.  This number represents some measure

# of the length of the tread.  A longer tread would require a larger engine RPM to

# turn compared to a shorter tread. (0.003666 (Sport), 0.0043 (S-Pro), 0.004966 (Pro))

TRACK_SPEED_FACTOR 0.004187 #was 0.0043



# Similar to TRACK_SPEED_FACTOR, but this number scales torque instead of speed. 

# (320 (Sport), 360 (Semi-Pro), 400 (Pro))

TRACK_FORCE_FACTOR 347.5 #was 360



# Idle RPMs

RPM_IDLE 1400.0



# Reverse gear size.  Bigger means lower top speed but higher acceleration.

REVERSE_GEAR_SIZE 5.0



# But since we don't want really high accel in reverse, engine torque

# is capped to this in reverse.

REVERSE_MAX_TORQUE 500



# Comfiness (0.0 - 1.0) affects the rider's endurance

COMFORT 0.3 #was 0.75



# Floatation of sled on certain surfaces (deep snow, water, mud)

SURFACE_FLOATATION 0.0



# Drag of sled in certain surfaces (deep snow, water, mud)

SURFACE_DRAG 0.0



# How much stamina the character loses per m/s fall velocity (0.3)

landing_speed_stamina_loss_factor 0.0



# What the loss is multiplied by at 0 degrees (low) and 90 degrees (high)

landing_angle_stamina_loss_factor_low 0.0 #was 1.0

landing_angle_stamina_loss_factor_high 0.0 #was 6.0



# Stamina loss colliding with another sled (1/10k stamina bar per newton ^2) (0.00001)

sled_collide_stamina_loss 0.00005



# Stamina loss colliding with the ground (or walls, etc...) (3.0)

ground_collide_stamina_loss 32.0 #was 3.0, 1.5



# Stamina loss from head-on death per m/s
collide_death_stamina_loss 10.0



# Stamina loss from landing inverted

flip_stamina_loss 75.0



# Stamina loss from failed trick

trick_fail_stamina_loss 50.0



# Top speed of sled in m/s.

top_speed = 38.0



# Top speed without turbo engaged.

non_turbo_speed = 32.0



# Time needed to turn skis all the way

ski_yaw_time = 0.1974



# Distance to go from top_speed to 0.

braking_distance = 40.0



# RPM below which the hi-gear cannot be used.

clutch_min_rpm = 8000.0


#### accel animation ####
# The sled must go from below speed_lo to above speed_hi in
# less than max_time_from_lo_to_hi to trigger the acceleration
# animation.  The animation will be used for up to max_play_time,
# or until the user releases the throttle.
accel_anim_speed_lo = 2.24 #m/s, 5 mph
accel_anim_speed_hi = 4.47 #m/s, 10 mph
accel_anim_max_time_from_lo_to_hi = 0.25
accel_anim_max_play_time = 1.8
accel_anim_min_throttle = 0.9


#### Clutch stamina loss variables ####



# Maximum stamina points which can be lost due to clutch engagement per second.

#max_clutch_stamina_loss = 0.0 #was 12.0

#max_clutch_stamina_loss_ai = 0.0 #was 10.0



# This amount of stamina will be lost per second when the clutch is engaged on top

# of the amount calculated with the numbers below.

#min_clutch_stamina_loss = 0.0 #was 6.0

#min_clutch_stamina_loss_ai = 0.0 #was 4.0



# Speed at which stamina loss starts (m/s) (60 mph).

#min_speed_clutch_stamina_loss = 26.82



# Speed at which stamina loss is greatest (m/s) (95 mph).

#max_speed_clutch_stamina_loss = 42.47



# HP at which stamina loss starts. 

#min_hp_clutch_stamina_loss = 75.0



# HP at which stamina loss is greatest.

#max_hp_clutch_stamina_loss = 175.0



# Strength below which stamina loss is greatest.

#min_strength_clutch_stamina_loss = 8.0



# Strength above which stamina loss never occurs.

#max_strength_clutch_stamina_loss = 24.0



# Amount of stamina lost due to speed as vs. horsepower (0 means all HP,

# 1 means all speed).

#clutch_stamina_loss_speed_ratio = 0.5



#### End clutch stamina loss variables ####



# Reaction points

ReactionPos

{

		{ 0.700, 0.000, 1.175}, #right ski

		{-0.700, 0.000, 1.175}, #left ski

		{ 0.300, 0.000,-1.018}, #right track

		{-0.300, 0.000,-1.018}, #left track

		{ 0.0, 1.05, -0.5}, #rider

}



# Suspension parameters

Suspension

		{ #ski (0.35, 0.1, 0.3, 1.86, 0.4), (0.225, 1.395, 0.3)

			0.25,# suspension travel - meters

			0.1, # surface area - m^2

			0.225, # zero factor - unit (1/3 ground reaction point?)



			# Friction on packed snow

			2.42, # lateral friction coeff with skis straight (2.4)

			2.42, # lateral friction coefficient - unit, skis turned (1.7)

			2.42, # lateral friction coefficient - unit, deep surface (2.4)

			13.94, # lateral friction coefficient - high angle
			0.3, # forward friction coefficient - unit (0.3 fixed)

			0.3, # high angle friction

			0.889, # high angle

			0, # buoyant speed - m/s (0)



			# Friction on deep snow

			2.117, # lateral friction coeff with skis straight (1.963)

			2.117, # lateral friction coefficient - unit, skis turned (1.963)

			1.429, # lateral friction coefficient - unit, deep surface (1.32)

			12.19, # lateral friction coefficient - high angle
			0.24, # forward friction coefficient - unit (0.24)

			0.24, # high angle friction

			0.889, # high angle

			35.76, # buoyant speed - m/s (35.76)



			# Friction on ice

			1.66, # lateral friction coeff with skis straight (1.32)

			1.36, # lateral friction coefficient - unit, skis turned (1.32)

			1.66, # lateral friction coefficient - unit, deep surface (1.32)

			9.56, # lateral friction coefficient - high angle
			0.15, # forward friction coefficient - unit (0.15)

			0.15, # high angle friction

			0.889, # high angle

			0, # buoyant speed - m/s (0)



			# Friction on water

			1.8, # lateral friction coeff with skis straight (1.8)

			1.8, # lateral friction coefficient - unit, skis turned (1.8)

			0.011, # lateral friction coefficient - unit, deep surface (0.011)

			1.8, # lateral friction coefficient - high angle
			0.24, # forward friction coefficient - unit (0.24)

			0.24, # high angle friction

			0.889, # high angle

			23.69, # buoyant speed - m/s (23.69)



			# Friction on mud

			1.429, # lateral friction coeff with skis straight (1.32)

			1.429, # lateral friction coefficient - unit, skis turned (1.32)

			1.429, # lateral friction coefficient - unit, deep surface (1.32)

			8.23, # lateral friction coefficient - high angle
			0.21, # forward friction coefficient - unit (0.21)

			0.21, # high angle friction

			0.889, # high angle

			35.76, # buoyant speed - m/s



			# Friction on hard surfaces (wood/metal/etc)

			2.533, # lateral friction coeff with skis straight (2.4)

			2.533, # lateral friction coefficient - unit, skis turned (2.4)

			2.533, # lateral friction coefficient - unit, deep surface (2.4)

			2.533, # lateral friction coefficient - high angle
			0.3, # forward friction coefficient - unit (0.3)

			0.3, # high angle friction

			0.889, # high angle

			0, # buoyant speed - m/s (0)



			{ # normal suspension props (27550)

				25300, #was 27550 # spring k - N/m - use (mass * g) / restPos

				3300,  #was 3600 # damping coeff - Ns/m - Reduces the bouncies

			},

			{ # maxed suspension props (36740)

				125500, #was 136740

				10000, #was 10000

			},

		},



		{ # TRACK (0.35, 0.75, 1.6, 14.5, 24.1), (1.2, 10.88, 18.08)

			0.35, # suspension travel - meters

			0.75, # surface area - m^2

			0.5, # zero factor - unit (0.225)

			

			# Friction on packed snow

			2.12, # lateral - straight (6.0)

			2.12, # lateral friction coefficient - unit, turned (0.55)

			2.12, # lateral friction coefficient - unit, deep surface (6.0)

			12.21, # lateral friction coefficient - high angle
			2.333, # forward friction coefficient - unit (5.0)

			13.44, # high angle friction 

			0.889, # high angle

			0, # buoyant speed - m/s (0)



			# Friction on deep snow

			3.3, # lateral - straight (3.6)

			3.3, # lateral friction coefficient - unit, turned (3.6)

			5.52, # lateral friction coefficient - unit, deep surface (6.0)

			19.00, # lateral friction coefficient - high angle
			1.294, # forward friction coefficient - unit (1.294)

			7.45, # high angle friction (4.19)

			0.889, # high angle (0.8)

			44.7, # buoyant speed - m/s (44.7)



			# Friction on ice

			1.31, # lateral - straight (1.212)

			1.01, # lateral friction coefficient - unit, turned (1.212)

			1.31, # lateral friction coefficient - unit, deep surface (1.212)

			7.55, # lateral friction coefficient - high angle
			2.7, # forward friction coefficient - unit (2.7)

			15.55, # high angle friction (8.74)

			0.889, # high angle (0.8)

			0, # buoyant speed - m/s (0)



			# Friction on water

			2.4, # lateral - straight (2.4)

			2.4, # lateral friction coefficient - unit, turned (2.4)

			36.0, # lateral friction coefficient - unit, deep surface (36.0)

			2.4, # lateral friction coefficient - high angle
			1.35, # forward friction coefficient - unit (1.35)

			1.35, # high angle friction

			0.889, # high angle

			38.00, # buoyant speed - m/s (38.00)



			# Friction on mud

			2.124, # lateral - straight (2.31)

			2.124, # lateral friction coefficient - unit, turned (2.31)

			2.124, # lateral friction coefficient - unit, deep surface (2.31)

			12.23, # lateral friction coefficient - high angle
			1.45, # forward friction coefficient - unit (1.45)

			8.35, # high angle friction (4.69)

			0.889, # high angle (0.8)

			40.23, # buoyant speed - m/s (40.23)



			# Friction on hard surfaces (wood/metal/etc)

			6.6, # lateral - straight (7.2)

			6.6, # lateral friction coefficient - unit, turned (7.2)

			6.6, # lateral friction coefficient - unit, deep surface (7.2)

			6.6, # lateral friction coefficient - high angle
			5.0, # forward friction coefficient - unit (5.0)

			5.0, # high angle friction

			0.889, # high angle

			0, # buoyant speed - m/s (0)

			

			{ # normal suspension props (13775)

				14900, #was 13775 # spring k - N/m - use (mass * g) / restPos

				4870, #was 4500 # damping coeff - Ns/m - Reduces the bouncies

			},

			{ # maxed suspension props (18370)

				19880, #was 18370

				10000, #was 10000

			},

		},

	},

}

