ChildActorComponent has offset on client side

I have a question about child actor component, Im using it for guns in game, and I attach it to GripPoint socket (on hand_r bone) on the player, and while testing in the standalone/listen server everything works fine but when I start playing as client the gun has a large offset (as shown on image) is there any solution to it or what I might miss or how to fix that?
I’m attaching UChildActorComponent in the constructor when creating it.

GunComponent = CreateDefaultSubobject<UChildActorComponent>(TEXT("GunComponent"));
GunComponent->SetupAttachment(Mesh1P,"GripPoint");
GunComponent->SetIsReplicated(true);

i believe construction script doesnt run on client, move it to begin play instead and it should be ok

I tried that, and now gun is just at 0,0,0. And it isn’t on mesh hierarchy anymore.
If construction script isn’t called on client then Camera and other components shouldn’t be set correctly as well?