Just upgraded to 4.20.2, and when ClientAuthorativePosition is set to true, CharacterMovement get velocity always return zero on replicated actor. (Used to work fine in 4.19.2)
This is a serious bug, for all those who use this option. Can we get this fix asap?
We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.
Well, i spent 2-3 days confirming this bug with UE staff. (This turned out to be a source built version bug.) Been one month and no answer about when this will be fixed…
I don’t think we have to wait for 4.21. If we add these corrects lines in the source code of the 4.20 engine and build it I’m pretty sure it will work ! I sadly can’t test it in the future days but I will definitly test it in the future weeks.
I can confirm that the solution for 4.20 engine is to build the 4.20 engine from source after modifying the file
Engine/Source/Runtime/Engine/Private/Components/CharacterMovementComponent.cpp
Adding the following lines at lines 8414 :
// Client may send a null movement base when walking on bases with no relative location (to save bandwidth).
// In this case don't check movement base in error conditions, use the server one (which avoids an error based on differing bases). Position will still be validated.
if (ClientMovementBase == nullptr && ClientMovementMode == MOVE_Walking)
{
ClientMovementBase = CharacterOwner->GetBasedMovement().MovementBase;
ClientBaseBoneName = CharacterOwner->GetBasedMovement().BoneName;
}
Tested on UE4 4.20.3 source from github and works perfectly as expected