ACharacter::ServerMoveDualNoBase_Validate
Deprecated: Use ServerMovePacked validation instead.
#include "GameFramework/Character.h"
Access: public
Description
Validation function for the ServerMoveDualNoBase RPC. Returning false disconnects the client. Default implementation returns true.
Caveats & Gotchas
- • Deprecated alongside its RPC; new projects should rely on ServerMovePacked validation.
- • A false return disconnects the client immediately — validate only clearly impossible values, not cheat indicators, to avoid false-positive disconnects in edge cases like high-latency connections.
Signature
ENGINE_API bool ServerMoveDualNoBase_Validate(float TimeStamp0, FVector_NetQuantize10 InAccel0, uint8 PendingFlags, uint32 View0, float TimeStamp, FVector_NetQuantize10 InAccel, FVector_NetQuantize100 ClientLoc, uint8 NewFlags, uint8 ClientRoll, uint32 View, uint8 ClientMovementMode) Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| TimeStamp0 | float | Timestamp of the older move to validate. | — |
| InAccel0 | FVector_NetQuantize10 | Acceleration of the older move to validate. | — |
| PendingFlags | uint8 | Flags of the older move to validate. | — |
| View0 | uint32 | View of the older move to validate. | — |
| TimeStamp | float | Timestamp of the newer move to validate. | — |
| InAccel | FVector_NetQuantize10 | Acceleration of the newer move to validate. | — |
| ClientLoc | FVector_NetQuantize100 | Client location to validate. | — |
| NewFlags | uint8 | Flags of the newer move to validate. | — |
| ClientRoll | uint8 | Client roll to validate. | — |
| View | uint32 | View of the newer move to validate. | — |
| ClientMovementMode | uint8 | Movement mode to validate. | — |
Return Type
bool Example
Validate both move timestamps are ordered C++
bool AMyCharacter::ServerMoveDualNoBase_Validate(
float TimeStamp0, FVector_NetQuantize10 InAccel0, uint8 PendingFlags,
uint32 View0, float TimeStamp, FVector_NetQuantize10 InAccel,
FVector_NetQuantize100 ClientLoc, uint8 NewFlags, uint8 ClientRoll,
uint32 View, uint8 ClientMovementMode)
{
if (TimeStamp0 >= TimeStamp) { return false; }
return Super::ServerMoveDualNoBase_Validate(
TimeStamp0, InAccel0, PendingFlags, View0,
TimeStamp, InAccel, ClientLoc, NewFlags, ClientRoll, View, ClientMovementMode);
} Version History
Introduced in: 4.0
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?