Browse docs

Vehicle Fluid Leaks

Configure wear-based and frontal-impact vehicle fluid leaks and connect an external spill provider.

Vehicle Fluid Leaks turns severe engine-oil and transmission-fluid wear into visible trails. Combustion vehicles can also start a temporary engine-fluid leak after a qualifying frontal impact. Electric vehicles are excluded.

In-game configuration

Open /jobconfig, select Mechanic Job, and open Vehicle Fluid Leaks. The complete runtime configuration is available there and updates connected clients after saving.

The section contains:

  • Global enable switch, minimum speed, trail interval, minimum distance, and regular trail radius
  • Normal and critical thresholds and chances for engine oil
  • Normal and critical thresholds and chances for transmission fluid
  • Frontal-impact enable switch and optional diagnostics
  • Minimum impact speed, speed loss, body damage, engine damage, and optional front deformation
  • Forward-motion ratio, trigger chance, leak duration, cooldown, and initial spill radius

Chance and motion-ratio values use a range from 0 to 1. Part thresholds use the diagnostic condition range from 0 to 100. Set minimum front deformation to 0 when deformation should not be required.

Open configuration

Fallback defaults are stored under Config.OilLeaks in config/config.lua. When Job Configurator is enabled, saved in-game values take priority over the matching leak settings.

The integration table selects the external provider used to create the visible fluid points:

integration = {
    mode = "automatic",
    resource = "your_spill_resource",
    serverEvent = "your_spill_resource:createFromVehicle"
}

The configured server event receives one payload table:

{
    coords = { x = 0.0, y = 0.0, z = 0.0 },
    source = "mechanic_wear", -- or "mechanic_frontal_impact"
    sourcePart = "engine_oil", -- or "transmission_fluid"
    sourceVehicleNetId = 123,
    sourcePlate = "ABC123",
    radius = 1.25
}

Set integration.mode = "disabled" to stop provider output independently of the gameplay thresholds. Config.OilLeaks.enabled = false disables the complete leak system.

Runtime provider override

Another client resource can replace the configured provider at runtime:

local registered = exports["sky_mechanicjob"]:SetFluidLeakProvider(
    GetCurrentResourceName(),
    "my_spill_resource:createFromVehicle"
)

The provider resource must be started, and the supplied server event must accept the payload shown above. Restore the configured provider with:

exports["sky_mechanicjob"]:ResetFluidLeakProvider()

Testing checklist

  1. Confirm the external provider resource is started.
  2. Set engine_oil below its normal threshold and drive above the configured minimum speed.
  3. Confirm points respect the interval and minimum-distance limits.
  4. Repeat below the critical threshold and verify the higher critical chance.
  5. Test transmission fluid separately.
  6. Enable frontal-impact diagnostics temporarily and perform a controlled qualifying impact.
  7. Confirm electric vehicles do not create leaks.
  8. Disable Vehicle Fluid Leaks in /jobconfig and confirm no new trail points are created.