UCharacterMovementComponent::ServerMove_PerformMovement
#include "GameFramework/CharacterMovementComponent.h"
Access: public
Specifiers: virtualENGINE_API
Description
Checks timestamps, derives a delta time, and forwards the move parameters to MoveAutonomous() on the server, optionally checking the final location against the client-reported location.
Caveats & Gotchas
- • This is the modern equivalent of the legacy 'ServerMove_Implementation' — the name changed but the role in the pipeline is the same.
- • Called once per logical move by ServerMove_HandleMoveData(), so it can run up to three times per RPC for dual/old moves.
- • Error checking against ClientLoc is optional and gated by ServerCheckClientError(); overriding this without preserving that call disables server-authoritative correction.
Signature
virtual void ServerMove_PerformMovement(const FCharacterNetworkMoveData& MoveData) Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| MoveData | const FCharacterNetworkMoveData& | A single move's data, also accessible via GetCurrentNetworkMoveData() during the call for backwards-compatible internal code. | — |
Return Type
void Example
Override to log per-move server processing C++
void UMyCharacterMovementComponent::ServerMove_PerformMovement(const FCharacterNetworkMoveData& MoveData)
{
Super::ServerMove_PerformMovement(MoveData);
UE_LOG(LogTemp, VeryVerbose, TEXT("Processed server move at time %f"), MoveData.TimeStamp);
} See Also
Version History
Introduced in: 4.26
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?