Aetheria/Assets/Scripts
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens 95e164adce Land RunSave and the one-cache run and player lifecycle (Cut 10)
Owner: ActionGameManager composes the process's one cache. Its CultCache
getter attaches the catalog, GameData/run.cc and GameData/player.cc on
first access, in either scene, and nothing reopens it.

- RunSave (SavedGame.cs) replaces the SavedGame constructor:
  - Capture builds the live run as plain documents and writes nothing. Zone
    contents are `zone.Contents?.PackZone() ?? zone.PackedContents`, so a
    zone generated earlier but not loaded this session keeps its contents
    and its orbit and body records instead of being erased by the next save.
  - Commit is the only writer of SavedGame and SavedZone: one Commit with
    zone i at `savedzone-{i}`, SavedGame.Zones set to those refs, and every
    stored SavedZone outside that set removed. Orbits and bodies staged by
    zone generation land in the same single-file write.
  - Clear removes every run record in one Commit.
- Run begins: New Game's first statement is RunSave.Clear. Run saves:
  ActionGameManager.SaveRun at wormhole arrival and quit. Run ends: Die
  clears the run, then saves settings.
- Run exists only as the run store's SavedGame global: MainMenu enables
  Continue from it (and logs when the run store holds records but no
  SavedGame), and StartGame reads it once to pick the new-run or resume
  branch.
- PlayerSettings: the getter returns the player store's global and, on
  first launch, commits GetDefaultPlayerSettings; it is the only creator.
  SavePlayerSettings commits the instance.
- InputDisplayLayout reads its InputLayout from the catalog by the layout
  asset's name and throws when the catalog has none.

Tests: new RunSaveTests (5): RepeatedSavesKeepRecordCountConstant,
SaveRemovesZonesNoLongerInTheRun, SaveWritesOnlyTheRunStore,
ResumeThenSaveKeepsUnloadedZoneContents, ClearRemovesEveryRunRecord. Each
fails with its rule mutated out.

Builds: headless, 11 tests pass, Unity batchmode compile reports no error CS.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 22:00:27 +02:00
..
CultCache Pin AetheriaStores routing with tests; make PlayerSettings readable 2026-09-14 19:12:54 +02:00
Editor Replace the Database Tools with the Studio and cut Unity over 2026-09-14 19:15:20 +02:00
Gameplay Land RunSave and the one-cache run and player lifecycle (Cut 10) 2026-09-14 22:00:27 +02:00
ServerShared Land RunSave and the one-cache run and player lifecycle (Cut 10) 2026-09-14 22:00:27 +02:00
Tests Swap Unity.Mathematics usings for CultMath 2026-09-14 17:39:12 +02:00
UI Land RunSave and the one-cache run and player lifecycle (Cut 10) 2026-09-14 22:00:27 +02:00
Zone Display Replace the Database Tools with the Studio and cut Unity over 2026-09-14 19:15:20 +02:00
AetheriaInput.cs Upgrade to Unity 6000.3.24f1 2026-09-11 22:04:28 +02:00
AetheriaInput.cs.meta Minimap + Input System 2020-12-02 16:42:09 +00:00
CultCache.meta Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
Editor.meta Old Aetheria Code 2020-03-09 01:28:55 +00:00
EventLog.cs Trade Menu Spreadsheet 2021-01-14 03:20:27 +00:00
EventLog.cs.meta Trade Menu Spreadsheet 2021-01-14 03:20:27 +00:00
FilterTest.cs Hit Detection 2021-01-08 12:44:10 +00:00
FilterTest.cs.meta Hit Detection 2021-01-08 12:44:10 +00:00
Gameplay.meta Weapon Scripting Overhaul 2021-01-25 05:53:36 +00:00
Prototype.cs Hit Detection 2021-01-08 12:44:10 +00:00
Prototype.cs.meta Copy Aetheria Code 2020-02-27 18:51:07 +00:00
PrototypeParticleReturn.cs Trade Menu Spreadsheet 2021-01-14 03:20:27 +00:00
PrototypeParticleReturn.cs.meta Trade Menu Spreadsheet 2021-01-14 03:20:27 +00:00
Rotate.cs Hit Detection 2021-01-08 12:44:10 +00:00
Rotate.cs.meta Hit Detection 2021-01-08 12:44:10 +00:00
ServerShared.meta Initial Client/Server Communication 2020-02-26 17:48:40 +00:00
Tests.meta Sector & Loadout Generation Fixes 2021-03-18 22:48:33 +00:00
UI.meta Generating and Displaying Zones 2020-03-29 04:19:24 +01:00
UnityExtensions.cs Swap Unity.Mathematics usings for CultMath 2026-09-14 17:39:12 +02:00
UnityExtensions.cs.meta Database Support 2020-03-22 19:05:26 +00:00
UnityHelpers.cs Hit Detection 2021-01-08 12:44:10 +00:00
UnityHelpers.cs.meta Hit Detection 2021-01-08 12:44:10 +00:00
Zone Display.meta Trailer Stuff & More 2021-03-27 10:03:24 +00:00