Players getting stuck after servertravel

Hi Rudy.

We just completed a test session with 5 players in total and we experienced no connection drops or issues with stuck players that we had before when executing servertravel.

I had prefered to have more players in a larger test, but I would say that the problem seems resolved for now.

Also, much thanks to Zhi Kang Shao for your effort with tracking down the issue.

Cheers!

No problem, glad to hear it worked!

We have the same exact issue, thank you for investigating and posting it here. I can now sleep at night again. :stuck_out_tongue:
Since we’re using pre-compiled version of the engine we had to disable seamless travel altogether and now waiting for new patch.

Sadly this doesnt work for us. Once the client travels faster than the host, it gets stuck in the new level and doesnt react or fireing level ticks.
We used 4.10 and updated to 4.12.3, but the problem still persists.

Any Ideas?

Hmm not sure really, have you enabled “use seemless travel” in gamemode? If this solution don’t work perhaps there is something not working right with the online subsystem you are using? I hope you find a solution, cheers!

This you will have to handle yourself.
When client reaches the level before the server, APlayerController::NotifyLoadedWorld will be triggered, and camera is positioned on the first player start it finds.
You may override this method and add some logic here yourself, for example, we do not turn off the loadingscreen till server actually reaches the level and the level starts.

This sounds like the exact problem I am having in 4.17.2

I have seamless travel set in transition and my main map, i use subsystem = null for just a dedicated server on my LAN.

As you mentioned the client finds the first player start and just sits there unresponsive to anything. Do you have any thoughts on how to fix or resolve this through blueprints? How would I wait to the server is loaded before bring clients to the level or if they do arrive early, have them reload the map?

Having a very similar issue in 4.19. Client calls ServerNotifyLoadedWorld in world.cpp line 5663 but it is never received on the server. The server checks the ClientWorldPackageName in PlayerController.cpp Line 586 but that actual value of ClientWorldPackageName is the previous map name. So the upshot is the server thinks that the client is still travelling. This problem seems 100% for me using null online subsystem and 2-3 packaged instances running on the same machine.

Reluctant to change the engine source, so will write a “where are you message” in the derived gamemode/playercontroller to allow the clients to call ServerNotifyLoadedWorld “once”. This should allow the rest of the code to flow normally so I can use gamemode::HandleSeamlessTravelPlayer to spawn pawns hide loading screens etc.
If you have a better idea let us know.

me too in 4.19.2 and I always see limbo character\client after servertravel :frowning:

I am having this issue in 4.19.2 as well using steam. For some reason my clients decide to skip the transition map sometime and try to travel directly to the next map. This is with seamless travel and it is intermittent.

Still an issue in 4.21.2, any updates on this?

Workaround for this in UE5: UE5 Seamless travel bug found. We found the cause, and also have a workaround