2.8 KiB
Overview
- GeneralPurposeSave (Savegame) : The object containing all changable information within a level
- SaveGame (Task) : Save the full current state of the game into a GeneralPurposeSavegame
- SaveGameLoader (Actor) : On EventBeginPlay use the GeneralPurposeSavegame provided at actor spawn to populate and alter the level acordingly
- LevelSavegame (Savegame) : A savegame representing a running or finished level. If it is a running level, the save game may be used by the savegame loader to load into a level, if it is a finshed level it may be used by the after game lobby (via the FullStorySavegame) to display the storyview
- FullStorySave (Savegame) : A slot-save containing all Level savegames for one of the four story slots, used to create the after game lobby overview
- MetaSave (Savegame) : A meta-savegame containing information about the used saved game slots and the last used savegame slot.
Ussage by Category
Menu (SaveGameItem)
The Main Menu loads the meta save by its static name and uses the info in this save to search & load the full story save games and populate the SaveGamesSelectionMenu with this info (Info is: Slot exists, Slot Name). It does not load the referenced LevelSaveGames.
The Menu also sets the current FullStorySaveGame in the game instance.
After Level Lobby
The after level lobby uses the FullStorySavegame to determine the latest level (i.e. the level that just finished) and use this, referenced LevelSavegame to display the landing page of the after game lobby (e.g. current ammunition, last level name and last level vars). It also uses all of the level save games referenced in the full story save (slot) to build the "story view graph"
Level Savegame
States
Ship Vars
- Health
- Shield
- AmmoPrimary
- AmmoSecondary
- Flares
Transforms
- PlayerTransform
- RizTransform
- MarkTransform
Other
- CurrentLevel (Name)
- DisplayString (String, name of the save)
Changeable Actor States
- WaypointStates (Map, String of Actor FQN to WaypointState-struct)
- Gamefacts (Map, String, Gamefact-Name/Bool)
- DialogTriggerStates (Map, String to WaypointState-struct)
- Gamefacts_LevelState (Map, String, Gamefact-Name/Bool)
- ActorSpawns (List of structs, Class/Transforms to spawn)
- TagHiddenStateTaskTracker (List of structs, Tag/HiddenState to set to the specified state)
Updating and Saving
Ship Vars, Transforms and Other are set by an Update Values call in the "SaveGame"-Task. GamefactStates and TagHiddenStateTaskTracker are set by the respective Tasks in dialog-BT, namely: SetActorHiddenState, SetFactByName. DialogTriggerStates, ActorSpawns and WaypointStates are updated during the triggered execution of the respective Actors, namely: DialogTriggerDefault, WaypointDefaultActor (SpawnActorOption) and WaypointDefaultActor (no options).