NuageReport is a R.E.P.O. BepInEx mod that records host-observed run events and turns them into a level recap.
Maintained by TheoHay and published on Thunderstore under GangDesNuages.
It is meant to answer simple post-run questions: what spawned, what was extracted, what was missed or destroyed, how much value was lost, and which player-facing events the host could observe with reasonable confidence.
O by default.NuageReport currently records and summarizes:
NuageReport is a recap tool, not a blame tool. Some in-game events are easy for the host to observe directly, while others are noisy or indirect. Player attribution should be treated as useful context, not perfect truth.
Install NuageReport through a mod manager or place the packaged files in your BepInEx plugins folder.
Required dependency:
BepInEx-BepInExPack-5.4.2305Only the host needs NuageReport for recording and exporting host reports. Clients can play without it. Clients that do install NuageReport can receive the host's completed report in-game.
O to open the report menu.The same key closes the open report overlay. When live reporting is enabled, the menu includes both Summary and Live tabs.
When General.EnableJsonOutput is enabled, reports are exported as JSON to:
<Unity persistent data path>/NuageReport/runs/
On Windows, this is normally:
%USERPROFILE%\AppData\LocalLow\semiwork\Repo\NuageReport\runs\
NuageReport also writes last-startup.txt next to the runs folder, which can help confirm where the game resolved the output path and whether JSON output is enabled.
NuageReport uses a BepInEx config file under the plugin GUID:
com.theohay.nuagereport
Useful options include:
| Section | Key | Default | Purpose |
|---|---|---|---|
General |
EnableRecording |
true |
Enables NuageReport. When disabled, recording, report UI, polling, and multiplayer sync stay inactive. |
General |
EnableLiveReport |
false |
Enables the live report tab and allows live report sharing when multiplayer report sharing is enabled. |
General |
EnableJsonOutput |
true |
Writes completed run reports as JSON files under the NuageReport runs folder. |
General |
CartConfirmationSeconds |
0.5 |
How long a valuable must stay detected in a cart before NuageReport confirms it as first carted, reducing accidental touch/flicker noise. |
Keybinds |
ReportMenuKeybind |
O |
Opens or closes the report menu. |
Multiplayer |
ShareReports |
true |
Shares completed reports with modded clients. Live reports are shared too when General.EnableLiveReport is enabled. |
Multiplayer |
LiveReportSyncIntervalSeconds |
2 |
Minimum seconds between live report sync packets. Allowed range: 0.5 to 10. |
Diagnostics |
LogRecordedEvents |
false |
Logs every accepted recorder event to the BepInEx console for debugging. |
From the monorepo root:
./scripts/verify.ps1 -Mod NuageReport
./scripts/package.ps1 -Mod NuageReport
The project layout is:
mods/NuageReport/
src/NuageReport.Core/ Unity-free recorder, model, and formatters.
src/NuageReport.Plugin/ BepInEx plugin, Harmony patches, UI, networking, export.
tests/NuageReport.Core.Tests/
manifest.json, README.md, CHANGELOG.md, assets/icon.png
NuageReport.Core intentionally avoids Unity, BepInEx, Harmony, Photon, and R.E.P.O. references so report logic can be tested without launching the game.
NuageReport is licensed under the MIT License.