docs: correct the color-table doc's refuted main-window-filter claim (re-review S1)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-08-10 13:24:33 +02:00
parent 69e355bbdf
commit ccab53d9a1

View file

@ -326,8 +326,16 @@ There is nothing for acdream to make configurable for retail parity.
when the option changes. `ChatInterface::TypeIsActive @0x004F2F10` tests
`(1ULL << type) & m_llTextTypeFilter`. Two consequences:
- `UpdateFromPlayerModule` early-returns when `m_eWindowID == 0`, so the
**main window has no user filter** — it keeps the `PostInit` default.
- ~~`UpdateFromPlayerModule` early-returns when `m_eWindowID == 0`, so the
main window has no user filter~~ **CORRECTED 2026-08-10 (CH6a/b review,
`docs/research/2026-08-10-ch6ab-review-findings.md`):** the main chat
window is `m_eWindowID == 8` and the floaties are 25;
`m_eWindowID == 0` is the UNAUTHORED constructor default, which is what
that early-return guards. The main window's filter IS user-settable —
`gmChatOptionsUI::InitOptions @0x0049FC60` builds its filter block at
`SetUserData` id 8 (default `0x00000000_FBFFFFFF` @0x0049FDC9, with a
dedicated high-dword Society child @0x0049FEFB, so 0x20 Society is
opt-in on main).
- `RecvNotice_DisplayFinalStringInfo` displays when
`windowId == m_eWindowID` (explicitly addressed — e.g. command output uses
`m_idCurrentCommandSource`) **or** `windowId == 0 && TypeIsActive(type)`