What is everything I need to know about seamless travel?

Here are the current things I do know (please tell me if I am wrong or missing something)

  • only player controller (if same class in the next level) will be transferred over and it’s begin play will not trigger. Player state, game state, and game mode will all be recreated
  • I need a transition blank level and set it in Project settings Maps & Modes
  • all the game modes needs to have the setting seamless travel on
  • only host can use server travel console command to the next level (already know how to do this and got it working)
  • have to use standalone play mode

Some questions

  • since only player controller doesn’t get remake is it better to make player begin play code on the player state and keep all the info on player controller (reverse the roles a bit)
  • so widgets get carried over as getting some glitches with that
  • what else gets carried over in seamless travel
  • had a weird thing where if 2 players and host uses seamless travel and every code using get player state 0 returns back a different player state which is messing up a lot of my code
  • I heard you can use copy properties on Player state but they can only be blueprint read only var which is kind of useless or am I not understanding this?
  • are there any race condition or network race condition happening in the back ground?
  • is it best to keep all the player controller, player state, game state, all the same class, different classes, or child classes
  • anything else I need to know?

For myself personally, I remembered the main thing - it is better not to use seamless travel. :sweat_smile:

I couldn’t find a single compelling reason to use it, but problems (and random and very strange ones at that) arose out of nowhere.

so true, it gets finicky and it’s hard to find official documentation, been learning from what other’s post so like 2nd hand knowledge