docs: #466 owner-confirmed ours; ACViewer step dropped

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-09-03 21:11:17 +02:00
parent 0bb9d1824a
commit 20d844b06d

View file

@ -47,7 +47,7 @@ remain closed. See
**Symptom (owner screenshot in chat):** the Eater's head and back are a flat dark maroon with faint stretched stripes where retail shows the creature's detailed hide; the mouth, teeth and the red legs are textured correctly. Half the body looks like a texture applied with the wrong UV scale or a fallback surface; the other half is right — the pattern of "some parts right, some parts wrong" on one Setup points at per-part overrides from the weenie's ObjDesc (a `TextureMapChange` on specific part indices, or a subpalette whose range does not cover those parts) rather than a global decode fault.
**First checks, in order (no guessing):** (1) render the same Setup/ObjDesc in ACViewer (the "is the bug ours?" oracle — if ACViewer shows the same, it is a shared dat-interpretation bug; if not, ours); (2) dump the `0xF745` CreateObject ObjDesc for guid of the created Eater (palette id, subpalettes with their offset/length, texture changes with part index + old/new texture ids) and compare with what `EntitySpawnAdapter`/`WbMeshAdapter` applied per part; (3) check whether the wrong parts share one texture id whose format decodes through the INDEX16/P8 subpalette path (`TextureHelpers` / ACViewer's `IndexToColor`), and whether the "stretched stripes" are a 1-D palette texture being sampled as 2-D (a `TextureMapChange` pointing at a palette/texture of the wrong kind). Reference hierarchy: WorldBuilder/ACME `StaticObjectManager` (CreaturePalette, GfxObjRemapping) and ACViewer for character appearance, per CLAUDE.md.
**Owner-confirmed OURS (2026-09-03):** the same creature renders correctly outside acdream, so this is acdream's ObjDesc/texture path, not a shared dat-interpretation fault — skip the ACViewer step. **First checks, in order (no guessing):** (1) dump the `0xF745` CreateObject ObjDesc for the created Eater's guid (palette id, subpalettes with offset/length, texture changes with part index + old/new texture ids) and compare with what `EntitySpawnAdapter`/`WbMeshAdapter` applied per part; (2) check whether the wrong parts share one texture id whose format decodes through the INDEX16/P8 subpalette path (`TextureHelpers`, ACViewer's `IndexToColor` as the canonical overlay algorithm), and whether the "stretched stripes" are a 1-D palette texture sampled as 2-D (a `TextureMapChange` pointing at a palette/texture of the wrong kind). Reference hierarchy for character appearance: ACME `StaticObjectManager` (CreaturePalette, GfxObjRemapping) and ACViewer's texture cache, per CLAUDE.md.
## #465 — [post-OVERHAUL] Panel fill: paint unreachable interior portal polygons as opaque panels (improve on retail's cathedral seam leak)