Save Game & Steam Cloud
How player data persists between sessions and across machines.
Two Storage Layers
| Layer | What | When |
|---|---|---|
Local SaveGame (SG_PlayerData) | Graphics, audio, account settings, game preferences, player data map | Always |
| Steam Cloud (SIK Remote Storage) | Player rank, level, skin type, skin color (keys from DA_PM_Settings) | When Use Cloud Storage? is enabled and cloud is available |
Both use the same keys defined in PM_SettingsData → Cloud Player Data, so data stays consistent between layers.
Initialization (Begin Play)
BPC_PlayerData (on BP_PlayerState, Component Type = Menu):
- Loads the save slot (
Slot Namevariable) or creates it. Check Save Game For Default Datafills missing values from Default Player Data Values inDA_PM_Settings(first launch).Check for cloud data availabilityverifies Steam Cloud (respecting theUse Cloud Storage?toggle); if unavailable, the Party Manager shows a warning viaHandle CloudStorage Notification.Player Saved Data Validationcompares saved settings against currently applied ones (e.g. graphics); if they differ, the "Keep Current / Load Saved" dialog appears.- Sets
SaveDataInitialized? = true. Other systems should checkPDATA_SavaDataInitialized?before reading.
Reading & Writing
Never touch SG_PlayerData directly. Go through BPI_PlayerDataInterface (see the functions reference) or the Get Player Cloud Data / Get Player Data helpers in BP_SPM_Library.
Settings application helpers in BP_SPM_Library:
Set Player Graphics Settings/Set Default Graphics Settings/IsSavedGraphicsSettingsDifferent?ApplyAudioVolumeSettings: applies saved volumes to the sound classes inContent/SteamPartyMenu/SoundEffects/SoundClassesGet Current Set Game SettingsGet Last Party Size Used/Get Last Gamemode Used/Get Last Map Used: used byCreate SPM Partyto restore the host's last match settings
Settings Structs
Found in Content/SteamPartyMenu/Blueprints/Structures/:
S_GraphicsSettings: resolution, window mode, quality scalarsS_AudioSettings: per-sound-class volumesS_AccountSettings: account-level options
The Settings Menu tabs (WB_GraphicsSettings, WB_AudioSettings, WB_AccountSettings) read and write these structs through the interface.
Steamworks Setup
For cloud saves to work in your own app:
- Enable Steam Cloud in your Steamworks App Admin (Cloud quotas per user).
- Keep
Use Cloud Storage?checked inDA_PM_Settings. - With the test AppID 480, cloud behavior is shared with every other Spacewar app, so expect noise. Use your real AppID for reliable testing.