PublicGameSaves

v1.1.0·Updated 2026-07-27

Host public games from your private saves - and they keep saving like normal. Host-only.

About this mod Author’s original text

PublicGameSaves

A R.E.P.O. mod that lets you host public games from your saved games — and keeps saving them, exactly like private games.

  • Server List → Create New → type your server name → Confirm now opens the save selection screen: pick a save and press Load Game to continue it publicly, or press New Game for a fresh run.
  • Progress in public games you host is saved to disk just like in private games (when you leave from the truck, between levels, etc.), so you can keep the run going next session — publicly or privately.
  • Optionally, random matchmaking games you end up hosting are saved too (configurable).
  • Host-only mod. People joining your server don't need it. Clients never write save files (vanilla already protects this).

How it works

After you confirm the server name, the mod opens the vanilla save selection page. Picking a save runs the game's own "host an open online game" sequence (SemiFunc.MenuActionRandomMatchmaking) with your save file attached, then sets the lobby type to Public and applies your server name — the exact same state the vanilla Create New flow produces, so the server is named, listed, and joinable like any other public server.

Saving was blocked by a single check: StatsManager.savedLobbyTypes only contained Private, so SaveFileSave skipped writing the file in public lobbies. The mod adds Public (and optionally Matchmaking) to that list. Everything else — save timing, backups, save-on-leave — is untouched vanilla behavior.

Install

  • Install BepInEx 5 (BepInExPack for R.E.P.O.) if you don't have it.
  • Drop PublicGameSaves.dll into \BepInEx\plugins\.
  • Launch the game. The config file appears at BepInEx\config\com.nikola.publicgamesaves.cfg after first run.

Config

| Setting | Default | Description |

|---|---|---|

| SavePublicGames | true | Save progress in public (server list) games you host |

| SaveMatchmakingGames | true | Save progress when you end up hosting a random matchmaking game |

Building from source

Requirements:.NET SDK (8.0 or newer is fine).

  • Put Plugin.cs and PublicGameSaves.csproj in a folder.
  • Open PublicGameSaves.csproj and set ` to your R.E.P.O. install path if it isn't D:\Steam\steamapps\common\REPO`.
  • Open a terminal in that folder and run:

dotnet build -c Release

  • The DLL is at bin\Release\net472\PublicGameSaves.dll — and if BepInEx\plugins exists, the build copies it there automatically.

Visual Studio works too: open the.csproj directly (or add it to a solution) and press Build.

When the game updates and something breaks, rebuild against the new Assembly-CSharp.dll — the compiler and the BepInEx log will point at whatever changed.

Compatibility notes

  • Patches: StatsManager.Awake, MenuPageServerListCreateNew.ButtonConfirm, MenuPageSaves.OnLoadGame/OnNewGame/OnGoBack/UpdateGameModeHeader, MenuPageMain.Start (all prefix/postfix, no transpilers, no IL edits — update-friendly).
  • Random matchmaking is untouched UI-wise (no save picker there), because you can't know in advance whether you'll host or join someone else's room.

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. 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.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. 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.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack

File & checksum

Filename
PublicGameSaves-1.1.0.zip
File size
30.2 KiB