OnRep vs multicast

I would also not update the maxWalkSpeed outside of the character movement component’s functionality. If you update the values outside of the synchronized functionality it’s going to break a lot of things you aren’t aware of. Learn how to override the savedMove to handle passing sprint to the CharacterMovementComponent, and pass whether the character is sprinting through the player inputs, gas abilities (if that’s the route you’ve taken), or the OnMovementModeChanged function.