All movement exception calls must be made from trusted server scripts. Client scripts cannot grant exceptions to themselves or to any other player.
Accessing the API
Before calling any movement exception method, obtain the Trace API table from_G.Trace. Because Trace initializes asynchronously at runtime, assert its presence so your script fails loudly if it runs too early.
Short Scripted Movement - WithMovementException
Use WithMovementException for one-shot movements wrapped in a single callback - portal transfers, spawn placement, and similar discrete teleports are ideal candidates.
Teleport Helper - AllowTeleport
For simple character teleports, AllowTeleport is a convenience wrapper that opens a short exception window and returns immediately so you can move the character on the next line.
Player instance, a duration in seconds, and a human-readable reason logged with the exception.
Longer Movement - BeginMovementException / EndMovementException
For sustained movement events - vehicles, launch pads, scripted flight, or long cutscenes - open a named exception with BeginMovementException and close it explicitly with EndMovementException.
Duration = 0creates a manual exception with no timer. The exception stays open until you callEndMovementException. Always pair manual exceptions with a corresponding close call.- Timed exceptions are capped at 300 seconds. Use a manual exception for anything that may run longer, and close it when the sequence ends.
Idreuse refreshes the named exception rather than creating a duplicate. If your launch pad fires again before the first exception expires, passing the sameIdresets the timer cleanly.
Movement Zones
Movement zones let you associate an exception with a physical region in your Workspace. Any player whoseHumanoidRootPart enters the zone automatically receives the exception; the exception is removed when they leave.
Register a BasePart or Model as a zone:
Rotated parts are handled automatically using oriented bounding boxes - you do not need to align your zone parts to world axes.
Managing Registered Zones
BasePart or Model you registered is destroyed in the data model, Trace unregisters the zone automatically.
Valid Check Names
TheChecks array accepts any combination of the following five names:
Omitting the
Checks field entirely enables all five checks, which is equivalent to passing {"Teleport", "Velocity", "Fling", "Fly", "Noclip"}.