Save Game Resetting Through Level Changes?

I have put this up before with no help, hopefully someone can help me with my save game blueprint resetting variables though level changes

So I have a simple side scrolling shooter and I have a upgrade screen. you can go into the screen upgrade them, (and I have print strings up of the values). while on the “Main Menu” map. its getting the upgrade levels and applying them to the save game. If I close it and reopen the game still there. go back and forth from upgrade screen to main menu. stays there! Press the play game button, loads into first map, and the upgrades have reset in the save game blueprint. As you can see in the pics in the debug stats, that the save game upgrade level stays there the whole time till it hits the loading screen of the next map.

If it’s resetting, you’re either not loading it properly on the new map or you’re not saving it properly on the menu one.

In order to save something to file, you have to do something like this:

  1. Check if you have a savegame (Not absolutely necessary if you definitely know you have a savegame already.)
  2. load the savegame or create new savegame object
  3. cast it to your custom savegame (I named mine GlobalSaveGame)
  4. set your variables that you want to set.
  5. save the game to a slot.

In order to load some sort of variables, you follow the upper path but leave out the last “Save Game to Slot”.

You can also store persistent data on the PlayerState or GameInstance (available to all players).

I don’t know how to store persistent data. Where would that be? When I searched up players vars resetting through levels I found multiple things saying use the save game function

And @bohrium I already said that I can close and reopen the game and it works. I have the vars of the save game blueprint being printed to the screen. I can close and open the game as many times as I want. The player finds the load game and sets his vars from the saved game slot. BUT when the level is changed the save game blueprint resets its vars just like the player did and this is what I found to move player vars between the levels