Summary
Dynamic tire smoke/skidmarks that only appears when a wheel loses traction - real per-wheel slip, no fake always-on dust. Configurable, modder-friendly EnforceScript component.
Description
Traction Lost — Dynamic Fully Synced Tire Smoke FX
Adds realistic, fully synchronized, condition-based tire smoke and skidmarks to all vanilla wheeled vehicles. Instead of a generic "always-on while moving" dust puff, this mod checks real per-wheel physics data every frame and only emits smoke when a wheel is genuinely losing traction and the driver is on the throttle/brake at the same time. Cruising or coasting never triggers it — only actual wheelspin under power does.
**Features**
- Per-wheel detection: each wheel is evaluated independently, so a single spinning wheel on a locked diff can smoke while the others stay clean.
- Three-condition trigger: slip threshold AND throttle or brake threshold must both be met, avoiding false positives from bumps, rough terrain, or momentary slip.
- Intensity scaling: smoke output scales with how much a wheel is slipping, not just on/off.
- Smooth fade-out: a configurable stop delay prevents flickering when slip hovers right at the threshold.
- Fully configurable per vehicle: which wheels get the effect, slip threshold, throttle threshold, fade-out delay, and the particle resource used.
- Lightweight: particle systems are spawned once per wheel and reused (moved + intensity-adjusted), never destroyed and recreated every frame.
- No dependency on custom animation graphs or blueprint hacks — pure EnforceScript component reading directly from the vehicle's wheeled simulation.
**Requirements**
Works on any wheeled vehicle prefab with a `CarControllerComponent` and a `VehicleWheeledSimulation` (any standard Reforger car, truck, or wheeled military vehicle). No changes to base game files besides adding the component to all wheeled vanilla vehicles .
**How it works (short version)**
A custom component, `SCR_TireSmokeComponent`, sits on the vehicle root entity. Every frame it reads longitudinal/lateral slip and throttle/brake per wheel. If both thresholds are exceeded, it spawns (or keeps alive) a particle effect at that wheel's contact point and scales birth rate with slip intensity. When the condition ends, the effect fades out after a short configurable delay instead of cutting off instantly.
---
## For modders: how to add this to your own vehicle mod
This mod is built to be easy to reuse or extend. If you want to add tire smoke to your own vehicle:
1. **Add the 2 components.** Open your vehicle prefab in Workbench, select the root entity (the one holding `CarControllerComponent`), and add `SCR_TireSmokeComponent` `SCR_TireTrackComponent` via "Add Component" (search by name).
2. **Disable VehicleDustPerWheelComponent** IMPORTANT !
3. **List all the wheels.** In `m_aWheels`, add one entry per wheel that should smoke, using the wheel's simulation index (0, 1, 2, 3...). If you're not sure which index maps to which physical wheel, enable the vehicle diagnostics overlay in-game and check per-wheel debug info while driving, or inspect the vehicle's wheeled simulation setup in the physics config.
(4. **Tune the thresholds if needed** `m_fSlipThreshold` and `m_fThrottleThreshold` (both 0–1) control how much slip/gas is needed before smoke starts. Lower values trigger more easily; raise them for a subtler effect on grippy vehicles.)
5. **Adjust the fade-out.** `m_fStopDelay` (seconds) controls how long smoke lingers after the wheel regains traction or the driver lifts off the throttle.
The component has no hard dependency on any specific vehicle class — as long as your vehicle uses the standard `CarControllerComponent` / `VehicleWheeledSimulation` setup, it will work without modification.
**Reuse:** You're welcome to reference, extend, or build on this component in your own mods. A credit/link back to this page is appreciated.
**Feedback and bug reports** are welcome in our Discord : discord.gg/KrR3Aaqmuc
License
Arma Public License Share Alike (APL-SA)