[INCLUDE: common/materials_interior.ini] 
[INCLUDE: common/navigators.ini]
[INCLUDE: common/selflighting.ini]
[INCLUDE: common/no_popup_lights.ini]
[INCLUDE: common/materials_glass.ini]
[INCLUDE: common/materials_interior.ini]
[INCLUDE: common/materials_carpaint.ini]
[INCLUDE: common/gt3_exhaust_glow.ini]
[INCLUDE: common/custom_emissive.ini]
[INCLUDE: navigators_mixins.ini]
[INCLUDE: android_auto/config.ini]
[INCLUDE: pbr_int.ini]
[INCLUDE: pbr_ext.ini]

;;;;;;;;; Audio Volume [CAREFULL WITH THIS] ;;;;;;;;; 
[AUDIO_PROPERTIES]
ENGINE_EXT_BOOST=1
ENGINE_INT_BOOST=1
TURBO_THROTTLE=1

[AUDIO_VOLUME]
BACKFIRE_EXT=1
BACKFIRE_INT=1
BODYWORK=1
DIRT=1
DOWN_SHIFT=1
ENGINE_EXT=2
ENGINE_INT=2
GEAR_EXT=1
GEAR_GRIND=1
GEAR_INT=1
HORN=1
LIMITER=1
TRACTION_CONTROL_EXT=1
TRACTION_CONTROL_INT=1
TRANSMISSION=1
TURBO=1
WIND=1

[AUDIO_PITCH]
ENGINE_EXT = 1.0
ENGINE_INT = 1.0
GEAR_EXT = 1.0
GEAR_INT = 1.0
BODYWORK = 1.0
WIND = 1.0
DIRT = 1.0
DOWN_SHIFT = 1.0
HORN = 1
GEAR_GRIND = 1.0
BACKFIRE_EXT = 1
BACKFIRE_INT = 1
TRACTION_CONTROL_EXT = 1
TRACTION_CONTROL_INT = 1
TRANSMISSION = 1
LIMITER = 1
TURBO = 1.0
HIT = 1
SCRAPE = 1
WHEEL = 1
SKID_EXT = .7
SKID_INT = .7

;;;;;;;;; Data Replacement ;;;;;;;;; 
[DATA] 
DISABLE_LIGHTSINI = 1

[LIGHTING] ; Standard Config - Do Not Change
EMISSIVE_BRAKELIGHTS_MULT=1
EMISSIVE_HEADLIGHTS_MULT=1
EMISSIVE_MULT=1
EMISSIVE_PARKINGLIGHTS_MULT=1
INTERIOR_FAKE_SHADOW_FADE=0.9
INTERIOR_FAKE_SHADOW_HEIGHT=0.4
INTERIOR_FAKE_SHADOW_OPACITY=0.9
INTERIOR_FAKE_UPPER_SHADOW_FADE=0.1
INTERIOR_FAKE_UPPER_SHADOW_HEIGHT=-0.1

[BASIC]
BRAKES_THRESHOLD=0.01
ENGINE_STALLED_RPM_THRESHOLD=1
HAZARD_LIGHTS_ENGINE_LIFE_THRESHOLD=0.001
HEADLIGHTS_ARE_HEADLIGHTS=1
HORN_AS_SIREN=0
IS_LOW_BEAM_AVAILABLE=1
LIGHT_DAMAGE_SPEED_MAX=120
LIGHT_DAMAGE_SPEED_MIN=80
STOP_LODS_ADJUSTMENT=0
TURNING_LIGHTS_REPEAT=1

[PARTICLES_FX]
BODYSPARKS_AMOUNT=0.25
BODYSPARKS_INTENSITY=0.2
BODYSPARKS_LIFETIME=0.4
BODY_SPARKS_COLOR=1, 0.5, 0, 10
COLLIDER_0SPARKS_AMOUNT=0.25
COLLIDER_0SPARKS_INTENSITY=0.2
COLLIDER_0SPARKS_LIFETIME=0.4
COLLIDER_0_SPARKS_COLOR=1, 0.5, 0, 10
DRAG_MULT=2
INTERIOR_BOUNDS_CHECK=1
INTERIOR_BOUNDS_HEIGHT=0.644874
LIFT_MULT=0.1
SPARKS_AMOUNT_MULT=2
SPARKS_COOLDOWN_LAG=0.96
SPARKS_DEPTH_EXP=4
SPARKS_MAX_DEPTH=0.0025
SPARKS_OVERLOAD_LAG=0.7
TRACES_LIGHTS_POS=0.655593, 0.825127, -2.15187

[INSTRUMENTS]
FUEL_SPLASH_MULT=0
HAZARDS_G_THRESHOLD=1.2
SPEED_FIX=1
SPEED_LAG=0.92
SPEED_LIMIT=

[INSTRUMENTS]
RPM_VINTAGE =1 ; set to 1 to enable the whole thing
RPM_VINTAGE_ROUND_TO = 0 ; to what RPMs needle should snap
RPM_VINTAGE_DELAY = 0.11 ; delay between updates
RPM_VINTAGE_SPEED_LAG = 0.80 ; inertia value, from 0 to 1 (needle won’t move with 1)
RPM_VINTAGE_LIMIT = 0 ; set to some

;;;;;;;;; Exterior PBR Shaders / By TGN Modding | Nell ;;;;;;;;; 
[TYRES_FX]
BROKEN_TYRES_DYNAMIC=1

[SHADOWED_WHEELS_FRONT]
AFFECT_SUSP_NODES=1
ANGLE_X=0
BOUND_TO_SUSPENSION=1
DISTANCE=3
EXTRA_AMBIENT_BRIGHTNESS=0.12
OFFSET=0.04
WIDTH=0.1

[SHADOWED_WHEELS_REAR]
AFFECT_SUSP_NODES=1
ANGLE_X=0
BOUND_TO_SUSPENSION=1
DISTANCE=3
EXTRA_AMBIENT_BRIGHTNESS=0.12
OFFSET=0.04
WIDTH=0.1

[REFLECTIONS_FX]
ALLOW_INTERIOR_SSAO=0
ALLOW_INTERIOR_SSGI=0
AUTOFIX=1
MASK_CUBEMAP_ENABLED=1
MASK_CUBEMAP_OFFSET=0, -0.1, 0.2
MASK_CUBEMAP_TWEAK=0.5

[SMART_MIRROR]
DISALLOW_MAPPING_NORMALIZATION=0
DISALLOW_REAR_MIRROR=0
DISALLOW_REFLECTION_TILTING=0
SHAKING=0

[STATUS_BATTERY]
BASE_VOLTAGE=12.4
MAX_VOLTAGE=13.6
RPM_LAG=0.98

[STATUS_EXHAUST]
TEMPERATURE_BOOST=400
TEMPERATURE_IDLE=400
TEMPERATURE_LAG_DOWN=0.995
TEMPERATURE_LAG_UP=0.995
TEMPERATURE_RPM=100

[STATUS_OIL]
PRESSURE_BASE=1
PRESSURE_LAG_DOWN=0.9985
PRESSURE_LAG_UP=0.998
PRESSURE_STEP=0.7
TEMPERATURE_LAG_DOWN=0.995
TEMPERATURE_LAG_UP=0.995
TEMPERATURE_MULT=1
TEMPERATURE_OFFSET=0
TEMPERATURE_RPM_FACTOR=0.03

[ANIMATION_...]
INPUT = LIGHT             
FILE = bitchassniggafuckyoulookinat.ksanim     
TIME = 20           
LOOP_WHILE_ACTIVE = 1     
LOOP_KEEP_UNTIL_DONE = 1 

[BRAKEDISC_FX]
ACTIVE = 1   
REFRESH = 1          ; set to 0 to disable the whole thing if car uses ksBrakeDisc shader for something else
CERAMIC = 0         ; use ceramic look
CARVED = 30              ; add a bit of carving, radial lines (fast for shader to compute)
CARVED_FREQUENCY = 10  ; increase to make more lines
GLOW_OFFSET = 0.5   ; increase to offset heated and worn center more to the center, decrease to offset it more to the outside area; with 0.5, it would be in the middle
DEBUG = 0
DISC_INTERNAL_RADIUS = 0.110
DISC_RADIUS = 0.200
ALPHA_MASK = 0.012, 0.07
LUMINOCITY_MASK = 0.08 0.3
WEAR_FORCE = 0.6
;GLOW_FORCE = 0.0

[EXTRA_FX] ; Front + Taillights Glass Only
MASK_GBUFFER = Glass001_SUB0,glass_06_glass_0,glass_07_glass_0,vd_glass_01_vd_glass_0,Object025,Object020,Object017

[SHADER_REPLACEMENT_...] ; Sets Mesh Transparent, Has to be Alpha-Blend
MESHES = WindowInside_Geo_lodA,stitchfix002,cluster_warning,gfg4d03
IS_TRANSPARENT = 1

[SHADER_REPLACEMENT_...] ; Sets Mesh Transparent, Has to be Alpha-Blend
MESHES = hidethatshit , hidethatshit001
IS_TRANSPARENT = 0

[EMISSIVE_WATER_TEMP_0_EXHAUST_GLOW] ; Exhaust Glow
MESHES = exh
COLOR = 25, 3, 0, 3
USE_SMOOTH_TRANSITION = 1
INPUT_MIN = 50
INPUT_MAX = 60
INPUT_LUT = (| 84 = 0 | 95 = 1 |)
AFFECTS_TRACK = 1
SPECULAR_MULT = 3

[LIGHT_FLAME_0] ; Flame Brightness
BRIGHTNESS_MULT=1
CAR_BRIGHTNESS_MULT=1
CAR_RANGE_MULT=1
COLOR=5,1,1,1
DEBUG=0
DIRECTION_MULT=1, 1, 1
FADE_AT=150
FADE_SMOOTH=30
OFFSET=0.2
RANGE=7
RANGE_GRADIENT_OFFSET=0.2
SPOT=238.322
SPOT_SHARPNESS=0.0

[EXHAUST_FLAMES] ; CSP Flames Configuration
ANTILAG=0 ; turbo antilag, i havent tested this yet
ANTILAG_DELAY=0.0 ; how long after antilag trigger do flames start, in seconds
ANTILAG_INTENSITY=10 ; flame size
ANTILAG_INTERVAL_MAX=7000
ANTILAG_INTERVAL_MIN=65000
ANTILAG_TURBO_THRESHOLD=0.0
DAMAGE=0 ; engine damage? idk
DAMAGE_DURATION=0.00
DAMAGE_INTENSITY=0
DAMAGE_PROBABILITY=0
DISCHARGE=1 ; lifting off the throttle
DISCHARGE_CHARGE_TIME=0.1 ; how long you have to press the throttle to "charge" the flames
DISCHARGE_DELAY=0.1 ; delay after throttle lift
DISCHARGE_DURATION=.9 ; length of flame shooting, in seconds
DISCHARGE_PROBABILITY=3; chance of flame shoot on lift, 1 is guaranteed, 0 is never
DISCHARGE_INTENSITY=1; flame size
DISCHARGE_RPM_THRESHOLD_MAX=7200 ; self explanatory
DISCHARGE_RPM_THRESHOLD_MIN=2000 ; self explanatory
DISCHARGE_WATER_TEMPERATURE_THRESHOLD=70
FLAT_SHIFT=1 ; on upshift
FLAT_SHIFT_COOLDOWN=0 ; after upshift
FLAT_SHIFT_DURATION=0.1 ; length of flame shooting, in seconds
FLAT_SHIFT_GAS_THRESHOLD=50 ; how much gas needs to be pressed on upshift for flame, 100 is wide open
FLAT_SHIFT_INTENSITY=.1 ; flame size
FLAT_SHIFT_PROBABILITY=1 ; chance of flame shoot on upshift
FLAT_SHIFT_RPM_THRESHOLD=6500
LIMITER=1 ; on hitting the limiter
LIMITER_DELAY=0.2 ; delay, in seconds
LIMITER_INTENSITY=.1 ; flame size
LIMITER_RPM_THRESHOLD=6500 ; limiter flames will not shoot below this rpm

;;;;;;;;; Exterior Lights / By TGN Modding | Nell ;;;;;;;;; 
[EMISSIVE_LIGHT_...] ; Lowbeam 1 
NAME=Object063,Object062
COLOR=0,20,120,.3
LAG=0.9
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_LIGHT_...] ; Lowbeam 2 - Leave Blank Unless Used
NAME=Object065,Object067,Object069,Object022
COLOR=80,100,180,.7
LAG=0.9
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_LIGHT_...] ; Lowbeam 2 - Leave Blank Unless Used
NAME=drl9845000,drl9845001
COLOR=80,100,140,.3
LAG=0.9
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5


[EMISSIVE_LIGHT_...] ; Lowbeam 2 - Leave Blank Unless Used
NAME=Object068,Object072
COLOR=80,100,180,.707
LAG=0.9
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_HIGHBEAM_...] ; High Beam
NAME=Object031,chrome_07_chrome_0
COLOR=80,100,140,4.5
LAG=0.9
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_LIGHT_...] ; Cluster Light
NAME=prvvydoor_dside_r008,Object9089,Object9090,prvvychassis012,door_dside_f_SUB016,door_dside_f_SUB018,Object9085,Object9086,Object9088,Object9087
COLOR=.5,1.5,8,10
LAG=0.2
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_LIGHT_...] ; Cluster Light
NAME=steringkailovescock09,InteriorEmissive,gfg4d01
COLOR=3,.5,0,2
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Cluster Light
NAME=Object050,Object051
COLOR=3,,0,15
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Cluster Light
NAME=Object008
COLOR=.5,.5,.8,5
LAG=0.94
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Cluster Light
NAME=gfg4d02,Interior
COLOR=.5,.5,.6,6
LAG=0.94
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=-0.694, 0.935, -1.21
LINE_TO=-0.682, 0.873, -0.54
BIND_TO_EXTRA_D=1
COLOR=4,0,0,10
DIFFUSE_CONCENTRATION=0.2
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.2
RANGE_GRADIENT_OFFSET=0.1
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=.51, -1, 1.5
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=0.749, 0.874, -0.54
LINE_TO=0.761, 0.936, -1.21
BIND_TO_EXTRA_D=1
COLOR=4,0,0,15
DIFFUSE_CONCENTRATION=0.2
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.2
RANGE_GRADIENT_OFFSET=0.1
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=1, -1, 1.5
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=0.728, 0.936, -0.982
LINE_TO=0.715, 0.874, -0.319
BIND_TO_EXTRA_D=1
COLOR=4,0,0,15
DIFFUSE_CONCENTRATION=0.2
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.2
RANGE_GRADIENT_OFFSET=0.1
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=-1, -1, 1.5
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=0.749, 0.874, -0.54
LINE_TO=0.761, 0.936, -1.21
BIND_TO_EXTRA_D=1
COLOR=4,0,0,10
DIFFUSE_CONCENTRATION=0.2
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.2
RANGE_GRADIENT_OFFSET=0.1
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=-.51, -1, 1.5
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=-0.716, 0.818, 0.398
LINE_TO=-0.164, 0.825, 0.308
BIND_TO_EXTRA_D=1
COLOR=4,0,0,20
DIFFUSE_CONCENTRATION=0.02
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.05
RANGE_GRADIENT_OFFSET=0.01
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=0, -1, -1
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=-0.72, 0.908, -0.246
LINE_TO=-0.718, 0.823, 0.391
BIND_TO_EXTRA_D=1
COLOR=4,0,0,20
DIFFUSE_CONCENTRATION=0.02
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.05
RANGE_GRADIENT_OFFSET=0.01
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=0, -1, -1
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=0.76, 0.908, -0.246
LINE_TO=0.768, 0.823, 0.391
BIND_TO_EXTRA_D=1
COLOR=4,0,0,20
DIFFUSE_CONCENTRATION=0.02
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.05
RANGE_GRADIENT_OFFSET=0.01
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=0, -1, -1
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=0.0702, 0.669, 0.278
LINE_TO=-0.0202, 0.669, 0.278
BIND_TO_EXTRA_D=1
COLOR=4,0,0,10
DIFFUSE_CONCENTRATION=0.02
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.25
RANGE_GRADIENT_OFFSET=0.01
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=0, -1, .10
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[LIGHT_EXTRA_...]
BIND_TO_HEADLIGHTS=1                             
LINE_FROM=-0.707, 0.492, 0.604
LINE_TO=0.707, 0.492, 0.604
BIND_TO_EXTRA_D=1
COLOR=4,0,0,20
DIFFUSE_CONCENTRATION=0.02
FADE_AT=250
FADE_SMOOTH=50
RANGE=0.85
RANGE_GRADIENT_OFFSET=0.01
SPOT=150
SPOT_SHARPNESS=0.0
SPECULAR_MULT=.2
DIRECTION=0, -1, .10
SELF_LIGHTNING=1
INTERIOR_ONLY = 1

[EXTRA_FX_EMISSIVE_...]
MESHES =   Object051     ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.04              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = .004               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 1        ; show up for interior views only
EXTERIOR_ONLY = 0        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 13.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 1400      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.01         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES =   Object050    ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.04              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = .0026               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 1        ; show up for interior views only
EXTERIOR_ONLY = 0        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 13.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 1400      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.01         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES =          ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.03              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = .015               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 1        ; show up for interior views only
EXTERIOR_ONLY = 0        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 3.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 100      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.01         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES = Object063,Object062         ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.02              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = 1,1.2,1.52,.003               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 0        ; show up for interior views only
EXTERIOR_ONLY = 1        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 4.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 400      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.8         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES = Object031,chrome_07_chrome_0         ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.1              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = 1,1.2,1.52,.005               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 0        ; show up for interior views only
EXTERIOR_ONLY = 1        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 3.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 100      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.8         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES = spinniggas00,spinniggas01        ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.04              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR =1,0,0,.002               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 1        ; show up for interior views only
EXTERIOR_ONLY = 0        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 13.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 1000      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = -0.04        ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES = glass_01_glass_0,lights_01_lights_0,Object071,Object073,Object065,Object067,Object069,Object022       ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.08              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = .004               ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 0        ; show up for interior views only
EXTERIOR_ONLY = 1        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 0       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 4.8             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 400      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 1       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = -1         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY = …           ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES = Object055,Light002          ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.05              ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = 1,0,0,.5                ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 1              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 0        ; show up for interior views only
EXTERIOR_ONLY = 1        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 1       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 3             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 400      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 0       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.0         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY =            ; stop emissive if a mesh with given name is visible

[EXTRA_FX_EMISSIVE_...]
MESHES = drl9845000,drl9845001         ; list of meshes
DIGITAL_INSTRUMENTS =   ; filters for digital instruments (for most of them,
    ; names of sections in “digital_instruments.ini”), only for cars
RANGE = 0.034             ; range in meters (by default 0.08 for cars and 5 for tracks)
COLOR = 1,1.5,2.3,.3                ; optional brightness multiplier (could be an RGBA value)
DIRECTED = 0              ; set for 0 for point light and 1 for directed light, or to 
    ; something in-between (by default guessed based on mesh shape)

; Optional optimization flags for cars:
INTERIOR_ONLY = 0        ; show up for interior views only
EXTERIOR_ONLY = 1        ; show up for exterior views only

; Optional advanced tweaks for more complex cases
EMISSIVE_TWEAK = 1       ; extra tonemapping for emissive color to balance things out
    ; (set to 0 to disable, set above 1 to further reduce effect or large emissive value)
MIP_BIAS = 0             ; MIP bias for texture (increase for smoother light)
IGNORE_TEXTURE_COLOR = 0 ; set to 1 to use COLOR and emissive color only

; Optional distribution settings (can affect performance):
COVERAGE = 3             ; samples density, by default 3 for cars and 2 for tracks (actual
    ; number of samples is controlled by mesh area, light range and coverage)
SAMPLES_LIMIT = 400      ; upper limit for number of samples to make sure generation won’t
    ; take huge amount of time, by default 400 for tracks
SPLIT_ELEMENTS = 0       ; split meshes into elements before generating samples, 
    ; by default 1 for tracks
SPLIT_THRESHOLD = …      ; set to something above 0 to weld vertices within that distance
    ; before splitting elements
NORMAL_SHIFT = 0.0         ; increase to move light producing samples away from surface alogn
    ; normals (use it if surroundings are too dark)
COVERED_BY =            ; stop emissive if a mesh with given name is visible




[EMISSIVE_BRAKE_...] ; Emergency Flash
NAME=Light002
COLOR=50, 4, 0 , 10
CAST_LIGHT=0
ACT_AS_HEADLIGHTS=0
FALLBACK_BRAKES_COLOR =50, 4,0, 10 
FALLBACK_HEADLIGHTS_COLOR =50, 6,0, 1.6 
INPUT = BRAKE
INPUT_THRESHOLD = 0.95
BLINK_REPEAT = 1 ; just make it blink
BLINK_FREQENCY_HZ = 4 ; sets frequency for blinking

[EMISSIVE_BRAKE_...] ; Emergency Flash
NAME=Object055
COLOR=50, 4, 0 , 10
CAST_LIGHT=0
ACT_AS_HEADLIGHTS=0
FALLBACK_BRAKES_COLOR =50, 4,0, 10 
FALLBACK_HEADLIGHTS_COLOR =50, 6,0, 5 
INPUT = BRAKE
INPUT_THRESHOLD = 0.95
BLINK_REPEAT = 1 ; just make it blink
BLINK_FREQENCY_HZ = 4 ; sets frequency for blinking

[EMISSIVE_BRAKE_...] ; Emergency Flash
NAME=brake_center
COLOR=50, 0, 0 , 250
CAST_LIGHT=0
ACT_AS_HEADLIGHTS=0
FALLBACK_BRAKES_COLOR =50, 0,0, 5 
INPUT = BRAKE
INPUT_THRESHOLD = 0.95
BLINK_REPEAT = 1 ; just make it blink
BLINK_FREQENCY_HZ = 4 ; sets frequency for blinking

[EMISSIVE_REVERSE_...] ; Reverse Lights
NAME =reverse  ; name (one or more) of a mesh to glow
COLOR = 120,110,130,2       ; glowing color if condition is met
LAG = 0.2                   ; with zero, turns on and off immediately
SIMULATE_HEATING = 1        ; adds heating effect, going through orange tint while turning on and off
LOCATION = REAR             ; light location used for damage and light guessing, default value depends on type
ACT_AS_HEADLIGHTS = 0       ; if set to 1, emissiveness is raised when camera is caught in car’s headlights

[LIGHT_LICENSEPLATE] ; License Plate ; no need to specify meshes names if material is using Plate_D.dds and Plate_NM.dds textures
MESHES= plate_r
OFFSET=-0.18, 0.07, -0.01
RANGE=.8
RANGE_GRADIENT_OFFSET=0.04
SPOT=120
SPOT_SHARPNESS=0.2
COLOR=2,2,3,10
LAYOUT=TWO_ON_TOP ; other supported values: TWO_ON_TOP, ONE_ON_TOP, TWO_ON_BOTTOM, ONE_ON_BOTTOM

[EMISSIVE_HAZARD_0]
COLOR=40,4,4,1
NAME=hazards
FALLBACK_HEADLIGHTS_COLOR=40,4,4,0.1
LAG=0.2

;;;;;;;;; Display Settings [CAREFULL WITH THIS] / By TGN Modding | Nell ;;;;;;;;; 
[Display_AndroidAuto] ; Android Auto [!!ONLY WORKS WITH 1.78PREVIEW+]
Meshes =  Interior ; display mesh
Resolution = 1000,600   ; texture resolution
Size = 1000,600         ; size of the screen area
Offset = 0, 0              ; left top corner of screen area
Scale = .8                  ; might need adjusting to get the scale right
RearCameraPosition = 0, 0.75, -3.15  ; position of rear view camera


; Turn Signals 
[EMISSIVE_TURNSIGNAL_LEFT_...] ; Front Left Turnsignal
NAME=glass_01_glass_0,lights_01_lights_0
COLOR=100,20,0,5
FALLBACK_HEADLIGHTS_COLOR =80,100,180,.7
LAG=0.9
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_LEFT_...] ; Front Left Turnsignal
NAME=Object066
COLOR=100,20,0,.5
FALLBACK_HEADLIGHTS_COLOR =80,100,180,.707
LAG=0.9
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_LEFT_...] ; Left Mid Turnsignal
NAME=Object054
COLOR=100,20,0,5
FALLBACK_HEADLIGHTS_COLOR =80,100,180,.47
LAG=0.85
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
LOCATION=MIDDLE
CAST_LIGHT=1
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_LEFT_...] ; Rear Left Turnsignal 
NAME=turn001
COLOR=100,20,0,5
LAG=0.85
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_RIGHT_...] ; Front Right Turnsignal
NAME=Object071,Object073
COLOR=100,20,0,5
FALLBACK_HEADLIGHTS_COLOR =80,100,180,.7
LAG=0.9
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_RIGHT_...] ; Front R Turnsignal
NAME=glass_01_glass_0_0
COLOR=100,20,0,.5
FALLBACK_HEADLIGHTS_COLOR =80,100,180,.707
LAG=0.9
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_RIGHT_...] ; Mid Right Turnsignal
NAME=Object053
COLOR=100,20,0,5
FALLBACK_HEADLIGHTS_COLOR =80,100,180,.47
LAG=0.85
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
LOCATION=MIDDLE
CAST_LIGHT=1
CLUSTER_THRESHOLD=0.5

[EMISSIVE_TURNSIGNAL_RIGHT_...] ; Rear Right Turnsignal 
NAME=turn
COLOR=100,20,0,5
LAG=0.85
REPEAT_FREQENCY_HZ=2.6
SIMULATE_HEATING=0
CAST_LIGHT=0
CLUSTER_THRESHOLD=0.5

;;;;;;;;; [DIGI SHIT] ;;;;;;;;;

[ODOMETER_MAIN]
DIGITAL_ITEM=22
DIGITAL_ITEM_NUMBER_FORMAT=06.0
UPPER_BOUND=999999
; add zero to add leading zeros

[ODOMETER_TRIP]
DIGITAL_ITEM=21
DIGITAL_ITEM_NUMBER_FORMAT=06.1
UPPER_BOUND=9999

[DI_FUEL_ESTIMATE_DISTANCE_TOTAL_...]
DIGITAL_ITEM = 20
DIGITAL_ITEM_NUMBER_FORMAT = 1.0
OUTPUT_MULTIPLIER = 0.01

[EMISSIVE_TURNSIGNAL_LEFT_...]
INPUT=TURNSIGNAL_LEFT
NAME=dials001
COLOR=0, 10,0
OFF_COLOR=1,1,1,-1
CAST_LIGHT=0

[EMISSIVE_TURNSIGNAL_RIGHT_...]
INPUT=TURNSIGNAL_RIGHT
NAME=dials009
COLOR=0, 10,0
OFF_COLOR=1,1,1,-1
CAST_LIGHT=0

[EMISSIVE_HIGHBEAM_...]
NAME=dials008
COLOR=0, 0, 80,.1
CAST_LIGHT=0

[EMISSIVE_LIGHT_...]
NAME=dials
COLOR=0, 80, 0,.1
CAST_LIGHT=0

[EMISSIVE_HANDBRAKE_...]
NAME=dials002
COLOR=80, 0, 0
CAST_LIGHT=0

[EMISSIVE_LIGHT_...]
NAME=dials005
INPUT=T
CAST_LIGHT=0

[EMISSIVE_TRACTIONCONTROL_...] 
NAME=dials005
TOGGLE_VISIBILITY=0
OFF_COLOR=50,30,0,.1
COLOR=0, 0, 0
CAST_LIGHT=0

[EMISSIVE_TRACTIONCONTROL_INACTION_...] 
NAME=dials004
COLOR=50,30,0.1
CAST_LIGHT=0

[EMISSIVE_ABS_INACTION_...] 
NAME=dials007
COLOR=50,30,0,.1
CAST_LIGHT=0

[EMISSIVE_LIGHT_...] ; Cluster Light
NAME=torpeda_SUB012
COLOR=1,1,1,5
OFF_COLOR=1,1,1,1
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=0
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Arrows Light
NAME=SPEED_0,SPEED_1,SPEED_2,SPEED_3,SPEED_4,SPEED_5,SPEED_6,SPEED_7,SPEED_8,SPEED_9,SPEED_10,SPEED_11,SPEED_12,SPEED_13,SPEED_14,SPEED_15,SPEED_16,SPEED_17,SPEED_18,SPEED_19,SPEED_20,SPEED_21,SPEED_22,SPEED_23,SPEED_24,SPEED_25,SPEED_26,SPEED_27,SPEED_28,SPEED_29,SPEED_30,SPEED_31,SPEED_32,RPM_0,RPM_1,RPM_2,RPM_3,RPM_4,RPM_5,RPM_6,RPM_7,RPM_8,RPM_9,RPM_10,RPM_11,RPM_12,RPM_13,RPM_14,RPM_15,RPM_16,RPM_17,RPM_18,RPM_19,RPM_20,RPM_21,RPM_22,RPM_23,RPM_24,RPM_25,RPM_26,RPM_27,RPM_28,RPM_29,RPM_30,RPM_31
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=0
CLUSTER_THRESHOLD=0
COLOR=3,3,3.3,1

[EMISSIVE_LIGHT_...] ; Navigation Light
NAME=boot_SUB5
COLOR=2,2,2,5
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Navigation Light
NAME=Object002 , Object001
COLOR=20,0,0,5
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Navigation Light
NAME=door_dside_f_SUB9 ,door_pside_f_SUB9, door_dside_r_SUB8 , door_pside_f_SUB10,door_dside_f_SUB10 , badges_SUB0 , door_pside_r_SUB8,door_dside_r_SUB9,door_pside_r_SUB9
COLOR=20,0,0,.05
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...] ; Buttons Light
NAME=door_dside_f_SUB8 , steeringwheel_SUB5 , torpeda_SUB7 , torpeda_SUB8 , door_pside_f_SUB8
COLOR=2,2,2
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...]
NAME=Interior003,Interior005,ned_02,ned_003,ned_004
COLOR=1,1,1,2
OFF_COLOR=1,1,1,1
CAST_LIGHT=0


[EMISSIVE_LIGHT_...]
NAME=bodyshell_SUB5
COLOR=1,1,1,4
CAST_LIGHT=1
bodyshell_SUB5

[EMISSIVE_LIGHT_...]
NAME=tag_hud_rpm_0,tag_hud_rpm_1,tag_hud_rpm_2,tag_hud_rpm_3,tag_hud_rpm_4,tag_hud_rpm_5,tag_hud_rpm_6,tag_hud_rpm_7,tag_hud_rpm_8,tag_hud_rpm_9,tag_hud_rpm_10,tag_hud_rpm_11,tag_hud_rpm_12,lower_0,lower_1,lower_2,lower_3,lower_4,lower_5,lower_6,lower_7,Object887
COLOR=1,1,1,5
CAST_LIGHT=0

[ANIMATION_...]
FILE=Hdud.ksanim
TIME= TIME = 1.5
BIND_TO_EXTRA_A=1


[ANIMATION_...]
FILE=gpsthingy.ksanim
TIME= TIME = 1.5
BIND_TO_EXTRA_B=1




[EMISSIVE_LIGHT_...]
NAME=Grille009
COLOR=20,0,0,.3
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0

[EMISSIVE_LIGHT_...]
NAME=spinniggas00,spinniggas01
COLOR=20,0,0,11.3
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0


[EMISSIVE_LIGHT_...]
NAME=Interior_SUB4121
COLOR=2,2,3,2
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=1
CLUSTER_THRESHOLD=0



[EMISSIVE_LIGHT_...]
NAME=Interior006,Interior007bmw_logo
COLOR=1,1,1,3
OFF_COLOR=1,1,1,3
LAG=0.2
SIMULATE_HEATING=0
LOCATION=INTERIOR
CAST_LIGHT=0
CLUSTER_THRESHOLD=0


[ANIMATION_...]
INPUT = LIGHT             
FILE = hehe1.ksanim     
TIME = 24              
LOOP_WHILE_ACTIVE = 1     
LOOP_KEEP_UNTIL_DONE = 1 

[ANIMATION_...]
INPUT = LIGHT             
FILE = hehe2.ksanim     
TIME = 24           
LOOP_WHILE_ACTIVE = 1     
LOOP_KEEP_UNTIL_DONE = 1 

[ANIMATION_...]
INPUT=SPEED
INPUT_MIN = 0
INPUT_MAX = 330
FILE =mlgzspd.ksanim 
INPUT_LUT = (| 0=0 | 30=0.08  | 60=0.125 | 90=0.25 |120=0.35|150=0.45|180=0.535|210=0.6|240=0.7|270=0.8|300=0.9|330=1)  
INPUT_LAG_UP = 0.3
INPUT_LAG_DOWN = 0.3
INPUT_AS_PROGRESS = 1      ; set to 1 to switch to that second input-as-progress mode
TICK_TOCK_MODE=0
LOOP_KEEP_UNTIL_DONE=0
LOOP_WHILE_ACTIVE=0

[ANIMATION_...]
INPUT=RPM
INPUT_MIN = 0
INPUT_MAX = 7000
FILE =mlgzrpm.ksanim 
INPUT_LUT = (0=0| 1000=0.16 |2000=0.32 |3000=0.40 |4000=0.48|5000=0.56|6000=0.72|7000=0.88)  
INPUT_LAG_UP = 0
INPUT_LAG_DOWN = 0
INPUT_AS_PROGRESS = 1       ; set to 1 to switch to that second input-as-progress mode
TICK_TOCK_MODE=0
LOOP_KEEP_UNTIL_DONE=0
LOOP_WHILE_ACTIVE=0

[CAR_STEREO_...]
ACTIVE = $" read('csp/version', 0) >= 1279 "

MESHES = Interior006
RESOLUTION = 2048,2048
DISPLAY_POS = 780, 300
DISPLAY_SIZE = 1100, 925
COLOR = 1, 1, 1
FADE_WHEN_INACTIVE = 0.95
DITHERING = 2

; main text
TEXT_CSP_0 = "{Track}"
TEXT_CSP_0_NOALBUM = "{Track}"
TEXT_CSP_0_NOARTIST = "{Track}"
TEXT_CSP_0_FALLBACK = ""
TEXT_CSP_0_ALIGN_LAYOUT = 0
TEXT_CSP_0_START = 700, 795
TEXT_CSP_0_SIZE = 600, 68
TEXT_CSP_0_FONT_TYPE = ITALIC
TEXT_CSP_0_Z_INDEX = 10
TEXT_CSP_0_SCALE = 1.5, 1.3
TEXT_CSP_0_BOLD = 1

; main text
TEXT_CSP_3 = "{Artist}"
TEXT_CSP_3_NOALBUM = "{Artist}"
TEXT_CSP_3_NOARTIST = ""
TEXT_CSP_3_FALLBACK = ""
TEXT_CSP_3_ALIGN_LAYOUT = 0
TEXT_CSP_3_START = 350, 795
TEXT_CSP_3_SIZE = 210, 48
TEXT_CSP_3_FONT_TYPE = ITALIC
TEXT_CSP_3_Z_INDEX = 10
TEXT_CSP_3_SCALE = 1.5, 1.3
TEXT_CSP_3_BOLD = 1

; main text
TEXT_CSP_4 = "{Album}"
TEXT_CSP_4_NOALBUM = "{Album}"
TEXT_CSP_4_NOARTIST = ""
TEXT_CSP_4_FALLBACK = ""
TEXT_CSP_4_ALIGN_LAYOUT = 0
TEXT_CSP_4_START = 550, 60
TEXT_CSP_4_SIZE = 500, 48
TEXT_CSP_4_FONT_TYPE = ITALIC
TEXT_CSP_4_Z_INDEX = 10
TEXT_CSP_4_SCALE = 1.5, 1.3
TEXT_CSP_4_BOLD = 1



; album cover in the middle
ALBUM_COVER_0 = 1
ALBUM_COVER_0_START = 270, 181
ALBUM_COVER_0_SIZE = 800,600
ALBUM_COVER_0_Z_INDEX = -1
ALBUM_COVER_0_FALLBACK = MUSIC
ALBUM_COVER_0_FALLBACK_COLOR = 0.3, 0.3, 0.3, 1
ALBUM_COVER_0_FALLBACK_BACKGROUND = 0.05, 0.05, 0.05, 1
ALBUM_COVER_0_FALLBACK_SIZE = 28




;;;;;;;;; [CAREFULL WITH THIS] ;;;;;;;;;

[SHADER_REPLACEMENT_...] ; Plastic
MATERIALS = TIRES
PROP_... = ksAmbient, 0.1
PROP_... = ksDiffuse, 0.12
PROP_... = ksSpecular, .1
PROP_... = ksSpecularEXP, 100
PROP_... = fresnelMaxLevel, 0.03
PROP_... = fresnelEXP, 4.5
PROP_... = fresnelC, 0.0
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 120
PROP_... = detailNormalBlend, 2
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Chrome
MATERIALS = alubitch
PROP_... = ksAmbient, 0.45
PROP_... = ksDiffuse, 0.5
PROP_... = ksSpecular, 1
PROP_... = ksSpecularEXP, 150
PROP_... = fresnelMaxLevel, 0.5
PROP_... = fresnelEXP, 0.5
PROP_... = fresnelC, 0.7
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 200
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Chrome
MATERIALS = alubitch,M2Badge
PROP_... = ksAmbient, 0.2
PROP_... = ksDiffuse, 0.3
PROP_... = ksSpecular, 1
PROP_... = ksSpecularEXP, 150
PROP_... = fresnelMaxLevel, 0.5
PROP_... = fresnelEXP, 0.5
PROP_... = fresnelC, 0.7
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 300
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Chrome
MATERIALS = piano
PROP_... = ksAmbient, 0.0
PROP_... = ksDiffuse, 0.0
PROP_... = ksSpecular, .1
PROP_... = ksSpecularEXP, 180
PROP_... = fresnelMaxLevel, 0.09
PROP_... = fresnelEXP, .5
PROP_... = fresnelC, 0.1
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 100000
PROP_... = detailNormalBlend, 1
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Chrome
MATERIALS = actext,ac23
PROP_... = ksAmbient, 0.2
PROP_... = ksDiffuse, 0.2
PROP_... = ksSpecular, .1
PROP_... = ksSpecularEXP, 180
PROP_... = fresnelMaxLevel, 0.05
PROP_... = fresnelEXP, .5
PROP_... = fresnelC, 0.1
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 100000
PROP_... = detailNormalBlend, 1
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Chrome
MESHES = piano003,piano
PROP_... = ksAmbient, 0.0
PROP_... = ksDiffuse, 0.0
PROP_... = ksSpecular, .1
PROP_... = ksSpecularEXP, 180
PROP_... = fresnelMaxLevel, 0.06
PROP_... = fresnelEXP, .5
PROP_... = fresnelC, 0.1
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 100000
PROP_... = detailNormalBlend, 1
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Plastic
MATERIALS = papiplastic
PROP_... = ksAmbient, 0.12
PROP_... = ksDiffuse, 0.17
PROP_... = ksSpecular, .3
PROP_... = ksSpecularEXP, 150
PROP_... = fresnelMaxLevel, 0.1
PROP_... = fresnelEXP, 1.5
PROP_... = fresnelC, 0.0
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 120
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = leather1
PROP_... = ksAmbient, 0.3
PROP_... = ksDiffuse, 0.35
PROP_... = ksSpecular, .2
PROP_... = ksSpecularEXP, 40
PROP_... = fresnelMaxLevel, 0.07
PROP_... = fresnelEXP, 4.5
PROP_... = fresnelC, 0.05
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 120
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = bluedrl
PROP_... = ksAmbient, 0.1
PROP_... = ksDiffuse, 0.1
DOUBLE_FACE_SHADOW_BIASED = 1
[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = amgshitbitchassniggas
PROP_... = ksAmbient, 0.2
PROP_... = ksDiffuse, 0.01
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = CSR2_InteriorA
PROP_... = ksAmbient, 0.14
PROP_... = ksDiffuse, 0.2
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = CSR2_InteriorZone2A
PROP_... = ksEmissive, 18, 0, 0
PROP_... = ksDiffuse, 0.2
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = redleather
PROP_... = ksAmbient, 0.55
PROP_... = ksDiffuse, 0.65
PROP_... = ksSpecular, .2
PROP_... = ksSpecularEXP, 40
PROP_... = fresnelMaxLevel, 0.07
PROP_... = fresnelEXP, 4.5
PROP_... = fresnelC, 0.05
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 150
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = wheelalc
PROP_... = ksAmbient, 0.35
PROP_... = ksDiffuse, 0.45
PROP_... = ksSpecular, .2
PROP_... = ksSpecularEXP, 40
PROP_... = fresnelMaxLevel, 0.07
PROP_... = fresnelEXP, 4.5
PROP_... = fresnelC, 0.05
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 1.7
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = perfsteer
PROP_... = ksAmbient, 0.55
PROP_... = ksDiffuse, 0.65
PROP_... = ksSpecular, .2
PROP_... = ksSpecularEXP, 40
PROP_... = fresnelMaxLevel, 0.07
PROP_... = fresnelEXP, 4.5
PROP_... = fresnelC, 0.05
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 1.5
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Leather
MATERIALS = RT_DriverSuit,RT_Gloves
PROP_... = ksAmbient, 0.15
PROP_... = ksDiffuse, 0.05
PROP_... = ksSpecular, .2
PROP_... = ksSpecularEXP, 40
PROP_... = fresnelMaxLevel, 0.07
PROP_... = fresnelEXP, 4.5
PROP_... = fresnelC, 0.05
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 55
PROP_... = detailNormalBlend, 2.5
DOUBLE_FACE_SHADOW_BIASED = 1

[SHADER_REPLACEMENT_...] ; Rims
MATERIALS = shader_vossen_s17
PROP_... = ksAmbient, 0.02
PROP_... = ksDiffuse, 0.02
PROP_... = ksSpecular, .5
PROP_... = ksSpecularEXP, 250
PROP_... = fresnelMaxLevel, 0.071
PROP_... = fresnelEXP, 3.5
PROP_... = fresnelC, 0.18
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 200
PROP_... = detailNormalBlend, 1
DOUBLE_FACE_SHADOW_BIASED = 1

[Material_Glass] ; Windows
Materials = Window,WindowDark
FilmIOR = 1.5
ExtraLightsAdjustment = .2
BrightnessAdjustment = .1
Refraction = 1
Desaturate = 00
ThicknessMult = 1.5
EXTRA_MASK_PASS = 1
EXTRA_MASK_PASS_OPACITY = 1
MaskPassColor=20,20,20

[SHADER_REPLACEMENT_...] ; Carbon
MATERIALS = radio
PROP_... = ksAmbient, 2.50
PROP_... = ksDiffuse, 2.35
PROP_... = ksSpecular, 1
PROP_... = ksSpecularEXP, 150
PROP_... = fresnelMaxLevel, 0.2
PROP_... = fresnelEXP, 1.5
PROP_... = fresnelC, 0.0
PROP_... = useDetail, 1
PROP_... = detailUVMultiplier, 150
PROP_... = detailNormalBlend, .05
DOUBLE_FACE_SHADOW_BIASED = 1

[Material_PhotoelasticGlass] ; Headlights
Materials = glassslights,vd_glass
FilmIOR = 1.6
PhotoelasticityMult = 0.015  ; doesn’t look good if too high
ThicknessMult = 1.0
BrightnessAdjustment = 0.3
ExtraLightsAdjustment = 0.35
; Ideally, there would be a texture for that, but we’re not going to draw
; all those textures for Kunos cars, so here are some parameters for perlin noise
; instead
PhotoelasticityBaseScale = 3.5     ; this parameter alters scale in general
PhotoelasticityNoiseScale = 0.328  ; deeply affects randomization process, careful with it
PhotoelasticitySpotsScale = 0.325   ; spots for limiting effect to some areas
PhotoelasticitySpotsOffset = 0.0  ; offset for spots, to try and fit effect nice on existing meshes
PhotoelasticityStripesScale = 3.5   ; how many stripes are there
ProfileFix = 0.0

[WIPERS] ; Wiper Shake 
WIND_THRESHOLDS_KMH = 120, 350 ; speed for wipers to start vibrating and for maximum vibration
WIND_AMPLITUDE_MULT = 1 ; multiplier for amplitude
WIND_FREQUENCY_MULT = 1 ; multiplier for frequency
WIND_OFFSET = 0.03 ; base animation 

[WIPERS_TRACE_...]
SURFACE = prvvyglass00
WIPERS = wiper00,wiper01

[ANIMATED_WIPER_...]
MESHES = wiper00,wiper01
UNDERLYING_SURFACE = prvvyglass00
DEBUG = 1 ; remove when everything is ready

[MESH_ADJUSTMENT_...]
MESHES = wiper00,wiper01
MOVE_TO = modelRoot:y

[BASIC]
DISABLE_WIPER_KSANIM = 1

[ANIMATED_WIPER_0]
DEBUG = 1
MESHES = wiper00, wiper01
UNDERLYING_SURFACE = prvvyglass00
GROUP_0 = 'wiper00@A=*'
GROUP_0_ANGLE_TO = 87.900002
GROUP_0_AXIS = 0.000000, 0.707107, 0.707107
GROUP_0_AXIS_OFFSET_0 = 0.000000, 0.707107, 0.707107
GROUP_0_AXIS_OFFSET_1 = 0.000000, 0.707107, 0.707107
GROUP_0_END = -0.720114, 0.967792, 0.717772
GROUP_0_PIVOT = 0.124696, 0.901411, 0.957315
GROUP_0_RUBBER_FROM = 0.101646, 0.930283, 0.966217
GROUP_0_RUBBER_OFFSET_AMOUNT = 0.000000
GROUP_0_RUBBER_OFFSET_POS = 0.518000
GROUP_0_RUBBER_TO = -0.720114, 0.967792, 0.717772
GROUP_0_SCALE_LUT = '(|0.000=1.000|1.009=0.905|1.036=0.551|)'
GROUP_1 = 'wiper01@A=*'
GROUP_1_ANGLE_TO = 75.000000
GROUP_1_AXIS = 0.000000, 0.707107, 0.707107
GROUP_1_AXIS_OFFSET_0 = 0.000000, 0.707107, 0.707107
GROUP_1_AXIS_OFFSET_1 = 0.000000, 0.707107, 0.707107
GROUP_1_END = -0.237287, 0.965806, 0.842500
GROUP_1_PIVOT = 0.664950, 0.865156, 0.960992
GROUP_1_RUBBER_FROM = 0.611424, 0.990097, 0.836731
GROUP_1_RUBBER_OFFSET_AMOUNT = 0.000000
GROUP_1_RUBBER_TO = -0.237287, 0.965806, 0.842500



[LIGHT_HEADLIGHT_0] ; Headlights
AFFECTS_TRACK=1
BOUND_EMISSIVE_MAX=500
BOUND_EXP=0.2
COLOR=7,7,9,1
DIFFUSE_CONCENTRATION=0.88
DIRECTION=0, 0.0, 1
EXTERIOR_ONLY=0
FADE_AT=450
FADE_SMOOTH=50
INTERIOR_ONLY=0
LOWBEAM_RANGE_MAX=190
LOWBEAM_RANGE_MULT=0.8
LOWBEAM_RANGE_ONCOMING_MULT=0.4
MIRROR=0.68526
MIRROR_DIRECTION=1
OFF_FADE_MULT=0.3
OFF_MIRROR=0.5
OFF_MULT=0
OFF_POSITION=0, 0.58216, 1.74877
OFF_RANGE_MULT=0.3
POPUP_ENABLED=1
POPUP_START=0.05
POPUP_END=0.7
POPUP_SECOND_SPOT_EXP=0.6
POPUP_SECOND_SPOT_INITIAL_VALUE=0.4
POPUP_EDGE_EXP=0.3
POPUP_EDGE_OFFSET=0.5
POSITION=0, 0.45, 1.99
RANGE=210
RANGE_GRADIENT_OFFSET=0
SECOND_SPOT=80
SECOND_SPOT_INTENSITY=1
SECOND_SPOT_RANGE=20
SECOND_SPOT_SHARPNESS=0.0
SECOND_SPOT_SKIP=0.0
SPECULAR_MULT=1
SPOT=65
SPOT_EDGE=0.0922464, 0.0919776, 0.09144
SPOT_EDGE_SHARPNESS=21.2
SPOT_SHARPNESS=0
SPOT_UP=0.02, 0.999847, 0

[LIGHT_BRAKE_0] ; Brake Cast
AFFECTS_TRACK=1
BOUND_EMISSIVE_MAX=500
BOUND_EXP=1
COLOR=1, 0, 0, 4
DIFFUSE_CONCENTRATION=0.88
DIRECTION=0, 0, -1
EXTERIOR_ONLY=1
FADE_AT=120
FADE_SMOOTH=30
INTERIOR_ONLY=0
MIRROR=0.480602
MIRROR_DIRECTION=0
NO_SELF_SPECULAR=1
OFF_COLOR=1, 0.0478983, 0, 2
OFF_FADE_MULT=0.764696
OFF_MIRROR=0.499414
OFF_MULT=0.1
OFF_POSITION=0, 0.1, -3
OFF_RANGE_MULT=0.831926
POSITION=-0.1, 0.9, -2.3
RANGE=5
RANGE_GRADIENT_OFFSET=0.275
SINGLE_FREQUENCY=0
SPECULAR_MULT=1
SPOT=160
SPOT_EDGE=0.406, 0.406, 0.406
SPOT_EDGE_SHARPNESS=10
SPOT_SHARPNESS=0.3675

[LIGHT_EXTRA_0_REARLIGHTS] ; taillight sprite to road
BOUND_TO= Light002
BOUND_EMISSIVE_MAX=20
BOUND_EXP= 0.5
POSITION=-0.1, 0.75, -2.3
MIRROR=0.5
DIRECTION=-0.1, 0, -1
AFFECTS_TRACK=1
SELF_LIGHTNING=1
EXTERIOR_ONLY=1
INTERIOR_ONLY=0
SPECULAR_MULT=3
DIFFUSE_CONCENTRATION=0.88
SPOT=170
SPOT_SHARPNESS=0.1
FADE_AT=450
FADE_SMOOTH=5
RANGE=4
RANGE_GRADIENT_OFFSET=0.25
COLOR=3, 0.25, 0, 0.8



