Formula & Calibration
How the dyno turns a car's handling and mods into its numbers, and how to tune them.
Every number on the dyno comes from the car's handling and mods, through one formula you can read and change. Engine power in hp is:
hp = scale * F * m^1.5 * (V / 100)^4 * class * model * engine * turbo * cheat * extra
| Term | Where it comes from |
|---|---|
F | fInitialDriveForce as the car has it now, so a script that takes power off a damaged engine shows on the dyno. |
m | fMass. The exponent is formula.massExponent. |
V | fInitialDriveMaxFlatVel. The exponent is formula.speedExponent. |
scale | formula.scale, 0.004436 by default. |
class | formula.classScale for the car's class, 1.4 for supercars, which GTA gives light masses. |
model | formula.models for the car's model, 1.0 when not listed. |
engine | 1 + modifier / 500, where the modifier is the stat of the fitted engine upgrade from GetVehicleModModifierValue. This is how far GTA raises the drive force for it, as measured in game. |
turbo | 1.1 with a turbo fitted. GTA adds a tenth of torque once it has spooled, which it has at full throttle on the rollers. |
cheat | GetVehicleCheatPowerIncrease, which SetVehicleEngineTorqueMultiplier sets. |
extra | Every factor other resources register with RegisterPowerModifier. |
F * m is the force GTA pushes a car with and V its top speed, so F * m * V is a power. The exponents are fitted to GTA's balancing: across 28 vanilla cars, the stock numbers land within about 30% of their real counterparts, and a stock Sultan reads 267 hp. The formula is linear in F, so an upgrade that adds 20% drive force adds 20% power.
#Wheel Power & the Curve
Wheel power is the engine power less drivetrainLoss for the wheels that drive, read from the car's powered wheels. The sheet shows both.
The curve is a torque shape that climbs from low revs to a peak and falls toward the redline, so power peaks late as on a real sheet. Where it peaks and how far it falls depends on the model, so each car has a shape of its own that stays the same run after run. A turbo adds a boost hump in the low revs. Each run adds a small wobble, the same for everyone watching, so two runs of the same car are never quite the same.
The curve runs from low revs to the redline in rpm: a model's own, then its class's, then rpm.redline.
#Calibrating
- Sit in a car you know the number for.
- Run
/dynocalibrate. It needscalibrate.permission. - Open the F8 console. It lists the car's model, class, drive, and gears, its handling values, every factor of the formula, and each power modifier. It ends with the engine power, the wheel power and torque with the rpm each peaks at, and the drivetrain loss, in hp and Nm.
- Change the config, restart the resource, and run it again.
| To move | Change |
|---|---|
| Every car | formula.scale |
| A whole class | formula.classScale |
| One car | formula.models |
| Where the curve ends | rpm.classes or rpm.models |
| Wheel figures against engine figures | drivetrainLoss |
Leave massExponent and speedExponent as they are unless you rebalance every car.