ue-mover-movement-system

Implement actor movement with Unreal Engine 5.8's experimental Mover plugin and rollback networking.

55|5|Updated Mar 26, 2026
One-click install
npx skills add https://github.com/kevinpbuckley/unreal-engine-skills --skill ue-mover-movement-system-kevinpbuckley
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ue-mover-movement-system
Source: https://github.com/kevinpbuckley/unreal-engine-skills/tree/main/skills/core/ue-mover-movement-system
Command: npx skills add https://github.com/kevinpbuckley/unreal-engine-skills --skill ue-mover-movement-system-kevinpbuckley

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Unreal's experimental Mover plugin replaces CharacterMovementComponent with a modular, rollback-networked simulation, but its data-driven architecture (input commands, sync states, movement modes, layered moves) is unfamiliar and easy to misuse — direct SetActorLocation calls fight the simulation, and APIs shift between engine versions. ## Core Features & Use Cases - Mover Pawn Setup: Build a pawn on UMoverComponent/UCharacterMoverComponent, wire Enhanced Input into ProduceInput via IMoverInputProducerInterface and FCharacterDefaultInputs. - Custom Movement Authoring: Create movement modes, transitions, layered moves (dashes, launches, knockbacks), instant movement effects (teleports), and movement modifiers (crouch/stance) with correct replication and rollback behavior. - Backend & Migration Guidance: Choose between Network Prediction, Chaos networked physics, and standalone backends, and migrate CMC-based characters using the provided cheat sheet. - Use Case: You are adding a wall-run ability to a networked character — use this Skill to author a custom UBaseMovementMode, queue it via QueueNextMode, and keep it deterministic for rollback resimulation. ## Quick Start Ask the agent to create a Mover-based pawn in Unreal Engine 5.8 with a custom gliding movement mode wired to Enhanced Input.

Frequently Asked Questions about ue-mover-movement-system

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a Mover-based character in Unreal Engine 5.8?

Enable the experimental Mover plugin, add the Mover module to your Build.cs dependencies, and create a pawn with a UCharacterMoverComponent plus a capsule root. Implement IMoverInputProducerInterface on the pawn and author FCharacterDefaultInputs inside ProduceInput from your Enhanced Input bindings.

Mover vs CharacterMovementComponent: which should I use in Unreal Engine?

Mover suits new projects wanting modular movement modes, rollback netcode, or physics-driven movement, while CMC remains fully supported and more stable. Mover is still Experimental in 5.8, so expect API churn between minor versions.

How do I implement a dash or knockback with the Mover plugin?

Queue a layered move such as FLayeredMove_LinearVelocity with a duration and mix mode via QueueLayeredMove. For one-tick changes like launches or teleports, queue an instant movement effect such as FApplyVelocityEffect or FTeleportEffect instead of setting velocity or location directly.

Why does my Mover actor snap back after SetActorLocation?

Mover owns the actor transform through its simulation, so external movement is overwritten at FinalizeFrame and logged via bWarnOnExternalMovement. Use FTeleportEffect for relocations, or set bAcceptExternalMovement if a cutscene or similar system must temporarily own the transform.

Does the Mover plugin support networked physics movement?

Yes, in 5.8 physics-driven movement lives in the separate ChaosMover plugin with UChaosMoverBackendComponent and Chaos movement modes. It requires Chaos networked physics prediction, a fixed physics tick, and scheduled instant effects so all endpoints apply changes on the same frame.

How do I add custom replicated state to Mover movement?

Subclass FMoverDataStructBase and override Clone, GetScriptStruct, NetSerialize, ShouldReconcile, and Interpolate, then add it to the input command collection or PersistentSyncStateDataTypes. Keep ShouldReconcile tolerant to avoid correction storms during rollback resimulation.