Loot Topup

v1.2.3·Updated 2026-09-29

Loot safety net: guarantees a minimum valuable count on sparse maps, plus a watchdog that tops up loot if destroyed items would softlock the run. Respects no-loot mutators. Host-authoritative. By TheM

About this mod Author’s original text

Loot Topup

Safety net for loot generation. Guarantees a minimum number of valuables on sparse maps, and a watchdog tops the level back up if enough loot gets destroyed that the haul goal stops being reachable. It never removes anything. It adds copies of the level's own valuables at the level's normal valuable spawn points, and it skips no-loot mutators like Hunting Season. The host runs the logic.

By TheMorningStar.

1.2.3

  • Works on levels that spawned no loot at all. Some older custom maps load with an empty valuables list, so there was nothing to copy. Loot Topup now spawns valuables from the level's own loot list, or from every level's loot list if that one is empty, at the map's normal spawn points.
  • The "nothing to spawn" warnings log once per level instead of every few seconds.

1.2.2

  • Top-up copies now appear at the map's own valuable spawn points instead of next to an existing valuable. Before this, if every remaining valuable was already on the extraction pad, the copy spawned on the pad too.
  • A copy goes to an empty spawn point of its own size first, then an empty larger one. Spawn points that the level turned into furniture are skipped.

1.2.1

  • The softlock watchdog reads the game's own valuables list instead of scanning the whole scene every 4 seconds, which removes a small periodic hitch on large modded levels.

For developers - detailed breakdown

v1.2.2: a Harmony prefix on ValuableVolume.Setup records each active volume's position, rotation and size before the game destroys the markers, and a postfix on ValuablePropSwitch.Setup drops volumes whose switch became a prop. A spot counts as taken when a live valuable or an earlier copy from the same pass is within 1 m. If no spot was recorded for the level, the mod logs a warning and spawns nothing.

v1.2.0: REPOLib-registered (modded) valuables now spawn through REPOLib 4.2.0's NetworkPrefabs.SpawnNetworkPrefab(PrefabRef,...) instead of the removed string overload; base-game valuables keep the plain Photon Resources path, singleplayer uses a local Instantiate. Any template whose spawn fails (null return or exception) is blacklisted for the rest of the level and still counts toward the per-level spawn cap, so a bad prefab can't flood the log or retry forever.

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-BepInExPackZehs-REPOLib

File & checksum

Filename
Loot_Topup-1.2.3.zip
File size
17.4 KiB