cc32223d7d998b0c5ffd468e7965b8723bc321a6
Engine.IO v3 frames over WebSocket prepend the packet-type byte (0x04 for Message) to BINARY frames, the binary analog of the leading digit on text frames. The real client honors this and our session was treating the entire binary frame as the Socket.IO attachment payload — the msgpack decoder saw 0x04 as a positive fixint and failed deserialization on every inbound msg event. Symmetric fix: strip 0x04 from inbound binary frames in BattleSession.RunAsync, prepend 0x04 to outbound binary frames in EncodeAndSendAsync. RawSocketIoTestClient gets the same on both directions so the integration test still exercises the same wire shape as a real client. Caught during v1 smoke walkthrough, after the WS upgrade started succeeding (101 Switching Protocols). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Description
The SV Simulator server code, including the DCG Engine, SVSim content, and an entrypoint for the official game client.
Languages
C#
100%