Rounds2-RoundsTheGathering icon

RoundsTheGathering

A deck-building layer for ROUNDS. Build custom card pools, set an active deck, and only draft from it during pick phases. Includes a prerequisite API so other mods can gate tiered cards behind earlier tiers.

By Rounds2
Last updated a day ago
Total downloads 85
Total rating 0 
Categories Custom Cards Gameplay Utilities
Dependency string Rounds2-RoundsTheGathering-1.0.4
Dependants 0 other packages depend on this package

This mod requires the following mods to function

Pykess-ModdingUtils-0.4.8 icon
Pykess-ModdingUtils

Utilities aimed at making modding easier and more accessible

Preferred version: 0.4.8
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

README

RoundsTheGathering

A deck-building layer for ROUNDS inspired by trading card games. Build custom card pools before a match, set one as your active deck, and only draft from it during pick phases — no more rolling the dice on the full card library every time.


Features

Deck Builder

Create and manage named decks from any cards in the game. Each deck is:

  • Up to 50 cards (configurable)
  • Persisted to disk between sessions (BepInEx/config/RoundsTheGathering/decks.json)
  • Selectable per-match from a dedicated in-game screen

Deck limits per card:

  • Common / Uncommon: max 3 copies
  • Rare and above: max 1 copy

Deck Selector Screen

Replaces the vanilla Toggle Cards menu with a full deck management UI:

  • Create New Deck — opens the deck editor with a blank slate
  • Edit Deck — modify an existing deck's card list
  • Set Playable Deck — activates the selected deck for the next match
  • Delete Deck — removes a deck (with confirmation; the Default Deck cannot be deleted)
  • Active deck name is always shown at the bottom of the panel

Pick-Phase Integration

During card picks, the active deck becomes your draw pool. Cards are drawn randomly from your deck and shrink as you pick — just like a real deck. The remaining count displays in a HUD at the bottom of the screen.

When all cards in your deck have been picked, the pool resets and you draw from the full deck again.

If no custom deck is set (or a bot is picking), the full vanilla card pool is used as normal.

Deck HUD

A persistent overlay during pick phases shows:

Shields_Test — 20 cards

Red text when 5 or fewer cards remain.

Card Unlock Prerequisites (API for modders)

RoundsTheGathering exposes a public API for other mods to declare tiered card unlock chains:

CardPrerequisiteRegistry.RegisterPrerequisite("Upgrade Shield Health II", "Upgrade Shield Health I");

A card with a prerequisite only appears in draft picks once the player already owns the required card — evaluated per-player, per-pick, from their current hand. No fragile global enable/disable required.

Other mods can register prerequisites via direct reference or via reflection (see the Modder API section below).


How to Use

  1. Open the main menu and look for the Deck Manager button (where Toggle Cards used to be).
  2. Create a deck, add the cards you want, give it a name.
  3. Use Set Playable Deck to make it active.
  4. Start a match — you will only draft from that deck.

To go back to vanilla drafting, set the Default Deck as active.


Mod Compatibility

Mod Status Notes
UnboundLib Required Card registration and menu integration
ModdingUtils Required Card framework
ShieldsMod Optional Shield upgrade cards use the prerequisite API to gate tier II–V behind earlier tiers
Info Overhaul Optional Shows remaining deck count and card delta previews during picks
Card Delete Mod Optional Deleting a card from your hand mid-match correctly rebuilds the remaining deck pool

Modder API

Registering Card Prerequisites

From another mod, register a prerequisite chain so that a card only appears in picks once the player already owns an earlier tier:

Direct reference (if you have a compile dependency on RoundsTheGathering):

CardPrerequisiteRegistry.RegisterPrerequisite("My Card Tier II", "My Card Tier I");

Via reflection (soft dependency — your mod still loads if RTG isn't installed):

Assembly asm = AppDomain.CurrentDomain.GetAssemblies()
    .FirstOrDefault(a => a.GetName().Name == "RoundsTheGathering");

Type registry = asm?.GetType("RoundsTheGathering.CardPrerequisiteRegistry");
MethodInfo method = registry?.GetMethod("RegisterPrerequisite",
    BindingFlags.Public | BindingFlags.Static);

method?.Invoke(null, new object[] { "My Card II", "My Card I" });

Prerequisites are evaluated from the player's live hand each pick — so if a player acquires tier I mid-match, tier II immediately becomes available on their next turn.


Save File Location

Decks are saved to:

%AppData%\r2modmanPlus-local\ROUNDS\profiles\<Profile>\BepInEx\config\RoundsTheGathering\decks.json