XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEEDToolBox

【WinUI】XFE精英危险工具箱

公开
关注 0 Fork 0 Star 0
UTF-8

Original effective State facts

The original State provider is not only the generic metadata's base faction state. Complete old 3B262E0 (ED5 3B26240, 167 bytes) first reads its +B0 registered 5F5428C interface. That interface's actual +38 getter is old 2DB040, ED5 2DB010: lea rax,[rcx+288]; ret. Original full 627800 (ED5 6277A0, 116 literal-identical bytes) tests the system's complete 64-bit address in that chained set. A member forces raw State 39 before any base metadata lookup. The State constructor's actual Unpopulated row supplies its settings key and RGBA.

When membership is false, the provider reads descriptor +1C; an absent descriptor supplies raw 0, while absent compact supplies raw 14. This adapter only accepts real address requests. Generic metadata positives and the existing ready, structurally confirmed missing-row fallback retain their own provenance. Pending metadata remains unknown. No other independent frontline overlay occurs in this classifier: frontline is an actual State provider row when that raw classification is present, not an invented BGS rule.

Crucially, 627800 returns false on count==0 before reading bucket pointer or capacity. The reader follows that order, including the stable zero-capacity case. It does not require the Thargoid panel response/metadata flags, which the original predicate does not inspect. Unreadable or wrong typed owners, malformed nonempty chains, changed bindings, and uncertain metadata are unknown.

Key and raw RGBA are copied from the loaded original State provider's matching raw-key row (+0, name ref +10, RGBA +20..2C, stride 38). It is reached through the already verified MainUI/controller State shared handle, category 6, and actual State vtable ED5 552DE60. The reader never borrows the game's selection byte row+30 or selection-animation scalar row+34. HDR colour channels above 1 remain unchanged. If the original provider has not been initialised, the raw State ID can be returned with unknown key/colour; it is not replaced with an assumed public enum or a static fallback colour.

GalaxyNativeStateFact / StateRequested take precedence over the older BasicSystem.BaseFactionState. An explicit native unknown never uses public state or a prior public query receipt as proof. Known negatives remain negative even with IncludeUnknown. Requested state uses the actual provider key after the ordinary string normalisation, not a guessed numeric namespace.

Reproduction:

  • research/Trace-GalaxyStateFacts.py generates artifacts/galaxy-query-research/state-facts/compatibility.json, pairing complete old/current ctors/classifier, typed slots and membership leaf. It accesses PE files only and retains both full image hashes.
  • research/Run-GalaxyStateFactsProbe.py links the production State and Basic readers plus the own-allocation fixture. Existing hash dependencies are extracted unchanged from production into a bounded memory host. Eight runs pass all 16 checks (65535), including count-zero semantics, exact address, pseudo override with unknown metadata, raw HDR colour, absent provider, malformed sources and no memory mutation. No game functions/process/network.
  • research/GalaxyStateFilterProbe runs the four focused State DTO/filter tests without building the full Test project.

Runtime validation remains pending. This does not certify original map initialisation, successful data responses, or complete catalogue coverage.