docs: add WorldBuilder-ACME-Edition to CLAUDE.md reference repos

ACME Edition contains ClientReference.cs — a faithful C# port of the
decompiled retail AC client (CLandBlockStruct.cpp) with exact offsets.
This is ground truth for terrain algorithms and already solved the
triangle-boundary Z bug that resisted 5 other fix attempts.

Key resources: ClientReference.cs (oracle), TerrainConformanceTests.cs
(4M+ cell sweep), StaticObjectManager.cs (GfxObj+Setup+CreaturePalette),
EnvCellManager.cs (dungeon portal visibility).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Erik 2026-04-12 22:35:47 +02:00
parent 131594d91b
commit 624f55d60d

View file

@ -159,6 +159,24 @@ these, ideally all four:
atlases, shader patterns. Most useful for "how do I do this GL thing atlases, shader patterns. Most useful for "how do I do this GL thing
with Silk.NET on net10 idiomatically?" Less useful for protocol or with Silk.NET on net10 idiomatically?" Less useful for protocol or
character appearance (dat editor, not game client). character appearance (dat editor, not game client).
- **`references/WorldBuilder-ACME-Edition/`** — **Fork of WorldBuilder
with decompiled AC client source code.** THE most authoritative
reference for any terrain/rendering algorithm. Key files:
- `WorldBuilder.Tests/ClientReference.cs` — faithful C# port of
decompiled `CLandBlockStruct.cpp` with exact offsets. Ground truth
for split direction, palCode, vertex height, vertex position.
**Check this BEFORE implementing any terrain algorithm.**
- `WorldBuilder.Tests/TerrainConformanceTests.cs` — exhaustive
sweeps (4M+ cells) proving ACME matches the retail client.
- `StaticObjectManager.cs` — complete GfxObj+Setup rendering with
CreaturePalette assembly (the ObjDesc pipeline).
- `EnvCellManager.cs` — dungeon cell rendering with portal
visibility traversal and collision mesh caching.
- `TerrainGeometryGenerator.cs``GetHeight()` and `GetNormal()`
that match the mesh index buffer exactly.
Already proved its value: solved the triangle-boundary Z bug that
resisted 5 other fix attempts. Use as the oracle for ALL dat
interpretation algorithms.
- **`references/Chorizite.ACProtocol/`** — clean-room C# protocol - **`references/Chorizite.ACProtocol/`** — clean-room C# protocol
library generated from a protocol XML description. Useful sanity check library generated from a protocol XML description. Useful sanity check
on field order, packed-dword conventions, type-prefix handling. The on field order, packed-dword conventions, type-prefix handling. The