Why would you duplicate them in your game instance bp?
Your game save object is just a collection of variables that can be written to the disc.
In order to save the data held throughout your game code, you need to get the values held in those variables and assign them to the corresponding values within your game save. That’s the data that’s actually saved.
Then, to restore your game, you need to load the game save object from the disc and then assign those values back into the variables throughout your game code. You’re restoring the game state as it existed when you saved the game.
You get and set the values just like you would any other variable.
Your save and load functions are the functions that retrieve the values from throughout your game code and assign those values to variables in your game save, and vice versa.