Focused reference · Unreal Engine 5.8
Special movement patterns
Launch
Use LaunchCharacter for an impulse-like velocity change that should enter the Character
movement pipeline. Decide independently whether XY/Z override existing velocity. Test authority,
prediction/correction, landing, air control, and repeated launches. A launch is not a duration-
controlled dash.
Teleport
For network play:
- Validate the destination on the server.
- Use a supported SetLocation path with teleport behavior or the Teleport Blueprint node.
- Ensure collision/encroachment policy matches the design.
- Expect clients to snap rather than smooth the teleport.
Do not move the owning client first with ordinary transform changes and expect CMC prediction to accept it.
Root Motion Source
Use for short programmatic motion needing Character root-motion networking, such as move-to or jump-force behavior.
- Select/create the appropriate
FRootMotionSourcevariant. - Set duration, priority/accumulation, start/target, and finish behavior.
- Apply through
UCharacterMovementComponent::ApplyRootMotionSourceon the appropriate prediction/authority path. - Retain the returned handle/ID.
- Remove with
RemoveRootMotionSourcewhen canceled or finished if required by the pattern. - Test server rejection, collision, moving targets, and montage/root-motion competition.
GAS provides Ability Tasks that use Root Motion Sources; prefer those when the ability owns activation, cancellation, and prediction.
Custom movement mode
- Allocate a stable custom sub-mode byte/enum.
- Enter through
SetMovementMode(MOVE_Custom, SubMode). - Implement
UpdateCustomMovementin Character Blueprint for prototypes, or overridePhysCustomin a custom CMC for production control. - Perform swept movement and define collision, floor, velocity, gravity, and exit rules.
- Serialize any custom input/state the server needs through saved-move/network move data.
- Return to Walking/Falling/etc. through an explicit exit condition.
MOVE_Custom suspends normal movement physics. Failing to implement gravity, collision, or
velocity semantics is not an engine bug.
Montage root motion
Use for animation-authored committed actions. Root motion takes priority over standard
movement physics. In network games, ensure gameplay triggers the montage consistently; GAS can
synchronize ability-owned montages/root motion. Route blend/slot details to
$unreal-animation-blending.