Download

Best method of moving a pawn without using CMC in a multiplayer scenario?

Looking for a little advice, or even some personal opinions here. I’m developing a cover-based multiplayer shooter, and my current objective is to move a player pawn from their current location to a location defined by an Arrow Component on the piece of cover they want to move to.

I can get it to work using MoveComponentTo in the KismetSystemLibrary… kind of. For one, it appears a bit jittery to other clients because there are no fancy prediction methods in play like with CMC, and for two I don’t love having to pass a Vector, Rotator, and FLatentActionInfo struct to the server every time to replicate what will likely be a common movement in the game.

What would be your go-to function or general methodology of doing something like this? Or do you think MoveComponentTo is fine and I just need to work at making sure the Client and Server are synced up better?

Kind of an obscure thing, but hey, maybe this will help someone.

The issue had nothing to do with replication, running MoveComponentTo on the client and server is enough. The issue was that, at some angles, the pawn’s rotation was given a sudden and immediate “jerk” at the beginning and end of the animation due to the function. The solution was to enable “bEaseIn” and “bEaseOut” (I assume there are equivalent options in Blueprints) and everything is looking good now :slight_smile: