I managed to vastly improve this with a couple small changes:
- I was calling the
Super::MoveAuthonomous
before updating my movement component’s variables, so we were always behind by one tick. - It seems that
CalcVelocity
was probably not the right place to callLaunch
. Moving it toOnMovementUpdated
seemed to fix a lot of the jitter
However, I’m still experiencing the issue where if I get a lot of movement corrections, I can still get myself stuck in the pulling state. I can repro this pretty easily by pulling myself towards the moving box or any of the desynced blue boxes once moved (the higher the ping, the easier it is to repro, but I can still get it to happen at 60ms). This one I’m less sure about how to fix, so any insight would be appreciated!