Releases: CG-Tespy/FungusSlotBasedSaveSystem_Unity
SBSS v1.06.08
SBSS 1.06.05
Bugfixes
- Save slots now properly display the dates their saves were last written, instead of the date the menu loaded. Shout out to adrianhm13 for bringing the issue to my attention ^^
Other Notes
From this release onwards, save system extras will be released in separate packages. Since there were no changes to the extras with this bugfix, they won't be included in this release. The "PRE" and "POST" tags in the names will only apply to those extras, too.
SBSS 1.06.03
Bugfixes
- Games hanging when loading save files on Android (and potentially other mobile platforms)
Other Notes
- From here on, each unitypackage for this system will include a "PRE" or "POST" in the name.
- The "PRE" is for versions of Fungus before 3.13
- The "POST" is for versions of Fungus 3.13 and up
SBSS 1.06.01 for Fungus 3.13
Purpose
Starting with Fungus 3.13, it has had a Slot-Based Narrative System based off of mine (I'm honored, btw!). I'll refer to that as the Fungus Official Slot-Based Narrative System (FOSBNS for short). For better compatibility between that and my SBSS, I've decided to create this release, which is for Fungus versions 3.13 and later only.
Bugfixes
- Certain errors that popped up when using the integration scripts from previous releases with Fungus 3.13
Package Differences
- The integration scripts now come with prefabs to help you integrate the SBSS and the FOSBNS
- A demo scene, too, so you can see it all in action
Other News
- This SBSS is still being supported for Fungus versions 3.10 and later.
- Future versions of this system that involve core code changes (as opposed to just integrations, like here), will have separate versions for pre- and post-FOSBNS Fungus versions
- This release has been tested with the Fungus 3.13 Compatibility Version using Unity 2017.4.1
SBSS V1.06
Bugfixes
- The bug mentioned here (#1) no longer happens, though it does lead to another one. See the Known Issues page on the wiki for more info.
- There's been an issue with Invoke Method or Invoke Event commands calling the SaveManager's AddSave method, that caused said commands to be re-executed when the saves they made were loaded.
- Before, the only workaround for that was using a SaveDataLoaded event block to stop the SaveManager from doing any saving for a duration.
- Now, you can have the SaveManager stop itself on Awake using its new awakeSaveDelay flag, thus preventing the potential performance and save-reading issues.
- The default prefabs have been redone to fix a Unity 2017.4 prefab-importing compatibility issue. More on that in the Repo Stuff section.
New Features
- The SaveSlot script now supports displaying the date on its own field, with a .NET standard format of the user's choice.
- It also takes into account the user's locale when deciding how to display the date, so players can see date formats they're familiar with.
- The SaveSlot prefab has been edited accordingly.
- You can have SaveSlots update their fields every frame by setting their Refresh Continuously flags to true.
Behavior Changes
- The GameSaver no longer sets the description to the current date, regardless of there being an active SayDialog at the time.
- In those cases, the description is simply set to an empty string.
Other News
- As of this release, I'm officially only supporting this system for Unity 2017.4 or later.
- This release depends on the compatibility version of Fungus 3.12 instead of vanilla 3.10.
- Should still work with the normal version of 3.12 and later.
- For the foreseeable future, I'll only be supporting this system in terms of bugfixes, wiki maintenance, and question-answering.
- However, don't let that stop you from suggesting ideas on this repo; if I do decide to add new features later on, it'd be nice to have a backlog of ideas.
Repo Stuff
- For reverse-compatibility's sake, the project in the master branch has been downgraded from Unity 2018 to Unity 2017.4.1f1.
- This is the earliest version of 2017.4 supported by Unity Hub.
- The project has also been set to use the earliest version of C# that 2017.4 supports.
SBSS V1.05
- Fixed a bug where saves wouldn't overwrite correctly if using Invoke Method to call the SaveManager's AddSave method.
- Fixed a bug where the SaveReader would assign the wrong filename when it's called on startup to load all saves on disk
- Had the json-writing use pretty-printing by default
- Slight API change to SaveManager; it has a public bool that it uses to decide whether it can add a save or not
- Changed the SaveManager and SaveSlotManager components so that they are accessible as singletons, and they delete themselves if the singleton is already available
- Decided to accept the current TransformVar-saving solution as official
- Slight refactor for the FlowchartLoader's code, in preparation for a bigger refactor that may come in the future
- ProgressMarker commands now display summaries in the inspector
SBSS Transform Var Support Prototype
I extended the save system (using the steps explained in the wiki) so that the state of Transforms in Flowchart variables is preserved. I'm not entirely happy with how I implemented it behind the scenes (see the TransformVarDev branch), but the end results are as intended, based on the unit tests in the aforementioned branch. xD
I also intend to support this prototype until I decide on a nicer implementation for the official release.
Just make sure that:
- All Transforms your vars point to are on GameObjects with unique names. Otherwise, the states might end up applied to the wrong Transforms.
- The TransformVarSaver is added to the GameObject with the GameSaver, and the TransformVarLoader is added to the one with the GameLoader.
- The GameObjects that have their Transforms referred to in TransformVars exist by the time the GameLoader does its thing. If the GameObjects aren't present (be it by not being destroyed on load, or not being in the base scene), you may get errors.
SBSS Version 1.035b
Fixes a slight issue with the organization in V1.03's unitypackage. Also removed test script folder.
SBSS Version 1.03
If you're not using my Narrative Log System in your project, don't import the Extras folder; it just adds support for said system, and will give you compile errors if my NLS isn't in your project.