ue-actor-component-arc…
Use when writing or debugging AActor and UActorComponent C++: constructor vs BeginPlay,…
Use when writing or debugging movement built on the Mover plugin: custom movement modes, layered moves, movement modifiers, instant effects, mode transitions, input production, or rollback networking for a Mover pawn. Also use when the user mentions 'Mover plugin',
$ npx -y skills add quodsoler/unreal-engine-skills --skill ue-mover --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/ue-moverContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when writing or debugging movement built on the Mover plugin: custom movement modes, layered moves, movement modifiers, instant effects, mode transitions, input production, or rollback networking for a Mover pawn. Also use when the user mentions 'Mover plugin',
name: ue-mover description: "Use when writing or debugging movement built on the Mover plugin: custom movement modes, layered moves, movement modifiers, instant effects, mode transitions, input production, or rollback networking for a Mover pawn. Also use when the user mentions 'Mover plugin', 'MoverComponent', 'CharacterMoverComponent', 'UBaseMovementMode', 'FLayeredMoveBase', 'FMoverSyncState', 'FMoverInputCmdContext', 'FProposedMove', 'ProduceInput', 'QueueNextMode', 'QueueLayeredMove', 'MovementModifier', 'InstantMovementEffect', 'ChaosMover', 'NetworkPrediction backend', or 'MoverExamples'. For UCharacterMovementComponent, see ue-character-movement; for replication mechanics, see ue-networking-replication." metadata: version: "2.0.0" engine: "5.8"
Target engine: **UE 5.8**. APIs below are verified against the 5.8 headers; older forms are listed under "Deprecated — do not use".
Mover is Epic's modular movement system, shipped as the `Mover` plugin (Experimental in 5.8 — APIs and data formats are subject to change). Movement is composed from data-driven objects — `UBaseMovementMode`, `FLayeredMoveBase`, `FMovementModifierBase`, `FInstantMovementEffect`, `UBaseMovementModeTransition` — hosted by `UMoverComponent` and driven by an external *backend liaison* rather than by `TickComponent`. Build.cs module names: `"Mover"` (plus `"ChaosMover"` for physics-driven movement, `"NetworkPrediction"` for the rollback backend, `"MoverMassIntegration"` for Mass). Public headers live under `Plugins/Experimental/Mover/Source/Mover/Public`. Log category is `LogMover`; console commands are prefixed `Mover.` and `mover.`.
Read `.agents/ue-project-context.md` if it exists (module names, conventions, enabled plugins, GAS/networking setup). Do not stop if it is missing.
Identify the area from the request and the codebase. Ask only when two plausible readings would produce different code.
| Request is about… | Go to | |---|---| | Choosing between CMC and Mover | [CMC vs Mover](#cmc-vs-mover) | | Enabling plugins, Build.cs, project settings | [Setup](#setup) | | Component, mode map, shared settings, what owns what | [Architecture](#architecture) | | Where a simulation tick goes, substeps, mixing | [Tick Flow](#tick-flow) | | Walk/climb/glide/zipline — a new movement type | [Movement Modes](#movement-modes) | | Dash, launch, knockback, homing, root motion | [Layered Moves](#layered-moves) | | Crouch, stance, settings swaps | [Movement Modifiers](#movement-modifiers) | | Teleport, one-shot impulse, forced mode change | [Instant Movement Effects](#instant-movement-effects) | | Automatic mode switching rules | [Transitions](#transitions) | | Translating Enhanced Input into a Mover input cmd | [Input Production](#input-production) | | Custom per-frame data, position, velocity, persistence | [Input and Sync State](#input-and-sync-state) | | Backends, rollback, resimulation, what must replicate | [Backends and Networking](#backends-and-networking) | | Reading velocity/mode, binding delegates, gameplay tags | [Reading State and Events](#reading-state-and-events) | | Motion matching, trajectory, AI pathfollowing, Mass | [Integration Points](#integration-points) |
Full templates live in [mover-recipes.md](references/mover-recipes.md); the default movement set catalogue, data-model detail, utility libraries and debugging live in [mover-reference.md](references/mover-reference.md).
Mover is not a drop-in `UCharacterMovementComponent` replacement, and `UMoverComponent` does not require `ACharacter` — a `USceneComponent` root is the only hard requirement. This table matches the one in `ue-character-movement`.
| Situation | Use | |---|---| | Shipping title, any engine-supported platform | CMC | | Existing `ACharacter` hierarchy, animation and AI already wired to CMC | CMC | | Networked gameplay that must be stable today | CMC | | Non-capsule, non-humanoid movers (vehicles, drones) that still want rollback networking | Mover | | Movement composed from data-driven modes/modifiers instead of a `Phys*` subclass | Mover | | Movement simulated on the physics thread with Chaos | Mover (`ChaosMover`) | | Prototype that can absorb Experimental API churn | Mover |
Concept mapping: CMC movement modes → `UBaseMovementMode` objects; root motion sources → `FLayeredMoveBase`; `LaunchCharacter`/`TeleportTo` → `FInstantMovementEffect`; crouching → `FMovementModifierBase`; mode-change conditions scattered in `Phys*` → `UBaseMovementModeTransition`.
**Do not put both components on one pawn.** Unlike CMC, Mover state is not externally writable: there is no `Velocity` property to assign. Change motion only through modes, layered moves, modifiers and instant effects.
Enable `Mover` (Experimental in 5.8). It pulls in `NetworkPrediction` (Beta in 5.8), `MotionWarping`, `PoseSearch`, `Water` and `ChaosVD`. Optional companions: `MoverExamples` (Experimental — sample maps and pawns), `ChaosMover` (Experimental — physics backend), `MoverAnimNext` (Experimental — UAF bridge), `MoverIntegrations` (Experimental — Mass).
// MyGame.Build.cs
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "Mover", "GameplayTags" });
// Add "EnhancedInput" when the pawn binds input actions (the pawn recipe includes EnhancedInputComponent.h).
// Add "ChaosMover" only for physics-driven Mover actors.
// Add "MoverMassIntegration" only when driving Mover pawns from Mass.Project Settings → Plugins → Network Prediction (`UNetworkPredictionSettingsObject`, `config=NetworkPrediction`), recommended starting point from the plugin README:
| Setting | Value | Why | |---|---|---| | `PreferredTickingPolicy` | `ENetworkPredictionTickingPolicy::Fixed` | Shared timeline, group rollback | | `SimulatedProxyNetworkLOD` | `ENetworkLOD::Interpolated` | Other players' pawns forward-predict badly |
A collection of 31 AI agent skills for Unreal Engine C++ development. Built for game developers who want AI coding agents to help write correct, production-quality UE5 C++ code.
Use when writing or debugging AActor and UActorComponent C++: constructor vs BeginPlay,…
Use when writing Unreal Engine C++ AI — AI controllers, behavior tree nodes, blackboards, AI…
Use when writing or debugging Unreal Engine animation C++: AnimInstance subclasses,…
Use when offloading work off the game thread, dispatching results back to it, running…
Use when playing, mixing or debugging sound in Unreal Engine — one-shot SFX, looping…
Use when exposing C++ to Blueprint or calling Blueprint from C++:…