Meta Vens
d503f076e1
Capture presets through their own cache; keep the catalog read-only
...
Opening the process cache's catalog writable in the editor was the wrong cut.
It made catalog read-only only by convention, so a stray catalog write in play
succeeded and a later flush could land play-mutated instances in Aetheria.cc.
- The process cache opens the catalog read-only in every build again, so the
missing-global check runs for it as it did before db83cd29 . The writable
empty-seed exemption from ab4ced0f stays for AetherDb and fixtures.
- Loadouts.Commit(catalogPath, loadout, replace) is the only preset writer. It
opens its own short-lived cache over the catalog, writable, commits the one
preset conditionally on its key and disposes it. No other cache or instance
is touched. The running game sees the preset only after the catalog reloads.
CultLib at a0813c6 allows this: a read-only single-file store takes no lock
and holds no handle, and the writer's commit takes the exclusive sidecar
<path>.lock and replaces the file atomically.
- Capture refuses, writing nothing, when Aetheria.cc is missing (it never
creates the catalog), when a preset of that name exists under another key
(CultCache does not reject duplicate names on write), or when the key holds a
preset and replace is not given.
- The console refuses a command with any character outside letters, digits,
spaces and hyphens instead of stripping it, so "Mk.II" can no longer become
"MkII". capturepreset refuses a second argument other than replace, so an
unquoted capturepreset My Ship refuses instead of saving "My".
- The capture log line says the session sees the preset after a reload, and
that a Studio session opened earlier overwrites captured presets on save.
- Tests: capture while the process cache holds the catalog read-only leaves it
unchanged; a missing catalog refuses and creates nothing; a same name under a
Studio-minted key refuses, with or without replace; a game-shaped read-only
open missing a global throws. The existing preset tests now commit through
the catalog path.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 23:32:52 +02:00
..
Agents
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Behaviors
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Narrative
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
NIH
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Serialization
Delete the in-tree cache, JsonKnownTypes and vendored MessagePack
2026-09-14 18:42:09 +02:00
Aetheria.Shared.Unity.asmdef
Replace the Database Tools with the Studio and cut Unity over
2026-09-14 19:15:20 +02:00
Aetheria.Shared.Unity.asmdef.meta
Slime Stuff & DB Prep
2021-03-30 01:17:58 +01:00
AetheriaStores.cs
Keep a missing catalog global loud for writable opens
2026-09-14 23:13:22 +02:00
AetheriaStores.cs.meta
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Agents.meta
Local AI Testing & Interactive Tech Tab
2020-04-23 03:31:17 +01:00
AssemblyInfo.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
AssemblyInfo.cs.meta
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Attributes.cs
Delete the in-tree cache, JsonKnownTypes and vendored MessagePack
2026-09-14 18:42:09 +02:00
Attributes.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
Behaviors.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
BezierCurve.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
BezierCurve.cs.meta
Database Improvements
2021-04-07 01:27:35 +01:00
ColorMath.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
ColorMath.cs.meta
Improved Level Generator
2020-12-01 20:38:28 +00:00
Corporations.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Corporations.cs.meta
Infrastructure and Production
2020-06-02 07:01:03 +01:00
Entity.cs
Remove an unequipped weapon from its weapon groups (Cut 10 fix)
2026-09-14 22:30:40 +02:00
Entity.cs.meta
Behavior Refactoring
2020-04-09 10:33:16 +01:00
EntitySerializer.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
EntitySerializer.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
EntitySettings.cs
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
EntitySettings.cs.meta
Save/Load and Main Menu Submenus
2021-03-14 03:56:49 +00:00
EnumDictionary.cs
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
EnumDictionary.cs.meta
Database Improvements
2021-04-07 01:27:35 +01:00
Enums.cs
Unified Volumetric Flow
2021-06-18 12:32:03 +01:00
Enums.cs.meta
Database Support
2020-03-22 19:05:26 +00:00
Environment.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Environment.cs.meta
Unified Volumetric Flow
2021-06-18 12:32:03 +01:00
ExponentialCurve.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
ExponentialCurve.cs.meta
Initial ARPG Port
2020-11-27 22:47:33 +00:00
Extensions.cs
Seed zones from a stable name hash instead of string.GetHashCode (Cut 10)
2026-09-14 22:09:37 +02:00
Extensions.cs.meta
Database Support
2020-03-22 19:05:26 +00:00
FactionProduct.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
FactionProduct.cs.meta
Author manufacturer variation as faction products
2026-09-12 01:12:12 +02:00
Galaxy.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
Galaxy.cs.meta
Hostility Fix + Story Work
2021-05-14 03:03:28 +01:00
GlobalData.cs
Delete the in-tree cache, JsonKnownTypes and vendored MessagePack
2026-09-14 18:42:09 +02:00
GlobalData.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
InputLayout.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
InputLayout.cs.meta
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ItemData.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ItemData.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
ItemInstance.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ItemInstance.cs.meta
Database Support
2020-03-22 19:05:26 +00:00
ItemManager.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ItemManager.cs.meta
New Inventory System + Overhaul
2020-12-10 23:20:38 +00:00
Loadout.cs
Capture presets through their own cache; keep the catalog read-only
2026-09-14 23:32:52 +02:00
Loadout.cs.meta
Make loadouts player-store design documents built all-or-nothing (Cut 10)
2026-09-14 22:06:06 +02:00
LoadoutGenerator.cs
Make loadouts authored catalog presets with an editor capture command
2026-09-14 23:09:43 +02:00
LoadoutGenerator.cs.meta
Enemy Loadout Generation
2021-03-18 00:36:34 +00:00
MarkovNameGenerator.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
MarkovNameGenerator.cs.meta
Sector Generation
2021-03-10 09:18:07 +00:00
Narrative.meta
UI Improvements
2021-04-27 16:44:44 +01:00
NIH.meta
Database Support
2020-03-22 19:05:26 +00:00
Noise1D.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Noise1D.cs.meta
Hellfire
2021-01-10 03:59:47 +00:00
OrbitalEntity.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
OrbitalEntity.cs.meta
Stat Effects and Tech Tree Improvements
2020-04-16 03:08:18 +01:00
PlayerSettings.cs
Delete the old run, settings, layout and loadout authorities (Cut 10)
2026-09-14 21:51:10 +02:00
PlayerSettings.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
Rect.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Rect.cs.meta
TECH TREES WHOO
2020-04-11 19:18:02 +01:00
SampleElimination.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
SampleElimination.cs.meta
Sector Generation
2021-03-10 09:18:07 +00:00
SavedGame.cs
Land RunSave and the one-cache run and player lifecycle (Cut 10)
2026-09-14 22:00:27 +02:00
SavedGame.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
Serialization.meta
Delete the in-tree cache, JsonKnownTypes and vendored MessagePack
2026-09-14 18:42:09 +02:00
Settings.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Settings.cs.meta
Asteroids & Refactoring
2020-12-01 00:16:11 +00:00
Ship.cs
Delete AetheriaMath in favour of CultMath
2026-09-14 18:02:41 +02:00
Ship.cs.meta
Database Support
2020-03-22 19:05:26 +00:00
Wormhole.cs
Swap Unity.Mathematics usings for CultMath
2026-09-14 17:39:12 +02:00
Wormhole.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
WwiseMetadata.cs
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
WwiseMetadata.cs.meta
Wwise Audio Integration
2021-04-30 06:39:57 +01:00
WwiseSoundBinding.cs
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
WwiseSoundBinding.cs.meta
Wwise Audio Integration
2021-04-30 06:39:57 +01:00
Zone.cs
Seed zones from a stable name hash instead of string.GetHashCode (Cut 10)
2026-09-14 22:09:37 +02:00
Zone.cs.meta
Initial ARPG Port
2020-11-27 22:47:33 +00:00
ZoneData.cs
Move the ServerShared data model onto CultLib's CultCache
2026-09-14 19:00:42 +02:00
ZoneData.cs.meta
Restore the stable legacy Unity project
2026-08-10 14:57:50 +01:00
ZoneGenerator.cs
Seed zones from a stable name hash instead of string.GetHashCode (Cut 10)
2026-09-14 22:09:37 +02:00
ZoneGenerator.cs.meta
Database Support
2020-03-22 19:05:26 +00:00