Repository navigation
Register the aura-application, effect-filter and visual-hide callback lists by captured order - #12
Merged
firstoni-dev merged 2 commits intoOct 12, 2026
Conversation
…ed order Aura application, effect filtering and visual hiding still inserted by call site, which does not reproduce the original: registration execution order does not follow the call sites (the aura list registers AscSpellMods before AscSpellVisuals, AscSpawnVisibility before AscAppearance). Measured the three lists from the original's live list links in two independent game sessions; they now rank by the captured site order (InsertByCapturedOrder), like the two lists added earlier. The aura-application list carries one original-only sixth callback (runtime-registered, no static call site, not reconstructed) that runs after the five captured entries. Fixture, portable test (all registration permutations, vetoes, duplicates, an off-array unknown site, visual-hide consumer short-circuit) and docs/CALLBACK-ORDER-MEASURED.md extended; 3367 checks, 0 failures locally.
… / Returning Player / overhead icon)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The outstanding call-site ordering note from #11 is now measured for the remaining three lists.
Call-site order cannot reproduce them: registration execution order does not follow the call sites,
and the aura-application list carries one original-only callback that has no call site at all.
Measured from the original's live list links in two independent game sessions of a sibling build
(identical results). The same walk reproduces the
Before71E930/After80B5D0fixtures byte-exactlyin the reference image, and every address was translated with per-band deltas validated on all entries.
0x10BE2B6Caura application (before0x724820)AscAura137::BeforeApply,AscSpellVisuals::BeforeAuraApply,AscSpellMods::AuraFlagOn,AscAppearance::BeforeAuraApply,AscSpawnVisibility::BeforeAuraApply, + original-only 6th that runs last0x10BE2D78effect filteringAscSpellVisuals::RemoveEffect,AscQuestSpellHide::RemoveEffect0x10BE2D98visual hidingAscSpellVisuals::HideVisual,AscQuestSpellHide::HideVisualOnBefore724820/OnEffectFilter/OnVisualHidenow rank by the captured site order(
InsertByCapturedOrder), like the two lists from Codex/captured callback order #11. The filter lists are exactly reversed vsascending site order; the aura list is not any site sort (
AscSpellModsregistered beforeAscSpellVisuals,AscSpawnVisibilitybeforeAscAppearance).Before724820/EffectFilter/VisualHidesections (reference-imageaddresses). The sixth aura-application entry is
null/null: it is runtime-registered through theoriginal's protection (VM) layer — no static site anywhere in the image; its address only
materializes in a VM lane cell at runtime — so it is not reconstructed. It runs after the five
captured entries, which the append-after-captured rule reproduces.
(vetoes, fall-through, duplicate registration), an off-array "unknown" site landing last, and the
filter registrars including the visual-hide consumer's first-true-wins short-circuit. Locally:
3367 checks, 0 failures (MSVC x86);
native_ca_packets.pyunaffected.docs/CALLBACK-ORDER-MEASURED.mdcarries the measurement notes plus the decoded conditionlogic of the original-only callback (spell veto for the custom ids
0x79BB0/0x79BC5/0x79C3F/
0x79C40/0x978960behind GM / developer / account flags — now identified as the client'sMentor / Newcomer / Returning-Player / Ascension-logo overhead-icon handling; names and tooltips in
the doc). The GM flag only ever allows; the suppressing flag is the developer bit
0x8000.