MidGameJoin
Allows Steam friends to join an active RoundsWithFriends private match as spectators, then enter after card selection with average-card catch-up picks.
About this mod Author’s original text
MidGameJoin
MidGameJoin is a ROUNDS add-on for RoundsWithFriends 2.2.2 that lets Steam friends join a private match after it has already started.
How late joining works
A friend may join through a Steam invite or Steam's Join Game option while the match is running. The late joiner is kept as a spectator and is not added to the combat player list during the current fight.
After the existing players finish the current cycle's normal card picks, MidGameJoin freezes the insertion batch. Each late joiner receives a number of manual catch-up picks equal to the floored average of the existing active players' current card counts. For example, card counts of 4, 5, 6, and 4 average to 4.75, so the late joiner receives 4 catch-up picks.
In Team Deathmatch, a waiting spectator chooses their team before the insertion batch locks. They may change that selection while waiting. In Free-for-All (FFA), no team choice is required.
The next combat begins only after every late joiner in the locked batch has either completed catch-up selection, disconnected, or been rolled back to spectator because validation failed.
Requirements
Everyone in the private match must have the same MidGameJoin version installed. MidGameJoin is designed for private RoundsWithFriends games using:
- BepInExPack for ROUNDS 5.4.1900
- UnboundLib 3.2.14
- RoundsWithFriends 2.2.2
Supported
- Steam friend Join Game
- Steam Invite joins
- RoundsWithFriends private Team Deathmatch
- RoundsWithFriends private Free-for-All (FFA) / Deathmatch
- Multiple late joiners in one insertion batch
- Spectating while waiting
- Manual average-card catch-up picks, rounded down
Not supported
- Public matchmaking
- Joining directly into an active fight
- Mixing clients that do and do not have MidGameJoin installed
Host migration
Host migration is handled conservatively. If RoundsWithFriends performs its network restart while spectators are pending, those pending players may be returned to the spectator/waiting state and deferred by one card cycle rather than risking duplicate combat players. Players that were already fully active are left alone.
Development status
Version 0.1.3 must pass the multiplayer checklist included with the source before it should be published publicly. A source/package layout produced without a successful compile or two-client Steam test is a development build, not a release-validated upload.
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: