Have you tried setting the Control Rotation of the PlayerController after spawning and possessing the Character?
Hello, I’ve attached some screenshots to help. I had an issue in a larger project with characters not facing the direction of the player start that they spawned at after being possessed. I’ve been able to recreate the issue using a basic third person template and was hoping someone here could spot the cause.
The player starts pointing towards each other:
The Client Character not facing correctly once possessed:
Camera boom settings:
character movement:
game mode blueprint:
Yes, I also just tried disabling Use Controller Desired Rotation within character movement by default. Then waiting a few seconds to enable it. The player spawns, possessed, facing the right direction. Then when it is enabled, they rotated towards the wrong direction.
To add to this, the rotation is visible from the server after spawn. So order of setting the control rotation and possession does not matter, especially so that they both derive their rotation from the player start.
I noticed that your Camera Boom is rotated by -90 on the X axis and 90 on the Z. Not sure if it makes a difference but try resetting it to zero.
Also, can you try disabling the code in your GameMode that sets the control rotation on the spawned actor, since the default spawning behavior handles orienting the actor’s rotation to match the spawn point’s I think. Give that a try with those two changes. If that doesn’t work then providing your test project files will help.
The rotation set in the viewport for the camera boom doesn’t have a real effect on overall outcome as it gets overridden by the “Use Pawn Control Rotation” under camera settings. The default behavior of the player spawn is not working as I am not using a default pawn in the game settings, but instead spawning a pawn, then possessing it. You are right that if I were to re-enable the default pawn and do my select spawn point through the Choose Player Start function override, I don’t have an issue.
That seems to be the solution, is to just do all the spawning/possession logic inside the Choose Player Start function. As that has fixed the issue with the same code copied into it.
Although I was unable to find the cause of the problem. The solution was simply implementing the spawning logic inside the overridden Choose Player Start function. This issue originally occurred in a larger project, was easy to replicate and a blank third person template project. Moving the script into the appropriate function instead of running it as a custom event fixed the error in both projects.
Hey, I was able to fix this by using the “Restart Player at Transform” or “Restart Player at Player Start” node in the Game Mode.
add this after the Possess node! Worked for me! TY!