Commit graph Aetheria/Packages
Author SHA1 Message Date
soul
d9bc465355 Packages: lock regenerated by Unity at cultlib-unity-v2.0.1 (b8fc5eb0)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 01:26:14 +02:00
soul
e045af344f Pins: cultlib-unity-v2.0.1 at b8fc5eb0 (1.0.x saves with ref lists open as compatible drift)
packages-lock.json follows from the Unity resolve. caching-unity stays at v2.0.0; cultmath at 7a8933b0.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 23:35:12 +02:00
soul
e518a0b3d1 packages-lock: regenerated by Unity at the 2.0.0 / 0.5.0 tags
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 23:35:08 +02:00
soul
1dce24a226 Pin CultLib 2.0.0 (42dce361) and CultMath 0.5.0 (7a8933b0): manifest tags and build revisions
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 23:35:03 +02:00
Meta Vens
b4d5cee48e CultMath pin to 0.4.1 (BoundedLeastSquares stopping fix and Validate)
CultMathRevision, the manifest tag and the lock hash move together to
cultmath-unity-v0.4.1 (9c1b06cd). CultLibRevision is unchanged. Builds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 08:44:02 +02:00
Meta Vens
9f6d8659af Pin CultMath 0.4.0 (BoundedLeastSquares KKT tolerance; snoise tie rule is Breaking)
CultMathRevision 252e226c (cultmath-unity-v0.4.0), manifest tag and lock entry.
Generated content that samples noise may move; fixtures follow in later commits.
Builds as a pin; the suite may fail on re-rolled content until then.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 00:15:18 +02:00
Meta Vens
97dd38dfb8 Pin CultMath 0.3.0 and make the pin guard fire on Linux
Directory.Build.props, Packages/manifest.json and the lock move to
cultmath-unity-v0.3.0 (614fd445) together. VerifyCultLibRevision matched the
CultMath ProjectReference by a backslash-spelled identity and was skipped on
Linux; it now matches by project file name. Does not pass tests: generated
content re-rolls with the new noise kernel, fixtures follow in later commits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 14:02:36 +02:00
Meta Vens
24c2964046 Preview typed mod ship visuals and captured LineArt in Unity 2026-09-26 19:10:44 +02:00
Meta Vens
2a68b4c077 Repin CultMath to 0.2.4: erf and erfinv reach Unity
Lock hash is the tagged merge 6d5e2096; batchmode resolve and compile clean.
Nothing calls erf yet; Cut 12.2 will.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-24 19:14:00 +02:00
Meta Vens
67cbf34b25 Switch engine asset references from Resources paths to Addressables GUIDs
Cut 2 of docs/addressables-cut.md. The asset move (git mv
Resources/{Prefabs,Schematics,Sprites/Icons} -> Content/...) and the
UnityHelpers.cs deletion already landed in 1fdf8151, picked up by a
concurrent session sharing this working tree; this commit is the rest
of Cut 2 landing on top of that shared state, atomically:

- Bump CultLib to cultlib-unity-v1.0.60 / caching-unity-v1.4.0 (both
  45c2f40) in Packages/manifest.json, packages-lock.json and
  Directory.Build.props, together with the 8 ServerShared
  [CultInspectorAssetPath] usages becoming [CultInspectorAssetGuid] -
  the .NET and Unity sides move together or nothing compiles.
- Assets/Scripts/EngineAssets.cs replaces UnityHelpers: loads an
  Addressables key (bare GUID or guid[subAsset]) synchronously,
  loading the GameObject and taking the component for the four sites
  that load a component. ActionBarSlot, EntityInstance, ShipInstance
  and ZoneRenderer call it instead of Resources.Load/UnityHelpers; the
  inline "Assets/Resources/" prefix strips are gone with them.
  CultCacheDrawers' schematic preview goes through
  AssetDatabase.GUIDToAssetPath first.
- Assets/Scripts/Editor/EngineAssetCheck.cs validates every stored
  [CultInspectorAssetGuid] value: 32 lowercase hex, resolves to a file,
  is addressable, and satisfies its member's consumer-type contract
  (Texture2D for icons/logos/schematics, a GameObject with the right
  component for prefabs) - table-driven, so an attributed member with
  no row fails loudly instead of being skipped.
- GameData/Aetheria.cc: the scratch migration (Aetheria.Shared + the
  pinned CultLib revision, a throwaway console app, never landed)
  walked all 138 attributed field slots across 180 documents,
  rewriting the 30 non-empty Resources paths to their .meta GUIDs -
  108 stayed empty, 0 unresolved, matching the map's census exactly.

Verification: dotnet test tests/Aetheria.Shared.Tests 61/61 green
against CultLib 45c2f40; Unity 6000.3.24f1 batchmode compiles clean;
EngineAssetCheck.Run passes all 30 stored references; the map's
negative greps are clean; tests/mutation_tests.py's 5 mutations (wrong
type, non-addressable, random guid, an old path, and an untabled
attributed member) are all caught and named, the control case and the
post-revert recompile stay clean, and the catalog/source are restored
byte-identical afterward.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 05:04:50 +02:00
Meta Vens
491811bd3d Add Addressables as a direct dependency and settings, Content group entry
Cut 1 of docs/addressables-cut.md: com.unity.addressables becomes a
direct manifest dependency (was transitive via com.unity.localization),
Addressables settings are created with BuildWithPlayer forced instead of
left as a per-user preference, and Assets/Content is added to the
Default Local Group as the one folder entry Cut 2 will populate (Q1
ruling A). No code loads through Addressables yet and the folder is
empty, so this lands harmlessly on its own.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 04:31:28 +02:00
Meta Vens
4a5454695f Pin CultLib 1.0.59 and Studio 1.3.1 (Cut 10 step 1)
CultLibRevision moves to a0813c6, the commit tagged cultlib-unity-v1.0.59
and caching-unity-v1.3.1. The manifest and lock follow. 1.0.59 writes an
unset CultRecordRef as "" instead of a nil map key and still reads nil, so
Aetheria.cc opens unchanged.

Builds: headless Aetheria.Shared and AetherDb, 6 tests pass, Unity
6000.3.24f1 batchmode compile reports no error CS.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 21:43:12 +02:00
Meta Vens
9bdf6ef23f Replace the Database Tools with the Studio and cut Unity over
Cut 8b. The Unity project compiles with 0 errors in 6000.3.24f1 batchmode.

Packages: manifest.json pins org.gamecult.cultlib at cultlib-unity-v1.0.57
and org.gamecult.caching.unity at caching-unity-v1.2.0, next to the 8a
CultMath tag. Aetheria.Shared.Unity references GameCult.CultLib and keeps
noEngineReferences.

The Database Tools (Assets/Scripts/CultCache/Editor) are deleted in this
commit, alongside their five ported drawers in
Assets/Scripts/Editor/CultCacheDrawers.cs, each an
[CultInspectorDrawer] ICultInspectorDrawer:
- InspectableType: popup of the attribute type's [Union] member names,
  writing the string.
- InspectableColor: float3 and float4 through ColorField.
- InspectableAnimationCurve: float4[] and BezierCurve through CurveField.
- InspectableTemperature: Kelvin, Celsius and Fahrenheit fields over one
  value.
- InspectableSchematicShape: size and cell toggles. The old drawer also
  drew the item's schematic texture and tinted hull hardpoints, which need
  the parent document. The tagged Studio hands a drawer only the value, so
  those wait on the Studio exposing the open record.

Unity call sites:
- ActionGameManager opens the catalog through AetheriaStores; Cut 10 adds
  the run and player stores.
- Refs resolve through ItemManager.GetData or Get(ref); orbit, planet and
  belt maps key by CultRecordKey; identity is compared by reference or key.
- The PlayerSettings.msgpack reader and writer, which Cut 10 deletes, pass
  CultDocumentMessagePackSerialization.OptionsFor, since the embedded run
  reaches CultMath values and refs. Keyboard layouts need no resolver and
  keep MessagePack's defaults until Cut 10.
- The input map uses the nested action to binding shape.
- PropertiesPanel reads CultInspectorRangeAttribute.
- NameTools loses its legacy name-file writer.
- Slime compares serialized settings instead of the deleted SHA1 helper.
- FieldDriver drops InspectorHeader.
- .gitignore covers the test project's build output.

Builds: Aetheria.Shared, AetherDb, Aetheria.Shared.Tests (6/6), Unity
batchmode (0 errors).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 19:15:20 +02:00
Meta Vens
2b38d2dcdd Seed zones from CultMath's PCG hash and pin CultMath 0.2.3
Cut 8a seeded ZoneGenerator's Random from the float bits of CultMath's
hash(float2), the frac(sin) shader hash. On a 100x100 position grid that
gives 1625 distinct values, where Unity.Mathematics' uint hash separated
them. CultMath 0.2.3 adds the PCG integer hashes from Jarzynski and
Olano (JCGT 2020), so the seed now uses pcg3d(Position).x, the IEEE bits
of the float2 position with z held at 0, xored with the zone-name term
as before.

- Packages/manifest.json and packages-lock.json pin
  cultmath-unity-v0.2.3 (CultLib 0f2c1f04).
- Directory.Build.props sets CultLibRevision to the same commit.

This pin also brings in 0.2.2's normalize: a zero vector now gives NaN,
as dxc does and as Unity.Mathematics did before the swap. None of Cut
8a's normalize or LookRotation edits relied on a zero-safe normalize.
They are one-to-one type conversions, and 8a removed no guard. So no
guard is added.

Verified: headless Aetheria.Shared and AetherDb builds with 0 errors.
AetherDb census, factions and hardpoint-fit are byte-identical to the
captures. Unity 6000.3.24f1 batchmode compile gives 0 errors.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 18:23:55 +02:00
Meta Vens
2281793154 Convert engine types through CultMath.UnityBridge
CultMath has no implicit conversions to or from Vector*, Quaternion or
Color, so Assembly-CSharp converts explicitly with ToCultMath/ToUnity at
each engine boundary: FieldDriver, GuidedProjectile(Manager),
EntityInstance, ActionGameManager, HullCollider, GridObject, ShipInstance,
ShieldManager, ItemPickup, FieldTester, PlaceUIElementWorldspace,
MapMenuInput, MapRenderer, SectorRenderer and ZoneRenderer. CultMath math
calls that were handed Unity vectors now take converted values;
Vector3.Scale in FieldDriver becomes a float3 product, and ItemPickup's
Vector3.Dot on float3s becomes dot. packages-lock.json records the
cultmath git package at f0605367 and demotes com.unity.mathematics to a
transitive dependency.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 17:47:33 +02:00
Meta Vens
1bad87fc35 Reference CultMath instead of Unity.Mathematics
Aetheria.Shared.csproj drops the Library\PackageCache math sources and
references CultMath.csproj under the pinned CultLibRoot. The asmdefs drop
Unity.Mathematics; Tests overrides references, so it names CultMath.dll in
precompiledReferences. The manifest drops com.unity.mathematics (Burst and
Collections still resolve it) and adds org.gamecult.cultmath at
cultmath-unity-v0.2.1.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 17:38:54 +02:00
Meta Vens
e640aad65a Upgrade to Unity 6000.3.24f1
Editor-driven upgrade from 6000.1.10f1: patch-level package bumps,
importer re-serialization of legacy .meta files, and the regenerated
Input System wrapper. Verified by playing from Main Menu into ARPG.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 22:04:28 +02:00
Meta Vens
7006a6b0dd Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
Meta Vens
56a156ee87 Complete the Hangar to Terminus runtime path 2026-08-08 09:31:24 +01:00
Meta Vens
152db9e744 Launch Terminus through daemon-owned Hangar 2026-08-08 08:45:14 +01:00
Meta Vens
023a35944c Restore daemon-backed Unity launch 2026-08-07 21:10:44 +01:00
Meta Vens
7c46cd1060 Pin CultMath min-max rectangle release 2026-08-07 20:06:51 +01:00
Meta Vens
e9d1e04897 Establish shared Hangar deployment spine 2026-08-07 15:52:38 +01:00
Meta Vens
04c0b77c94 Add entity-owned dynamic fog fields 2026-07-22 02:09:30 +01:00
Meta Vens
004c05d350 Keep entity fields aligned with orbital poses 2026-07-22 01:53:42 +01:00
Meta Vens
c27e2ada7c Keep root Unity Eve packages coherent 2026-07-21 19:20:58 +01:00
Meta Vens
ab6face8e2 Let daemon gameplay state close the main menu 2026-07-20 05:22:39 +01:00
Meta Vens
68d7e3fd4d Pin Aetheria Unity to CultLib 1.0.43 2026-07-20 03:45:29 +01:00
Meta Vens
23743a25a0 Pin Aetheria Unity to CultLib 1.0.42 2026-07-20 03:09:26 +01:00
Meta Vens
3b829f4924 Pin Aetheria Unity to CultLib 1.0.41 2026-07-20 02:50:43 +01:00
Meta Vens
b4b16867ee Hydrate only Aetheria daemon working state 2026-07-20 01:52:05 +01:00
Meta Vens
d6ac03071d Stream Aetheria realtime SoA over QUIC 2026-07-19 22:15:50 +01:00
Meta Vens
72ce713a19 Partition provider assets for demand loading 2026-07-19 21:51:49 +01:00
Meta Vens
028945aad6 Split Aetheria client transport planes 2026-07-19 19:53:08 +01:00
Meta Vens
0b5284f5af Add daemon-owned dockyard station variant 2026-07-19 15:59:35 +01:00
Meta Vens
a77cf88100 Move daemon SoA frames off snapshot transport 2026-07-19 14:06:25 +01:00
Meta Vens
68b91b2196 Stream bounded reactive gameplay state 2026-07-19 11:17:13 +01:00
Meta Vens
bd89cb4c85 Eliminate repeated behavior graph rebuilds 2026-07-19 10:24:57 +01:00
Meta Vens
289051f71a Profile and reduce daemon simulation hot paths 2026-07-19 10:00:18 +01:00
Meta Vens
8c51676722 Stabilize mapped SoA layout across row changes 2026-07-19 09:47:22 +01:00
Meta Vens
ee3fb2092b Index runtime catalog item lookup 2026-07-19 09:18:25 +01:00
Meta Vens
c0528ec6b0 Collect pickups outside the Ymir contact shell 2026-07-19 08:57:18 +01:00
Meta Vens
63d11c201f Keep reactive surfaces on daemon frame versions 2026-07-19 07:44:36 +01:00
Meta Vens
82ce77209e Split reactive gameplay facts from topology 2026-07-19 07:36:10 +01:00
Meta Vens
83ce86c75e Restore reticle-owned weapon locking 2026-07-19 07:02:10 +01:00
Meta Vens
db94241a8b Pin released hot-state client transport 2026-07-19 06:02:20 +01:00
Meta Vens
8dc133d917 Publish gameplay state through hot entity bodies 2026-07-19 06:01:42 +01:00
Meta Vens
668ca9d832 Pin packaged hot-state transport releases 2026-07-19 03:36:09 +01:00
Meta Vens
1e6deff644 Publish Aetheria hot state on negotiated planes 2026-07-19 03:29:53 +01:00
Meta Vens
a655d99bf5 Expose smooth value flow as a daemon render option 2026-07-19 01:52:55 +01:00