Experimentally add ug2-* scripts

This commit is contained in:
Fierelier 2023-02-13 01:13:13 +01:00
parent 185a39faf6
commit c0a9d6fc86
4 changed files with 3666 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,353 @@
#!/usr/bin/env python3
import sys
import os
oldexcepthook = sys.excepthook
def newexcepthook(type,value,traceback):
oldexcepthook(type,value,traceback)
input("Press ENTER to quit.")
sys.excepthook = newexcepthook
p = os.path.join
pUp = os.path.dirname
s = False
if getattr(sys, 'frozen', False) and hasattr(sys, '_MEIPASS'):
s = os.path.realpath(sys.executable)
else:
s = os.path.realpath(__file__)
sp = pUp(s)
os.chdir(sp)
nfsmsScript = s.replace(".py",".nfsms")
properties = """\
update_field chassis replaceme ROLL_CENTER 10
update_field chassis replaceme RIDE_HEIGHT Front 12
update_field chassis replaceme RIDE_HEIGHT Rear 12
update_field chassis replaceme SHOCK_BLOWOUT 0
update_field chassis replaceme SHOCK_DIGRESSION Front 0.15
update_field chassis replaceme SHOCK_DIGRESSION Rear 0.1
update_field chassis replaceme SHOCK_EXT_STIFFNESS Front 37
update_field chassis replaceme SHOCK_EXT_STIFFNESS Rear 38.5
update_field chassis replaceme SHOCK_STIFFNESS Front 5
update_field chassis replaceme SHOCK_STIFFNESS Rear 5
update_field chassis replaceme SHOCK_VALVING Front 5.9
update_field chassis replaceme SHOCK_VALVING Rear 5.1
update_field chassis replaceme SPRING_PROGRESSION Front 5
update_field chassis replaceme SPRING_PROGRESSION Rear 5.65
update_field chassis replaceme SPRING_STIFFNESS Front 74
update_field chassis replaceme SPRING_STIFFNESS Rear 74
update_field chassis replaceme SWAYBAR_STIFFNESS Front 37
update_field chassis replaceme SWAYBAR_STIFFNESS Rear 37
update_field chassis replaceme TRAVEL Front 10000
update_field chassis replaceme TRAVEL Rear 10000
update_field chassis replaceme_top ROLL_CENTER 8
update_field chassis replaceme_top RIDE_HEIGHT Front 12
update_field chassis replaceme_top RIDE_HEIGHT Rear 12
update_field chassis replaceme_top SHOCK_BLOWOUT 0
update_field chassis replaceme_top SHOCK_DIGRESSION Front 0.25
update_field chassis replaceme_top SHOCK_DIGRESSION Rear 0.3
update_field chassis replaceme_top SHOCK_EXT_STIFFNESS Front 70
update_field chassis replaceme_top SHOCK_EXT_STIFFNESS Rear 65
update_field chassis replaceme_top SHOCK_STIFFNESS Front 6.6
update_field chassis replaceme_top SHOCK_STIFFNESS Rear 6.6
update_field chassis replaceme_top SHOCK_VALVING Front 6
update_field chassis replaceme_top SHOCK_VALVING Rear 7
update_field chassis replaceme_top SPRING_PROGRESSION Front 7
update_field chassis replaceme_top SPRING_PROGRESSION Rear 6.2
update_field chassis replaceme_top SPRING_STIFFNESS Front 74
update_field chassis replaceme_top SPRING_STIFFNESS Rear 74
update_field chassis replaceme_top SWAYBAR_STIFFNESS Front 50
update_field chassis replaceme_top SWAYBAR_STIFFNESS Rear 59
update_field chassis replaceme_top TRAVEL Front 10000
update_field chassis replaceme_top TRAVEL Rear 10000
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE X 1
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Z 10
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE W 0
update_field pvehicle replaceme TENSOR_SCALE X 1.3
update_field pvehicle replaceme TENSOR_SCALE Z 1.1
update_field pvehicle replaceme TENSOR_SCALE W 0
update_field rigidbodyspecs racers DRAG_ANGULAR X 1000
update_field rigidbodyspecs racers DRAG_ANGULAR Z 1000
update_field chassis replaceme AERO_COEFFICIENT 0.135
update_field chassis replaceme_top AERO_COEFFICIENT 0.135
### NO ARTIFICIAL BODY ROLL ###
update_field ecar replaceme BodyDive DegPerG 0
update_field ecar replaceme BodyDive DegPerSec 0
update_field ecar replaceme BodyDive MaxG 0.0
update_field ecar replaceme BodyRoll DegPerG 0.0
update_field ecar replaceme BodyRoll DegPerSec 0
update_field ecar replaceme BodyRoll MaxG 0
update_field ecar replaceme BodySquat DegPerG 0
update_field ecar replaceme BodySquat DegPerSec 0
update_field ecar replaceme BodySquat MaxG 0.0
\
"""
carlist = ["911gt2","911turbo","997s","a3","a4","bmwm3gtr","bmwm3gtre46","camaro","carreragt","caymans","clio","clk500","cobaltss","corvette","corvettec6r","cts","db9","eclipsegt","elise","fordgt","gallardo","gti","gto","imprezawrx","is300","lancerevo8","monaro","murcielago","mustanggt","punto","rx7","rx8","sl500","sl65","slr","supra","tt","viper"]
carlistNoTop = ["911gt2","bmwm3gtr","bmwm3gtre46","camaro","corvettec6r","rx8speedt","sl65"]
topBias = {
"911gt2": 0.8,
"911turbo": 0.6,
"997s": 0.6,
"a3": 0.2,
"a4": 0.2,
"bmwm3gtr": 1.0,
"bmwm3gtre46": 0.4,
"camaro": 0.0,
"carreragt": 0.9,
"caymans": 0.6,
"clio": 0.2,
"clk500": 0.2,
"cobaltss": 0.1,
"corvette": 0.4,
"corvettec6r": 1.0,
"cts": 0.1,
"db9": 0.7,
"eclipsegt": 0.4,
"elise": 0.6,
"fordgt": 0.6,
"gallardo": 0.6,
"gti": 0.2,
"gto": 0.1,
"imprezawrx": 0.4,
"is300": 0.0,
"lancerevo8": 0.5,
"monaro": 0.1,
"murcielago": 0.3,
"mustanggt": 0.1,
"punto": 0.2,
"rx7": 0.3,
"rx8": 0.2,
"sl500": 0.5,
"sl65": 0.4,
"slr": 0.6,
"supra": 0.3,
"tt": 0.3,
"viper": 0.4
}
nfsmsMods = {}
nfsmsModsTop = {}
for car in carlist:
nfsmsMods[car] = {}
nfsmsMods[car]["chassis"] = {}
# Ride height scale
nfsmsMods["911gt2"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["911gt2"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["911turbo"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["911turbo"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["997s"]["chassis"]["RIDE_HEIGHT Rear"] = 1.0
nfsmsMods["997s"]["chassis"]["RIDE_HEIGHT Front"] = 1.0
nfsmsMods["a3"]["chassis"]["RIDE_HEIGHT Rear"] = 1.2
nfsmsMods["a3"]["chassis"]["RIDE_HEIGHT Front"] = 1.2
nfsmsMods["a4"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["a4"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["bmwm3gtr"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["bmwm3gtr"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["bmwm3gtre46"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["bmwm3gtre46"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["camaro"]["chassis"]["RIDE_HEIGHT Rear"] = 0.9
nfsmsMods["camaro"]["chassis"]["RIDE_HEIGHT Front"] = 0.9
nfsmsMods["carreragt"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["carreragt"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["caymans"]["chassis"]["RIDE_HEIGHT Rear"] = 1.2
nfsmsMods["caymans"]["chassis"]["RIDE_HEIGHT Front"] = 1.2
nfsmsMods["clio"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["clio"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["clk500"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["clk500"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["cobaltss"]["chassis"]["RIDE_HEIGHT Rear"] = 1.35
nfsmsMods["cobaltss"]["chassis"]["RIDE_HEIGHT Front"] = 1.35
nfsmsMods["corvette"]["chassis"]["RIDE_HEIGHT Rear"] = 1.4
nfsmsMods["corvette"]["chassis"]["RIDE_HEIGHT Front"] = 1.4
nfsmsMods["corvettec6r"]["chassis"]["RIDE_HEIGHT Rear"] = 0.8
nfsmsMods["corvettec6r"]["chassis"]["RIDE_HEIGHT Front"] = 0.8
nfsmsMods["cts"]["chassis"]["RIDE_HEIGHT Rear"] = 0.9
nfsmsMods["cts"]["chassis"]["RIDE_HEIGHT Front"] = 0.9
nfsmsMods["db9"]["chassis"]["RIDE_HEIGHT Rear"] = 0.9
nfsmsMods["db9"]["chassis"]["RIDE_HEIGHT Front"] = 0.9
nfsmsMods["eclipsegt"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["eclipsegt"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["elise"]["chassis"]["RIDE_HEIGHT Rear"] = 0.9
nfsmsMods["elise"]["chassis"]["RIDE_HEIGHT Front"] = 0.9
nfsmsMods["fordgt"]["chassis"]["RIDE_HEIGHT Rear"] = 0.8
nfsmsMods["fordgt"]["chassis"]["RIDE_HEIGHT Front"] = 0.8
nfsmsMods["gallardo"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["gallardo"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["gti"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["gti"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["gto"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["gto"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["imprezawrx"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["imprezawrx"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["is300"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["is300"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["lancerevo8"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["lancerevo8"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["monaro"]["chassis"]["RIDE_HEIGHT Rear"] = 1.15
nfsmsMods["monaro"]["chassis"]["RIDE_HEIGHT Front"] = 1.15
nfsmsMods["murcielago"]["chassis"]["RIDE_HEIGHT Rear"] = 0.9
nfsmsMods["murcielago"]["chassis"]["RIDE_HEIGHT Front"] = 0.9
nfsmsMods["mustanggt"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["mustanggt"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["punto"]["chassis"]["RIDE_HEIGHT Rear"] = 0.9
nfsmsMods["punto"]["chassis"]["RIDE_HEIGHT Front"] = 0.9
nfsmsMods["rx7"]["chassis"]["RIDE_HEIGHT Rear"] = 1.2
nfsmsMods["rx7"]["chassis"]["RIDE_HEIGHT Front"] = 1.2
nfsmsMods["rx8"]["chassis"]["RIDE_HEIGHT Rear"] = 1.0
nfsmsMods["rx8"]["chassis"]["RIDE_HEIGHT Front"] = 1.0
nfsmsMods["sl500"]["chassis"]["RIDE_HEIGHT Rear"] = 1.0
nfsmsMods["sl500"]["chassis"]["RIDE_HEIGHT Front"] = 1.0
nfsmsMods["sl65"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["sl65"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["slr"]["chassis"]["RIDE_HEIGHT Rear"] = 1.1
nfsmsMods["slr"]["chassis"]["RIDE_HEIGHT Front"] = 1.1
nfsmsMods["supra"]["chassis"]["RIDE_HEIGHT Rear"] = 1.0
nfsmsMods["supra"]["chassis"]["RIDE_HEIGHT Front"] = 1.0
nfsmsMods["tt"]["chassis"]["RIDE_HEIGHT Rear"] = 1.3
nfsmsMods["tt"]["chassis"]["RIDE_HEIGHT Front"] = 1.3
nfsmsMods["viper"]["chassis"]["RIDE_HEIGHT Rear"] = 0.85
nfsmsMods["viper"]["chassis"]["RIDE_HEIGHT Front"] = 0.85
parsedVlt = []
for line in properties.split("\n"):
line = line.strip(" \t\r")
arg = ""
args = []
for c in line:
if c == "#": break
if c in [" ","\t"]:
if arg != "":
args.append(arg)
arg = ""
continue
arg = arg + c
if arg != "":
args.append(arg)
arg = ""
if len(args) > 0:
parsedVlt.append(args)
def findLine(linef,ls):
linef = linef.copy()
linef.pop(-1)
linef.pop(2)
linefLength = len(linef)
for line in reversed(ls):
length = len(line) - 2
if length != linefLength: continue
lineo = line
line = line.copy()
line.pop(-1)
line.pop(2)
index = 0
success = True
while index < length:
if linef[index] != line[index]:
success = False
break
index += 1
if success == False: continue
return lineo
return False
def lineToPropPair(line):
line = line.copy()
cat = line[1]
line.pop(0)
line.pop(0)
line.pop(0)
line.pop(-1)
line = " ".join(line)
return [cat,line]
def getNfsmsMod(car,line,isTop = False):
prop = lineToPropPair(line)
if isTop:
if car in nfsmsModsTop:
if prop[0] in nfsmsModsTop[car]:
if prop[1] in nfsmsModsTop[car][prop[0]]:
return nfsmsModsTop[car][prop[0]][prop[1]]
if car in nfsmsMods:
if prop[0] in nfsmsMods[car]:
if prop[1] in nfsmsMods[car][prop[0]]:
return nfsmsMods[car][prop[0]][prop[1]]
return False
nfsmsMisc = []
nfsmsCars = {}
for car in carlist:
for line in parsedVlt:
line = line.copy()
isCarLine = False
isTopLine = False
if "replaceme" in line:
isCarLine = True
if "replaceme_top" in line:
isCarLine = True
isTopLine = True
if isCarLine == False:
nfsmsMisc.append(line)
continue
if not car in nfsmsCars:
nfsmsCars[car] = [[],[]]
if not isTopLine:
nfsmsCars[car][0].append(line)
else:
nfsmsCars[car][1].append(line)
for car in nfsmsCars:
for line in nfsmsCars[car][0]:
if line[0] != "update_field": continue
mult = getNfsmsMod(car,line)
if mult == False: continue
line[-1] = str(float(line[-1]) * mult)
for line in nfsmsCars[car][1]:
if line[0] != "update_field": continue
mult = getNfsmsMod(car,line,True)
if mult == False: continue
line[-1] = str(float(line[-1]) * mult)
for car in nfsmsCars:
if not (car in topBias): continue
for line in nfsmsCars[car][0]:
if line[0] != "update_field": continue
if line[1] in ["ecar","pvehicle"]: continue
topLine = findLine(line,nfsmsCars[car][1])
if topLine == False:
print("Warning, no top line found: " +(" ".join(line)))
continue
topLine = topLine.copy()
topLine[-1] = float(topLine[-1])
line[-1] = float(line[-1])
line[-1] = str(line[-1] + ((topLine[-1] - line[-1])*topBias[car]))
file = open(nfsmsScript,"w")
for car in nfsmsCars:
for line in nfsmsCars[car][0]:
if line[2] == "replaceme": line[2] = car
file.write(" ".join(line) + "\n")
if car in carlistNoTop: continue
for line in nfsmsCars[car][1]:
if line[2] == "replaceme_top": line[2] = car + "_top"
file.write(" ".join(line) + "\n")
for line in nfsmsMisc:
file.write(" ".join(line) + "\n")
file.close()

View File

@ -0,0 +1,954 @@
update_field tires 911gt2 DYNAMIC_GRIP Front 1.6
update_field tires 911gt2 DYNAMIC_GRIP Rear 1.6
update_field tires 911gt2 GRIP_SCALE Front 1.48
update_field tires 911gt2 GRIP_SCALE Rear 1.6400000000000001
update_field tires 911gt2 STATIC_GRIP Front 2.2
update_field tires 911gt2 STATIC_GRIP Rear 2.2
update_field tires 911gt2 STEERING 0.4
update_field tires 911gt2 YAW_CONTROL[0] 8.2
update_field tires 911gt2 YAW_CONTROL[1] 8.2
update_field tires 911gt2 YAW_CONTROL[2] 8.2
update_field tires 911gt2 YAW_CONTROL[3] 8.2
update_field tires 911gt2 YAW_SPEED 0.66
update_field pvehicle 911gt2 TENSOR_SCALE Y 2.2
update_field tires 911turbo DYNAMIC_GRIP Front 1.6
update_field tires 911turbo DYNAMIC_GRIP Rear 1.6
update_field tires 911turbo GRIP_SCALE Front 1.36
update_field tires 911turbo GRIP_SCALE Rear 1.48
update_field tires 911turbo STATIC_GRIP Front 2.2
update_field tires 911turbo STATIC_GRIP Rear 2.2
update_field tires 911turbo STEERING 0.4
update_field tires 911turbo YAW_CONTROL[0] 6.3999999999999995
update_field tires 911turbo YAW_CONTROL[1] 6.3999999999999995
update_field tires 911turbo YAW_CONTROL[2] 6.3999999999999995
update_field tires 911turbo YAW_CONTROL[3] 6.3999999999999995
update_field tires 911turbo YAW_SPEED 0.67
update_field pvehicle 911turbo TENSOR_SCALE Y 2.2
update_field tires 911turbo_top DYNAMIC_GRIP Front 1.6
update_field tires 911turbo_top DYNAMIC_GRIP Rear 1.6
update_field tires 911turbo_top GRIP_SCALE Front 1.6
update_field tires 911turbo_top GRIP_SCALE Rear 1.8
update_field tires 911turbo_top STATIC_GRIP Front 2.2
update_field tires 911turbo_top STATIC_GRIP Rear 2.2
update_field tires 911turbo_top STEERING 0.4
update_field tires 911turbo_top YAW_CONTROL[0] 10
update_field tires 911turbo_top YAW_CONTROL[1] 10
update_field tires 911turbo_top YAW_CONTROL[2] 10
update_field tires 911turbo_top YAW_CONTROL[3] 10
update_field tires 911turbo_top YAW_SPEED 0.65
update_field tires 997s DYNAMIC_GRIP Front 1.6
update_field tires 997s DYNAMIC_GRIP Rear 1.6
update_field tires 997s GRIP_SCALE Front 1.36
update_field tires 997s GRIP_SCALE Rear 1.48
update_field tires 997s STATIC_GRIP Front 2.2
update_field tires 997s STATIC_GRIP Rear 2.2
update_field tires 997s STEERING 0.4
update_field tires 997s YAW_CONTROL[0] 6.3999999999999995
update_field tires 997s YAW_CONTROL[1] 6.3999999999999995
update_field tires 997s YAW_CONTROL[2] 6.3999999999999995
update_field tires 997s YAW_CONTROL[3] 6.3999999999999995
update_field tires 997s YAW_SPEED 0.67
update_field pvehicle 997s TENSOR_SCALE Y 2.2
update_field tires 997s_top DYNAMIC_GRIP Front 1.6
update_field tires 997s_top DYNAMIC_GRIP Rear 1.6
update_field tires 997s_top GRIP_SCALE Front 1.6
update_field tires 997s_top GRIP_SCALE Rear 1.8
update_field tires 997s_top STATIC_GRIP Front 2.2
update_field tires 997s_top STATIC_GRIP Rear 2.2
update_field tires 997s_top STEERING 0.4
update_field tires 997s_top YAW_CONTROL[0] 10
update_field tires 997s_top YAW_CONTROL[1] 10
update_field tires 997s_top YAW_CONTROL[2] 10
update_field tires 997s_top YAW_CONTROL[3] 10
update_field tires 997s_top YAW_SPEED 0.65
update_field tires a3 DYNAMIC_GRIP Front 1.6
update_field tires a3 DYNAMIC_GRIP Rear 1.6
update_field tires a3 GRIP_SCALE Front 1.12
update_field tires a3 GRIP_SCALE Rear 1.1600000000000001
update_field tires a3 STATIC_GRIP Front 2.2
update_field tires a3 STATIC_GRIP Rear 2.2
update_field tires a3 STEERING 0.4
update_field tires a3 YAW_CONTROL[0] 2.8
update_field tires a3 YAW_CONTROL[1] 2.8
update_field tires a3 YAW_CONTROL[2] 2.8
update_field tires a3 YAW_CONTROL[3] 2.8
update_field tires a3 YAW_SPEED 0.69
update_field pvehicle a3 TENSOR_SCALE Y 2.2
update_field tires a3_top DYNAMIC_GRIP Front 1.6
update_field tires a3_top DYNAMIC_GRIP Rear 1.6
update_field tires a3_top GRIP_SCALE Front 1.6
update_field tires a3_top GRIP_SCALE Rear 1.8
update_field tires a3_top STATIC_GRIP Front 2.2
update_field tires a3_top STATIC_GRIP Rear 2.2
update_field tires a3_top STEERING 0.4
update_field tires a3_top YAW_CONTROL[0] 10
update_field tires a3_top YAW_CONTROL[1] 10
update_field tires a3_top YAW_CONTROL[2] 10
update_field tires a3_top YAW_CONTROL[3] 10
update_field tires a3_top YAW_SPEED 0.65
update_field tires a4 DYNAMIC_GRIP Front 1.6
update_field tires a4 DYNAMIC_GRIP Rear 1.6
update_field tires a4 GRIP_SCALE Front 1.12
update_field tires a4 GRIP_SCALE Rear 1.1600000000000001
update_field tires a4 STATIC_GRIP Front 2.2
update_field tires a4 STATIC_GRIP Rear 2.2
update_field tires a4 STEERING 0.4
update_field tires a4 YAW_CONTROL[0] 2.8
update_field tires a4 YAW_CONTROL[1] 2.8
update_field tires a4 YAW_CONTROL[2] 2.8
update_field tires a4 YAW_CONTROL[3] 2.8
update_field tires a4 YAW_SPEED 0.69
update_field pvehicle a4 TENSOR_SCALE Y 2.2
update_field tires a4_top DYNAMIC_GRIP Front 1.6
update_field tires a4_top DYNAMIC_GRIP Rear 1.6
update_field tires a4_top GRIP_SCALE Front 1.6
update_field tires a4_top GRIP_SCALE Rear 1.8
update_field tires a4_top STATIC_GRIP Front 2.2
update_field tires a4_top STATIC_GRIP Rear 2.2
update_field tires a4_top STEERING 0.4
update_field tires a4_top YAW_CONTROL[0] 10
update_field tires a4_top YAW_CONTROL[1] 10
update_field tires a4_top YAW_CONTROL[2] 10
update_field tires a4_top YAW_CONTROL[3] 10
update_field tires a4_top YAW_SPEED 0.65
update_field tires bmwm3gtr DYNAMIC_GRIP Front 1.6
update_field tires bmwm3gtr DYNAMIC_GRIP Rear 1.6
update_field tires bmwm3gtr GRIP_SCALE Front 1.6
update_field tires bmwm3gtr GRIP_SCALE Rear 1.8
update_field tires bmwm3gtr STATIC_GRIP Front 2.2
update_field tires bmwm3gtr STATIC_GRIP Rear 2.2
update_field tires bmwm3gtr STEERING 0.4
update_field tires bmwm3gtr YAW_CONTROL[0] 10.0
update_field tires bmwm3gtr YAW_CONTROL[1] 10.0
update_field tires bmwm3gtr YAW_CONTROL[2] 10.0
update_field tires bmwm3gtr YAW_CONTROL[3] 10.0
update_field tires bmwm3gtr YAW_SPEED 0.65
update_field pvehicle bmwm3gtr TENSOR_SCALE Y 2.2
update_field tires bmwm3gtre46 DYNAMIC_GRIP Front 1.6
update_field tires bmwm3gtre46 DYNAMIC_GRIP Rear 1.6
update_field tires bmwm3gtre46 GRIP_SCALE Front 1.24
update_field tires bmwm3gtre46 GRIP_SCALE Rear 1.32
update_field tires bmwm3gtre46 STATIC_GRIP Front 2.2
update_field tires bmwm3gtre46 STATIC_GRIP Rear 2.2
update_field tires bmwm3gtre46 STEERING 0.4
update_field tires bmwm3gtre46 YAW_CONTROL[0] 4.6
update_field tires bmwm3gtre46 YAW_CONTROL[1] 4.6
update_field tires bmwm3gtre46 YAW_CONTROL[2] 4.6
update_field tires bmwm3gtre46 YAW_CONTROL[3] 4.6
update_field tires bmwm3gtre46 YAW_SPEED 0.6799999999999999
update_field pvehicle bmwm3gtre46 TENSOR_SCALE Y 2.2
update_field tires camaro DYNAMIC_GRIP Front 1.6
update_field tires camaro DYNAMIC_GRIP Rear 1.6
update_field tires camaro GRIP_SCALE Front 1.0
update_field tires camaro GRIP_SCALE Rear 1.0
update_field tires camaro STATIC_GRIP Front 2.2
update_field tires camaro STATIC_GRIP Rear 2.2
update_field tires camaro STEERING 0.4
update_field tires camaro YAW_CONTROL[0] 1.0
update_field tires camaro YAW_CONTROL[1] 1.0
update_field tires camaro YAW_CONTROL[2] 1.0
update_field tires camaro YAW_CONTROL[3] 1.0
update_field tires camaro YAW_SPEED 0.7
update_field pvehicle camaro TENSOR_SCALE Y 2.2
update_field tires carreragt DYNAMIC_GRIP Front 1.6
update_field tires carreragt DYNAMIC_GRIP Rear 1.6
update_field tires carreragt GRIP_SCALE Front 1.54
update_field tires carreragt GRIP_SCALE Rear 1.7200000000000002
update_field tires carreragt STATIC_GRIP Front 2.2
update_field tires carreragt STATIC_GRIP Rear 2.2
update_field tires carreragt STEERING 0.4
update_field tires carreragt YAW_CONTROL[0] 9.1
update_field tires carreragt YAW_CONTROL[1] 9.1
update_field tires carreragt YAW_CONTROL[2] 9.1
update_field tires carreragt YAW_CONTROL[3] 9.1
update_field tires carreragt YAW_SPEED 0.655
update_field pvehicle carreragt TENSOR_SCALE Y 2.2
update_field tires carreragt_top DYNAMIC_GRIP Front 1.6
update_field tires carreragt_top DYNAMIC_GRIP Rear 1.6
update_field tires carreragt_top GRIP_SCALE Front 1.6
update_field tires carreragt_top GRIP_SCALE Rear 1.8
update_field tires carreragt_top STATIC_GRIP Front 2.2
update_field tires carreragt_top STATIC_GRIP Rear 2.2
update_field tires carreragt_top STEERING 0.4
update_field tires carreragt_top YAW_CONTROL[0] 10
update_field tires carreragt_top YAW_CONTROL[1] 10
update_field tires carreragt_top YAW_CONTROL[2] 10
update_field tires carreragt_top YAW_CONTROL[3] 10
update_field tires carreragt_top YAW_SPEED 0.65
update_field tires caymans DYNAMIC_GRIP Front 1.6
update_field tires caymans DYNAMIC_GRIP Rear 1.6
update_field tires caymans GRIP_SCALE Front 1.36
update_field tires caymans GRIP_SCALE Rear 1.48
update_field tires caymans STATIC_GRIP Front 2.2
update_field tires caymans STATIC_GRIP Rear 2.2
update_field tires caymans STEERING 0.4
update_field tires caymans YAW_CONTROL[0] 6.3999999999999995
update_field tires caymans YAW_CONTROL[1] 6.3999999999999995
update_field tires caymans YAW_CONTROL[2] 6.3999999999999995
update_field tires caymans YAW_CONTROL[3] 6.3999999999999995
update_field tires caymans YAW_SPEED 0.67
update_field pvehicle caymans TENSOR_SCALE Y 2.2
update_field tires caymans_top DYNAMIC_GRIP Front 1.6
update_field tires caymans_top DYNAMIC_GRIP Rear 1.6
update_field tires caymans_top GRIP_SCALE Front 1.6
update_field tires caymans_top GRIP_SCALE Rear 1.8
update_field tires caymans_top STATIC_GRIP Front 2.2
update_field tires caymans_top STATIC_GRIP Rear 2.2
update_field tires caymans_top STEERING 0.4
update_field tires caymans_top YAW_CONTROL[0] 10
update_field tires caymans_top YAW_CONTROL[1] 10
update_field tires caymans_top YAW_CONTROL[2] 10
update_field tires caymans_top YAW_CONTROL[3] 10
update_field tires caymans_top YAW_SPEED 0.65
update_field tires clio DYNAMIC_GRIP Front 1.6
update_field tires clio DYNAMIC_GRIP Rear 1.6
update_field tires clio GRIP_SCALE Front 1.12
update_field tires clio GRIP_SCALE Rear 1.1600000000000001
update_field tires clio STATIC_GRIP Front 2.2
update_field tires clio STATIC_GRIP Rear 2.2
update_field tires clio STEERING 0.4
update_field tires clio YAW_CONTROL[0] 2.8
update_field tires clio YAW_CONTROL[1] 2.8
update_field tires clio YAW_CONTROL[2] 2.8
update_field tires clio YAW_CONTROL[3] 2.8
update_field tires clio YAW_SPEED 0.69
update_field pvehicle clio TENSOR_SCALE Y 2.2
update_field tires clio_top DYNAMIC_GRIP Front 1.6
update_field tires clio_top DYNAMIC_GRIP Rear 1.6
update_field tires clio_top GRIP_SCALE Front 1.6
update_field tires clio_top GRIP_SCALE Rear 1.8
update_field tires clio_top STATIC_GRIP Front 2.2
update_field tires clio_top STATIC_GRIP Rear 2.2
update_field tires clio_top STEERING 0.4
update_field tires clio_top YAW_CONTROL[0] 10
update_field tires clio_top YAW_CONTROL[1] 10
update_field tires clio_top YAW_CONTROL[2] 10
update_field tires clio_top YAW_CONTROL[3] 10
update_field tires clio_top YAW_SPEED 0.65
update_field tires clk500 DYNAMIC_GRIP Front 1.6
update_field tires clk500 DYNAMIC_GRIP Rear 1.6
update_field tires clk500 GRIP_SCALE Front 1.12
update_field tires clk500 GRIP_SCALE Rear 1.1600000000000001
update_field tires clk500 STATIC_GRIP Front 2.2
update_field tires clk500 STATIC_GRIP Rear 2.2
update_field tires clk500 STEERING 0.4
update_field tires clk500 YAW_CONTROL[0] 2.8
update_field tires clk500 YAW_CONTROL[1] 2.8
update_field tires clk500 YAW_CONTROL[2] 2.8
update_field tires clk500 YAW_CONTROL[3] 2.8
update_field tires clk500 YAW_SPEED 0.69
update_field pvehicle clk500 TENSOR_SCALE Y 2.2
update_field tires clk500_top DYNAMIC_GRIP Front 1.6
update_field tires clk500_top DYNAMIC_GRIP Rear 1.6
update_field tires clk500_top GRIP_SCALE Front 1.6
update_field tires clk500_top GRIP_SCALE Rear 1.8
update_field tires clk500_top STATIC_GRIP Front 2.2
update_field tires clk500_top STATIC_GRIP Rear 2.2
update_field tires clk500_top STEERING 0.4
update_field tires clk500_top YAW_CONTROL[0] 10
update_field tires clk500_top YAW_CONTROL[1] 10
update_field tires clk500_top YAW_CONTROL[2] 10
update_field tires clk500_top YAW_CONTROL[3] 10
update_field tires clk500_top YAW_SPEED 0.65
update_field tires cobaltss DYNAMIC_GRIP Front 1.6
update_field tires cobaltss DYNAMIC_GRIP Rear 1.6
update_field tires cobaltss GRIP_SCALE Front 1.06
update_field tires cobaltss GRIP_SCALE Rear 1.08
update_field tires cobaltss STATIC_GRIP Front 2.2
update_field tires cobaltss STATIC_GRIP Rear 2.2
update_field tires cobaltss STEERING 0.4
update_field tires cobaltss YAW_CONTROL[0] 1.9
update_field tires cobaltss YAW_CONTROL[1] 1.9
update_field tires cobaltss YAW_CONTROL[2] 1.9
update_field tires cobaltss YAW_CONTROL[3] 1.9
update_field tires cobaltss YAW_SPEED 0.695
update_field pvehicle cobaltss TENSOR_SCALE Y 2.2
update_field tires cobaltss_top DYNAMIC_GRIP Front 1.6
update_field tires cobaltss_top DYNAMIC_GRIP Rear 1.6
update_field tires cobaltss_top GRIP_SCALE Front 1.6
update_field tires cobaltss_top GRIP_SCALE Rear 1.8
update_field tires cobaltss_top STATIC_GRIP Front 2.2
update_field tires cobaltss_top STATIC_GRIP Rear 2.2
update_field tires cobaltss_top STEERING 0.4
update_field tires cobaltss_top YAW_CONTROL[0] 10
update_field tires cobaltss_top YAW_CONTROL[1] 10
update_field tires cobaltss_top YAW_CONTROL[2] 10
update_field tires cobaltss_top YAW_CONTROL[3] 10
update_field tires cobaltss_top YAW_SPEED 0.65
update_field tires corvette DYNAMIC_GRIP Front 1.6
update_field tires corvette DYNAMIC_GRIP Rear 1.6
update_field tires corvette GRIP_SCALE Front 1.24
update_field tires corvette GRIP_SCALE Rear 1.32
update_field tires corvette STATIC_GRIP Front 2.2
update_field tires corvette STATIC_GRIP Rear 2.2
update_field tires corvette STEERING 0.4
update_field tires corvette YAW_CONTROL[0] 4.6
update_field tires corvette YAW_CONTROL[1] 4.6
update_field tires corvette YAW_CONTROL[2] 4.6
update_field tires corvette YAW_CONTROL[3] 4.6
update_field tires corvette YAW_SPEED 0.6799999999999999
update_field pvehicle corvette TENSOR_SCALE Y 2.2
update_field tires corvette_top DYNAMIC_GRIP Front 1.6
update_field tires corvette_top DYNAMIC_GRIP Rear 1.6
update_field tires corvette_top GRIP_SCALE Front 1.6
update_field tires corvette_top GRIP_SCALE Rear 1.8
update_field tires corvette_top STATIC_GRIP Front 2.2
update_field tires corvette_top STATIC_GRIP Rear 2.2
update_field tires corvette_top STEERING 0.4
update_field tires corvette_top YAW_CONTROL[0] 10
update_field tires corvette_top YAW_CONTROL[1] 10
update_field tires corvette_top YAW_CONTROL[2] 10
update_field tires corvette_top YAW_CONTROL[3] 10
update_field tires corvette_top YAW_SPEED 0.65
update_field tires corvettec6r DYNAMIC_GRIP Front 1.6
update_field tires corvettec6r DYNAMIC_GRIP Rear 1.6
update_field tires corvettec6r GRIP_SCALE Front 1.6
update_field tires corvettec6r GRIP_SCALE Rear 1.8
update_field tires corvettec6r STATIC_GRIP Front 2.2
update_field tires corvettec6r STATIC_GRIP Rear 2.2
update_field tires corvettec6r STEERING 0.4
update_field tires corvettec6r YAW_CONTROL[0] 10.0
update_field tires corvettec6r YAW_CONTROL[1] 10.0
update_field tires corvettec6r YAW_CONTROL[2] 10.0
update_field tires corvettec6r YAW_CONTROL[3] 10.0
update_field tires corvettec6r YAW_SPEED 0.65
update_field pvehicle corvettec6r TENSOR_SCALE Y 2.2
update_field tires cts DYNAMIC_GRIP Front 1.6
update_field tires cts DYNAMIC_GRIP Rear 1.6
update_field tires cts GRIP_SCALE Front 1.06
update_field tires cts GRIP_SCALE Rear 1.08
update_field tires cts STATIC_GRIP Front 2.2
update_field tires cts STATIC_GRIP Rear 2.2
update_field tires cts STEERING 0.4
update_field tires cts YAW_CONTROL[0] 1.9
update_field tires cts YAW_CONTROL[1] 1.9
update_field tires cts YAW_CONTROL[2] 1.9
update_field tires cts YAW_CONTROL[3] 1.9
update_field tires cts YAW_SPEED 0.695
update_field pvehicle cts TENSOR_SCALE Y 2.2
update_field tires cts_top DYNAMIC_GRIP Front 1.6
update_field tires cts_top DYNAMIC_GRIP Rear 1.6
update_field tires cts_top GRIP_SCALE Front 1.6
update_field tires cts_top GRIP_SCALE Rear 1.8
update_field tires cts_top STATIC_GRIP Front 2.2
update_field tires cts_top STATIC_GRIP Rear 2.2
update_field tires cts_top STEERING 0.4
update_field tires cts_top YAW_CONTROL[0] 10
update_field tires cts_top YAW_CONTROL[1] 10
update_field tires cts_top YAW_CONTROL[2] 10
update_field tires cts_top YAW_CONTROL[3] 10
update_field tires cts_top YAW_SPEED 0.65
update_field tires db9 DYNAMIC_GRIP Front 1.6
update_field tires db9 DYNAMIC_GRIP Rear 1.6
update_field tires db9 GRIP_SCALE Front 1.42
update_field tires db9 GRIP_SCALE Rear 1.56
update_field tires db9 STATIC_GRIP Front 2.2
update_field tires db9 STATIC_GRIP Rear 2.2
update_field tires db9 STEERING 0.4
update_field tires db9 YAW_CONTROL[0] 7.3
update_field tires db9 YAW_CONTROL[1] 7.3
update_field tires db9 YAW_CONTROL[2] 7.3
update_field tires db9 YAW_CONTROL[3] 7.3
update_field tires db9 YAW_SPEED 0.665
update_field pvehicle db9 TENSOR_SCALE Y 2.2
update_field tires db9_top DYNAMIC_GRIP Front 1.6
update_field tires db9_top DYNAMIC_GRIP Rear 1.6
update_field tires db9_top GRIP_SCALE Front 1.6
update_field tires db9_top GRIP_SCALE Rear 1.8
update_field tires db9_top STATIC_GRIP Front 2.2
update_field tires db9_top STATIC_GRIP Rear 2.2
update_field tires db9_top STEERING 0.4
update_field tires db9_top YAW_CONTROL[0] 10
update_field tires db9_top YAW_CONTROL[1] 10
update_field tires db9_top YAW_CONTROL[2] 10
update_field tires db9_top YAW_CONTROL[3] 10
update_field tires db9_top YAW_SPEED 0.65
update_field tires eclipsegt DYNAMIC_GRIP Front 1.6
update_field tires eclipsegt DYNAMIC_GRIP Rear 1.6
update_field tires eclipsegt GRIP_SCALE Front 1.24
update_field tires eclipsegt GRIP_SCALE Rear 1.32
update_field tires eclipsegt STATIC_GRIP Front 2.2
update_field tires eclipsegt STATIC_GRIP Rear 2.2
update_field tires eclipsegt STEERING 0.4
update_field tires eclipsegt YAW_CONTROL[0] 4.6
update_field tires eclipsegt YAW_CONTROL[1] 4.6
update_field tires eclipsegt YAW_CONTROL[2] 4.6
update_field tires eclipsegt YAW_CONTROL[3] 4.6
update_field tires eclipsegt YAW_SPEED 0.6799999999999999
update_field pvehicle eclipsegt TENSOR_SCALE Y 2.2
update_field tires eclipsegt_top DYNAMIC_GRIP Front 1.6
update_field tires eclipsegt_top DYNAMIC_GRIP Rear 1.6
update_field tires eclipsegt_top GRIP_SCALE Front 1.6
update_field tires eclipsegt_top GRIP_SCALE Rear 1.8
update_field tires eclipsegt_top STATIC_GRIP Front 2.2
update_field tires eclipsegt_top STATIC_GRIP Rear 2.2
update_field tires eclipsegt_top STEERING 0.4
update_field tires eclipsegt_top YAW_CONTROL[0] 10
update_field tires eclipsegt_top YAW_CONTROL[1] 10
update_field tires eclipsegt_top YAW_CONTROL[2] 10
update_field tires eclipsegt_top YAW_CONTROL[3] 10
update_field tires eclipsegt_top YAW_SPEED 0.65
update_field tires elise DYNAMIC_GRIP Front 1.6
update_field tires elise DYNAMIC_GRIP Rear 1.6
update_field tires elise GRIP_SCALE Front 0.544
update_field tires elise GRIP_SCALE Rear 0.5920000000000001
update_field tires elise STATIC_GRIP Front 2.2
update_field tires elise STATIC_GRIP Rear 2.2
update_field tires elise STEERING 0.4
update_field tires elise YAW_CONTROL[0] 6.3999999999999995
update_field tires elise YAW_CONTROL[1] 6.3999999999999995
update_field tires elise YAW_CONTROL[2] 6.3999999999999995
update_field tires elise YAW_CONTROL[3] 6.3999999999999995
update_field tires elise YAW_SPEED 0.67
update_field pvehicle elise TENSOR_SCALE Y 2.2
update_field tires elise_top DYNAMIC_GRIP Front 1.6
update_field tires elise_top DYNAMIC_GRIP Rear 1.6
update_field tires elise_top GRIP_SCALE Front 0.6400000000000001
update_field tires elise_top GRIP_SCALE Rear 0.7200000000000001
update_field tires elise_top STATIC_GRIP Front 2.2
update_field tires elise_top STATIC_GRIP Rear 2.2
update_field tires elise_top STEERING 0.4
update_field tires elise_top YAW_CONTROL[0] 10
update_field tires elise_top YAW_CONTROL[1] 10
update_field tires elise_top YAW_CONTROL[2] 10
update_field tires elise_top YAW_CONTROL[3] 10
update_field tires elise_top YAW_SPEED 0.65
update_field tires fordgt DYNAMIC_GRIP Front 1.6
update_field tires fordgt DYNAMIC_GRIP Rear 1.6
update_field tires fordgt GRIP_SCALE Front 1.36
update_field tires fordgt GRIP_SCALE Rear 1.48
update_field tires fordgt STATIC_GRIP Front 2.2
update_field tires fordgt STATIC_GRIP Rear 2.2
update_field tires fordgt STEERING 0.4
update_field tires fordgt YAW_CONTROL[0] 6.3999999999999995
update_field tires fordgt YAW_CONTROL[1] 6.3999999999999995
update_field tires fordgt YAW_CONTROL[2] 6.3999999999999995
update_field tires fordgt YAW_CONTROL[3] 6.3999999999999995
update_field tires fordgt YAW_SPEED 0.67
update_field pvehicle fordgt TENSOR_SCALE Y 2.2
update_field tires fordgt_top DYNAMIC_GRIP Front 1.6
update_field tires fordgt_top DYNAMIC_GRIP Rear 1.6
update_field tires fordgt_top GRIP_SCALE Front 1.6
update_field tires fordgt_top GRIP_SCALE Rear 1.8
update_field tires fordgt_top STATIC_GRIP Front 2.2
update_field tires fordgt_top STATIC_GRIP Rear 2.2
update_field tires fordgt_top STEERING 0.4
update_field tires fordgt_top YAW_CONTROL[0] 10
update_field tires fordgt_top YAW_CONTROL[1] 10
update_field tires fordgt_top YAW_CONTROL[2] 10
update_field tires fordgt_top YAW_CONTROL[3] 10
update_field tires fordgt_top YAW_SPEED 0.65
update_field tires gallardo DYNAMIC_GRIP Front 1.6
update_field tires gallardo DYNAMIC_GRIP Rear 1.6
update_field tires gallardo GRIP_SCALE Front 1.36
update_field tires gallardo GRIP_SCALE Rear 1.48
update_field tires gallardo STATIC_GRIP Front 2.2
update_field tires gallardo STATIC_GRIP Rear 2.2
update_field tires gallardo STEERING 0.4
update_field tires gallardo YAW_CONTROL[0] 6.3999999999999995
update_field tires gallardo YAW_CONTROL[1] 6.3999999999999995
update_field tires gallardo YAW_CONTROL[2] 6.3999999999999995
update_field tires gallardo YAW_CONTROL[3] 6.3999999999999995
update_field tires gallardo YAW_SPEED 0.67
update_field pvehicle gallardo TENSOR_SCALE Y 2.2
update_field tires gallardo_top DYNAMIC_GRIP Front 1.6
update_field tires gallardo_top DYNAMIC_GRIP Rear 1.6
update_field tires gallardo_top GRIP_SCALE Front 1.6
update_field tires gallardo_top GRIP_SCALE Rear 1.8
update_field tires gallardo_top STATIC_GRIP Front 2.2
update_field tires gallardo_top STATIC_GRIP Rear 2.2
update_field tires gallardo_top STEERING 0.4
update_field tires gallardo_top YAW_CONTROL[0] 10
update_field tires gallardo_top YAW_CONTROL[1] 10
update_field tires gallardo_top YAW_CONTROL[2] 10
update_field tires gallardo_top YAW_CONTROL[3] 10
update_field tires gallardo_top YAW_SPEED 0.65
update_field tires gti DYNAMIC_GRIP Front 1.6
update_field tires gti DYNAMIC_GRIP Rear 1.6
update_field tires gti GRIP_SCALE Front 1.12
update_field tires gti GRIP_SCALE Rear 1.1600000000000001
update_field tires gti STATIC_GRIP Front 2.2
update_field tires gti STATIC_GRIP Rear 2.2
update_field tires gti STEERING 0.4
update_field tires gti YAW_CONTROL[0] 2.8
update_field tires gti YAW_CONTROL[1] 2.8
update_field tires gti YAW_CONTROL[2] 2.8
update_field tires gti YAW_CONTROL[3] 2.8
update_field tires gti YAW_SPEED 0.69
update_field pvehicle gti TENSOR_SCALE Y 2.2
update_field tires gti_top DYNAMIC_GRIP Front 1.6
update_field tires gti_top DYNAMIC_GRIP Rear 1.6
update_field tires gti_top GRIP_SCALE Front 1.6
update_field tires gti_top GRIP_SCALE Rear 1.8
update_field tires gti_top STATIC_GRIP Front 2.2
update_field tires gti_top STATIC_GRIP Rear 2.2
update_field tires gti_top STEERING 0.4
update_field tires gti_top YAW_CONTROL[0] 10
update_field tires gti_top YAW_CONTROL[1] 10
update_field tires gti_top YAW_CONTROL[2] 10
update_field tires gti_top YAW_CONTROL[3] 10
update_field tires gti_top YAW_SPEED 0.65
update_field tires gto DYNAMIC_GRIP Front 1.6
update_field tires gto DYNAMIC_GRIP Rear 1.6
update_field tires gto GRIP_SCALE Front 1.06
update_field tires gto GRIP_SCALE Rear 1.08
update_field tires gto STATIC_GRIP Front 2.2
update_field tires gto STATIC_GRIP Rear 2.2
update_field tires gto STEERING 0.4
update_field tires gto YAW_CONTROL[0] 1.9
update_field tires gto YAW_CONTROL[1] 1.9
update_field tires gto YAW_CONTROL[2] 1.9
update_field tires gto YAW_CONTROL[3] 1.9
update_field tires gto YAW_SPEED 0.695
update_field pvehicle gto TENSOR_SCALE Y 2.2
update_field tires gto_top DYNAMIC_GRIP Front 1.6
update_field tires gto_top DYNAMIC_GRIP Rear 1.6
update_field tires gto_top GRIP_SCALE Front 1.6
update_field tires gto_top GRIP_SCALE Rear 1.8
update_field tires gto_top STATIC_GRIP Front 2.2
update_field tires gto_top STATIC_GRIP Rear 2.2
update_field tires gto_top STEERING 0.4
update_field tires gto_top YAW_CONTROL[0] 10
update_field tires gto_top YAW_CONTROL[1] 10
update_field tires gto_top YAW_CONTROL[2] 10
update_field tires gto_top YAW_CONTROL[3] 10
update_field tires gto_top YAW_SPEED 0.65
update_field tires imprezawrx DYNAMIC_GRIP Front 1.6
update_field tires imprezawrx DYNAMIC_GRIP Rear 1.6
update_field tires imprezawrx GRIP_SCALE Front 1.24
update_field tires imprezawrx GRIP_SCALE Rear 1.32
update_field tires imprezawrx STATIC_GRIP Front 2.2
update_field tires imprezawrx STATIC_GRIP Rear 2.2
update_field tires imprezawrx STEERING 0.4
update_field tires imprezawrx YAW_CONTROL[0] 4.6
update_field tires imprezawrx YAW_CONTROL[1] 4.6
update_field tires imprezawrx YAW_CONTROL[2] 4.6
update_field tires imprezawrx YAW_CONTROL[3] 4.6
update_field tires imprezawrx YAW_SPEED 0.6799999999999999
update_field pvehicle imprezawrx TENSOR_SCALE Y 2.2
update_field tires imprezawrx_top DYNAMIC_GRIP Front 1.6
update_field tires imprezawrx_top DYNAMIC_GRIP Rear 1.6
update_field tires imprezawrx_top GRIP_SCALE Front 1.6
update_field tires imprezawrx_top GRIP_SCALE Rear 1.8
update_field tires imprezawrx_top STATIC_GRIP Front 2.2
update_field tires imprezawrx_top STATIC_GRIP Rear 2.2
update_field tires imprezawrx_top STEERING 0.4
update_field tires imprezawrx_top YAW_CONTROL[0] 10
update_field tires imprezawrx_top YAW_CONTROL[1] 10
update_field tires imprezawrx_top YAW_CONTROL[2] 10
update_field tires imprezawrx_top YAW_CONTROL[3] 10
update_field tires imprezawrx_top YAW_SPEED 0.65
update_field tires is300 DYNAMIC_GRIP Front 1.6
update_field tires is300 DYNAMIC_GRIP Rear 1.6
update_field tires is300 GRIP_SCALE Front 1.0
update_field tires is300 GRIP_SCALE Rear 1.0
update_field tires is300 STATIC_GRIP Front 2.2
update_field tires is300 STATIC_GRIP Rear 2.2
update_field tires is300 STEERING 0.4
update_field tires is300 YAW_CONTROL[0] 1.0
update_field tires is300 YAW_CONTROL[1] 1.0
update_field tires is300 YAW_CONTROL[2] 1.0
update_field tires is300 YAW_CONTROL[3] 1.0
update_field tires is300 YAW_SPEED 0.7
update_field pvehicle is300 TENSOR_SCALE Y 2.2
update_field tires is300_top DYNAMIC_GRIP Front 1.6
update_field tires is300_top DYNAMIC_GRIP Rear 1.6
update_field tires is300_top GRIP_SCALE Front 1.6
update_field tires is300_top GRIP_SCALE Rear 1.8
update_field tires is300_top STATIC_GRIP Front 2.2
update_field tires is300_top STATIC_GRIP Rear 2.2
update_field tires is300_top STEERING 0.4
update_field tires is300_top YAW_CONTROL[0] 10
update_field tires is300_top YAW_CONTROL[1] 10
update_field tires is300_top YAW_CONTROL[2] 10
update_field tires is300_top YAW_CONTROL[3] 10
update_field tires is300_top YAW_SPEED 0.65
update_field tires lancerevo8 DYNAMIC_GRIP Front 1.6
update_field tires lancerevo8 DYNAMIC_GRIP Rear 1.6
update_field tires lancerevo8 GRIP_SCALE Front 1.3
update_field tires lancerevo8 GRIP_SCALE Rear 1.4
update_field tires lancerevo8 STATIC_GRIP Front 2.2
update_field tires lancerevo8 STATIC_GRIP Rear 2.2
update_field tires lancerevo8 STEERING 0.4
update_field tires lancerevo8 YAW_CONTROL[0] 5.5
update_field tires lancerevo8 YAW_CONTROL[1] 5.5
update_field tires lancerevo8 YAW_CONTROL[2] 5.5
update_field tires lancerevo8 YAW_CONTROL[3] 5.5
update_field tires lancerevo8 YAW_SPEED 0.675
update_field pvehicle lancerevo8 TENSOR_SCALE Y 2.2
update_field tires lancerevo8_top DYNAMIC_GRIP Front 1.6
update_field tires lancerevo8_top DYNAMIC_GRIP Rear 1.6
update_field tires lancerevo8_top GRIP_SCALE Front 1.6
update_field tires lancerevo8_top GRIP_SCALE Rear 1.8
update_field tires lancerevo8_top STATIC_GRIP Front 2.2
update_field tires lancerevo8_top STATIC_GRIP Rear 2.2
update_field tires lancerevo8_top STEERING 0.4
update_field tires lancerevo8_top YAW_CONTROL[0] 10
update_field tires lancerevo8_top YAW_CONTROL[1] 10
update_field tires lancerevo8_top YAW_CONTROL[2] 10
update_field tires lancerevo8_top YAW_CONTROL[3] 10
update_field tires lancerevo8_top YAW_SPEED 0.65
update_field tires monaro DYNAMIC_GRIP Front 1.6
update_field tires monaro DYNAMIC_GRIP Rear 1.6
update_field tires monaro GRIP_SCALE Front 1.06
update_field tires monaro GRIP_SCALE Rear 1.08
update_field tires monaro STATIC_GRIP Front 2.2
update_field tires monaro STATIC_GRIP Rear 2.2
update_field tires monaro STEERING 0.4
update_field tires monaro YAW_CONTROL[0] 1.9
update_field tires monaro YAW_CONTROL[1] 1.9
update_field tires monaro YAW_CONTROL[2] 1.9
update_field tires monaro YAW_CONTROL[3] 1.9
update_field tires monaro YAW_SPEED 0.695
update_field pvehicle monaro TENSOR_SCALE Y 2.2
update_field tires monaro_top DYNAMIC_GRIP Front 1.6
update_field tires monaro_top DYNAMIC_GRIP Rear 1.6
update_field tires monaro_top GRIP_SCALE Front 1.6
update_field tires monaro_top GRIP_SCALE Rear 1.8
update_field tires monaro_top STATIC_GRIP Front 2.2
update_field tires monaro_top STATIC_GRIP Rear 2.2
update_field tires monaro_top STEERING 0.4
update_field tires monaro_top YAW_CONTROL[0] 10
update_field tires monaro_top YAW_CONTROL[1] 10
update_field tires monaro_top YAW_CONTROL[2] 10
update_field tires monaro_top YAW_CONTROL[3] 10
update_field tires monaro_top YAW_SPEED 0.65
update_field tires murcielago DYNAMIC_GRIP Front 1.6
update_field tires murcielago DYNAMIC_GRIP Rear 1.6
update_field tires murcielago GRIP_SCALE Front 1.18
update_field tires murcielago GRIP_SCALE Rear 1.24
update_field tires murcielago STATIC_GRIP Front 2.2
update_field tires murcielago STATIC_GRIP Rear 2.2
update_field tires murcielago STEERING 0.4
update_field tires murcielago YAW_CONTROL[0] 3.6999999999999997
update_field tires murcielago YAW_CONTROL[1] 3.6999999999999997
update_field tires murcielago YAW_CONTROL[2] 3.6999999999999997
update_field tires murcielago YAW_CONTROL[3] 3.6999999999999997
update_field tires murcielago YAW_SPEED 0.6849999999999999
update_field pvehicle murcielago TENSOR_SCALE Y 2.2
update_field tires murcielago_top DYNAMIC_GRIP Front 1.6
update_field tires murcielago_top DYNAMIC_GRIP Rear 1.6
update_field tires murcielago_top GRIP_SCALE Front 1.6
update_field tires murcielago_top GRIP_SCALE Rear 1.8
update_field tires murcielago_top STATIC_GRIP Front 2.2
update_field tires murcielago_top STATIC_GRIP Rear 2.2
update_field tires murcielago_top STEERING 0.4
update_field tires murcielago_top YAW_CONTROL[0] 10
update_field tires murcielago_top YAW_CONTROL[1] 10
update_field tires murcielago_top YAW_CONTROL[2] 10
update_field tires murcielago_top YAW_CONTROL[3] 10
update_field tires murcielago_top YAW_SPEED 0.65
update_field tires mustanggt DYNAMIC_GRIP Front 1.6
update_field tires mustanggt DYNAMIC_GRIP Rear 1.6
update_field tires mustanggt GRIP_SCALE Front 1.06
update_field tires mustanggt GRIP_SCALE Rear 1.08
update_field tires mustanggt STATIC_GRIP Front 2.2
update_field tires mustanggt STATIC_GRIP Rear 2.2
update_field tires mustanggt STEERING 0.4
update_field tires mustanggt YAW_CONTROL[0] 1.9
update_field tires mustanggt YAW_CONTROL[1] 1.9
update_field tires mustanggt YAW_CONTROL[2] 1.9
update_field tires mustanggt YAW_CONTROL[3] 1.9
update_field tires mustanggt YAW_SPEED 0.695
update_field pvehicle mustanggt TENSOR_SCALE Y 2.2
update_field tires mustanggt_top DYNAMIC_GRIP Front 1.6
update_field tires mustanggt_top DYNAMIC_GRIP Rear 1.6
update_field tires mustanggt_top GRIP_SCALE Front 1.6
update_field tires mustanggt_top GRIP_SCALE Rear 1.8
update_field tires mustanggt_top STATIC_GRIP Front 2.2
update_field tires mustanggt_top STATIC_GRIP Rear 2.2
update_field tires mustanggt_top STEERING 0.4
update_field tires mustanggt_top YAW_CONTROL[0] 10
update_field tires mustanggt_top YAW_CONTROL[1] 10
update_field tires mustanggt_top YAW_CONTROL[2] 10
update_field tires mustanggt_top YAW_CONTROL[3] 10
update_field tires mustanggt_top YAW_SPEED 0.65
update_field tires punto DYNAMIC_GRIP Front 1.6
update_field tires punto DYNAMIC_GRIP Rear 1.6
update_field tires punto GRIP_SCALE Front 1.12
update_field tires punto GRIP_SCALE Rear 1.1600000000000001
update_field tires punto STATIC_GRIP Front 2.2
update_field tires punto STATIC_GRIP Rear 2.2
update_field tires punto STEERING 0.4
update_field tires punto YAW_CONTROL[0] 2.8
update_field tires punto YAW_CONTROL[1] 2.8
update_field tires punto YAW_CONTROL[2] 2.8
update_field tires punto YAW_CONTROL[3] 2.8
update_field tires punto YAW_SPEED 0.69
update_field pvehicle punto TENSOR_SCALE Y 2.2
update_field tires punto_top DYNAMIC_GRIP Front 1.6
update_field tires punto_top DYNAMIC_GRIP Rear 1.6
update_field tires punto_top GRIP_SCALE Front 1.6
update_field tires punto_top GRIP_SCALE Rear 1.8
update_field tires punto_top STATIC_GRIP Front 2.2
update_field tires punto_top STATIC_GRIP Rear 2.2
update_field tires punto_top STEERING 0.4
update_field tires punto_top YAW_CONTROL[0] 10
update_field tires punto_top YAW_CONTROL[1] 10
update_field tires punto_top YAW_CONTROL[2] 10
update_field tires punto_top YAW_CONTROL[3] 10
update_field tires punto_top YAW_SPEED 0.65
update_field tires rx7 DYNAMIC_GRIP Front 1.6
update_field tires rx7 DYNAMIC_GRIP Rear 1.6
update_field tires rx7 GRIP_SCALE Front 1.18
update_field tires rx7 GRIP_SCALE Rear 1.24
update_field tires rx7 STATIC_GRIP Front 2.2
update_field tires rx7 STATIC_GRIP Rear 2.2
update_field tires rx7 STEERING 0.4
update_field tires rx7 YAW_CONTROL[0] 3.6999999999999997
update_field tires rx7 YAW_CONTROL[1] 3.6999999999999997
update_field tires rx7 YAW_CONTROL[2] 3.6999999999999997
update_field tires rx7 YAW_CONTROL[3] 3.6999999999999997
update_field tires rx7 YAW_SPEED 0.6849999999999999
update_field pvehicle rx7 TENSOR_SCALE Y 2.2
update_field tires rx7_top DYNAMIC_GRIP Front 1.6
update_field tires rx7_top DYNAMIC_GRIP Rear 1.6
update_field tires rx7_top GRIP_SCALE Front 1.6
update_field tires rx7_top GRIP_SCALE Rear 1.8
update_field tires rx7_top STATIC_GRIP Front 2.2
update_field tires rx7_top STATIC_GRIP Rear 2.2
update_field tires rx7_top STEERING 0.4
update_field tires rx7_top YAW_CONTROL[0] 10
update_field tires rx7_top YAW_CONTROL[1] 10
update_field tires rx7_top YAW_CONTROL[2] 10
update_field tires rx7_top YAW_CONTROL[3] 10
update_field tires rx7_top YAW_SPEED 0.65
update_field tires rx8 DYNAMIC_GRIP Front 1.6
update_field tires rx8 DYNAMIC_GRIP Rear 1.6
update_field tires rx8 GRIP_SCALE Front 1.12
update_field tires rx8 GRIP_SCALE Rear 1.1600000000000001
update_field tires rx8 STATIC_GRIP Front 2.2
update_field tires rx8 STATIC_GRIP Rear 2.2
update_field tires rx8 STEERING 0.4
update_field tires rx8 YAW_CONTROL[0] 2.8
update_field tires rx8 YAW_CONTROL[1] 2.8
update_field tires rx8 YAW_CONTROL[2] 2.8
update_field tires rx8 YAW_CONTROL[3] 2.8
update_field tires rx8 YAW_SPEED 0.69
update_field pvehicle rx8 TENSOR_SCALE Y 2.2
update_field tires rx8_top DYNAMIC_GRIP Front 1.6
update_field tires rx8_top DYNAMIC_GRIP Rear 1.6
update_field tires rx8_top GRIP_SCALE Front 1.6
update_field tires rx8_top GRIP_SCALE Rear 1.8
update_field tires rx8_top STATIC_GRIP Front 2.2
update_field tires rx8_top STATIC_GRIP Rear 2.2
update_field tires rx8_top STEERING 0.4
update_field tires rx8_top YAW_CONTROL[0] 10
update_field tires rx8_top YAW_CONTROL[1] 10
update_field tires rx8_top YAW_CONTROL[2] 10
update_field tires rx8_top YAW_CONTROL[3] 10
update_field tires rx8_top YAW_SPEED 0.65
update_field tires sl500 DYNAMIC_GRIP Front 1.6
update_field tires sl500 DYNAMIC_GRIP Rear 1.6
update_field tires sl500 GRIP_SCALE Front 1.3
update_field tires sl500 GRIP_SCALE Rear 1.4
update_field tires sl500 STATIC_GRIP Front 2.2
update_field tires sl500 STATIC_GRIP Rear 2.2
update_field tires sl500 STEERING 0.4
update_field tires sl500 YAW_CONTROL[0] 5.5
update_field tires sl500 YAW_CONTROL[1] 5.5
update_field tires sl500 YAW_CONTROL[2] 5.5
update_field tires sl500 YAW_CONTROL[3] 5.5
update_field tires sl500 YAW_SPEED 0.675
update_field pvehicle sl500 TENSOR_SCALE Y 2.2
update_field tires sl500_top DYNAMIC_GRIP Front 1.6
update_field tires sl500_top DYNAMIC_GRIP Rear 1.6
update_field tires sl500_top GRIP_SCALE Front 1.6
update_field tires sl500_top GRIP_SCALE Rear 1.8
update_field tires sl500_top STATIC_GRIP Front 2.2
update_field tires sl500_top STATIC_GRIP Rear 2.2
update_field tires sl500_top STEERING 0.4
update_field tires sl500_top YAW_CONTROL[0] 10
update_field tires sl500_top YAW_CONTROL[1] 10
update_field tires sl500_top YAW_CONTROL[2] 10
update_field tires sl500_top YAW_CONTROL[3] 10
update_field tires sl500_top YAW_SPEED 0.65
update_field tires sl65 DYNAMIC_GRIP Front 1.6
update_field tires sl65 DYNAMIC_GRIP Rear 1.6
update_field tires sl65 GRIP_SCALE Front 1.24
update_field tires sl65 GRIP_SCALE Rear 1.32
update_field tires sl65 STATIC_GRIP Front 2.2
update_field tires sl65 STATIC_GRIP Rear 2.2
update_field tires sl65 STEERING 0.4
update_field tires sl65 YAW_CONTROL[0] 4.6
update_field tires sl65 YAW_CONTROL[1] 4.6
update_field tires sl65 YAW_CONTROL[2] 4.6
update_field tires sl65 YAW_CONTROL[3] 4.6
update_field tires sl65 YAW_SPEED 0.6799999999999999
update_field pvehicle sl65 TENSOR_SCALE Y 2.2
update_field tires slr DYNAMIC_GRIP Front 1.6
update_field tires slr DYNAMIC_GRIP Rear 1.6
update_field tires slr GRIP_SCALE Front 1.36
update_field tires slr GRIP_SCALE Rear 1.48
update_field tires slr STATIC_GRIP Front 2.2
update_field tires slr STATIC_GRIP Rear 2.2
update_field tires slr STEERING 0.4
update_field tires slr YAW_CONTROL[0] 6.3999999999999995
update_field tires slr YAW_CONTROL[1] 6.3999999999999995
update_field tires slr YAW_CONTROL[2] 6.3999999999999995
update_field tires slr YAW_CONTROL[3] 6.3999999999999995
update_field tires slr YAW_SPEED 0.67
update_field pvehicle slr TENSOR_SCALE Y 2.2
update_field tires slr_top DYNAMIC_GRIP Front 1.6
update_field tires slr_top DYNAMIC_GRIP Rear 1.6
update_field tires slr_top GRIP_SCALE Front 1.6
update_field tires slr_top GRIP_SCALE Rear 1.8
update_field tires slr_top STATIC_GRIP Front 2.2
update_field tires slr_top STATIC_GRIP Rear 2.2
update_field tires slr_top STEERING 0.4
update_field tires slr_top YAW_CONTROL[0] 10
update_field tires slr_top YAW_CONTROL[1] 10
update_field tires slr_top YAW_CONTROL[2] 10
update_field tires slr_top YAW_CONTROL[3] 10
update_field tires slr_top YAW_SPEED 0.65
update_field tires supra DYNAMIC_GRIP Front 1.6
update_field tires supra DYNAMIC_GRIP Rear 1.6
update_field tires supra GRIP_SCALE Front 1.18
update_field tires supra GRIP_SCALE Rear 1.24
update_field tires supra STATIC_GRIP Front 2.2
update_field tires supra STATIC_GRIP Rear 2.2
update_field tires supra STEERING 0.4
update_field tires supra YAW_CONTROL[0] 3.6999999999999997
update_field tires supra YAW_CONTROL[1] 3.6999999999999997
update_field tires supra YAW_CONTROL[2] 3.6999999999999997
update_field tires supra YAW_CONTROL[3] 3.6999999999999997
update_field tires supra YAW_SPEED 0.6849999999999999
update_field pvehicle supra TENSOR_SCALE Y 2.2
update_field tires supra_top DYNAMIC_GRIP Front 1.6
update_field tires supra_top DYNAMIC_GRIP Rear 1.6
update_field tires supra_top GRIP_SCALE Front 1.6
update_field tires supra_top GRIP_SCALE Rear 1.8
update_field tires supra_top STATIC_GRIP Front 2.2
update_field tires supra_top STATIC_GRIP Rear 2.2
update_field tires supra_top STEERING 0.4
update_field tires supra_top YAW_CONTROL[0] 10
update_field tires supra_top YAW_CONTROL[1] 10
update_field tires supra_top YAW_CONTROL[2] 10
update_field tires supra_top YAW_CONTROL[3] 10
update_field tires supra_top YAW_SPEED 0.65
update_field tires tt DYNAMIC_GRIP Front 1.6
update_field tires tt DYNAMIC_GRIP Rear 1.6
update_field tires tt GRIP_SCALE Front 1.18
update_field tires tt GRIP_SCALE Rear 1.24
update_field tires tt STATIC_GRIP Front 2.2
update_field tires tt STATIC_GRIP Rear 2.2
update_field tires tt STEERING 0.4
update_field tires tt YAW_CONTROL[0] 3.6999999999999997
update_field tires tt YAW_CONTROL[1] 3.6999999999999997
update_field tires tt YAW_CONTROL[2] 3.6999999999999997
update_field tires tt YAW_CONTROL[3] 3.6999999999999997
update_field tires tt YAW_SPEED 0.6849999999999999
update_field pvehicle tt TENSOR_SCALE Y 2.2
update_field tires tt_top DYNAMIC_GRIP Front 1.6
update_field tires tt_top DYNAMIC_GRIP Rear 1.6
update_field tires tt_top GRIP_SCALE Front 1.6
update_field tires tt_top GRIP_SCALE Rear 1.8
update_field tires tt_top STATIC_GRIP Front 2.2
update_field tires tt_top STATIC_GRIP Rear 2.2
update_field tires tt_top STEERING 0.4
update_field tires tt_top YAW_CONTROL[0] 10
update_field tires tt_top YAW_CONTROL[1] 10
update_field tires tt_top YAW_CONTROL[2] 10
update_field tires tt_top YAW_CONTROL[3] 10
update_field tires tt_top YAW_SPEED 0.65
update_field tires viper DYNAMIC_GRIP Front 1.6
update_field tires viper DYNAMIC_GRIP Rear 1.6
update_field tires viper GRIP_SCALE Front 1.24
update_field tires viper GRIP_SCALE Rear 1.32
update_field tires viper STATIC_GRIP Front 2.2
update_field tires viper STATIC_GRIP Rear 2.2
update_field tires viper STEERING 0.4
update_field tires viper YAW_CONTROL[0] 4.6
update_field tires viper YAW_CONTROL[1] 4.6
update_field tires viper YAW_CONTROL[2] 4.6
update_field tires viper YAW_CONTROL[3] 4.6
update_field tires viper YAW_SPEED 0.6799999999999999
update_field pvehicle viper TENSOR_SCALE Y 2.2
update_field tires viper_top DYNAMIC_GRIP Front 1.6
update_field tires viper_top DYNAMIC_GRIP Rear 1.6
update_field tires viper_top GRIP_SCALE Front 1.6
update_field tires viper_top GRIP_SCALE Rear 1.8
update_field tires viper_top STATIC_GRIP Front 2.2
update_field tires viper_top STATIC_GRIP Rear 2.2
update_field tires viper_top STEERING 0.4
update_field tires viper_top YAW_CONTROL[0] 10
update_field tires viper_top YAW_CONTROL[1] 10
update_field tires viper_top YAW_CONTROL[2] 10
update_field tires viper_top YAW_CONTROL[3] 10
update_field tires viper_top YAW_SPEED 0.65
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2

243
scripts/fier/ug2-tires.py Normal file
View File

@ -0,0 +1,243 @@
#!/usr/bin/env python3
import sys
import os
oldexcepthook = sys.excepthook
def newexcepthook(type,value,traceback):
oldexcepthook(type,value,traceback)
input("Press ENTER to quit.")
sys.excepthook = newexcepthook
p = os.path.join
pUp = os.path.dirname
s = False
if getattr(sys, 'frozen', False) and hasattr(sys, '_MEIPASS'):
s = os.path.realpath(sys.executable)
else:
s = os.path.realpath(__file__)
sp = pUp(s)
os.chdir(sp)
nfsmsScript = s.replace(".py",".nfsms")
properties = """\
update_field tires replaceme DYNAMIC_GRIP Front 1.6
update_field tires replaceme DYNAMIC_GRIP Rear 1.6
update_field tires replaceme GRIP_SCALE Front 1
update_field tires replaceme GRIP_SCALE Rear 1
update_field tires replaceme STATIC_GRIP Front 2.2
update_field tires replaceme STATIC_GRIP Rear 2.2
update_field tires replaceme STEERING 0.4
update_field tires replaceme YAW_CONTROL[0] 1
update_field tires replaceme YAW_CONTROL[1] 1
update_field tires replaceme YAW_CONTROL[2] 1
update_field tires replaceme YAW_CONTROL[3] 1
update_field tires replaceme YAW_SPEED 0.7
update_field tires replaceme_top DYNAMIC_GRIP Front 1.6
update_field tires replaceme_top DYNAMIC_GRIP Rear 1.6
update_field tires replaceme_top GRIP_SCALE Front 1.6
update_field tires replaceme_top GRIP_SCALE Rear 1.8
update_field tires replaceme_top STATIC_GRIP Front 2.2
update_field tires replaceme_top STATIC_GRIP Rear 2.2
update_field tires replaceme_top STEERING 0.4
update_field tires replaceme_top YAW_CONTROL[0] 10
update_field tires replaceme_top YAW_CONTROL[1] 10
update_field tires replaceme_top YAW_CONTROL[2] 10
update_field tires replaceme_top YAW_CONTROL[3] 10
update_field tires replaceme_top YAW_SPEED 0.65
update_field pvehicle replaceme TENSOR_SCALE Y 2.2
update_field rigidbodyspecs racers DRAG_ANGULAR Y -100
update_field rigidbodyspecs racers GROUND_MOMENT_SCALE Y 2
\
"""
carlist = ["911gt2","911turbo","997s","a3","a4","bmwm3gtr","bmwm3gtre46","camaro","carreragt","caymans","clio","clk500","cobaltss","corvette","corvettec6r","cts","db9","eclipsegt","elise","fordgt","gallardo","gti","gto","imprezawrx","is300","lancerevo8","monaro","murcielago","mustanggt","punto","rx7","rx8","sl500","sl65","slr","supra","tt","viper"]
carlistNoTop = ["911gt2","bmwm3gtr","bmwm3gtre46","camaro","corvettec6r","rx8speedt","sl65"]
topBias = {
"911gt2": 0.8,
"911turbo": 0.6,
"997s": 0.6,
"a3": 0.2,
"a4": 0.2,
"bmwm3gtr": 1.0,
"bmwm3gtre46": 0.4,
"camaro": 0.0,
"carreragt": 0.9,
"caymans": 0.6,
"clio": 0.2,
"clk500": 0.2,
"cobaltss": 0.1,
"corvette": 0.4,
"corvettec6r": 1.0,
"cts": 0.1,
"db9": 0.7,
"eclipsegt": 0.4,
"elise": 0.6,
"fordgt": 0.6,
"gallardo": 0.6,
"gti": 0.2,
"gto": 0.1,
"imprezawrx": 0.4,
"is300": 0.0,
"lancerevo8": 0.5,
"monaro": 0.1,
"murcielago": 0.3,
"mustanggt": 0.1,
"punto": 0.2,
"rx7": 0.3,
"rx8": 0.2,
"sl500": 0.5,
"sl65": 0.4,
"slr": 0.6,
"supra": 0.3,
"tt": 0.3,
"viper": 0.4
}
nfsmsMods = {}
nfsmsModsTop = {}
for car in carlist:
nfsmsMods[car] = {}
nfsmsMods[car]["tires"] = {}
# Grip scale
nfsmsMods["elise"]["tires"]["GRIP_SCALE Front"] = 0.4
nfsmsMods["elise"]["tires"]["GRIP_SCALE Rear"] = 0.4
parsedVlt = []
for line in properties.split("\n"):
line = line.strip(" \t\r")
arg = ""
args = []
for c in line:
if c == "#": break
if c in [" ","\t"]:
if arg != "":
args.append(arg)
arg = ""
continue
arg = arg + c
if arg != "":
args.append(arg)
arg = ""
if len(args) > 0:
parsedVlt.append(args)
def findLine(linef,ls):
linef = linef.copy()
linef.pop(-1)
linef.pop(2)
linefLength = len(linef)
for line in reversed(ls):
length = len(line) - 2
if length != linefLength: continue
lineo = line
line = line.copy()
line.pop(-1)
line.pop(2)
index = 0
success = True
while index < length:
if linef[index] != line[index]:
success = False
break
index += 1
if success == False: continue
return lineo
return False
def lineToPropPair(line):
line = line.copy()
cat = line[1]
line.pop(0)
line.pop(0)
line.pop(0)
line.pop(-1)
line = " ".join(line)
return [cat,line]
def getNfsmsMod(car,line,isTop = False):
prop = lineToPropPair(line)
if isTop:
if car in nfsmsModsTop:
if prop[0] in nfsmsModsTop[car]:
if prop[1] in nfsmsModsTop[car][prop[0]]:
return nfsmsModsTop[car][prop[0]][prop[1]]
if car in nfsmsMods:
if prop[0] in nfsmsMods[car]:
if prop[1] in nfsmsMods[car][prop[0]]:
return nfsmsMods[car][prop[0]][prop[1]]
return False
nfsmsMisc = []
nfsmsCars = {}
for car in carlist:
for line in parsedVlt:
line = line.copy()
isCarLine = False
isTopLine = False
if "replaceme" in line:
isCarLine = True
if "replaceme_top" in line:
isCarLine = True
isTopLine = True
if isCarLine == False:
nfsmsMisc.append(line)
continue
if not car in nfsmsCars:
nfsmsCars[car] = [[],[]]
if not isTopLine:
nfsmsCars[car][0].append(line)
else:
nfsmsCars[car][1].append(line)
for car in nfsmsCars:
for line in nfsmsCars[car][0]:
if line[0] != "update_field": continue
mult = getNfsmsMod(car,line)
if mult == False: continue
line[-1] = str(float(line[-1]) * mult)
for line in nfsmsCars[car][1]:
if line[0] != "update_field": continue
mult = getNfsmsMod(car,line,True)
if mult == False: continue
line[-1] = str(float(line[-1]) * mult)
for car in nfsmsCars:
if not (car in topBias): continue
for line in nfsmsCars[car][0]:
if line[0] != "update_field": continue
if line[1] in ["ecar","pvehicle"]: continue
topLine = findLine(line,nfsmsCars[car][1])
if topLine == False:
print("Warning, no top line found: " +(" ".join(line)))
continue
topLine = topLine.copy()
topLine[-1] = float(topLine[-1])
line[-1] = float(line[-1])
line[-1] = str(line[-1] + ((topLine[-1] - line[-1])*topBias[car]))
file = open(nfsmsScript,"w")
for car in nfsmsCars:
for line in nfsmsCars[car][0]:
if line[2] == "replaceme": line[2] = car
file.write(" ".join(line) + "\n")
if car in carlistNoTop: continue
for line in nfsmsCars[car][1]:
if line[2] == "replaceme_top": line[2] = car + "_top"
file.write(" ".join(line) + "\n")
for line in nfsmsMisc:
file.write(" ".join(line) + "\n")
file.close()