You are viewing a potentially older version of this package. View all versions.
Firenyth-ExtractionRandomizerPlus-1.0.1 icon

ExtractionRandomizerPlus

Pick a random extraction count per level include multiplayer sync..

Date uploaded 2 months ago
Version 1.0.1
Download link Firenyth-ExtractionRandomizerPlus-1.0.1.zip
Downloads 418
Dependency string Firenyth-ExtractionRandomizerPlus-1.0.1

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2305 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2305

README

Extraction Randomizer Plus

Randomizes how many extraction points each R.E.P.O. level gets. The host rolls the count and raises the vanilla generator's extraction budget. The generated map (and haul goal) is then synced by the game.

Inspired by B1MSE's ExtractionPointRandomizer. This is a separate rewrite (host-authoritative count, can request more extracts than vanilla's usual 5).

Install

Everyone in the lobby must install this mod.

Uninstall B1MSE-ExtractionPointRandomizer. That older plugin still disables extra extracts on each client using its own roll, which is what made multiplayer counts disagree.

Who needs it

  • Recommended: every player in the lobby.
  • Extraction rooms: the host generates them; vanilla map sync sends those rooms.

Config (host)

Edit BepInEx/config/firenyth.extractionrandomizerplus.cfg (or REPOConfig):

Setting Default Meaning
Minimum 1 Lowest total extracts per level (truck counts; 1 = truck only)
Maximum 3 Highest total extracts per level (truck counts)
Haul Goal Multiplier 0.33 Host scales haul once, then vanilla RPC syncs it

Only the host's Min/Max/multiplier matter for the generated level.

Limits

The generator still needs dead-end rooms for extracts. Asking for 8 does not guarantee 8 if the map has too few one-door tiles. The log will show ExtractionAmount: 4 -> 7 (total 8 incl. truck extraction); if fewer appear, the generator ran out of legal spots, not a lobby desync.

Verify

Host BepInEx/LogOutput.log should look like:

[ExtractionRandomizerPlus] Level: <room>|Level - Wizard|..., Seed: ..., Target: 6 total extraction points (range 2-7)
[ExtractionRandomizerPlus] ExtractionAmount: 4 -> 5 (total 6 incl. truck extraction)

CHANGELOG

Changelog

All notable changes to Extraction Randomizer Plus are documented in this file.

The format is based on Keep a Changelog, and this project uses Semantic Versioning.

[1.0.2] - 2026-09-05

Changed

  • Host rolls a fresh extraction count each level with an unseeded RNG (no more seed from lobby/map/levels-completed).
  • Log line is now Rolled N total extraction points (range min-max).

Removed

  • Seeded sync helpers (LevelSeed, StableHash) that were left over from client-matching rolls.

[1.0.1] - 2026-08-24

Changed

  • Host sets vanilla LevelGenerator.ExtractionAmount so map generation (and haul goal sync) stay authoritative on the host.
  • Clarified that the truck extraction counts toward Min/Max totals.

[1.0.0] - 2026-08-23

Added

  • Initial release: configurable Min/Max extraction points and haul goal multiplier.
  • Standalone rewrite of ExtractionPointRandomizer with host-driven count for multiplayer.