Two visible wins that prove today's wire-layer work is actually doing something: 1. Chat panel (bottom-left): live tail of the last 10 ChatLog entries. Color-coded by kind — Tell cyan, Channel green, System yellow, Popup red, local/ranged white. Bound to WorldSession via the existing GameEventWiring path (H.1) so server ChannelBroadcast / Tell / TransientString / Popup + HearSpeech all render live. Includes a synthetic \"connecting / connected\" system message so the panel isn't blank before anyone talks. 2. Event panel (bottom-right): last 8 combat events from CombatState (E.4). Damage taken (red), damage dealt (yellow), evaded-incoming (green), missed-outgoing (grey). Each entry fades out over 5s. DebugOverlay.BindCombat wires the listeners. 3. Silk.NET.OpenAL.Soft.Native 1.23.1 added. Before this, OpenAL managed bindings loaded but the native runtime was absent so IsAvailable returned false and audio was silently disabled. Now soft_oal.dll ships to runtimes/win-x64/native/ and the engine reports \"OpenAL engine ready (16 voices, 3D positional)\" on launch. Footsteps + other motion-hook sounds now audible. GameWindow: after constructing DebugOverlay, assign .Chat + .Combat and call BindCombat to hook the event stream. Build green, 628 tests still pass. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 lines
Text
0 lines
Text