arrow_back All guides

Getting Started with Risk of Rain 2 Modding

r2modman, BepInEx, R2API, and the Thunderstore profile-sharing flow

AndreaDev3D
·

Risk of Rain 2 modding uses the same r2modman + BepInEx stack as Valheim and Lethal Company. If you've modded any Thunderstore-aware game, this is the same flow.

Step 1 — Install r2modman

r2modman is the community Thunderstore mod manager. Pick Risk of Rain 2 as your target on first launch.

r2modman creates a profile for RoR2. Multiple profiles per game are supported (one for solo, one for each multiplayer group).

Step 2 — BepInEx auto-installs

r2modman prompts to install BepInEx on first profile setup. Accept. The loader is placed in RoR2's install directory.

Step 3 — Install R2API and your first mods

In r2modman's Online tab, search for:

  • R2API — the content framework. Most mods depend on it.
  • TILER2 or similar utility frameworks — common dependencies.

Plus three popular first content picks:

  • Phantom Survivors or another custom survivor pack.
  • MoreLobbyCount / IncreasedLobbySize — bump multiplayer player count.
  • DebugToolkit — developer/QoL console.

Click Download on each. r2modman resolves dependencies and installs.

Step 4 — Launch via r2modman

Click Start modded in r2modman. RoR2 launches with the profile's active mods.

Step 5 — Multiplayer

For mod-parity in multiplayer:

  1. Host exports profile via r2modman's profile export → gets a code.
  2. Shares code with friends.
  3. Friends import the code into their r2modman.
  4. Everyone launches the same profile.

Common gotchas

  • r2modman says BepInEx outdated. Re-run the BepInEx install. Usually after a RoR2 patch.
  • R2API missing. Most mods need it. Install first.
  • Multiplayer disconnects on join. Mod-set mismatch. Sync profiles.
  • DLC compatibility. Confirm mod compatibility with Survivors of the Void and Seekers of the Storm.

Same workflow as Valheim and Lethal Company. The skill transfers.

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.