Cars – Suspension - ac-custom-shaders-patch/acc-extension-config GitHub Wiki

Alternative ways of applying torque to suspension (fix for Kunos bug that caused inaccuracies with anti-effects geometry)

suspensions.ini

[_EXTENSION]
TORQUE_MODE_EX=0 ; options: 0, 1, 2 --- 0 is default, 1 is broken, 2 recommended and should be physically accurate

Fix for progressive spring rates (Kunos bug)

suspensions.ini

[_EXTENSION]
FIX_PROGRESSIVE_RATE=1

New double-wishbone suspension extension (including input for motion ratio lookup tables, bumpstop lookup tables, progressive rate fix, with more to come)

Example implementation:

suspensions.ini

[_EXTENSION]
USE_DWB2=1

[FRONT]
MOTION_RATIO=motion_ratio_f.lut    ;motion ratio lookup table (deflection from zero-point|motion ratio)
BUMP_STOP_LUT=bsf.lut    ;deflection|force - must start with 0|0 - *note:* legacy implementation. See further down the page for the current implementation.

[HEAVE_FRONT]
MOTION_RATIO=motion_ratio_hf.lut
BUMP_STOP_LUT=bshf.lut

[REAR]
MOTION_RATIO=motion_ratio_r.lut
BUMP_STOP_LUT=bsr.lut

[HEAVE_REAR]
MOTION_RATIO=motion_ratio_hr.lut
BUMP_STOP_LUT=bshr.lut

New labeled spring adjustments for cars using DWB2

Example implementation: note: suspensions.ini format does not change. setup.ini

[SPRING_LF] ; LF, RF, RR, LR - replaces old SPRING_RATE_LF entry
SHOW_CLICKS=0
TAB=SUSPENSIONS
NAME=Spring Rate LF
LUT=suspension_springs.lut ; format: name|rate
POS_X=0
POS_Y=1
HELP=HELP_LF_WHEELRATE ; same as vanilla AC options, for now..
DISPLAY_VALUE_IN_BRACKETS=1 ; 1 - displays value in brackets next to name in setup window.

Added anti-roll bar motion ratios


New labeled anti-roll bar adjustments for extended cars

Example implementation:

suspensions.ini

[ARB]
EXTEND=1 ; required to enable extended ARBs
FRONT_MOTION_RATIO=1.0
FRONT=100000 ; Front anti-roll bar stifness in N/m
REAR_MOTION_RATIO=1.0
REAR=10000 ; Rear anti-roll bar stifness in N/m

note: setup.ini entries not required for motion ratios to function, but the EXTEND line under [ARB] is.

setup.ini

[ARB_F] ; F, R - replaces old vanilla AC entry
SHOW_CLICKS=0
TAB=SUSPENSIONS
NAME=ARB Front
LUT=suspension_arb_front.lut ; format: name|rate
POS_X=0.5
POS_Y=0
HELP=HELP_FRONT_ARB ; same as vanilla AC options, for now...
DISPLAY_VALUE_IN_BRACKETS=0 ; 1 - displays value in brackets next to name in setup window.

Steering ratio setup adjustments** (note breaks AI and animations, so not recommended)

Broken/unsupported as of May 2022

Example implementation:

setup.ini

[STEERING_RATIO]
SHOW_CLICKS=0
TAB=SUSPENSIONS ; desired tab
NAME=Steering Ratio
LUT=suspension_steer.lut ; format: display_name|ratio
POS_X=0.5
POS_Y=4
HELP=NULL ; no suitable option at the moment
DISPLAY_VALUE_IN_BRACKETS=1 ; 1 - displays value in brackets next to name in setup window.

Adjustable double wishbone suspension geometry (requires DWB2)

Example implementation:

setup.ini

[FRONT_GEOMETRY]
SHOW_CLICKS=0
TAB=SUSPENSIONS
NAME=Front Geometry
LUT=suspensions_setup_front_geometry.lut    ; name|index
GEO_0=suspensions_front_1.ini    ; ini file with the changed items (options: hub_mass and all pickup points) - same format as suspensions.ini - only modified items are required (if values are not present, it will load from the suspensions.ini)
GEO_1=suspensions_front_2.ini
DEFAULT=0    ; default GEO_ index to load
POS_X=0.5
POS_Y=3
HELP=NULL ; not available currently

[REAR_GEOMETRY]
SHOW_CLICKS=0
TAB=SUSPENSIONS
NAME=Rear Geometry
LUT=suspensions_setup_rear_geometry.lut
GEO_0=suspensions_rear_1.ini
GEO_1=suspensions_rear_2.ini
DEFAULT=0;
POS_X=0.5
POS_Y=4
HELP=NULL

Damper Lookup tables for cars using DWB2 suspension (Note motion ratio will be applied to dampers)

Example implementation:

suspensions.ini

[_EXTENSION]
DAMPER_LUTS=1    ; currently required

dampers.ini Note: New File

[HEADER]
ENABLE=1 ; 0 to disable

[FRONT]
BUMP_SLOW_0=damp_bump_slowf_0.lut   ;format: speed (m/s) | force (Newtons - sign does not matter).
BUMP_SLOW_4=damp_bump_slowf_4.lut
BUMP_SLOW_9=damp_bump_slowf_9.lut    ; note: you must at least have a lut for your first and final adjustment (if not adjustable, you only need the _0 entry). Linear interpolation between surrounding entries will be done for entries that are not present (1-3 and 5-8 in this example).
REBOUND_SLOW_0=damp_reb_slowf_0.lut
REBOUND_SLOW_4=damp_reb_slowf_4.lut
REBOUND_SLOW_9=damp_reb_slowf_9.lut
BUMP_FAST_0=damp_bump_fastf_0.lut
REBOUND_FAST_0=damp_reb_fastf_0.lut

setup.ini

[DAMPER_BUMP_LF]    ; the names are the same as Kunos entries except DAMP has been replaced by DAMPER
SHOW_CLICKS=2
TAB=DAMPERS
NAME=Bump
MIN=0    ; minimum setting
MAX=11    ; maximum setting
STEP=1
DEFAULT=7   ; default setting
POS_X=0
POS_Y=0
HELP=HELP_LF_DAMPER_BUMP

Bump stop/rubber lookup tables for cars using DWB2 suspension (added circa v1.74)

Note: For heave elements, extra functionality is added. You can use the old packer rate as a 3rd spring and the new bumpstop rate as a bump rubber, both with associated gaps. The gaps for each are at the ground (i.e. when the car is at static deflection). Packer range is used as the bumpstop gap for the corner springs, and it works the same as in vanilla AC.

Further note: Old implementation of bumpstop lookup tables still works.

Example implementation:

suspensions.ini

[_EXTENSION]
SEPARATE_BSH_GAPS=1 ; if 0 or line not present, bumpstop_gap = packer_range

[HEAVE_FRONT]
BUMPSTOP_GAP=0.1 ; gap in meters to bumpstop under static loading

[HEAVE_REAR]
BUMPSTOP_GAP=0.1 ; gap in meters to bumpstop under static loading

bumpstops.ini Note: New File

[HEADER]
ENABLE=1

[FRONT]
DEFAULT=0 ; default index/choice of bump rubber
STACK=1 ; number of rubbers stacked

[REAR]
DEFAULT=0
STACK=2

[FRONT_HEAVE]
DEFAULT=0
STACK=2

[REAR_HEAVE]
DEFAULT=1
STACK=3

[FRONT_0] ;can have as many as needed
LUT=filename.lut ; deflection in meters|force in newtons. Must begin with 0|0 (a "spring" should not produce force at 0 deflection in any case)
[FRONT_1]
LUT=filename.lut

[REAR_0]
LUT=filename.lut
[REAR_1]
LUT=filename.lut

[FRONT_HEAVE_0]
LUT=filename.lut
[FRONT_HEAVE_1]
LUT=filename.lut

[REAR_HEAVE_0]
LUT=filename.lut
[REAR_HEAVE_1]
LUT=filename.lut

setup.ini

[BUMPSTOP_HF] ; HF, HR
SHOW_CLICKS=0
TAB=SUSPENSION HEAVE
NAME=Bump Rubber F
LUT=bs_setup.lut ; can use this to assign names to each rubber. Format: Name|index
POS_X=1
POS_Y=0
HELP=HELP_HR_WHEELRATE

[BUMPSTOP_GAP_HF] ; HF, HR
SHOW_CLICKS=0
TAB=SUSPENSION HEAVE
NAME=Bump Rubber Gap
MIN=0
MAX=100
STEP=1
POS_X=1
POS_Y=1
HELP=HELP_HF_TRAVEL_RANGE

[BUMPSTOP_NUM_HF] ; HF, HR
SHOW_CLICKS=0
TAB=SUSPENSION HEAVE
NAME=Bump Rubber Stack
MIN=1
MAX=3
STEP=1
POS_X=0.5
POS_Y=2
HELP=Null

[BUMPSTOP_LF] ; LF, RF, LR, RR
SHOW_CLICKS=0
TAB=SUSPENSION ADV.
NAME=Bump Rubber LF
LUT=bs_setup.lut
POS_X=0
POS_Y=0
HELP=HELP_LF_BUMP_STOP_RATE

[BUMPSTOP_NUM_LF] ; LF, RF, LR, RR
SHOW_CLICKS=0
TAB=SUSPENSION ADV.
NAME=Rubber Stack LF
MIN=1
MAX=3
STEP=1
POS_X=0
POS_Y=1
HELP=Null

[PACKER_RANGE_LF] ; LF, RF, LR, RR - same as in vanilla
SHOW_CLICKS=0
TAB=SUSPENSION ADV.
NAME=Bump Rubber Gap LF
MIN=0
MAX=50
STEP=1
POS_X=0
POS_Y=2
HELP=HELP_LF_TRAVEL_RANGE