Skip to content

IntentionalDriftVelocity

The fixed speed of a levitating unit's slow drift toward its target or back to the center of its cell.

Specification
Applies to
levitation controls
File
rules.ini
Section
[LEVITATION]
Value
floating point
When omitted
0.3

A drift sets a levitating unit moving at this speed, and the unit loses none of it to Drag or braking while the drift lasts. A drift cancels any thrust in progress. A drift aimed at a point never overshoots it: when the point is closer than one frame’s drift along a map axis, the unit moves only as far as the point along that axis.

A unit drifts in three cases:

  1. It has stopped within ProximityDistance of its target or destination, but more than half a cell from it. The drift continues until the unit is within half a cell, where it stops. If the target moves back out of ProximityDistance, the unit thrusts toward it instead.
  2. A move is blocked. The unit drifts back to the center of its cell.
  3. It has returned to the center of its cell after a blocked move and has a target or destination. It drifts out of the cell toward it. Once it enters the next cell, it carries on as after a thrust: it coasts under Drag, and brakes as soon as its speed is below MaxVelocityWhenPissedOff with a target, or MaxVelocityWhenFollowing with only a destination. With every [LEVITATION] key omitted, the drift is slower than both figures, so the unit brakes at once. A unit with nothing to head for coasts instead of drifting out.

The figure is in leptons per frame, with 256 leptons to a cell and 15 frames to the second. At 12, a drift covers about two thirds of a cell per second.

Drag explains which objects use [LEVITATION] and why a file’s [LEVITATION] section is read only when the file also has a [General] section.