Seamless Travel leaves clients unresponsive

Hi,

in our project we encountered the following problem: when doing a Seamless Travel from the lobby scene to the game scene, all remote clients remain unresponsive until the server send them back to the pre-lobby scene (disconnecting them). If we do not use a seamless travel, everything works as expected.

In attachment you can find a simple test case where you can see the unexpected behavior:

  1. clients load a local, offline map (“ClientMap”);
  2. server runs a lobby map (“ServerMap1” with ServerMap1GameMode);
  3. when a client logins, after few seconds the server travels to map “ServerMap2” (in ServerMap1GameMode ctor you can control if using a Seamless Travel or not changing bUseSeamlessTravel);
  4. when in “ServerMap2”, after few seconds ServerMap2GameMode will disconnect all the clients (sending them back to their offline map “ClientMap” - step 1) and the server will re-load “ServerMap1” (step 2).

If you run the above sample with bUseSeamlessTravel set to true (in ServerMap1GameMode ctor), when in “ServerMap2” clients will become unresponsive until the server disconnect them; then they will return interactive. If bUseSeamlessTravel in ServerMap1GameMode is set to false, everything works as expected, and clients in “ServerMap2” will work as usual.

The ZIP file contains two BAT files to run a client and a server (you can spawn multiple clients if needed). Note that, to use them, you must update the paths hard-coded in the BAT files.

Hello Kafu,

After running a few tests on the project provided I was able to find that this issue appears to be a known issue (UE-18413) and that it has been submitted to the developers for further consideration. I will provide updates with any pertinent information as it becomes available. Thank you for your time and information.

Make it a great day

It seems like this bug was not fixed in 4.12 version as well. I need to persist some data in PlayterState, so I need to perform a seamless travel, however, as you described, when set bUseSeamlessTravel to true in the GameMode the host travels, clients still find sessions but can’t join. When I set bUseSeamlessTravel to false they do join session as usual but as expected PlayerState is lost.

Hello andreybicalho,

After taking another look at the report for this issue, the status for this issue has been updated to fixed. This means that you may be experiencing a similar but different issue. Could you create a new thread for tracking purposes and provide a link to it in a reply here?

I think that’s not necessary… maybe I misunderstood something about it… I setup a new map for a lobby and then it worked.

In previous scenario:

  • 1 - players start at the menu map
  • 2 - Then I was trying to perform a seamless travel without had previously joined the session

now:

  • 1 - players start at the menu map
  • 2 - players find session and join it by doing a “hard travel” (bUseSeamlessTravel set to false) to that lobby map
  • 3 - now the host can perform a seamless travel to whatever map I want and the playerstate data I selected in CopyProperties function is persist across maps

Thank you for the reply anyway.