Phase 1 groundwork: gamedata filename fix, non-fatal register, working native resolution
- GameData.Register looks for gamedata/<name>.jsonc (not .games.jsonc) and throws when missing -> renamed file + wrapped Register non-fatally so a gamedata issue never blocks load. - Native resolution self-test: use FindString(anchor) -> FindFunction(ptr) (FindFunction(string) resolves by symbol name -> fails on stripped binaries). Verified live on TTT: SendClientMessages resolves to the correct address (matches the Ghidra RVA). Long format-string anchors (EncodeField/WriteDeltaEntity) need tuning (FindString length limit) — not on the per-field-swap critical path, which needs the serializer->field registry walk instead. Verified on TTT: module + example + gamedata load clean, ISendProxyManager registers, registration-only mode (encoder patch still gated). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
P
Prefix committed
988286d4f6bd8ee5e2a8a31a35bf8772851a485c
Parent: 5fc05d8