Hi! I’m looking for some help with a vehicle pawn movement issue that only occurs when playing on a standalone dedicated server.
Playing in PIE mode with a dedicated server and two pawns works as expected. However, after building a dedicated server and connecting to it, the vehicle pawns cannot move correctly. They stutter, which I believe is just a result of the client doing some movement prediction and then the server refusing and reversing the movement.
I encountered this with my project and then reproduced it with the vehicle template project. Since the issue arises with the vanilla vehicle template, I suspect that it is due to how I’m building the standalone dedicated server.
In any case, here’s the answer hub question: https://answers.unrealengine.com/questions/93758/vehicle-jitters-on-standalone-dedicated-server.html
Here’s a video of the expected behavior (PIE mode) and the issue: - YouTube
Here are the steps I’m taking to build a standalone dedicated server (these could very well be incorrect): piinecone — Building a dedicated server in Unreal Engine 4
Any insight is appreciated. Thanks!
In case anyone comes across this, I think I’ve narrowed it down to something unexpected: physics simulations don’t seem to be running on my standalone dedicated server (or aren’t authorized to run, at least). I just realized this tonight after placing a physics cube in the scene, watching it replicate correctly in a PIE dedicated server with multiple clients, then watching it fail to drop to the floor in a standalone dedicated server session. I also tried with substepping off, but this just results in my vehicle gradually falling through the floor and the cube remaining fixed in midair.
I’ve updated my answer hub question here: https://answers.unrealengine.com/questions/97074/vehicle-template-issues-with-standalone-dedicated.html
I’ll keep posting updates in this thread for posterity.
HateDread mentioned to me in IRC that I should check the bEnablePhysicsOnDedicatedServer property. This a SkeletalMeshComponent property and it does indeed need to be set to true in order for physics-simulating actors to replicate properly in a standalone dedicated server environment.
All of the details are on the answer hub post:
I created a pull request to expose this property to blueprints so content-only vehicle games (and other physics actors) can replicate on standalone dedicated servers without having to subclass a C++ superclass that sets this property.
after setting **bEnablePhysicsOnDedicatedServer **it works fine