Config
Explanations for all config values.
General Information
The editable configuration is located in
shared/unlocked/config.lua. Preset values and all available override keys are located inshared/unlocked/presets.lua.
#Config.Settings
General resource settings that affect development and diagnostics.
#debug
Enables debug behavior for the resource. Only enable this in development environments because it exposes dangerous commands.
Example:luadebug = false
#commandPermission
Permission required for admin and debug commands. The default uses the
commandACE permission.
Example:luacommandPermission = "command"
#Config.DamageSystem
Configures the realistic vehicle damage system. The selected preset is loaded from
shared/presets.lua, then any values inoverridesare applied on top of that preset.
#deformationEnabled
Enables synchronized visual body deformation. Disable it when another resource owns deformation, without disabling the health-damage system.
Example:luadeformationEnabled = true
#damageMultipliersEnabled
Enables health damage multipliers and the progressive engine-damage loop. Torque loss, limp mode, flip prevention, and related preset behavior are part of this system.
Example:luadamageMultipliersEnabled = true
#preset
Selects the preset level that defines the default values for all damage-related settings. Valid levels are
1for Arcade,2for Casual,3for Balanced,4for Realistic, and5for Hardcore. Balanced is the recommended default. If an invalid level is configured, the resource falls back to Balanced.
Example:luapreset = 3
#overrides
A table of key-value pairs that override individual damage settings after the preset is applied. Each key must match a valid damage system key from
shared/presets.lua; for example,{ limpMode = true, damageFactorEngine = 5.0 }changes only those values while keeping the rest of the selected preset.
Example:luaoverrides = {}
#Choosing Between Presets And Overrides
Use preset when you want a complete difficulty profile. Use overrides when you like a preset overall but want to tune one or more values.
The resource resolves the damage system in this order:
- Reads
Config.DamageSystem.preset. - Loads that preset from
shared/presets.lua. - Falls back to preset
3if the selected preset does not exist. - Copies every value from the preset into
Config.DamageSystem. - Applies every value from
Config.DamageSystem.overrideson top.
You normally should not edit shared/presets.lua. Edit it only if you want to permanently change the built-in preset definitions for the whole resource. If you only want to customize your server, keep using shared/config.lua and place changed values inside overrides. After changing preset definitions and restarting the resource, players should re-enter their vehicle so the new handling values are applied.
luaConfig.DamageSystem = {
deformationEnabled = true,
damageMultipliersEnabled = true,
preset = 3,
overrides = {
limpMode = true,
damageFactorEngine = 5.0,
},
}
#preventLowFuelHandling
Prevents GTA's low-fuel handling edge case by making the vehicle undriveable below
lowFuelHandlingThreshold. This setting is independent of Wheel Pop and Vehicle Terrain.
Example:luapreventLowFuelHandling = true
#lowFuelHandlingThreshold
Fuel level at or below which
preventLowFuelHandlingmakes the vehicle undriveable.
Example:lualowFuelHandlingThreshold = 7.0
Wheel loss settings now belong in Config.WheelPop inside zyke_wheelpop. Terrain settings now belong in Config.Terrain inside zyke_vehicleterrain. Do not copy those settings into Config.DamageSystem.
#repairItems
Configures the optional full vehicle repair item. Wheel-only repairs and
tirekitnow belong to Wheel Pop.
Example:luarepairItems = { enabled = true, consume = true, maxDistance = 5.0, repairKit = { enabled = true, item = "repairkit", duration = 7500, }, }
#repairItems.enabled
Enables the built-in full vehicle repair item.
Example:luaenabled = true
#repairItems.consume
Consumes the configured repair kit after a successful repair.
Example:luaconsume = true
#repairItems.maxDistance
Maximum distance from the target vehicle when beginning a repair.
Example:luamaxDistance = 5.0
#repairItems.repairKit
Settings for the usable full vehicle repair item.
Example:luarepairKit = { enabled = true, item = "repairkit", duration = 7500, }
#repairItems.repairKit.enabled
Enables registration of the configured repair-kit item.
Example:luaenabled = true
#repairItems.repairKit.item
Inventory item used to complete a full vehicle repair.
Example:luaitem = "repairkit"
#repairItems.repairKit.duration
Duration of the full repair action in milliseconds.
Example:luaduration = 7500
#fullRepairEvents
A list of external full-repair events that should also restore damage owned by Realistic Vehicles. Wheel Pop listens for its own copy of these integrations and repairs wheel state separately.
Example:luafullRepairEvents = { "txcl:vehicle:fix", "esx:repairPedVehicle", "qb-mechanicjob:client:fixEverything", "qb-mechanicjob:client:repairVehicleFull", "vehiclemod:client:fixEverything", }
#Preset Reference
#Preset Values
| Key | Arcade | Casual | Balanced | Realistic | Hardcore |
|---|---|---|---|---|---|
damageFactorEngine | 0.4 | 0.8 | 1.2 | 1.6 | 3.2 |
damageFactorBody | 0.5 | 1.5 | 2.0 | 3.0 | 5.0 |
damageFactorPetrolTank | 10.0 | 30.0 | 48.0 | 64.0 | 100.0 |
deformationExponent | 0.6 | 0.5 | 0.45 | 0.4 | 0.3 |
collisionDamageExponent | 0.8 | 0.7 | 0.65 | 0.6 | 0.5 |
engineDamageExponent | 0.8 | 0.7 | 0.65 | 0.6 | 0.5 |
deformationMultiplier | 4.2 | 5.6 | 7.0 | 8.4 | 11.2 |
weaponsDamageMultiplier | 0.5 | 1.0 | 1.5 | 2.0 | 3.0 |
degradingFailureThreshold | 240.0 | 360.0 | 420.0 | 480.0 | 540.0 |
cascadingFailureThreshold | 150.0 | 250.0 | 300.0 | 360.0 | 450.0 |
engineSafeGuard | 200.0 | 150.0 | 120.0 | 100.0 | 80.0 |
degradingHealthSpeedFactor | 0.4 | 1.0 | 1.6 | 2.0 | 3.0 |
cascadingFailureSpeedFactor | 0.4 | 0.8 | 1.2 | 1.6 | 2.4 |
torqueMultiplierEnabled | false | true | true | true | true |
torqueDegradationThreshold | 200 | 400 | 500 | 600 | 700 |
limpMode | true | true | false | false | false |
limpModeMultiplier | 0.4 | 0.25 | 0.19 | 0.19 | 0.15 |
preventVehicleFlip | false | false | true | true | true |
preventVehicleAirControl | false | false | false | true | true |
classDamageMultiplier | default table | default table | default table | default table | default table |
#Override Keys
| Key | What It Controls | Notes / Range |
|---|---|---|
damageFactorEngine | Multiplies engine health damage. | Higher values make engine damage harsher. |
damageFactorBody | Multiplies body health damage. | Higher values make body damage harsher. Also affects weapon damage handling normalization. |
damageFactorPetrolTank | Multiplies petrol tank health damage. | Higher values make petrol tank damage harsher. |
weaponsDamageMultiplier | Sets weapon damage handling for vehicles. | Use 0.0-10.0, or -1 to leave weapon damage handling untouched. |
deformationExponent | Compresses each vehicle's original deformation handling before applying deformationMultiplier. | Lower preset values make deformation tuning more aggressive. |
collisionDamageExponent | Compresses each vehicle's original collision damage handling toward 1.0. | Used when applying fCollisionDamageMult. |
engineDamageExponent | Compresses each vehicle's original engine damage handling toward 1.0. | Used when applying fEngineDamageMult. |
deformationMultiplier | Multiplies visual deformation handling. | For manual overrides, use 0.0-10.0, or -1 to leave deformation handling untouched. The Hardcore preset uses 11.2. |
degradingFailureThreshold | Engine health threshold where slow passive degradation starts. | Higher values make degradation start earlier. |
cascadingFailureThreshold | Engine health threshold where rapid cascading failure starts. | Higher values make severe failure start earlier. |
engineSafeGuard | Minimum engine health floor while not in fire mode. | Lower values allow the engine to degrade further. If limp mode is disabled, vehicles below this point become undriveable. |
degradingHealthSpeedFactor | Speed of slow passive engine degradation. | Higher values drain engine health faster between the degrading and cascading thresholds. |
cascadingFailureSpeedFactor | Speed of rapid engine degradation. | Higher values drain engine health faster below the cascading threshold. |
torqueMultiplierEnabled | Enables torque loss as engine health drops. | Boolean. Uses torqueDegradationThreshold. |
torqueDegradationThreshold | Engine health below which torque starts degrading. | Higher values make torque loss begin earlier. |
limpMode | Allows a damaged vehicle to keep moving at reduced power near the safeguard threshold. | Boolean. Uses limpModeMultiplier. |
limpModeMultiplier | Torque multiplier used during limp mode. | The override guidance in presets.lua recommends 0.05-0.25; higher values make limp mode less restrictive. The Arcade preset uses 0.4. |
preventVehicleFlip | Helps prevent upside-down vehicles from being flipped back over by throttle input. | Boolean. |
preventVehicleAirControl | Disables steering input while the vehicle is airborne. | Boolean. Enabled by the Realistic and Hardcore presets. |
classDamageMultiplier | Per-class damage multiplier table for vehicle classes 0-21. | Higher values make that class take more damage. Classes not listed use 1.0. |
#Default Class Multipliers
classDamageMultiplier lets you tune damage by GTA vehicle class. For example, the default table reduces damage for motorcycles, off-road vehicles, and industrial vehicles.
| Class | Vehicle Type | Default |
|---|---|---|
0 | Compacts | 1.0 |
1 | Sedans | 1.0 |
2 | SUVs | 1.0 |
3 | Coupes | 1.0 |
4 | Muscle | 1.0 |
5 | Sports Classics | 1.0 |
6 | Sports | 1.0 |
7 | Super | 1.0 |
8 | Motorcycles | 0.45 |
9 | Off-road | 0.7 |
10 | Industrial | 0.25 |
11 | Utility | 1.0 |
12 | Vans | 1.0 |
13 | Cycles | 1.0 |
14 | Boats | 0.5 |
15 | Helicopters | 1.0 |
16 | Planes | 1.0 |
17 | Service | 0.75 |
18 | Emergency | 0.75 |
19 | Military | 0.75 |
20 | Commercial | 1.0 |
21 | Trains | 1.0 |
Cycles, helicopters, planes, and trains are excluded from the damage loop, so their default multipliers are listed for completeness but are not used by normal damage processing.
luaoverrides = {
classDamageMultiplier = {
[0] = 1.0, -- Compacts
1.0, -- Sedans
1.0, -- SUVs
1.0, -- Coupes
1.0, -- Muscle
1.0, -- Sports Classics
1.0, -- Sports
1.0, -- Super
0.45, -- Motorcycles
0.7, -- Off-road
0.25, -- Industrial
1.0, -- Utility
1.0, -- Vans
1.0, -- Cycles
0.5, -- Boats
1.0, -- Helicopters
1.0, -- Planes
0.75, -- Service
0.75, -- Emergency
0.75, -- Military
1.0, -- Commercial
1.0, -- Trains
},
}