##---------------------------------------------------
## 2018 Dodge Challenger SRT Demon
## Replacement for Dodge Viper SRT10
## Attributes.bin patch script
##---------------------------------------------------

memfile GLOBAL\GlobalMemoryFile.bin
vpak GLOBAL\ATTRIBUTES.BIN db

##---------------------------------------------------
## Node: pvehicle/default/cars/racers/viper
##---------------------------------------------------

## turbosfx; upgrade_turbo*[0]
patch	int32	bin:0x3058c	0x87847a68

## turbosfx; upgrade_turbo*[1]
patch	int32	bin:0x3059c	0x87847a68

## VerbalType; copspeech related; code determines what cops will call your car
## PATCH LENGTH ADDRESS, NOT DATA
patch	int32	bin:0x30540	0x10000000

## MASS; self-explanatory; mass of car expressed in kilograms
patch	float	bin:0x30538	1691 #-250kg

## engineaudio[0]
patch	int32	bin:0x30678	0xf6a7f776

## engineaudio[1]
patch	int32	bin:0x30684	0xf6a7f776

## TENSOR_SCALE; seems to be overall handling speed scale balancing
## the bigger 2nd value is the slower the car will respond to steering input
## countered by increasing of 1st and 3rd value
patch	float	bin:0x30500	1.1
patch	float	bin:0x30504	2
patch	float	bin:0x30508	1.1
patch	float	bin:0x3050c	0

## HANDLING_BARS*; used to set min and max handling bars length; doesn't take effect from base or end grip values but its increase is dependent
## on chassis and tires values
## values range from 37-98 for 1st set and 90-100 for 2nd set
patch	float	bin:0x30578	70
patch	float	bin:0x3057c	95

##---------------------------------------------------
## Node: ecar/default/racers/viper
##---------------------------------------------------

## TireOffsets
## in format x, y, z, w
## x axis; car front = +; car rear = -
## y axis; left side = +; right = -
## z axis; up = +; down = - note: will move WHEELS [up or down] regarding CAR BODY, during race body will be on normal level
## unlike wheels that might be BELOW ground
## w - wheel diameter scaling; default game values range between 0.31 [elise] and 0.35 [mustanggt]
## NOTE: CAR BODY height will be changed to match wheel size
## all axles have point 0 in center of line between front left and rear right wheel or between front right and rear left

## front left
patch	float	bin:0x3e540	1.555
patch	float	bin:0x3e544	0.977
patch	float	bin:0x3e548	0
patch	float	bin:0x3e54c	0.35

## front right
patch	float	bin:0x3e550	1.555
patch	float	bin:0x3e554	-0.977
patch	float	bin:0x3e558	0
patch	float	bin:0x3e55c	0.35

## rear right
patch	float	bin:0x3e560	-1.39
patch	float	bin:0x3e564	-0.99
patch	float	bin:0x3e568	0
patch	float	bin:0x3e56c	0.36

## rear left
patch	float	bin:0x3e570	-1.39
patch	float	bin:0x3e574	0.99
patch	float	bin:0x3e578	0
patch	float	bin:0x3e57c	0.36

## TireSkidWidth; aka tire width
## common value range is 2x0.225 for front wheels and 2x0.335 for rear wheels
patch	float	bin:0x3e60c	0.315
patch	float	bin:0x3e610	0.315
patch	float	bin:0x3e614	0.315
patch	float	bin:0x3e618	0.315

## WheelSpokeCount; number of spokes in rims
## common value range N/A since it differs per car
patch	int8	bin:0x3e64c	10

## KitWheelOffsetRear; used to move wheels along axis Y when bodykits are used
## values range from 0 to 128; applies to REAR axle
patch	int8	bin:0x3e638	0
patch	int8	bin:0x3e639	0
patch	int8	bin:0x3e63a	0
patch	int8	bin:0x3e63b	0
patch	int8	bin:0x3e63c	0
patch	int8	bin:0x3e63d	0

## KitWheelOffsetFront; used to move wheels along axis Y when bodykits are used
## values range from 0 to 128; applies to FRONT axle
patch	int8	bin:0x3e646	0
patch	int8	bin:0x3e647	0
patch	int8	bin:0x3e648	0
patch	int8	bin:0x3e649	0
patch	int8	bin:0x3e64a	0
patch	int8	bin:0x3e64b	0

## BodyDive; maximum vector-based movement of front of car body
patch	float	bin:0x3e5e8	2
patch	float	bin:0x3e5ec	1
patch	float	bin:0x3e5f0	6

## BodySquat; maximum vector-based movement of rear of car body
patch	float	bin:0x3e5dc	2
patch	float	bin:0x3e5e0	0.6
patch	float	bin:0x3e5e4	6

## CamberRear; angle between the vertical axis of the wheel and the vertical axis of the vehicle
## positive values for bottom of wheel being further out than top, negative for opposite effect
## common value is 0.18
patch	float	bin:0x3e628	0.18

## CamberFront; angle between the vertical axis of the wheel and the vertical axis of the vehicle
## positive values for bottom of wheel being further out than top, negative for opposite effect
## common value is 0.22
patch	float	bin:0x3e620	0.18

## BodyRoll; maximum vector-based movement of entire car body towards left or right
## simply put - car body leaning sideways
patch	float	bin:0x3e5d0	1
patch	float	bin:0x3e5d4	1
patch	float	bin:0x3e5d8	6

##FECompression
patch	float	bin:0x3e658	0.11
patch	float	bin:0x3e65c	0.11

##ReflectionOffset
patch	float	bin:0x3e624	0.14

##RideHeight
patch	float	bin:0x3e62c	3

##---------------------------------------------------
## Node: brakes/default/viper
##---------------------------------------------------

## BRAKES; overall braking power per axle
## common value range is 300/400-650/700; mass dependent
patch	float	bin:0x24524	500
patch	float	bin:0x24528	600

## EBRAKE; handbrake power; should be larger than BRAKES value by at least 10% and larger than overall car horsepower
## common value range is 400-800; mass dependent
patch	float	bin:0x2452c	900

## BRAKE_LOCK; BRAKES field values multiplier and braking force distribution ratio
## common value range is 1.00 for front axle and 3.20-3.60 for rear axle
patch	float	bin:0x2451c	1
patch	float	bin:0x24520	3

##---------------------------------------------------
## Node: brakes/default/viper/viper_top
##---------------------------------------------------

## BRAKES
patch	float	bin:0x24718	600
patch	float	bin:0x2471c	725

## EBRAKE
patch	float	bin:0x24720	1000

## BRAKE_LOCK
patch	float	bin:0x24710	1
patch	float	bin:0x24714	3.45

##---------------------------------------------------
## Node: engine/default/viper
##---------------------------------------------------

## ENGINE_BRAKING; multiplies maximum torque at current gear and uses it to calculate speed loss with no throttle used
## common value range is 0.70-0.90
patch	float	bin:0x130d4	0.7
patch	float	bin:0x130d8	0.8
patch	float	bin:0x130d8	0.9

## IDLE; minimum operating speed of engine necessary to sustain its work but not enough to move drivetrain components
## common value range is 800-950
patch	float	bin:0x130ec	900

## TORQUE; self-explanatory; up to 15 torque values can be used but element count needs to be declared first
## common value range N/A since it differs per car
patch	float	bin:0x13098	295
patch	float	bin:0x1309c	453
patch	float	bin:0x130a0	552
patch	float	bin:0x130a4	601
patch	float	bin:0x130a8	637
patch	float	bin:0x130ac	655
patch	float	bin:0x130b0	643
patch	float	bin:0x130b4	614
patch	float	bin:0x130b8	582

## MAX_RPM; maximum operating speed of engine before its destruction [drag racing only]
## common value range N/A since it differs per car
patch	float	bin:0x130e4	7500

## FLYWHEEL_MASS; the higher the mass, the higher the maximum inertia moment and therefore larger amounts of kinetic energy can be stored
## also the lower the mass, the faster the top speed can be achieved and maintained
## common value range is 9-15
patch	float	bin:0x130e0	13

## RED_LINE; maximum safe operating speed of engine
## common value range N/A since it differs per car
patch	float	bin:0x130e8	6500

##---------------------------------------------------
## Node: engine/default/viper/viper_top
##---------------------------------------------------

## ENGINE_BRAKING
patch	float	bin:0x146f4	0.7
patch	float	bin:0x146f8	0.8
patch	float	bin:0x146fc	0.9

## IDLE
patch	float	bin:0x1470c	900

## TORQUE
patch	float	bin:0x146b8	305
patch	float	bin:0x146bc	548
patch	float	bin:0x146c0	626
patch	float	bin:0x146c4	736
patch	float	bin:0x146c8	815
patch	float	bin:0x146cc	853
patch	float	bin:0x146d0	821
patch	float	bin:0x146d4	768
patch	float	bin:0x146d8	712

## MAX_RPM
patch	float	bin:0x14704	7500

## FLYWHEEL_MASS
patch	float	bin:0x14700	12

## RED_LINE
patch	float	bin:0x14708	6500

##---------------------------------------------------
## Node: transmission/default/viper
##---------------------------------------------------

## GEAR_COUNT; 1st GEAR_RATIO offset -6; total amount of gears including reverse, neutral and forward gears
## maximum number of elements is 11 but only 10 are proven to cause no problems with car drivability
## common value range is 7-9
patch	int16	bin:0x1ed5e	8

## GEAR_RATIO; drivetrain power transfer ratios
## common value range N/A since it differs per car
patch	float	bin:0x1ed64	2.9
patch	float	bin:0x1ed68	0
patch	float	bin:0x1ed6c	2.26
patch	float	bin:0x1ed70	1.58
patch	float	bin:0x1ed74	1.19
patch	float	bin:0x1ed78	1
patch	float	bin:0x1ed7c	0.77
patch	float	bin:0x1ed80	0.63

## DIFFERENTIAL; self-explanatory; differential bias; 0.00 for rear, 0.50 for mid and 1.00 for front
## setting towards front will lock the front wheels more, causing the car to be prone to oversteer; inverse effect if bias set towards rear
## common value range is 2x0.60-2x0.80; 3x0.60-3x0.80 if car is AWD
patch	float	bin:0x1ed90	0.8
patch	float	bin:0x1ed94	0.8
patch	float	bin:0x1ed98	0

## GEAR_EFFICIENCY; overall power multiplier on current gear and rpm used to quickly change speed at each gear without any major reconfigurations
## common value set is 9x1.00
patch	float	bin:0x1eda4	1
patch	float	bin:0x1eda8	1
patch	float	bin:0x1edac	1
patch	float	bin:0x1edb0	1
patch	float	bin:0x1edb4	1
patch	float	bin:0x1edb8	0.97
patch	float	bin:0x1edbc	0.95
patch	float	bin:0x1edc0	0.93

## TORQUE_CONVERTER; percentage ratio of torque converter efficiency with automatic transmission usage
## common value range is 0.20-0.80
patch	float	bin:0x1edc8	0.4

## TORQUE_SPLIT; torque-to-axle transfer ratio; 0 for RWD, 0.5 for AWD and 1 for FWD
## common value range N/A since it differs per car
patch	float	bin:0x1edcc	0

## CLUTCH_SLIP; self-explanatory; manual gearbox efficiency ratio
## common value range is 0.70-0.90
patch	float	bin:0x1edd0	0.7

## SHIFT_SPEED; shifting interval; stock [should be] higher than upgraded
## common value range is 0.10-0.25
patch	float	bin:0x1edd8	0.15

## FINAL_GEAR; final gear ratio determining top speed
## common value range N/A since it differs per car
patch	float	bin:0x1eddc	4.1

##---------------------------------------------------
## Node: transmission/default/viper/viper_top
##---------------------------------------------------

## GEAR_COUNT; 1st GEAR_RATIO offset -6
patch	int16	bin:0x1f93a	8

## GEAR_RATIO
patch	float	bin:0x1f940	2.6
patch	float	bin:0x1f944	0
patch	float	bin:0x1f948	3.58
patch	float	bin:0x1f94c	1.9
patch	float	bin:0x1f950	1.27
patch	float	bin:0x1f954	1.02
patch	float	bin:0x1f958	0.85
patch	float	bin:0x1f95c	0.7

## DIFFERENTIAL
patch	float	bin:0x1f96c	0.8
patch	float	bin:0x1f970	0.8
patch	float	bin:0x1f974	0

## GEAR_EFFICIENCY
patch	float	bin:0x1f980	1
patch	float	bin:0x1f984	1
patch	float	bin:0x1f988	1
patch	float	bin:0x1f98c	1
patch	float	bin:0x1f990	1
patch	float	bin:0x1f994	1
patch	float	bin:0x1f998	1
patch	float	bin:0x1f99c	1

## TORQUE_CONVERTER
patch	float	bin:0x1f9a4	0.4

## TORQUE_SPLIT
patch	float	bin:0x1f9a8	0

## CLUTCH_SLIP
patch	float	bin:0x1f9ac	0.85

## SHIFT_SPEED
patch	float	bin:0x1f9b4	0.1

## FINAL_GEAR
patch	float	bin:0x1f9b8	3.1

##---------------------------------------------------
## Node: tires/default/viper
##---------------------------------------------------

## SECTION_WIDTH; self-explanatory; measured in milimetres
## common value range N/A since it differs per car
patch	float	bin:0x225f0	315
patch	float	bin:0x225f4	315

## YAW_CONTROL; equivalent of section-based traction and stability control system; values 1 and 2 for front; values 3 and 4 for rear
## effect similar to dynamic mass bias shifting; highly dependent on WEIGHT_BIAS, AERO_CG, TORQUE_SPLIT and DYNAMIC/STATIC_GRIP values
## common value range N/A since it differs per car; mass and acceleration dependent
patch	float	bin:0x225b8	0.1
patch	float	bin:0x225bc	0.3
patch	float	bin:0x225c0	0.5
patch	float	bin:0x225c4	1

## DYNAMIC_GRIP; amount of friction the tires produce when traction is broken, ie when the car is sliding or in a burnout
## common value range N/A since it differs per car; mass and acceleration dependent
patch	float	bin:0x225d0	1.85
patch	float	bin:0x225d4	1.875

## RIM_SIZE; self-explanatory; measured in inches
## common value range is 2x16-2x19
patch	float	bin:0x225e0	18
patch	float	bin:0x225e4	18

## YAW_SPEED; self-explanatory; rate at which car enters yaw state
## common value range is 0.30-0.70
patch	float	bin:0x225fc	0.4

## ASPECT_RATIO; self-explanatory; ratio of section height to section width
## common value range is 2x30-2x55
patch	float	bin:0x225d8	40
patch	float	bin:0x225dc	40

## STATIC_GRIP; static grip is the amount of friction the tires are able to produce when they are not spinning, though they can be rolling
## common value range N/A since it differs per car; mass and acceleration dependent
patch	float	bin:0x225e8	2.1
patch	float	bin:0x225ec	2.1

## GRIP_SCALE; tire grip scaling per axle
## common value range is 2x1.00-2x1.10
patch	float	bin:0x225c8	1.125
patch	float	bin:0x225cc	1.175

## STEERING; steering ratio; value of 1.00 means that turning steering wheel by 360 degrees will turn wheels by 36 degrees
## common value range is 0.90-1.10
patch	float	bin:0x225f8	1.05

##---------------------------------------------------
## Node: tires/default/viper/viper_top
##---------------------------------------------------

## SECTION_WIDTH
patch	float	bin:0x23a40	315
patch	float	bin:0x23a44	315

## YAW_CONTROL
patch	float	bin:0x23a08	0.1
patch	float	bin:0x23a0c	0.5
patch	float	bin:0x23a10	0.7
patch	float	bin:0x23a14	1.2

## DYNAMIC_GRIP
patch	float	bin:0x23a20	1.9
patch	float	bin:0x23a24	1.95

## RIM_SIZE
patch	float	bin:0x23a30	18
patch	float	bin:0x23a34	18

## YAW_SPEED
patch	float	bin:0x23a4c	0.4

## ASPECT_RATIO
patch	float	bin:0x23a28	40
patch	float	bin:0x23a2c	40

## STATIC_GRIP
patch	float	bin:0x23a38	2.2
patch	float	bin:0x23a3c	2.25

## GRIP_SCALE
patch	float	bin:0x23a18	1.3
patch	float	bin:0x23a1c	1.3

## STEERING
patch	float	bin:0x23a48	1.1

##---------------------------------------------------
## Node: chassis/default/viper
##---------------------------------------------------

## WHEEL_BASE; distance between the centers of the front and rear wheels
## common value range N/A since it differs per car
patch	float	bin:0x8cd8	2.95

## DRAG_COEFFICIENT; air resistance of object travelling in a non-vacuum environment such as air
## common value range is 0.25-0.42
patch	float	bin:0x8cf4	0.376

## SHOCK_VALVING; maximum air pressure in the shock absorber air chamber in pounds per square inch
## common value range is 2x15-2x24
patch	float	bin:0x8cc4	24
patch	float	bin:0x8cc8	24

## RIDE_HEIGHT; aka ground clearance
## common value range is 2x6-2x9
patch	float	bin:0x8c9c	8
patch	float	bin:0x8ca0	8

## SHOCK_STIFFNESS; minimum pressure inside shock absorber in pounds per square inch
## common value range is 2x30-2x80; acceleration and mass-dependent
patch	float	bin:0x8cb4	50
patch	float	bin:0x8cb8	50

## SHOCK_BLOWOUT; maximum length by which a shock can be extended if car wheels don't have contact with road surface; stock same as upgraded
## common value range is 5-8
patch	float	bin:0x8cdc	6

## SHOCK_EXT_STIFFNESS; maximum pressure inside shock absorber in pounds per square inch
## common value range is 2x40-2x80; acceleration and mass dependent
patch	float	bin:0x8cac	65
patch	float	bin:0x8cb0	65

## SWAYBAR_STIFFNESS; self-explanatory; probably expressed in pounds per square inch
## common value range is 2x200-2x450; acceleration and mass dependent
patch	float	bin:0x8ccc	300
patch	float	bin:0x8cd0	350

## ROLL_CENTER; vertical center of gravity [probably in inches]
## common value range is 8-10
patch	float	bin:0x8cd4	8

## TRAVEL; maximum length by which a shock can be extended if car wheels don't have contact with road surface; stock commonly higher than upgraded
## common value range is 2x6-2x8; acceleration and mass dependent
patch	float	bin:0x8c94	7
patch	float	bin:0x8c98	7

## SPRING_STIFFNESS; overall coilover pressure in pounds square inch
## common value range is 2x400-2x700
patch	float	bin:0x8cbc	525
patch	float	bin:0x8cc0	575

## TRACK_WIDTH; axle length; distance between wheels on a single axle; measured in metres
## common value range N/A since it differs per car
patch	float	bin:0x8ca4	1.671
patch	float	bin:0x8ca8	1.668

## SHOCK_DIGRESSION; digressive shocks provide smoother ride at higher speeds and absorb body roll also improving cornering; smaller value for smoother ride
## common value range is 2x0.1-2x0.5
patch	float	bin:0x8c84	0.25
patch	float	bin:0x8c88	0.25

## FRONT_AXLE; front axle diameter in inches
## common value range is 1.2-1.5
patch	float	bin:0x8ce8	1.35

## AERO_CG; overall distribution of aerodynamic force on the car body; values between 0 and 100; 0 for max in rear, 100 for max in front
## common value range is 47-51
patch	float	bin:0x8ce0	49

## SPRING_PROGRESSION; maximum compression speed/rate for spring to achieve maximum stiffness; stock smaller than upgraded
## common value range is 2x5-2x8
patch	float	bin:0x8c8c	7
patch	float	bin:0x8c90	8

## AERO_COEFFICIENT; used to define car aerodynamics factor and overall downforce; value too small will make it slow and too high will push it down to
## ground too hard making it difficult to drive and car will be constantly hitting road due to excessive amount of downforce
## common value range is 0.15-0.30
patch	float	bin:0x8cec	0.25

## RENDER_MOTION; dependent on ecar node settings in body roll, dive and squat; used as a multiplier of the mentioned values to calculate car body movement
## common value range is 0.50-1.00
patch	float	bin:0x8ce4	1

## FRONT_WEIGHT_BIAS; overall mass distribution; values from 0 to 100; 0 for max rear bias; 100 for max front bias
## common value range is 51-55
patch	float	bin:0x8cf0	54

##---------------------------------------------------
## Node: chassis/default/viper/viper_top
##---------------------------------------------------

## WHEEL_BASE
patch	float	bin:0xa794	2.95

## DRAG_COEFFICIENT
patch	float	bin:0xa7b0	0.4

## SHOCK_VALVING
patch	float	bin:0xa780	24
patch	float	bin:0xa784	24

## RIDE_HEIGHT
patch	float	bin:0xa758	7.5
patch	float	bin:0xa75c	7.5

## SHOCK_STIFFNESS
patch	float	bin:0xa770	60
patch	float	bin:0xa774	60

## SHOCK_BLOWOUT
patch	float	bin:0xa798	6

## SHOCK_EXT_STIFFNESS
patch	float	bin:0xa768	65
patch	float	bin:0xa76c	65

## SWAYBAR_STIFFNESS
patch	float	bin:0xa788	300
patch	float	bin:0xa78c	300

## ROLL_CENTER
patch	float	bin:0xa790	7.5

## AERO_CG
patch	float	bin:0xa79c	49

## SPRING_PROGRESSION
patch	float	bin:0xa748	9
patch	float	bin:0xa74c	9.45

## SPRING_STIFFNESS
patch	float	bin:0xa778	600
patch	float	bin:0xa77c	650

## TRAVEL
patch	float	bin:0xa750	6.5
patch	float	bin:0xa754	6.5

## TRACK_WIDTH
patch	float	bin:0xa760	1.671
patch	float	bin:0xa764	1.668

## SHOCK_DIGRESSION
patch	float	bin:0xa740	0.1
patch	float	bin:0xa744	0.1

## RENDER_MOTION
patch	float	bin:0xa7a0	0.5

## AERO_COEFFICIENT
patch	float	bin:0xa7a8	0.265

## FRONT_AXLE
patch	float	bin:0xa7a4	1.4

## FRONT_WEIGHT_BIAS
patch	float	bin:0xa7ac	54

##---------------------------------------------------
## Node: induction/default/viper_top
##---------------------------------------------------

## AIR_PRESSURE*; commonly 0.25
patch	float	bin:0x11e54	0.25

## HIGH_BOOST
patch	float	bin:0x11e68	0.2

## LOW_BOOST
patch	float	bin:0x11e50	0.2

## PSI_ARROW_MOVE_SPEED*; always higher value for stock
patch	float	bin:0x11e60	2

## PSI; maximum pressure of air taken into the turbine
## common value range is 12-15
patch	float	bin:0x11e64	19

## SPOOL; turbine lag; 0 for 'supercharger'; anything higher will give 'turbo' upgrade
## common value range is 0.00-0.20
patch	float	bin:0x11e5c	0

## BOOST_VARIANCE*; pressure drop/rise in chamber
patch	float	bin:0x11e58	0