LoGaCulture / LUTE

LUTE stands for LoGaCulture Unity Toolkit/Engine. A Unity based tool to create narrative rich location-based games for the purposes of heritage preservation.
MIT License
0 stars 2 forks source link

Saving System #11

Open Jacki3 opened 4 months ago

Jacki3 commented 4 months ago

Is your feature request related to a problem? Please describe. We want players to be able to save and load their games! How can they engage freely with experiences when knowing they cannot quit and return whenever they please.

Describe the solution you'd like Adding a rather complex saving system which will likely parse save information as keys to JSON which can be stored then read back when needing to be loaded. Then adding a simplified version of this as a save sytem manager which ties to some form of UI allowing players to save and load their own games. Tie this in with the LUTE Order system to allow designers to add save points then a load order which will either load a specific key or the latest save.

Additional context Whilst variables should save and they can be set using Orders at runtime, the state does and current game progress does not save. We should also ensure that event handlers can be used with this system to setup scenes correctly at specific load points.

Jacki3 commented 4 months ago

Save system now saves variables (only int currently but easy enough to support others) Load Save Point order will load the most recent save (need to implement a specific key to load also) Context menu item will spawn saving prefabs (save menu and save data)

On Loading Order - if there is no save point then we get blank screen (no node has been found - implement fix) Need to update docs Need to add a save log add load order custom save point key Decide upon allowing players to save and have auto save enabled? - currently both are allowed simultaneously

Jacki3 commented 4 months ago

Latest changes ensures that if the save file is empty and we try to load then we will return to previous node if that previous node was a choice. Useful for when you have a menu system which loads a game but the player has not yet started a game. Could potentially disable this option if you wish but for now we simply execute the node again on fail load.

TO DO:

Jacki3 commented 4 months ago

Added a boolean choice to show all options on the save menu so designers can either use saving as checkpoints or allow players to create their own saves

Added Android support

TO DO: