Commit graph Aetheria/docs/three-gates-scope.md
Author SHA1 Message Date
Meta Vens
6a1bb47758 Target and map: the first release is the demo
Rewrites the release target for the demo cut (one gate, one region, one boss, a fixed cast of Pirates, Zhestokost, Lucent and AU, called a demo). Adds the map's Demo scope section with body facts D1-D6 and the scope table, and sweeps four stale docs the design review listed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 19:11:46 +02:00
Meta Vens
e3c9eca2fd Record the pre-impact commit window in fire control's scope
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 06:05:29 +02:00
Meta Vens
a3c8d55d83 Record kinematic and rail bodies sharing one detection interface
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 14:50:20 +02:00
Meta Vens
062d3fd1b2 Record that stance overrides clear on zone exit for now
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 13:56:25 +02:00
Meta Vens
9f80214492 Note drones as the driver for the parked electronic warfare work
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 13:27:48 +02:00
Meta Vens
f3917138fd Park the electronic warfare sensor ideas
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 13:25:47 +02:00
Meta Vens
67a953ee2d Record that stance signals are events gated by detection
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 13:22:10 +02:00
Meta Vens
0369e46f2f Record the stance rulings: toggle, weapons safe, no mirroring, grudges
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 13:18:32 +02:00
Meta Vens
7941aec861 Record role authoring as required Terminus content
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 12:35:47 +02:00
Meta Vens
562cdcf2b8 Record the subsystem-reveal targeting ruling
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 04:50:14 +02:00
Meta Vens
df4056123a Record the fire-control ruling: hits are rolled, not detected
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 04:49:13 +02:00
Meta Vens
130df11240 Put the provenance schema in Terminus scope and generation after it
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 02:43:10 +02:00
Meta Vens
5c5c3d5e19 Delete the old run, settings, layout and loadout authorities (Cut 10)
The deletion line lands before RunSave, as the spec orders. Deleted, not
demoted:
- PlayerSettings.SavedRun (Key 1 stays unclaimed) and the SavedGame
  constructor that upserted a fresh SavedZone per zone on every save.
- ActionGameManager: the PlayerSettings.msgpack getter, file path and
  writer; the .loadout format (_loadoutPath, Loadouts, SaveLoadout and its
  default-options serializer, the commented loader); OnApplicationQuit and
  SaveState; SaveZone, which had no caller.
- MainMenu's SavedRun Continue branch and both `SavedRun = null` writes.
- InventoryPanel's Save Loadout and Restore Loadout bodies.
- InputDisplayLayout's KeyboardLayouts file reader, ParseJson,
  AssociateInputKeys, SaveLayout and the usings they alone needed.
- AetherDb's Cut 9 importer (Import.cs, legacy-census, import).
- The three-gates note on loading writes; Cut 3 made loading non-writing.
- .gitignore ignores GameData/run.cc and GameData/player.cc instead of
  PlayerSettings.msgpack.

DOES NOT BUILD in Unity: ActionGameManager, MainMenu and InputDisplayLayout
still reference the deleted members until the next commit wires RunSave,
the settings getter and the catalog layout read. Headless builds.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 21:51:10 +02:00
Meta Vens
285b57713f Clear dangling boss hull links, and stop the tool writing on read
Eight factions pointed at one boss hull GUID that no longer resolves,
shared wreckage from the database loss. PlaceFactionsMain gives a boss zone
to every faction carrying a BossHull, so each dangling link claimed a
chokepoint that could never spawn a boss.

AetherDb.Open no longer registers the name file store. CultCache subscribes
Add to a store EntryAdded, MultiFileBackingStore.PullAll re-emits what it
loads, and Add pushes to that type store, whose Push writes a file: opening
the cache rewrote all twelve name files, 4.4 MB, on every command. They were
byte identical, and it only surfaced as an error because Unity had one of
them memory mapped. Name files now load only on request, and the scope doc
records the underlying smell.

Adds commands: factions, clear-boss-hulls, save, loadout (runs the real
LoadoutGenerator against every hull), hardpoint-fit.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-12 02:05:33 +02:00
Meta Vens
8d93b937bc Author manufacturer variation as faction products
A design lists role names; a faction product is a manufacturer's branded
build of one, carrying its name, its flavor text, and a pseudo-gaussian
quality distribution per role whose mean is the technology put in and
whose deviation is their quality control. A PerformanceStat may name the
role whose quality it reads, unset reading the item own workmanship as
before, so old saves behave unchanged. Generation selects products rather
than designs, which makes what a faction makes the availability rule.

This is Njordr shape at one dimension: role names, per-role derivation
and per-product distributions carry over when quality widens into
dimensions. No parts exist yet; the product authors the role quality.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-12 01:12:12 +02:00
Meta Vens
95932da895 Record Njordr as the owner of item property derivation
Aetheria authors roles, per-role stat derivation, continuous part quality
and per-faction role competence: the same shape one dimension wide, so
migration widens quality into dimensions rather than restructuring. No
second owner of item property derivation grows here.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-12 00:22:08 +02:00
Meta Vens
02058a3cdf Build ServerShared without Unity and add AetherDb scripts
Aetheria.Shared.csproj compiles ServerShared with MessagePack, UniRx
core, Ink and Unity.Mathematics from source against .NET Standard 2.1
(Unity's API level) with no Unity defines; a clean build checks that the
simulation stays engine-independent. tools/AetherDb opens AetherDB.msgpack
through the game's own CultCache for file-based C# scripts; station-fit
checks every station hull can take a docking bay.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 23:23:20 +02:00
Meta Vens
086b966c30 Record Unity-independent simulation as an invariant
Also itemize the coast-path preview as a navigation computer behavior.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 21:04:59 +02:00
Meta Vens
20ebb39ad2 Give fire control hit authority and plan navigation
Replace the aim-error and steering items with a ServerShared fire control
system that owns hit resolution and an MPC navigation planner.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 21:00:24 +02:00
Meta Vens
434c2611ff Adopt Three Gates shipping scope
Record the scoped-down rogue-lite plan on the legacy Unity game and mark
the CultMesh migration map as parked.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 20:40:36 +02:00