
How to Make a Save System in Unreal Engine 5 – Blueprint Tutorial (4 Minutes)
Build a simple Save & Load system in Unreal Engine 5 using Blueprints. Store and restore player position with SaveGame and input actions.
This is Rambod and today we’re setting up a simple Save & Load system in Unreal Engine 5 using Blueprints. We’ll use the Third Person Template, create a SaveGame class, write the logic to save and restore the player’s position, and bind it to input keys for testing. This system can be extended to store any variable in your game.
1) Create the SaveGame Blueprint
- Open the Content Drawer.
- Right-click → Blueprint Class → select SaveGame.
- Name it
BP_MySave
. - Open it and add a variable:
PlayerTransform
(Type: Transform).
- Compile and save. This variable will store the player’s position and rotation.
2) Add save and load keys
Inside your Third Person Character Blueprint (or any character you want to save):
- Add input key H → Save.
- Add input key J → Load.
- Add comments above them to stay organized.
This way, pressing H saves the current position and pressing J loads it back.
3) Save game logic
- From the H key event, drag out and create Create Save Game Object.
- Select
BP_MySave
as the class.
- Select
- Promote the return value to a variable called
SaveObject
. - Use Get Actor Transform → connects to Set PlayerTransform on the
SaveObject
. - Finally, call Save Game to Slot:
- Save Object =
SaveObject
. - Slot Name =
"MySave"
.
- Save Object =
Now the character’s position is written to disk.
4) Load game logic
- From the J key event, call Does Save Game Exist.
- Slot Name =
"MySave"
.
- Slot Name =
- Add a Branch.
- If false → Print String =
"No Save Exists"
. - If true → Load it.
- If false → Print String =
- Call Load Game from Slot.
- Slot Name =
"MySave"
.
- Slot Name =
- Cast the output to
BP_MySave
. - From the casted save object, get
PlayerTransform
. - Call Set Actor Transform on the player → plug in
PlayerTransform
.
Now the character restores position when loading.
5) Auto load on game start
- Override Event BeginPlay in your character.
- Call Does Save Game Exist.
- If true → run the load logic automatically.
This ensures players always continue from their last save when starting the game.
6) Testing
- Run the game.
- If no save exists, you’ll see the message: No Save Exists.
- Move the character, press H to save.
- Move again, press J to load.
- Character snaps back to the saved location.
- Restart the game: BeginPlay auto-loads the save.
Wrap up
You now have a working Save & Load system in Unreal Engine 5:
- SaveGame Blueprint to hold data.
- Save & Load logic bound to keys.
- BeginPlay auto-load for persistence.
This is the foundation for more advanced save systems — you can add health, inventory, progress, or custom data.
For more Unreal tutorials, visit rambod.net, subscribe on YouTube, or watch the full tutorial here: Watch on YouTube.