# VehicleContact

> Talos next · Since 0.7

Contact handling: a wall hit at a glance slides along it keeping its speed, a head-on one keeps some, with no yaw kick and the nose turned along the wall; a low lip is hopped; a bump from another moving body is capped.

Absent: none of it, and the vehicle behaves exactly as without the feature; present, a field left out takes its default.

## Fields

| Field | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
| `glanceDeg` | `number` | no | `30` |  | DEGREES, greater than zero: a hit shallower than this is a glance. Defaults to 30. A glance slides along the wall keeping most of its speed. |
| `glanceKeep` | `number` | no | `0` |  | The least share of its speed a glancing hit keeps, 0..1. Defaults to 0.9. A shallower one keeps its cosine when that is more. |
| `headOnKeep` | `number` | no | `0` |  | The share of its speed a head-on hit keeps along the wall, 0..1. Defaults to 0.4. Blended from `glanceKeep` between `glanceDeg` and 90. |
| `pushOut` | `number` | no | `0` |  | METRES PER SECOND it is pushed off the wall on a hit, 0 or more. Defaults to 0.6. |
| `yawKick` | `number` | no | `1` |  | How much of a contact's sudden yaw jump is taken back, 0..1; 0 is off. Defaults to 1. A jump is over 2.5 rad/s in a tick. |
| `align` | `number` | no | `0` |  | Seconds after a wall hit with the nose turned along the wall, 0 or more; 0 is off. Defaults to 0.4. |
| `lipHeight` | `number` | no | `0` |  | METRES: the highest lip (a kerb, a step) it hops onto instead of stopping at; 0 is off. Defaults to 0.5. Measured above the ground under its wheels. |
| `bump` | `number` | no | `0` |  | The share of a hit from another moving body (a vehicle, a crate) it takes, 0..1; 1 is off. Defaults to 0.5. It never takes more than 3.5 m/s sideways, a 2.5 m/s shove along or 0.4 rad/s of yaw in one hit, and speed lost into something heavier is not given back. |
