
Bmw M4 hellspec

[INCLUDE: common/materials_carpaint.ini]
CarPaintMaterial = Carpaint
DisableDev = 1

[Material_CarPaint_Metallic]
BaseSpecularColor = 0.08, 0.08, 0.08
FresnelMax = 1
FresnelC = 0.15
FlakesK = 0.2
BrightnessAdjustment = 1.0
SunMultiplier = 0.3
SpecularBase = 2, 125
SpecularSun = 0.5, 325
ColoredSpecular = 1.2
ClearCoatThickness = 0.5
ApplyTilingFix = 1

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

-------------------------------------------------------------------------------------------------------
[INCLUDE: common/materials_interior.ini]
DisableDev = 1
-------------------------------------------------------------------------------------------------------

[Material_InteriorPBRDetail]
Materials = Spoke_Face_d15
ColorSource = DIFFUSE
BrightnessAdjustment = 0.1
DetailScale = 10000      
Metalness = 0.8
Reflectance = 0.1
LocalReflectionsSharpness = 0.2
OcclusionMult=1
CubemapReflectionBlur=0.9
ApplyTilingFix=1

[SHADER_REPLACEMENT_...]
MATERIALS =sailun
PROP_... = ksAmbient, 0.18
PROP_... = ksDiffuse, 0.14
PROP_... = fresnelEXP, 1.7
PROP_... = fresnelMaxLevel, 0.04
PROP_... = fresnelC, 0.04
PROP_... = ksSpecular, 0.03
PROP_... = ksSpecularEXP, 35

[SHADER_REPLACEMENT_...]
MATERIALS =Material #2826,Material #1769
PROP_... = ksAmbient, 0.18
PROP_... = ksDiffuse, 0.14
PROP_... = fresnelEXP, 1.7
PROP_... = fresnelMaxLevel, 0.04
PROP_... = fresnelC, 0.04
PROP_... = ksSpecular, 0.03
PROP_... = ksSpecularEXP, 35

--------------------------------------------------------------------

[Material_Carbon]
Materials = lame_carbon,lame_carb,Carb_roof,WING_CARBON,Diffuser_carb
HasDetailNormals = 1
Smoothness = 0.1
Reflectance = 0.1
CubemapReflectionBlur = 0.0
BrightnessAdjustment = 0.20
ClearCoatF0 = 0.20
DetailScale = 550

[Material_Carbon]
Materials = INT_OCC_PLASTIC_Std
HasDetailNormals = 1
Smoothness = 0.1
Reflectance = 0.1
CubemapReflectionBlur = 0.0
BrightnessAdjustment = 0.20
ClearCoatF0 = 0.20
DetailScale = 700

[Material_Carbon]
Meshes = polymsh87_SUB10,polymsh86_SUB9
HasDetailNormals = 1
Smoothness = 0.1
Reflectance = 0.1
CubemapReflectionBlur = 0.0
BrightnessAdjustment = 0.20
ClearCoatF0 = 0.20
DetailScale = 550

[Material_Carbon]
Meshes = GEO_Cockpit_HR_SUB17
HasDetailNormals = 1
Smoothness = 0.1
Reflectance = 0.05
CubemapReflectionBlur = 0.0
BrightnessAdjustment = 0.20
ClearCoatF0 = 0.20
DetailScale = 1

[Material_Carbon]
Meshes = GEO_Cockpit_HR_SUB16
HasDetailNormals = 1
Smoothness = 0.1
Reflectance = 0.1
CubemapReflectionBlur = 0.0
BrightnessAdjustment = 0.12
ClearCoatF0 = 0.01
DetailScale = -10

[Material_Aluminium_v2]
Materials= INT_Decals_METAL_ALuminium
Metalness = 0.5
Reflectance = 0.3
BrightnessAdjustment = 0.5
DetailTexture = 5
DetailNormalTexture = common/pbr_metal.dds
DetailNormalPBRSecondaryColor = 0, 0, 0, 0
DetailTextureBlur = 1
DetailNormalBlend = 1
DetailNormalPBRSmoothnessGamma = 1
ApplyTilingFix = 1

[Material_Aluminium_v2]
Materials= rblogo
Metalness = 0.5
Reflectance = 0.75
BrightnessAdjustment = 0.3
DetailTexture = 1
DetailNormalTexture = common/pbr_metal.dds
DetailNormalPBRSecondaryColor = 0, 0, 0, 0
DetailTextureBlur = 1
DetailNormalBlend = 1
DetailNormalPBRSmoothnessGamma = 1
ApplyTilingFix = 1

[Material_Metal_v2]
Materials = Metal
BrightnessAdjustment = 0.03
DetailScale = 1
Metalness = 0.50
Reflectance = 0.5
LocalReflectionsSharpness = 0.1
DetailTexture = 1

[Material_Velvet_v2]
Meshes = carpet_driver
DetailNormalPBRSecondaryColor = 0,0,0,0
UseClothShading = 1
Reflectance = 1.0
DetailScale = 50
ClothSheenColor = 0,0,0,0
BrightnessAdjustment = 0.35

--------------------------------------------------------------------

[INCLUDE: common/materials_glass.ini]
[Material_Glass]
Materials= 
MaskPass=2
MaskPassColor = 100,100,100
FilmIOR = 1.5
ThicknessMult= 5

[Material_PhotoelasticGlass]
Meshes = headlight_002
PhotoelasticityBaseScale = 0      ; this parameter alters scale in general
PhotoelasticityNoiseScale = 0.00  ; deeply affects randomization process, careful with it
PhotoelasticitySpotsScale = 0.0   ; spots for limiting effect to some areas
PhotoelasticitySpotsOffset = 0.0  ; offset for spots, to try and fit effect nice on existing meshes
PhotoelasticityStripesScale = 0  ; how many stripes are there
ProfileFix = 0.01
FilmIOR=1.8
ThicknessMult=4
Desaturate=1
EXTRA_MASK_PASS=1

[Material_PhotoelasticGlass]
Meshes = geo_chassis_sub5_002, g_Trunk_SUB1
PhotoelasticityBaseScale = 0      ; this parameter alters scale in general
PhotoelasticityNoiseScale = 0.00  ; deeply affects randomization process, careful with it
PhotoelasticitySpotsScale = 0.0   ; spots for limiting effect to some areas
PhotoelasticitySpotsOffset = 0.0  ; offset for spots, to try and fit effect nice on existing meshes
PhotoelasticityStripesScale = 0  ; how many stripes are there
ProfileFix = 0.01
FilmIOR=1.8
ThicknessMult=1.5
Desaturate=1
EXTRA_MASK_PASS=1
---------------------------------------------------------------------------------------------------------------

[LIGHT_LICENSEPLATE]
MESHES=Plate_LODA
OFFSET=-0.04, 0.015, -0.05
RANGE=0.4
RANGE_GRADIENT_OFFSET=0.3
SPOT=140
SPOT_SHARPNESS=0.3
COLOR=1,1,1,3.5
FALLBACK_EMISSIVE=1,1,1,0.9
LAYOUT=TWO_ON_TOP

--------------------------------------------------------------
[EMISSIVE_HIGHBEAM_0]
NAME=g_Headlight_Far
ACT_AS_HEADLIGHTS=0
COLOR=20,20,30,1

[EMISSIVE_HIGHBEAM_1]
NAME=hl_002
ACT_AS_HEADLIGHTS=0
COLOR=2,2,5,1

[EMISSIVE_LIGHT_...]
NAME=g_Headlight_Near
COLOR=6,6,9, 70
OFF_COLOR=5,0,0,35
LAG=0.2ll
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=1
CLUSTER_THRESHOLD=0 

[EMISSIVE_LIGHT_...]
NAME=Light_Extra
COLOR=5,5,9, 50
OFF_COLOR=5,0,0,5
LAG=0.2ll
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=1
CLUSTER_THRESHOLD=0 

[EMISSIVE_LIGHT_...]
NAME= Cylinder4, Cylinder3, Cylinder5, Cylinder6
COLOR=1.2, 1.2, 1.2,1.5
OFF_COLOR=1.2, 1.2, 1.2,3
LAG=0.2ll
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=1
CLUSTER_THRESHOLD=0 

[EMISSIVE_LIGHT_...]
NAME= HUD_RPM_0
COLOR=1,1,1,4
OFF_COLOR=1,1,1,8
LAG=0.2ll
SIMULATE_HEATING=0
LOCATION=FRONT
CAST_LIGHT=1
CLUSTER_THRESHOLD=0 

[EXTRA_FX_EMISSIVE_...]
MESHES = '{ ( material:INT_Decals_EMISSIVE_Alfa, material:INT_Decals_EMISSIVE, material:__csp_material ) & !GEO_Cockpit_HR_SUB18 }'
DIGITAL_INSTRUMENTS = ?

[EXTRA_FX_EMISSIVE_...]
MESHES = material:INT_HUD
RANGE = 0.2
COLOR = 0.03
---------------------------------------------------------------------------------------------------------------------

; New interior materials
[INCLUDE: common/materials_interior.ini]
DisableDev = 1

; [Material_DigitalScreen]
; Meshes = GEO_Cockpit_HR_SUB18
; MatrixType = TN
; ScreenScale = 1000
; ScreenAspectRatio = 1
; UseTextureCoordinates = 0

[Material_Leather]
Materials = INT_OCC_Skin_soft
Smoothness = 0.1

[Material_DashboardLeather]
Materials = INT_OCC_PLASTIC_Skin

[Material_Carpet]
Materials = INT_OCC_Carpet_A, INT_OCC_Carpet_B

[Material_Fabric]
Materials = INT_OCC_FABRIC_Roof, INT_OCC_FABRIC_Door_Seat

[INCLUDE: common/custom_emissive.ini]

[CustomEmissive]
Meshes = GEO_Chassis_SUB10
@ = CustomEmissive_Rect, Channel = 2, Mirror, Start = "0, 0.5", Size = "0, 0.1"
@ = CustomEmissive_Color, Channel = 3, Mirror, Color = "1, 0.5, 0"
@ = TurningLightsFront, Channel = 2, Intensity = 5
@ = TurningLightsRear, Channel = 3, NotCastingLight

[CustomEmissive]
Meshes = GEO_Chassis_SUB6
@ = CustomEmissive_Color, Channel = 3, Mirror, Color = "1, 0.5, 0"
@ = TurningLightsRear, Channel = 3

[CustomEmissive]
Meshes = GEO_Cockpit_HR_decals_SUB0,polymsh_SUB5
Resolution = 1024, 512
@ = CustomEmissive_Rect, Channel = 0, Start = 0, Size = $Resolution
@ = CustomEmissive_Rect, Channel = 1, Center = "723, 444", Size = "71, 55"
@ = DashHighlight
@ = DashIndicator, Channel = 1, Input = HAZARD

[]
Meshes = g_Rear_Light_Reverse_SUB0, g_Rear_Light_Reverse_SUB1
@ = ReverseLights, Intensity = 10

[CustomEmissive]
Meshes=g_Bumper_Rear_SUB4
Resolution=128, 1024
@ = CustomEmissive_Color, Channel = 1, Color = '1, 0, 0'
@ = CustomEmissive_BounceBack, Channel = 1

[CustomEmissive]
Meshes = GEO_DISPLAY_Emissive
Resolution=1024, 512
OffColor=20,20,20
DashHighlightColor=20,20,20
@ = CustomEmissive_CoverAll, Channel = 1
@ = CustomEmissive_UseDiffuseLuminocity, From = 0, To = 0.6, SkipDiffuseMap = 0
@ = DashHighlight, Channel = 1

[KN5]
DISALLOW_MESH_MORE_OPTIMIZATIONS = GEO_Chassis_SUB6

[EXTRA_FX]
DELAYED_RENDER_INTERIOR = material:INT_HUD ; unlike with DELAYED_RENDER, this one would only affect first person mode
MASK_GBUFFER = GEO_Chassis_SUB5

---------------------------------------------------------------------------------------------------------------------
[BRAKEDISC_FX]
AMBIENT_MULT = 1
REFLECTION_MULT = 10
RIM_INTERNAL_RADIUS = 0.06
SIMPLIFY_NORMALS_K = 0
DISC_INTERNAL_RADIUS_SHARPNESS = 250

[BRAKEDISC_FX_FRONT]
DISC_INTERNAL_RADIUS = 0.114

[BRAKEDISC_FX_REAR]
DISC_INTERNAL_RADIUS = 0.114

[LIGHT_BRAKEDISCS]
COLOR=0.5, 0.1, 0, 2

[BRAKEDISC_FX]
; ACTIVE = 0
NORMAL_MASK = 1, 0.5
LUMINOCITY_MASK = 0.01, 0.02
ALPHA_MASK = 0.1, 0.2
DEBUG_MODE = 0
NORMAL_MASK = 0.2, 0.1
; CERAMIC = 0
; GLOW_FORCE = 0.6
; WEAR_FORCE = 0.3

[SHADOWED_WHEELS]
ANGLE=10
WIDTH=0.13
OPACITY=0.8
EXTRA_AMBIENT_BRIGHTNESS=0.1

[SHADOWED_TYRES]
ANGLE=20
EXTRA_AMBIENT_BRIGHTNESS=0.15
OFFSET=0.06
WIDTH=0.10
OPACITY=0.5

-------------------------------------------------------------------------------------------------------
[DEFORMING_HOOD]
NAME = MOTORHOOD
OFFSET_Y_MIDDLE = 0.02
OFFSET_Y_END = -0.04
OFFSET_Z_END = 0.0
BULGING_EXTRA = 0.1
BULGING_EXPONENT = 3.0
NOISE_Y_AMPLITUDE = -0.26
NOISE_Z_AMPLITUDE = 0.0
NOISE_Y_FREQENCY = 4.0
NOISE_Z_FREQENCY = 7.0
Z_FACTOR = 2.5
-------------------------------------------------------------------------------------------------------

[AUDIO_PITCH]
ENGINE_EXT = 1.1
ENGINE_INT = 1.1
GEAR_EXT = 1.0
GEAR_INT = 1.0
BODYWORK = 1.0
WIND = 0.0
DIRT = 1.0
DOWN_SHIFT = 1.0
HORN = 1.1
GEAR_GRIND = 1.0
BACKFIRE_EXT = 1.2
BACKFIRE_INT = 1.2
TRACTION_CONTROL_EXT = 1.0
TRACTION_CONTROL_INT = 1.0
TRANSMISSION = 0
LIMITER = 0
TURBO = 1.5
HIT = 1.0
SCRAPE = 1.0
WHEEL = 1.0
SKID_EXT = 1.0
SKID_INT = 1.0

[AUDIO_VOLUME]
BACKFIRE_EXT=1.5
BACKFIRE_INT=1.5
BODYWORK=0.1
DIRT=0.2
DOWN_SHIFT=1
ENGINE_EXT=3
ENGINE_INT=3
GEAR_EXT=1
GEAR_GRIND=0.5
GEAR_INT=0.2
HORN=1
LIMITER=1
TRACTION_CONTROL_EXT=1
TRACTION_CONTROL_INT=1
TRANSMISSION=0.5
TURBO=1.5
WIND=0.0
----------------------------------------------------------------------------------------------

[EXHAUST_FLAMES]
ANTILAG=1 ; turbo antilag, i havent tested this yet
ANTILAG_DELAY=0.0 ; how long after antilag trigger do flames start, in seconds
ANTILAG_INTENSITY=40 ; flame size
ANTILAG_INTERVAL_MAX=9000
ANTILAG_INTERVAL_MIN=2000
ANTILAG_TURBO_THRESHOLD=0.5
DAMAGE=0 ; engine damage? idk
DAMAGE_DURATION=0.00
DAMAGE_INTENSITY=0
DAMAGE_PROBABILITY=0
DISCHARGE=1 ; lifting off the throttle
DI3CHARGE_CHARGE_TIME=0.001 ; how long you have to press the throttle to "charge" the flames
DISCHARGE_DELAY=0.1 ; delay after throttle lift
DISCHARGE_DURATION=3.1 ; length of flame shooting, in seconds
DISCHARGE_PROBABILITY=1; chance of flame shoot on lift, 1 is guaranteed, 0 is never
DISCHARGE_INTENSITY=5; flame size
DISCHARGE_RPM_THRESHOLD_MAX=9000 ; 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=5 ; length of flame shooting, in seconds
FLAT_SHIFT_GAS_THRESHOLD=80 ; how much gas needs to be pressed on upshift for flame, 100 is wide open
FLAT_SHIFT_INTENSITY=5 ; flame size
FLAT_SHIFT_PROBABILITY=1 ; chance of flame shoot on upshift
FLAT_SHIFT_RPM_THRESHOLD=8500
LIMITER=1 ; on hitting the limiter
LIMITER_DELAY=0 ; delay, in seconds
LIMITER_INTENSITY=5 ; flame size
LIMITER_RPM_THRESHOLD=2000 ; limiter flames will not shoot below this rpm


[SHAKING_EXHAUST_...]
MESHES =Kakimoto_N1
POINT_0 = -0.34, 0.05, -0.200
POINT_0_RADIUS = 1
POINT_0_EXP = 0.002

-----------------------------------------------------------------------------------------------------------------

[ANIMATION_0]
FILE=car_door_L.ksanim
TIME=1.5
BIND_TO_EXTRA_A=1

[ANIMATION_1]
FILE=car_door_R.ksanim
TIME=1.5
BIND_TO_EXTRA_B=1

---------------------------------------------------------------------------------------------------------------
[SMART_MIRROR]
VISIBLE_FIRSTPERSON=LEFT

[INSTRUMENTS]
SPEED_LAG=0.7
SPEED_LIMIT=270

[LIGHT_FLAMES]
SPOT=300
CAR_BRIGHTNESS_MULT=0.5


[TYRES_FX]
DAMAGE_DEBUG=0                ; set it to 1 to get damaged tyres from the start
DAMAGE_FLAT_SPOT_GAIN=200.0   ; multiplier for increasing flat spot
DAMAGE_FLAT_SPOT_FADE=0.1     ; how much of flat spot (which is in 0…1 range) will be gone after 1 km driven
DAMAGE_GRAIN_GAIN=1.0         ; multiplier for increasing grain
DAMAGE_WIDTH_K=0.95           ; decrease to make damage more narrow and vise versa
DAMAGE_OFFSET_K=0.0           ; horizontal offset for visible damage; increase to move it closer to the car
DAMAGE_GRAIN_MAX=0.4          ; upper bound for grain damage, from 0 to 1

DAMAGE_SPEC_MULT=0.6          ; by how much ksSpecular should be multiplied for fully damaged areas
DAMAGE_SPEC_EXP_MULT=0.2      ; by how much ksSpecularEXP should be multiplied for fully damaged areas
DAMAGE_REFL_MULT=0.4          ; by how much fresnelMaxLevel should be multiplied for fully damaged areas
DAMAGE_OCCLUSION_MULT=0.8     ; how much of occlusion to substract from fully damaged areas
DAMAGE_NORMALS_MULT=2.0       ; normals multiplier for fully damaged areas

FLEX_SKEW_SMOOTHING=0.1       ; how fast should tyre mesh react to change in force
FLEX_MAX_SKEW_MULT=0.8        ; multiplier for maximum flex distance
FLEX_PROFILE_MULT=0.6         ; multiplier for profile size for deforming tyre
FLEX_SKEW_RANGE_MULT=2.0      ; how much of a tyre should be skewed, maximum value is 3
FLEX_MULT=1.0                 ; how far a tyre should be skewed

-------------------------------------------------------------------------------------------------------

; [SHADER_REPLACEMENT_...]
; MESHES = GEO_INT_GLASS
; IS_TRANSPARENT = 1
; MOVE_MESH_IN_FRONT_OF = GEO_HUD_Back

; [NODE_ADJUSTMENT_...]
; NODES = GEO_INT_Glass1
; MOVE_TO = COCKPIT_HR
; MOVE_IN_FRONT = 1

; [NODE_ADJUSTMENT_...]
; NODES = DISPLAY_DATA_HUD
; MOVE_TO = COCKPIT_HR

; [MESH_ADJUSTMENT_...]
; MESHES = '{ lod:A & GEO_Chassis_SUB5 }'
; MOVE_TO = GEO_Chassis

; [MESH_ADJUSTMENT_...]
; MESHES = '{ lod:A & g_Trunk_SUB1 }'
; MOVE_TO = g_Trunk

; [MESH_ADJUSTMENT_...]
; MESHES = '{ lod:B & GEO_Chassis_SUB4 }'
; MOVE_TO = GEO_Chassis

; [INCLUDE: common/navigators.ini]
; [Navigator_StyleNavitel]
; @ = Navigator_ExtraShape, P1 = "0.0836, 1.02, 0.598", P2 = "-0.122, 1.02, 0.571", P3 = "-0.123, 0.943, 0.55", P4 = "0.0898, 0.943, 0.578", Scale = 0.8
; @ = Navigator_LoadingIcon, Texture = INT_Decals.dds, Start = "184.8, 465.6", Size = "108.5, 40.8", Resolution =  "1024, 512", Brightness = 2.5

[EXTRA_FX]
GLASS_FILTER = __navigator_mesh_1
SKIP_GBUFFER = material:INT_Glass_Display

[WINDSCREEN_REFLECTION]
REFLECTED_TRANSPARENT=1
REFLECTED_EXCLUDE=GEO_Cockpit_HR_SUB18, material:INT_HUD, class:text

[INCLUDE: android_auto/config.ini]

[Display_AndroidAuto]
@ = Display_ExtraShape, P1 = "0.0836, 1.02, 0.598", P2 = "-0.122, 1.02, 0.571", P3 = "-0.123, 0.943, 0.55", P4 = "0.0898, 0.943, 0.578"
RearCameraPosition = 0, 0.883, -2.4
aftermarketComponent = 1

[SHADER_REPLACEMENT_...]
MESHES = GEO_Cockpit_HR_SUB18
SHADER = ksPerPixel
PROP_... = ksEmissive, 1, 1, 1

; [Navigator_StyleNavitel]
; @ = Navigator_ExtraShape, P1 = "0.0836, 1.02, 0.598", P2 = "-0.122, 1.02, 0.571", P3 = "-0.123, 0.943, 0.55", P4 = "0.0898, 0.943, 0.578", Scale = 0.8
; @ = Navigator_LoadingIcon, Texture = INT_Decals.dds, Start = "184.8, 465.6", Size = "108.5, 40.8", Resolution = "1024, 512", Brightness = 2.5

[DI_DRIVEN_TOTAL_...] ;Total odometer
DIGITAL_ITEM=4
DIGITAL_ITEM_NUMBER_FORMAT = 05.0 ;Start from 00000, can extend to 6 digit
UPPER_BOUND=999999

[DI_DRIVEN_SESSION_...] ;Trip odometer
DIGITAL_ITEM=5
DIGITAL_ITEM_NUMBER_FORMAT = 05.1 ;Start from 000.0, can extend to 4 digit
UPPER_BOUND=9999.9

[DI_SPEED_...] ;Lower refresh spedo
DIGITAL_ITEM=1
DIGITAL_ITEM_NUMBER_FORMAT = .0
UPPER_BOUND = 999
REFRESH=0.85

[DI_SPEED_...] ;Lower refresh spedo on Head Up display
DIGITAL_ITEM=6
DIGITAL_ITEM_NUMBER_FORMAT = .0
UPPER_BOUND = 999
REFRESH=0.85

[ANALOG_INDICATOR_...] ;No more high values when you wheel slipped, real M4 don't work like this
OBJECT_NAME=ARROW_SPEED
INPUT = SPEED
INPUT_MAX = 330 ;Yes, stock M4 can't run over, but if speedo edited anyway, why not to make real limit
ZERO=-1
STEP=0.7212121

[ANALOG_INDICATOR_...] ;Oil Temperature
NAME = ARROW_WATER ;In game's car data it maked as water temp gauge, but really it show oil temp
INPUT = OIL_TEMP
INPUT_ADD = 30 ;Default AC's 70° is to low, real working oil temp is around 100°
LUT = (70 = -51|120 = -6|170 = 38)




