Zyke ResourcesDocumentation

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:

debug = false

#DamageSystem

Configures the realistic vehicle damage system. The selected preset is loaded from shared/presets.lua, then any values in overrides are applied on top of that preset.

#enabled

Master toggle for the entire damage system. When set to false, all damage-related logic is disabled and the resource skips damage processing entirely. Visual deformation syncing continues to work independently regardless of this setting.

Example:

enabled = true

#preset

Selects the preset level that defines the default values for all damage-related settings. Valid levels are 1 for Arcade, 2 for Casual, 3 for Balanced, 4 for Realistic, and 5 for Hardcore. Balanced is the recommended default. If an invalid level is configured, the resource falls back to Balanced.

Example:

preset = 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:

overrides = {}

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:

  1. Reads Config.DamageSystem.preset.
  2. Loads that preset from shared/presets.lua.
  3. Falls back to preset 3 if the selected preset does not exist.
  4. Copies every value from the preset into Config.DamageSystem.
  5. Applies every value from Config.DamageSystem.overrides on 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.

Config.DamageSystem = {
    enabled = true,
    preset = 3,
    overrides = {
        limpMode = true,
        damageFactorEngine = 5.0,
    },
}

Preset Values

KeyArcadeCasualBalancedRealisticHardcore
damageFactorEngine0.40.81.21.63.2
damageFactorBody0.51.52.03.05.0
damageFactorPetrolTank10.030.048.064.0100.0
deformationExponent0.60.50.450.40.3
collisionDamageExponent0.80.70.650.60.5
engineDamageExponent0.80.70.650.60.5
deformationMultiplier4.25.67.08.411.2
weaponsDamageMultiplier0.51.01.52.03.0
degradingFailureThreshold240.0360.0420.0480.0540.0
cascadingFailureThreshold150.0250.0300.0360.0450.0
engineSafeGuard200.0150.0120.0100.080.0
degradingHealthSpeedFactor0.41.01.62.03.0
cascadingFailureSpeedFactor0.40.81.21.62.4
torqueMultiplierEnabledfalsetruetruetruetrue
torqueDegradationThreshold200400500600700
limpModetruetruefalsefalsefalse
limpModeMultiplier0.40.250.190.190.15
preventVehicleFlipfalsefalsetruetruetrue
classDamageMultiplierdefault tabledefault tabledefault tabledefault tabledefault table

Override Keys

KeyWhat It ControlsNotes / Range
damageFactorEngineMultiplies engine health damage.Higher values make engine damage harsher.
damageFactorBodyMultiplies body health damage.Higher values make body damage harsher. Also affects weapon damage handling normalization.
damageFactorPetrolTankMultiplies petrol tank health damage.Higher values make petrol tank damage harsher.
weaponsDamageMultiplierSets weapon damage handling for vehicles.Use 0.0-10.0, or -1 to leave weapon damage handling untouched.
deformationExponentCompresses each vehicle's original deformation handling before applying deformationMultiplier.Lower preset values make deformation tuning more aggressive.
collisionDamageExponentCompresses each vehicle's original collision damage handling toward 1.0.Used when applying fCollisionDamageMult.
engineDamageExponentCompresses each vehicle's original engine damage handling toward 1.0.Used when applying fEngineDamageMult.
deformationMultiplierMultiplies visual deformation handling.For manual overrides, use 0.0-10.0, or -1 to leave deformation handling untouched. The Hardcore preset uses 11.2.
degradingFailureThresholdEngine health threshold where slow passive degradation starts.Higher values make degradation start earlier.
cascadingFailureThresholdEngine health threshold where rapid cascading failure starts.Higher values make severe failure start earlier.
engineSafeGuardMinimum 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.
degradingHealthSpeedFactorSpeed of slow passive engine degradation.Higher values drain engine health faster between the degrading and cascading thresholds.
cascadingFailureSpeedFactorSpeed of rapid engine degradation.Higher values drain engine health faster below the cascading threshold.
torqueMultiplierEnabledEnables torque loss as engine health drops.Boolean. Uses torqueDegradationThreshold.
torqueDegradationThresholdEngine health below which torque starts degrading.Higher values make torque loss begin earlier.
limpModeAllows a damaged vehicle to keep moving at reduced power near the safeguard threshold.Boolean. Uses limpModeMultiplier.
limpModeMultiplierTorque 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.
preventVehicleFlipHelps prevent upside-down vehicles from being flipped back over by throttle input.Boolean.
classDamageMultiplierPer-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 makes motorcycles weaker than most cars and makes industrial vehicles tougher.

ClassVehicle TypeDefault
0Compacts1.0
1Sedans1.0
2SUVs1.0
3Coupes1.0
4Muscle1.0
5Sports Classics1.0
6Sports1.0
7Super1.0
8Motorcycles1.25
9Off-road0.7
10Industrial0.25
11Utility1.0
12Vans1.0
13Cycles1.0
14Boats0.5
15Helicopters1.0
16Planes1.0
17Service0.75
18Emergency0.75
19Military0.75
20Commercial1.0
21Trains1.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.

overrides = {
    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
        1.25,       -- 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
    },
}