Easy Swimming System is designed to integrate seamlessly with save systems, making it easy to save and restore your character’s swimming state.
In this section, you'll learn how to save and restore your character's swimming state.
<aside> ❗
Important: Easy Swimming System does not include its own save system. Instead, it provides everything you need to easily integrate with your existing save/load system. You'll need to have your own save system implemented for this functionality to work.
</aside>
Easy Swimming System includes two helper functions that make it easy to save and restore all the data required to restore the character's swimming state.

SaveGame file.SwimmingSavedData struct. Simply pass in the SwimmingSavedData struct you retrieved when loading the game.You can call these functions from wherever your save/load system is implemented. Simply get a reference to your character's BPAC_Swimming component and call the appropriate function.

Let's walk through a simple example of how to use the helper functions to save and restore your character's swimming state with your own save/load system.
For this example, let's imagine we have a very simple save/load system consisting of:
A custom SaveGame class that stores the relevant information about the character. In this example, it only contains two variables: one for the character's Health and another for its Transform (location, rotation and scale).

A SaveGame event that gathers the current character data and writes it to the SaveGame object.

A LoadGame event that reads the saved data from the SaveGame object and restores those values to the character.

<aside> 💡
Keep in mind that this is a minimal setup created to keep the example as simple as possible. It is not intended to represent a full or production-ready save system. For a proper implementation of a save/load system, please refer to the official Unreal Engine documentation.
</aside>
Now let’s also save the current swimming in our example save system.