Quick answer: Increase NetUpdateFrequency. For ability-driven moves, use Root Motion Source with replicated parameters; CMC reconciles via SavedMoves.
Player jumps and looks left mid-air. Server records jump at tick 30, look at tick 33. Other clients see jump-then-look in two visible steps.
The Fix
ACharacter:
NetUpdateFrequency: 66 // 6.6 Hz baseline
MinNetUpdateFrequency: 33
bAlwaysRelevant: false
CharacterMovementComponent:
NetworkSmoothingMode: Linear
Use Replication of Pawn Look (yaw): bUseControllerRotationYaw
// For abilities (dash, knockback)
RootMotionSources:
Add via FRootMotionSource_ConstantForce
Replicates as part of Saved Move
NetUpdate frequency drives smoothness. Use Root Motion Source for ability moves so the engine handles re-simulation on the client.
Verifying
Two-client PIE with simulated lag (NetEmulation). Other-client view: jump-look feels concurrent. Without tuning: visible micro-step.
“Higher tick. Root motion for moves. Sync tightens.”
Related Issues
For Anim Montage replicate, see montage. For Character mesh bone snap, see bone snap.
Update freq up. Root motion for moves.