feat(D.2b): exact retail chat colors from a live cdb dump

Attached cdb to a live retail acclient (PDB-matched) and read the named RGBAColor
constants at acclient 0x81c4a8+ (colorWhite/colorBrightPurple/colorLightBlue/
colorGreen/colorLightRed/colorGrey), used by ChatInterface::BuildChatColorLookupTable
@0x4f31c0. Replaced the approximated RetailChatColor palette with the ground-truth
values: speech=white, tell=colorBrightPurple(1,.498,1), channel=colorLightBlue
(.247,.749,1), system/popup=colorGreen(.5,1,.498), combat=colorLightRed, emote=colorGrey.
Capture scripts saved under tools/cdb/.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@
This commit is contained in:
Erik 2026-06-16 10:08:42 +02:00
parent 1da697ec2a
commit ccaf188e41
3 changed files with 34 additions and 12 deletions

12
tools/cdb/chat-colors.cdb Normal file
View file

@ -0,0 +1,12 @@
.symopt+ 0x40
.reload /f acclient.exe
.echo ===BASE===
lm m acclient
.echo ===DISASM_BuildChatColorLookupTable===
uf acclient!ChatInterface::BuildChatColorLookupTable
.echo ===TABLE_REL_0x41c4a8===
dd acclient+0x41c4a8 L40
.echo ===TABLE_ABS_0x81c4a8===
dd 0x81c4a8 L40
.echo ===END===
qd

View file

@ -0,0 +1,6 @@
.echo ===COLOR_SYMS===
x acclient!color*
.echo ===CHATCOLOR_SYMS===
x acclient!*ChatColor*
.echo ===END===
qd