[Help] Socket Value Incorrect On Dedicated Server

Hi All,

I’m currently working on creating a 1st & 3rd person multiplayer shooter in UE 4.11. I’m running into some trouble when I try to run my code to spawn a projectile on a dedicated server. What I’m doing is getting the location of the socket I placed on the gun’s skeletal mesh, which should return the exact location of the gun’s muzzle, and passing that as the spawn location. What I’m getting, when run on a dedicated server, is the projectile spawning from the player’s feet. (Code works fine on listen servers)

UPDATE:

I’ve traced the problem to the skeletal mesh we’re using for the gun. If I use the same blueprint code on another skeletal mesh it works fine, even on a dedicated server. Does anyone have any idea of why a skeletal mesh could cause the computer to not be able to retrieve the actor(rifle)/socket(muzzle) location???

I see that other people have run into similar issues as well, however the fix mentioned does not work for me:

I’ve created a topic on UE4 Answerhub with a bunch of pictures so maybe you could stop by and check it out. Any help would be much appreciated. Thanks a ton.

https://answers.unrealengine.com/questions/416673/help-socket-value-incorrect-on-dedicated-server.html

So we found the root cause of this was a really weird bug.

It is described here:

Basically changing the HUD will cause the character to be unable to maintain a reference to a skeletal mesh.

Any thoughts?