File Details
v2026.3.31.2
- R
- Mar 31, 2026
- 276.50 KB
- 6
- 12.0.1
- Retail
File Name
Wheelson-v2026.3.31.2.zip
Supported Versions
- 12.0.1
Wheelson
v2026.3.31.2 (2026-03-31)
Full Changelog Previous Releases
- fix: compact group broadcast to prevent dropped messages (#122) (#124)
- fix: use compact group serialization to prevent dropped messages for large groups (#122)
AceComm splits messages into 255-byte chunks for GUILD channel, and
with 10+ players the full GROUP serialization creates 2-4KB+ messages
where chunk loss silently prevents delivery. Non-hosts never receive
the SPINNING/COMPLETED state transition and stay stuck in the lobby.
Three complementary changes:
- Send only player names in group data (compactGroups), reconstructing
full Player objects on the receiver from the already-transmitted
player list. ~80% reduction in group payload size. - Re-send SPINNING broadcast after 2s delay when multiple groups exist,
providing redundancy against initial message loss. - Guard CompleteSession() broadcast behind IsHost() check so non-hosts
don't waste bandwidth broadcasting state they didn't originate.
Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com
- fix: omit redundant player data from SPINNING/COMPLETED broadcasts
SESSION_UPDATE messages for SPINNING/COMPLETED now only include the
status delta (compact groups), omitting the player list, community map,
and removedPlayers that the receiver already has from the LOBBY phase.
This reduces the critical state-transition message from ~1.5KB to ~200
bytes (a single AceComm chunk), virtually eliminating dropped messages.
Also removes the unusedplayerCountfield from all SESSION_UPDATE
messages, and ensures SESSION_QUERY responses and /reload restores
always send the full state via the newfullSyncparameter.
Closes #122
Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com
Co-authored-by: Claude Opus 4.6 (1M context) noreply@anthropic.com - fix: use compact group serialization to prevent dropped messages for large groups (#122)

