Child Actor has unwanted location offset on clients

I’m working on a multiplayer game where the pawns each have a child actor named ‘Bottle’. The child actors are attached to the right hand socket of the pawns. When I run the game, from the server side, all bottles on all pawns appeared correctly in the palms of their owner. However on the screens of all clients, the bottles appeared to be very off from their hands even though they still move together with the hand (seems to be attached to sockets).

What server sees (Correct appearance):

353475-1.png

What other clients see, even if the pawn belongs to server:

353476-2.png

ViewPort:

353477-3.png

I’m not sure if the problem came from replication, so I played around with the settings a bit but still the problem persisted. Is there anyone who might know what is the issue for this? And what is the possible solutions? Thanks

Found the cause of the issue so let me answer my own question:

The problem came from the absence of the DefaultSceneRoot inside the blueprint for the bottle. I watched a tutorial video and he replaced the Root with a Static Mesh and I thought it was a good idea to follow. Turned out it messed up the presentations on the client side for some reasons. Just copy paste the DefaultSceneRoot from another blueprint and make sure to set it as the main owner for all components.

Solution:

353511-1.png

1 Like