For Blueprints, there is an “easy” way to do this. Try searching the nodes:
- Load Game from Slot
- Save Game to Slot
- Does Save Game Exist
- Delete Game from Slot
They all need a Slot Name. That can be anything you want. For example “MySavegame”.
“Save Game to Slot” also needs a Savegame Object.
Thats something you need to create, so you also need the Node “Create Save Game Object”.
Here you can choose a Class. So you also need a class. This class can be created as a Blueprint.
Just search for Savegame when creating the Savegame BP. Inside this Blueprint, you can create the Variables that you want to save. For example the Level you want to load, the Points, the current HP, the Money, the Position or what ever you want to save. I recommend to create a Struct with all your Savegame Variables and just create a Variable of that Struct inside the Savegame Blueprint.
So now, if you have created the Savegame Blueprint and setup your Variable, you will take the “Create Save Game Object” and select your Savegame Class you created. Then, cast the return value to your specific Savegame BP, so that you can use the Variables. Now again, take the return value, but this time from the cast node, and search for your variables/struct. Select “Set” and just set every variable with the value you want to save.
After this, AGAIN take the return value of the cast node, and plug this into the “Save Game Object” from the “Save Game to Slot” node.
Later, if you want to load the Savegame, you will first check if the Save Game exists, then use the “Load Game from Slot” node and cast its return value again to your Specific Savegame Blueprint. Now you can GET instead of set the variables from the return value of the Cast node and set your original variables that you saved earlier.
It’s not that hard (: i guess you can do this.
Here is also a video tutorial, if you need it: Unreal Engine 4 Save and Load Levels and Checkpoints using Blueprints - YouTube