Releases: Tirtstan/Pathways
Releases · Tirtstan/Pathways
Release list
v2.0.0
🚀 Highlights
- Static, scene-free API (
Pathways):- No more
PathwaysManagerGameObject in your scenes! The old MonoBehaviour singleton is now a fully static facade — callPathways.LoadProfile(...),Pathways.GetPath(...), andPathways.GetLatest()from anywhere without hunting for an instance. PathwaysGlobalConfigsis gone; storage location, file extension, auto-save prefix, quicksave filename, and slot count are all static properties onPathways.
- No more
- Typed save categories (
SaveType):- First-class support for Manual, QuickSave, and AutoSave paths — no more inferring save type from filename heuristics.
- Quick save is a dedicated overwrite slot (
{profile}_quicksave.sav) instead of reusing manual-save naming. - Filter by type when loading or building a save-game menu:
GetLatest(SaveType.Manual),GetSaves(SaveType.QuickSave), etc.
SaveProfile— clearer profile model (renamed fromPathway):- Three focused methods cover most workflows:
GetPath(SaveType, customName),GetLatest(SaveType?), andGetSaves(SaveType?). - File lists auto-refresh from disk on every query — no stale cache after external file changes.
- Three focused methods cover most workflows:
PathwaysDebugWindowEditor tooling:- Replaces the old
PathwaysManagercustom inspector with a dedicated window at Tools → Pathways → Debug Window. - Browse profiles, inspect saves on disk, copy paths, and delete files while iterating in the Editor.
- Replaces the old
- Fast Play Mode ready (Unity 6 / Domain Reload disabled):
- Static state resets via
SubsystemRegistrationso play sessions don't leak profile or config data between Enter Play Mode cycles.
- Static state resets via
Changed
PathwaysManager(MonoBehaviour singleton) converted to a fully static classPathways.- Namespace moved from
PathwaystoTirt.Pathwaysto avoid C# type/namespace resolution collisions. Pathwayrenamed toSaveProfile;PathwayIdrenamed toProfileId.PathwaysGlobalConfigsabsorbed into static properties on thePathwaysclass.- Events renamed:
OnCurrentPathwayChanged→OnActiveProfileChanged;OnAutoSavePathRequestedis now static onPathways. - Auto-save API simplified:
ToggleAutoSave(...)→EnableAutoSave(...)/DisableAutoSave(). - Unity minimum version updated to 2021.3.
- Sample scene and
SaveManager.csupdated for the v2.0 static API, including QuickSave and QuickLoad. - Sample scene UI text now points to the Debug Window instead of the old manager inspector.
Added
Tirt.Pathwaysnamespace.SaveTypeenum (Manual,QuickSave,AutoSave).SaveProfileclass with:GetPath(SaveType type, string customName)— resolve a path to write to.GetLatest(SaveType? type)— most recently modified save file path, optionally filtered by type.GetSaves(SaveType? type)— all matching files, newest first.
PathwaysDebugWindowEditorWindow (menu:Tools > Pathways > Debug Window).- Built-in defensive reset for Unity Fast Play Mode (Domain Reload disabled).
- Documentation screenshot and refreshed
README.mdfor v2.0.
Removed
PathwaysGlobalConfigs.csandPathwaysManagerExtensions.cs.PathwaysManagerEditor.cs(custom inspector).PathwaysManager.csandPathway.cs.
Breaking
- All
PathwaysManager/PathwayAPIs must migrate toPathways/SaveProfile. - Namespace changed from
PathwaystoTirt.Pathways— update allusingdirectives. - Scene
PathwaysManagerGameObjects are no longer used and can be removed. - Extension methods on
PathwaysManager(GetAllSaveFiles,GetManualSaveFiles, etc.) are replaced byPathways.GetSaves(SaveType?)andPathways.GetLatest(SaveType?). GetOrCreateRecentSavePath()removed — useGetLatest()to load orGetPath(SaveType.Manual)to create a new save path.
Migration Notes
If upgrading from 1.x:
-
Add
using Tirt.Pathways;and remove references to the oldPathwaysnamespace. -
Remove any
PathwaysManagerGameObject from your scenes — it is no longer required. -
Replace
PathwaysManager.Instancewith staticPathwayscalls:1.x 2.0 PathwaysManager.InstancePathways(static)CurrentPathwayActiveProfileCreateOrLoadPathway(id)LoadProfile(id)SetCurrentPathway(id)SetActiveProfile(id)SelectRecentPathway()SelectRecentProfile()GetAllPathwayIds()GetAllProfileIds()DeleteCurrentPathway()DeleteProfile(activeProfile.ProfileId)pathway.GetSavePath(name)Pathways.GetPath(SaveType.Manual, name)GetAutoSavePath()Pathways.GetPath(SaveType.AutoSave)GetOrCreateRecentSavePath()Pathways.GetLatest()orPathways.GetPath(SaveType.Manual)GetManualSavePath(name)Pathways.GetPath(SaveType.Manual, name)manager.GetAllSaveFiles()Pathways.GetSaves()manager.GetManualSaveFiles()Pathways.GetSaves(SaveType.Manual)manager.GetAutoSaveFiles()Pathways.GetSaves(SaveType.AutoSave)manager.GetRecentSaveFile()Pathways.GetLatest()ToggleAutoSave(true, slots, interval)Pathways.EnableAutoSave(interval, slots)ToggleAutoSave(false)Pathways.DisableAutoSave()SetTimescale(unscaled)Pathways.UseUnscaledTime = unscaledPathwaysGlobalConfigs.SaveExtensionPathways.SaveExtensionOnCurrentPathwayChangedOnActiveProfileChanged -
For quicksave (new in 2.0): use
Pathways.GetPath(SaveType.QuickSave)— there was no dedicated quicksave slot in 1.x. -
Existing save files on disk remain compatible; only your C# call sites need updating.
-
Use Tools → Pathways → Debug Window instead of selecting a
PathwaysManagerin the Inspector.
What's Changed
- Release v2.0.0: static API, SaveProfile, SaveType, debug window by @Tirtstan in #10
- Expand 2.0.0 changelog with highlights and migration guide by @Tirtstan in #11
Full Changelog: v1.1.0...v2.0.0
v1.1.0
[1.1.0] - 2025-10-27
Added
PathwaysManager.GetOrCreateRecentSavePath()method to retrieve or create a recent save path.
Changed
PathwaysManagernow auto-creates itself in the scene if not found when accessing the static instance.
What's Changed
Full Changelog: v1.0.1...v1.1.0
v1.0.1
v1.0.0
[1.0.0] - 2025-07-18
Changed
- Moved
AutoSaveSlotsfrom individualPathwaystoPathwaysGlobalConfigs(still settable fromPathwaysManager). PathwaysManagerwill automatically refresh expected variables when deletion methods (DeleteCurrentPathway(),DeleteFile(string)) are called.- Improved
PathwaysManagerEditorinspector UI. - Updated sample scene to display usage instructions.
- Updated documentation and samples to reflect new API and recommended usage.
What's Changed
- readme & helper methods by @Tirtstan in #1
- readme by @Tirtstan in #3
- readme by @Tirtstan in #4
- Changelog by @Tirtstan in #5
- release by @Tirtstan in #6
- readme by @Tirtstan in #7
New Contributors
Full Changelog: https://github.com/Tirtstan/Pathways/commits/v1.0.0