You are viewing a potentially older version of this package. View all versions.
RedRedRain-SimulPicks-0.1.0 icon

SimulPicks

BETA: Everyone picks their card at the same time. Private simultaneous drafts with a pick timer - AFK or disconnected players are skipped, never waited on.

Date uploaded 3 days ago
Version 0.1.0
Download link RedRedRain-SimulPicks-0.1.0.zip
Downloads 32
Dependency string RedRedRain-SimulPicks-0.1.0

This mod requires the following mods to function

BepInEx-BepInExPack_ROUNDS-5.4.1901 icon
BepInEx-BepInExPack_ROUNDS

BepInEx pack for ROUNDS. Preconfigured and ready to use.

Preferred version: 5.4.1901
willis81808-UnboundLib-3.2.14 icon
willis81808-UnboundLib

This is a helpful utility for ROUNDS modders aimed at simplifying common tasks.

Preferred version: 3.2.14
Pykess-ModdingUtils-0.4.8 icon
Pykess-ModdingUtils

Utilities aimed at making modding easier and more accessible

Preferred version: 0.4.8

README

SimulPicks (BETA)

Everyone picks their card at the same time. No more waiting through four sequential pick turns - every player gets their own hand of cards simultaneously, picks in private, and the round starts once everyone has chosen (or the timer runs out).

How it works

  • At each pick phase, every player is dealt their own hand locally (default 5 cards), generated with the same rules as vanilla: rarities, class restrictions, blacklists and card conditions from your other mods all apply.
  • Pick with ←/→ or A/D + Enter/Space, or hover with the mouse and click.
  • A pick timer runs (default 30s). If it expires, your currently highlighted card is auto-picked. Players who disconnect or never respond are skipped, never waited on - the round always starts.
  • Once all picks are in, the host applies everyone's card through ModdingUtils' standard networked path.

Important

  • Every player in the lobby must have this mod installed. Mixed lobbies will break the pick phase.
  • Disable PickTimer if you use it - SimulPicks has its own timer and the two will fight over the pick flow.
  • This is a beta: tested locally, needs real lobby feedback. If a pick phase acts up, report what happened (and grab your BepInEx log) - and you can just uninstall it to return to vanilla sequential picks.

Testing / debug

Alone in sandbox (or offline), press F9 to run a full draft cycle on demand.

Config (BepInEx/config/com.adam.rounds.simulpicks.cfg)

  • PickTimeSeconds (default 30) - how long each player has to pick.
  • DraftSize (default 5) - cards offered per player.

Known limitations (beta)

  • Draft input is keyboard/mouse only for now (controller support planned).
  • Card-bar "delete a card" style mods that consume your pick turn are untested with simultaneous drafting.
  • The vanilla "P2 is picking" banner may flash briefly between phases - cosmetic only.

CHANGELOG

Changelog

0.2.1

  • Fixes from the second verification round (11 defects): echo-free result protocol (no more index collisions on multi-pick sessions), lockstep-anchored deadlines everywhere, watchdog on hook-driven (curse) picks so a skipped picker can never hang the lobby, runner flushed at barrier commit, native-apply tracking decides skip-vs-apply (leaver-safe), curse relay fixed (was dead code), host-promotion takeover mid-barrier, fail-closed local spawns, instantiation data + callbacks for generated cards.
  • Known limitation: AAL13 'duplicates as corrupted' grants only trigger when the picker is the host (upstream master-gate).

0.2.0

Complete rebuild after real-lobby feedback on 0.1.0:

  • Picks now run through the game's native pick flow locally per client: native visuals/sounds/animations, native input (controller included).
  • Entitlement comes from intercepting the game mode's own pick requests: losers-only after rounds, everyone at game start, extra picks (Pick_N_Cards / PickPhaseImprovements / devil & curse cards) honored via the real engine.
  • Host-authoritative result application with lockstep phase tokens - identical decks on every client, no timeout drift.
  • All waits timeout-bounded + room-membership-checked; continue-after-win and rematch hard-reset state; room join/leave resets state.
  • Locally-run picks are fully network-shielded (spawns, pick RPCs, helper-mod broadcasts) with locally-registered view IDs so the modded pipeline works unmodified.
  • 23 defects found by adversarial review fixed before release.

0.1.0 (deprecated)

  • Initial beta - replaced the pick UI; deprecated for freeze and compatibility bugs.