5.2 Seamless travel destroys my player controller and creates a new one

I updated my project from 5.1 to 5.2. In the new version, the seamless travel behavor changed. Even the widget is added to the viewport using “AddToViewport()” (and it is visible up until the travel), it is destroyed during the seamless travel.

my questions are

  1. How can I prevent the widget from being destroyed?
  2. How can I check if the widget pointer is still valid?

Edit: It also destroyed my player controller and created another instance of the same class. This seems like the cause.
Edit2: GetSeamlessTravelActorList is not called.

2 Likes

Same for me, any solution yet?

I still have the same issue in 5.3 so I had to revert my project to 5.1

Because this post is pretty high on the google search results and I just stumbled upon the actual solution:

For true seamless travel (PlayerController is persisted client-side) the Game Mode needs to inherit from AGameMode, not AGameModeBase! AGameModeBase is the default used on the Game Mode class created for you, when setting up a new project (at least in UE5.4), so you’ll need to watch out and change this manually yourself.

1 Like