GsStatsEmitter
Posts run summaries (stages, items, stats, bosses, mods, equipment) to a self-hosted gs dashboard on every run end. Heartbeats while playing.
About this mod Author’s original text
GsStatsEmitter
A small BepInEx mod that POSTs Risk of Rain 2 run summaries to a self-hosted gs dashboard. Only the lobby host emits, so installing on a non-host has no effect. Source:.
What it captures
On every run end (Run.onRunDestroyGlobal):
- Run metadata: seed, difficulty, eclipse level, stage clear count, run time, ended-on scene
- Per-stage breakdown: time per stage, scene name, stat deltas per player (kills, damage, healing, gold, items collected during that stage), items picked up during the stage
- Per-player snapshot: character body name, dead/alive, items by internal name + count, killed-by (attacker body name), host flag
- Stat sheet totals: total kills, elite kills, deaths, damage dealt/taken, healing, gold collected/spent, distance traveled, minion damage, damage blocked
- Final character build: maxHealth, maxShield, damage, attackSpeed, moveSpeed, crit, armor, regen, jump power, level
- Loadout: primary / secondary / utility / special skill choices + equipped Q item
- Boss kills: counts per boss body name (Mithrix, Voidling, Aurelionite, …)
- Run-level: artifacts enabled, currently-loaded mods (GUID + version + author + folder), full item-tier map for the run's catalog
Heartbeats fire every 30 seconds during an active run so the dashboard can show a "currently playing" banner.
Setup
Install via r2modman, or drop the DLL into BepInEx/plugins/ manually.
After first launch the mod generates BepInEx/config/net.cproudlock.gsstatsemitter.cfg. Edit the two values:
[Ingest]
Url =
Token = gsk_xxxxxxxxxxxxxxxxxxxxxxxx
Without a valid token the dashboard returns 401 and nothing is recorded.
Getting an ingest token
The dashboard owner mints a gsk_* key for each friend at /admin/api-keys on the gs instance. Ask them for one. The key is yours, do not share it. If you ever leak it, the owner can revoke and re-mint in a few seconds.
Privacy
The mod only emits when you are the lobby host. If you join someone else's lobby it stays quiet. All payloads include your Steam display name and the names of everyone else in the lobby. Self-host the dashboard if that matters to you.
License
MIT.
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: