RoweMod 0.5.4 - Multiplayer visibility fixes
RoweMod 0.5.4
Fixes reproduced causes of missing skaters in larger Steam lobbies:
- Share congested connections fairly across all skaters, including the host. Keep only each player's newest pending pose; expire stale poses instead of building a backlog.
- Give the host relay a receive budget for all lobby members while retaining individual player limits.
- Refresh cached introductions when a player announces a new map, so roster heartbeats cannot reintroduce the previous map.
- Record per-player transport counters and visibility/map/asset errors in local diagnostics.
Validation: 49 Python tests and 18 Lua suites passed. New regression tests failed before the fix: a constrained four-player link showed only one origin, relayed origins shared one receive budget, and cached introductions retained an old map. Tests now cover sustained four-player traffic, a late joiner, equal turns under congestion, latest-pose expiry, leave cleanup, separate map gates and isolated missing-asset errors.
These are automated transport/mailbox and mocked-engine Lua tests. The exact reported four-PC failure has not been verified against the reporters' logs. A live four-player Steam retest is still needed, including all three remote avatars on every screen.
Everyone should update to 0.5.4, close Rollout and RoweMod Online, and restart before testing. Existing installations can auto-update after closing. For manual installation, extract RoweMod-0.5.4.zip and run install.cmd. Settings are preserved.
If someone is still invisible, collect visibility.txt and steam_status.json from %TEMP%\RoweModMP\Steam on the affected PCs. They distinguish missing poses, congestion, map gates and unavailable outfit assets. Nothing is uploaded automatically.