Difference between revisions of "Handling.cfg"
(→Handling Flag Data) |
(→Flags) |
||
Line 450: | Line 450: | ||
|1 | |1 | ||
|1G_BOOST | |1G_BOOST | ||
− | |Makes tyres spin more readily from standing starts. | + | |Power boost in first gear. Makes tyres spin more readily from standing starts. |
|- | |- | ||
|2 | |2 | ||
|2G_BOOST | |2G_BOOST | ||
− | |Makes tyres spin more readily at low speeds. | + | |Power boost in second gear. Makes tyres spin more readily at low speeds. |
|- | |- | ||
|4 | |4 |
Revision as of 22:51, 3 December 2024
The handling.cfg
file stores handling configuration data and settings for vehicles in GTA III, Vice City, and San Andreas.
GTA III and Vice City
Format and syntax description
The file is in plain text format so it can be opened with any text editor (like Notepad). Line comments are indicated by the character ;
(semicolon) and empty lines are allowed. They can be placed anywhere in the file. Each entry takes up one line and follows a specific format detailed below. Data in each entry are separated by
(space) and
(horizontal tab). The file must contain the line ;the end\n
(;the end
with at least an empty line after it) in order for the game to stop reading the file. The length of each line is limited to 200 characters and the size of the file is limited to 55000 bytes but the games do not perform any checks on the limits so going past them can cause instabilities or crashes.
Standard Data
This section contains all the performance settings for land vehicles and provides the base settings for boats, bikes and flying vehicles. In GTA III the special behaviour of boats, bikes and flying vehicles are hardcoded and are not included in the handling.cfg
file. Vice City included many of those handling data into the file.
Identifier | Type | Description | ||
---|---|---|---|---|
A | vehicle identifier | string | The identifier must be from the list of hardcoded names (see below). | |
B | fMass | float | Mass of the vehicle in kilograms. | |
C | Dimensions.x | float | Width of the vehicle in metres, used for aerodynamic and motion effects. | |
D | Dimensions.y | float | Length of the vehicle in metres, used for aerodynamic and motion effects. | |
E | Dimensions.z | float | Height of the vehicle in metres, used for aerodynamic and motion effects. | |
F | CentreOfMass.x | float | Distance from the centre of the car in metres to the right for the centre of mass. | |
G | CentreOfMass.y | float | Distance from the centre of the car in metres forward for the centre of mass. Moving the weight backward induces oversteer. Moving it forward induces understeer. | |
H | CentreOfMass.z | float | Distance from the centre of the car in metres upward for the centre of mass. Moving the weight upward increases body roll; downward decreases body roll. | |
I | nPercentSubmerged | integer | Percentage of the vehicle height required to be submerged for the car to float. | |
J | fTractionMultiplier | float | Grip of the vehicle as a multiplier of the tyre surface friction. Effectively the peak grip status before any loss of grip. | |
K | fTractionLoss | float | Effectively the minimum grip status after losing traction, e.g. in a skidding situation. Higher values make the car more controllable after losing traction. | |
L | fTractionBias | float | Ratio of front axle grip to rear axle grip; higher value shifts grip forwards. | |
M | TransmissionData.nNumberOfGears | integer | Number of gearchange animations and sound effects to use. | |
N | TransmissionData.fMaxVelocity | float | Limits the top speed. | |
O | TransmissionData.fEngineAcceleration | float | Basic rate of acceleration. | |
P | TransmissionData.nDriveType | character | Assigns Front, Rear or 4 wheel drive. | |
Q | TransmissionData.nEngineType | character | Assigns Petrol, Diesel or Electric engine characteristics. | |
R | fBrakeDeceleration | float | Overall decelerative force, set so keyboard controls do not quite lock up the wheels. Note: this is affected by tire grip. | |
S | fBrakeBias | float | Ratio of braking force of front compared to rear; higher values move bias forward. | |
T | bABS | integer | Seems to have no effect. | |
U | fSteeringLock | float | Maximum rotation of steering arc in degrees; use negatives for rear wheel steered vehicles. | |
V | fSuspensionForceLevel | float | Essentially the stiffness of the springs. This is affected by the suspension upper/lower limit defined below; less travel will require lower stiffness to remain the same. Note: low suspension force will cause the body to sit lower to the ground and vice versa. | |
W | fSuspensionDampingLevel | float | Damping prevents the springs from continuing to flex and compress after they are compressed; essentially preventing a bouncy ride. | |
X | fSeatOffsetDistance | float | Distance from door position to seat position. | |
Y | fCollisionDamageMultiplier | float | How much damage vehicle engine gets from collisions. Higher value means more damage. | |
Z | nMonetaryValue | integer | Used to determine monetary award for crusher, collisions, and explosions in GTA III and the Property Destroyed statistic in Vice City. | |
AA | suspension upper limit | float | Uppermost movement of wheels in metres. | |
AB | suspension lower limit | float | Ride height of vehicle in metres. | |
AC | suspension bias | float | Ratio of suspension force to apply at the rear compared to the front. | |
- | AD | suspension anti-dive multiplier | float | Changes the amount of body pitching under braking and acceleration. |
AD | AE | Flags | hex | Special features which can be enabled or disabled (see below). |
AE | AF | front lights | integer | Defines the size of the head lights of the vehicle. Using numbers out of range has unusual effects. |
AF | AG | rear lights | integer | Same as above but for the tail lights. |
List of vehicle identifiers
The games contain a hardcoded list of vehicle identifiers. This is used to assign a vehicle's handling name to a handling index (LANDSTAL is at index 0, IDAHO is at index 1, etc.).
Flags
The flag is a sixteen-bit integer value stored as a hexadecimal value in four bytes (characters). The number is written with the smallest value on the right, which is bit number one, with the higher value bits to the left. The below table describes what each of the sixteen bits in this setting do:
Game | Byte | Value | Column Name | Description |
---|---|---|---|---|
1 | 1 | 1G_BOOST | Power boost in first gear. Makes tyres spin more readily from standing starts. | |
2 | 2G_BOOST | Power boost in second gear. Makes tyres spin more readily at low speeds. | ||
4 | REV_BONNET | Reverses the direction boot and bonnet axis operate. | ||
8 | HANGING_BOOT | Affects physics of boot hinged from the top. | ||
2 | 1 | NO_DOORS | Removes all testing for doors. | |
2 | IS_VAN | Allows double boot object. | ||
4 | IS_BUS | Uses Coach version of animations over standard one and makes the driver invisible (only makes sense to use on Coach). | ||
8 | IS_LOW | Uses low version of animations over standard one. | ||
3 | 1 | DBL_EXHAUST | Creates a second exhaust by mirroring the model's exhaust over the y-axis. | |
2 | TAILGATE_BOOT | Affects physics of boot hinged from the bottom. | ||
4 | NOSWING_BOOT | When damaged, boot does not swing if it normally does and falls off instead. | ||
8 | NONPLAYER_STABILISER | Seems to have no effect, could be related to how the AI operates the vehicle | ||
4 | 1 | NEUTRALHANDLING | Stability control. Prevents oversteer. | |
2 | HAS_NO_ROOF | Various slight effects. | ||
4 | IS_BIG | Changes the way that the AI drives around corners. | ||
8 | HALOGEN_LIGHTS | Bluish headlights. | ||
5 | 1 | IS_BIKE | Makes the game engine treat this vehicle as a motorbike when used with default.ide attributes.
| |
2 | IS_HELI | Makes the game engine treat this vehicle as a helicopter when used with default.ide attributes.
| ||
4 | IS_PLANE | Makes the game engine treat this vehicle as a plane when used with default.ide attributes.
| ||
8 | IS_BOAT | Makes the game engine treat this vehicle as a boat when used with default.ide attributes.
| ||
6 | 1 | NO_EXHAUST | Removes the exhaust animation particle for this vehicle. | |
2 | REARWHEEL_1ST | Seems to have no effect. | ||
4 | HANDBRAKE_TYRE | Seems to have no effect. | ||
8 | SIT_IN_BOAT | Makes the player sit in this boat. | ||
7 | 1 | FAT_REARW | Wider rear wheels. | |
2 | NARROW_FRONTW | Narrower front wheels. | ||
4 | GOOD_INSAND | Prevents vehicle from bogging down on sand surface. | ||
8 | Is not mentioned in the handling.cfg comments. Causes the vehicle to not render while looking behind in first person view.
|
Vice City-specific
The following sections contain information specific to Vice City.
Boat Data
Some of the Standard Data settings have a different effect for floating vehicles than they would for land vehicles.
Column Letter | Column Name | Description |
---|---|---|
J | Bank Force Mult | Amount of lean when turning. |
K | Rudder Turn Force | Effect of the steering. |
L | Speed Steer Falloff | Amount to reduce steering effect by as speed increases. |
R | Vertical Wave Hit Limit | |
S | Forward Wave Hit Brake | |
V | WaterResistance Volume Mult | |
W | Water Damping Mult | |
ab | Handbrake Drag Mult | |
ac | Sideslip Force | Strength that the boat will be pushed sideways by waves. |
Data specific to boats have lines that begin with %
(percentage sign) character.
% | Identifier | Type | Description |
---|---|---|---|
A | ID | string | The identifier must be from the list of hardcoded names (see above). |
B | ThrustY | float | |
C | ThrustZ | float | |
D | ThrustAppZ | float | |
E | AqPlaneForce | float | |
F | AqPlaneLimit | float | |
G | AqPlaneOffset | float | |
H | WaveAudioMult | float | |
I | MoveResX | float | |
J | MoveResY | float | |
K | MoveResZ | float | |
L | TurnResX | float | |
M | TurnResY | float | |
N | TurnResZ | float | |
O | Look_L_R_BehindCamHeight | float |
Bike Data
Data specific to bikes have lines that begin with !
(exclamation mark) character.
! | Identifier | Type | Description |
---|---|---|---|
A | ID | string | The identifier must be from the list of hardcoded names (see above). |
B | LeanFwdCOM | float | |
C | LeanFwdForce | float | |
D | LeanBakCOM | float | |
E | LeanBackForce | float | |
F | MaxLean | float | |
G | FullAnimLean | float | |
H | DesLean | float | |
I | SpeedSteer | float | |
J | SlipSteer | float | |
K | NoPlayerCOMz | float | |
L | WheelieAng | float | |
M | StoppieAng | float | |
N | WheelieSteer | float | |
O | WheelieStabMult | float | |
P | StoppieStabMult | float |
Flying Data
Data specific to flying vehicles have lines that begin with $
(dollar sign) character.
$ | Identifier | Type | Description |
---|---|---|---|
A | ID | string | The identifier must be from the list of hardcoded names (see above). |
B | Thrust | float | Engine power. This affects yaw, pitch and roll in that those values could be equal, but the vehicle with greater thrust will have more pronounced yaw, pitch and roll. |
C | ThrustFallOff | float | |
D | Yaw | float | |
E | YawStab | float | |
F | SideSlip | float | |
G | Roll | float | |
H | RollStab | float | |
I | Pitch | float | |
J | PitchStab | float | |
K | FormLift | float | |
L | AttackLift | float | |
M | MoveRes | float | |
N | TurnRes.x | float | |
O | TurnRes.y | float | |
P | TurnRes.z | float | Affects how likely vehicle is to rotate in terms of yaw without using the rudder. |
Q | SpeedRes.x | float | |
R | SpeedRes.y | float | |
S | SpeedRes.z | float |
GTA San Andreas
Standard Data
This section contains all the performance settings for land vehicles and provides the base settings for boats, bikes and flying vehicles. The below table provides the column letter, column name and a brief description for each setting available in this section.
Column Letter | Column Name | Description |
---|---|---|
A | vehicle identifier | Relates this data with vehicle.ide and other files.
|
B | fMass | Mass of the vehicle in kilograms. |
C | fTurnMass | Used to calculate motion effects. Higher values make the vehicle's body rotate slower around every axis (similar to the VecInertiaMultiplier values in GTAV). This also seems to be relative to Mass, meaning that a vehicle with a greater Mass requires an exponentially greater Turn Mass to achieve the same effect. |
D | fDragMult | Changes resistance to movement. |
F | CentreOfMass.x | Distance from the centre of the car in metres to the right for the centre of mass. |
G | CentreOfMass.y | Distance from the centre of the car in metres forwards for the centre of mass. Affects handling such that negative values (moving the weight back) induces oversteer in RWD vehicles. Moving the weight forward has the same effect on FWD vehicles. |
H | CentreOfMass.z | Distance from the centre of the car in metres upwards for the centre of mass. Affects stability of car; negative values inhibit rolling over. |
I | nPercentSubmerged | Percentage of the vehicle height required to be submerged for the car to float. |
J | fTractionMultiplier | Grip of the vehicle as a multiplier of the tyre surface friction. Effectively the peak grip status before any loss of grip. |
K | fTractionLoss | Effectively the minimum grip status after losing traction, e.g. in a skidding situation. Higher values make the car more controllable after losing traction. |
L | fTractionBias | Ratio of front axle grip to rear axle grip; higher value shifts grip forwards. |
M | TransmissionData.nNumberOfGears | Number of gearchange animations and sound effects to use. |
N | TransmissionData.fMaxVelocity | Limits the top speed. |
O | TransmissionData.fEngineAcceleration | Basic rate of acceleration. Functionally acts as engine power. |
P | TransmissionData.fEngineInertia | Smooths or sharpens the acceleration curve. |
Q | TransmissionData.nDriveType | Assigns Front, Rear or 4 wheel drive. |
R | TransmissionData.nEngineType | Assigns Petrol, Diesel or Electric engine characteristics. |
S | fBrakeDeceleration | Overall decelerative force. |
T | fBrakeBias | Ratio of braking force of front compared to rear; higher values move bias forward. |
U | bABS | Anti-lock Brakes. "0" = disabled and "1" = enabled |
V | fSteeringLock | Maximum angle of steering in degrees. |
a | fSuspensionForceLevel | Stiffness of springs. |
b | fSuspensionDampingLevel | Damping strength. |
c | fSuspensionHighSpdComDamp | Stiffens the dampening strength as speed increases. |
d | suspension upper limit | Explained in my suspension tutorial. |
e | suspension lower limit | Explained in my suspension tutorial. |
f | suspension bias between front and rear | Ratio of suspension force to apply at the front compared to the rear. If weight is shifted forward or backward, this must be adjusted or else the car will lean in that direction. |
g | suspension anti-dive multiplier | Reduces body pitching under braking and acceleration. |
aa | fSeatOffsetDistance | Distance from door position to seat postion. |
ab | fCollisionDamageMultiplier | Amount of engine damage vehicle gets from collisions. Higher value means more damage. |
ac | nMonetaryValue | Used to calculate the Value of property damaged statistic. |
af | modelFlags | Special animations features of the which can be enabled or disabled. |
ag | handlingFlags | Special performance features. |
ah | front lights | Type of head lights of the vehicle. |
ai | rear lights | Same as above but for the tail lights. |
aj | Vehicle anim group | Refers to an Animation ID number. |
Model Flag Data
Column "af", called "modelFlags", is a sixteen-bit integer value stored as a hexadecimal value in four bytes (characters). The number is written with the smallest value on the right, which is bit number one, with the higher value bits to the left. The below table describes what each of the sixteen bits in this setting do:
Byte | Value | Column Name | Description |
---|---|---|---|
1 | 1 | IS_VAN | Allows double doors for the rear animation. |
2 | IS_BUS | Uses Coach version of animations over standard one and makes the driver invisible (only makes sense to use on Coach). | |
4 | IS_LOW | Uses low version of animations over standard one. | |
8 | IS_BIG | Changes the way that the AI drives around corners. | |
2 | 1 | REVERSE_BONNET | Bonnet and boot open in opposite direction from normal. |
2 | HANGING_BOOT | Affects physics of boot hinged from the top. | |
4 | TAILGATE_BOOT | Affects physics of boot hinged from the bottom. | |
8 | NOSWING_BOOT | When damaged, boot does not swing if it normally does and falls off instead. | |
3 | 1 | NO_DOORS | Removes all testing for doors. |
2 | TANDEM_SEATS | Two people will use the front passenger seat. | |
4 | SIT_IN_BOAT | Uses seated boat animation instead of standing. | |
8 | CONVERTIBLE | Changes how hookers operate and other small effects. | |
4 | 1 | NO_EXHAUST | Removes all exhaust particles. |
2 | DBL_EXHAUST | Creates a second exhaust by mirroring the model's exhaust over the y-axis. | |
4 | NO1FPS_LOOK_BEHIND | Prevents player using rear view when in first-person mode. | |
8 | FORCE_DOOR_CHECK | ||
5 | 1 | AXLE_F_NOTILT | Front wheels stay vertical to the car like GTA 3. |
2 | AXLE_F_SOLID | Front wheels stay parallel to each other. | |
4 | AXLE_F_MCPHERSON | Front wheels tilt like GTA Vice City. | |
8 | AXLE_F_REVERSE | Reverses the tilting of wheels when using AXLE_F_MCPHERSON suspension. | |
6 | 1 | AXLE_R_NOTILT | Rear wheels stay vertical to the car like GTA 3. |
2 | AXLE_R_SOLID | Rear wheels stay parallel to each other. | |
4 | AXLE_R_MCPHERSON | Rear wheels tilt like GTA Vice City. | |
8 | AXLE_R_REVERSE | Reverses the tilting of wheels when using AXLE_R_MCPHERSON suspension. | |
7 | 1 | IS_BIKE | Use extra handling settings in the bikes section. |
2 | IS_HELI | Use extra handling settings in the flying section. | |
4 | IS_PLANE | Use extra handling settings in the flying section. | |
8 | IS_BOAT | Use extra handling settings in the boats section. | |
8 | 1 | BOUNCE_PANELS | |
2 | DOUBLE_RWHEELS | Places a second instance of each rear wheel next to the normal one. | |
4 | FORCE_GROUND_CLEARANCE | Prevents vehicle from bottoming out. If disabled, vehicle may collide with stairs instead of jumping off them. | |
8 | IS_HATCHBACK |
Handling Flag Data
Column "ag", called "handlingFlags", is a sixteen-bit integer value stored as a hexadecimal value in four bytes (characters). The number is written with the smallest value on the right, which is bit number one, with the higher value bits to the left. The below table describes what each of the sixteen bits in this setting do:
Byte | Value | Column Name | Description |
---|---|---|---|
1 | 1 | 1G_BOOST | Gives more engine power for standing starts; better hill climbing. |
2 | 2G_BOOST | Gives more engine power at slightly higher speeds. | |
4 | NPC_ANTI_ROLL | No body roll when driven by AI characters. | |
8 | NPC_NEUTRAL_HANDL | Stability control for AI drivers. Prevents oversteer. | |
2 | 1 | NO_HANDBRAKE | Disables the handbrake effect. |
2 | STEER_REARWHEELS | Rear wheels steer instead of front, like a forklift truck. | |
4 | HB_REARWHEEL_STEER | Handbrake makes the rear wheels steer as well as front, like the monster truck. | |
8 | ALT_STEER_OPT | ||
3 | 1 | WHEEL_F_NARROW2 | Very narrow front wheels. |
2 | WHEEL_F_NARROW | Narrow front wheels. | |
4 | WHEEL_F_WIDE | Wide front wheels. | |
8 | WHEEL_F_WIDE2 | Very wide front wheels. | |
4 | 1 | WHEEL_R_NARROW2 | Very narrow rear wheels. |
2 | WHEEL_R_NARROW | Narrow rear wheels. | |
4 | WHEEL_R_WIDE | Wide rear wheels. | |
8 | WHEEL_R_WIDE2 | Very wide rear wheels. | |
5 | 1 | HYDRAULIC_GEOM | Lowrider hydraulics |
2 | HYDRAULIC_INST | Will spawn with hydraulics installed. | |
4 | NOS_INST | Vehicle automatically gets NOS installed when it spawns. | |
8 | HYDRAULIC_NONE | Hydraulics cannot be installed. | |
6 | 1 | OFFROAD_ABILITY | Vehicle will perform better on loose surfaces like dirt. |
2 | OFFROAD_ABILITY2 | Vehicle will perform better on soft surfaces like sand. | |
4 | HALOGEN_LIGHTS | Bluish headlights. | |
8 | PROC_REARWHEEL_1ST | ||
7 | 1 | USE_MAXSP_LIMIT | Prevents vehicle going faster than column N value for maximum speed. |
2 | LOW_RIDER | Allows vehicle to be modified at Loco Low Co shops. | |
4 | STREET_RACER | When set, vehicle can only be modified at Wheel Arch Angels. | |
8 | UNDEFINED | No effect. | |
8 | 1 | SWINGING_CHASSIS | Lets the car body move from side to side on the suspension. |
2 | UNDEFINED | No effect. | |
4 | UNDEFINED | No effect. | |
8 | UNDEFINED | No effect. |
Boat Data
This section contains all the performance settings from the section for floating vehicles, such as boats and flying vehicles which can land on water. The below table provides the column letter, column name and a brief description for each setting available in this section.
Column Letter | Column Name | Description |
---|---|---|
J | Bank Force Mult | Amount of lean when turning. |
K | Rudder Turn Force | Effect of the steering. |
L | Speed Steer Falloff | Amount to reduce steering effect by as speed increases. |
S | Vertical Wave Hit Limit | |
T | Forward Wave Hit Brake | |
a | WaterResistance Volume Mult | |
b | Water Damping Mult | |
d | Handbrake Drag Mult | |
e | Sideslip Force | Strength that the boat will be pushed sideways by waves. |
Tools
- CFG Studio - a comprehensive handling editor for GTA3, GTA VC and GTA SA by Cerbera.
- Handling.cfg Reloader
See also
External links
- GTA3 Handling Definitions - Project Cerbera
- VC Handling Definitions - Project Cerbera
- SA Handling Definitions - Project Cerbera