Choose Player Start and BeginPlay in gamemode blueprint only working on certain maps/levels

I have a “portal” system in place where I can interact with a portal to go to a different level by using Open Level. This system also stores which PlayerStart to spawn the player on in the form of a String that only corresponds to one unique PlayerStart in the level that is being opened. The system works, however, it only works on level X going to level Y. When I try to go from level Y to level X, it does not at all use the Choose Player Start method I coded (I checked this with print statements) and chooses a seemingly random PlayerStart.

Similarly, when I place a simple print statement on BeginPlay in my gamemode blueprint, it only prints on Level Y, and does not fire on level X.

How could I make it so both of these work on both levels?

Hello ,

While I don’t entirely grok your setup - I just want to make you aware of ‘Game Instances’ (To store data between map changes) HTF do I? Use the GameInstance Object in Unreal Engine 4 - YouTube

Hope that helps!

Thank you, it took me some getting used to, but it works now.