Member-only story

Creating a subsystem to load/save games in Unreal Engine 5 with C++

BlueBubbleBee
9 min readJan 5, 2025

--

In this tutorial, we will create a simple subsystem to handle saving and loading games.

You can follow the tutorial in the video:

https://youtu.be/yW_fMS4WPAU

If you want to see the final result, download the code here (CoffeShopSim project):

https://github.com/bluebubblebee/CoffeShopSim

What’s a subsystem?

A subsystem in Unreal Engine is like a special helper that manages specific tasks or systems within a game. It is very similar to a singleton, where there is only one unique instance of each subsystem.

Subsystems can be used to save game data, manage audio, handle player input, or even deal with online features.

They are perfect for creating modules and isolating functionality, making your code cleaner and reusable.

Unreal Engine already has some subsystems:

  • Engine: Inherits from UEngineSubsystem class
  • Editor: Inherits from UEditorSubsystem class
  • GameInstance: Inherits from UGameInstanceSubsystem class
  • LocalPlayer: Inherits from ULocalPlayerSubsystem class

--

--

BlueBubbleBee
BlueBubbleBee

Written by BlueBubbleBee

I am Bee, an indie developer making Kitori Academy a cosy life sim where you take the role of a wizard apprentice and have a cat as a companion!

No responses yet