From 930447643586876a8a0e660fb1d57b65ebf27f48 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Sun, 28 Jun 2026 09:58:01 +0100 Subject: [PATCH] Use reactive gameplay boot documents --- Aetheria.State.Verify/Program.cs | 16 ++++++++++++---- .../Gameplay/AetheriaUnityGameplayBootShell.cs | 6 ++++-- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/Aetheria.State.Verify/Program.cs b/Aetheria.State.Verify/Program.cs index 122a29f48..90d0854f8 100644 --- a/Aetheria.State.Verify/Program.cs +++ b/Aetheria.State.Verify/Program.cs @@ -8189,7 +8189,10 @@ static void RequireClientTargetBootAuthority(string root) "stateBoot.StateFileExists", "AetheriaUnityRuntimeClientProvider.ResolveClient(stateBoot.StateFilePath, stateBoot.RuntimeId)", ".Aetheria()", - ".LatestCatalog()", + ".ReactiveCatalog()", + "runtimeCatalogDocument.Current", + ".ReactiveSectorMap()", + "sectorMapDocument.Current", "new ItemManager(", "new AetheriaUnityLoadoutItemProjector(itemManager, runtimeCatalog)", "ZoneRenderer.SetDroppedPickupItemProjector(loadoutItemProjector.CreateLoadoutItem)", @@ -14542,7 +14545,10 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) "AetheriaRuntimeStateBoot.Inspect(AetheriaUnityRuntimePaths.GameDataDirectory)", "AetheriaUnityRuntimeClientProvider.ResolveClient(stateBoot.StateFilePath, stateBoot.RuntimeId)", ".Aetheria()", - ".LatestCatalog()", + ".ReactiveCatalog()", + "runtimeCatalogDocument.Current", + ".ReactiveSectorMap()", + "sectorMapDocument.Current", "new ItemManager(", "new AetheriaUnityLoadoutItemProjector(itemManager, runtimeCatalog)", "ZoneRenderer.SetDroppedPickupItemProjector(loadoutItemProjector.CreateLoadoutItem)", @@ -14896,8 +14902,10 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) var requiredGameplayBootSymbols = new[] { - ".LatestCatalog()", - ".LatestSectorMap()", + ".ReactiveCatalog()", + "runtimeCatalogDocument.Current", + ".ReactiveSectorMap()", + "sectorMapDocument.Current", "AetheriaUnityObservedRunProjection.Project(", "sectorMap.IsTutorial", "sectorMap.GenerationSeed", diff --git a/Assets/Scripts/Gameplay/AetheriaUnityGameplayBootShell.cs b/Assets/Scripts/Gameplay/AetheriaUnityGameplayBootShell.cs index 89c8ad435..a462cda2b 100644 --- a/Assets/Scripts/Gameplay/AetheriaUnityGameplayBootShell.cs +++ b/Assets/Scripts/Gameplay/AetheriaUnityGameplayBootShell.cs @@ -36,10 +36,12 @@ public sealed class AetheriaUnityGameplayBootShell var aetheria = AetheriaUnityRuntimeClientProvider.ResolveClient(stateBoot.StateFilePath, stateBoot.RuntimeId) .Aetheria(); - var runtimeCatalog = aetheria.LatestCatalog(); + using var runtimeCatalogDocument = aetheria.ReactiveCatalog(); + var runtimeCatalog = runtimeCatalogDocument.Current; if (runtimeCatalog == null) throw new InvalidOperationException("Aetheria typed runtime catalog is required before gameplay boot."); - var sectorMap = aetheria.LatestSectorMap(); + using var sectorMapDocument = aetheria.ReactiveSectorMap(); + var sectorMap = sectorMapDocument.Current; if (sectorMap == null) throw new InvalidOperationException("Aetheria typed sector map is required before gameplay boot.");