You are viewing a potentially older version of this package. View all versions.
ExtraCreamyMilk-InterestingLevels-1.2.0 icon

InterestingLevels

Fresh maps that don't repeat: winding, hub and compact layouts, loops, vaults and other special rooms, rare modifiers and surprises, clutter cleanup. Works with modded valuables and keeps the haul goal reachable. Host only.

Date uploaded 2 weeks ago
Version 1.2.0
Download link ExtraCreamyMilk-InterestingLevels-1.2.0.zip
Downloads 263
Dependency string ExtraCreamyMilk-InterestingLevels-1.2.0

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

InterestingLevels

More varied, more interesting R.E.P.O. maps that still work with every valuable you have installed, base game or modded.

Install

Host only. Players without the mod get the host's map through the game's own networking: the host builds and checks the map, then the game sends the finished rooms and objects to everyone, including players who join late. A client who also has the mod (any version) just compares their rooms with the host's (a map checksum) and reports if they differ. Nothing is ever decided on a client, so a different or missing version can't cause a desync. Works with 1–20 players.

Requires BepInExPack only.

What it changes

Map shapes. Each level rolls a shape:

  • Winding: long and snaking, with few forks.
  • Hub: a wide central cluster with spokes going out.
  • Compact: dense and square, with short distances and lots of doors.
  • Classic: the game's own random walk, kept in the mix so maps still feel like R.E.P.O.

Loops and branches. Maps often get a second route between areas, so you aren't always walking back the way you came. Short side branches end in dead ends, which are good places for reward rooms.

Depth gradient. Rooms near the truck lean towards the simpler room variants and the more ordinary loot. Rooms deep in lean towards the harder variants and the more valuable loot. Going deeper is a choice.

Extraction points are spread out by walking distance, so they never all sit in one corner. The first one is placed fairly deep but not at the very end.

Special rooms (a few per map at most):

  • Vault: a deep dead end, often at the end of a branch, with extra valuables at the high-value end of the level's list.
  • Hidden room: a dead end off a side corridor, away from the main route, with a small bonus of small valuables.
  • Hazard room: a deep room that always gets the hardest room variant, with valuable but fragile loot.
  • Quiet room: a mid-depth room on the main route that gets the simplest variant. A calmer spot to regroup (monsters still roam).

Verticality. Rooms with stairs, upper floors and drops are picked a bit more often. The mod learns which rooms these are while you play, from the navmesh, and remembers them between sessions. Levels without such rooms are unaffected.

Map modifiers (rare, at most one per level):

  • Sprawling: a bigger map with proportionally more loot.
  • Labyrinth: more loops and turns.
  • Treasure Pocket: one vault guaranteed.

The host sees the active modifier on screen when the level starts.

Every map feels new

  • No repeated maps. Each map gets a fingerprint: rooms, connections, shape, special rooms, modifier, extraction points and the rooms the game picked. If a new map is too similar to one of the last 25 maps of the same level type, the host regenerates it with a new seed. After a few tries it keeps the most different one, so loading never stalls. The history is saved between sessions, so a new session won't repeat your last one.
  • Rotation. Shapes, modifiers, special rooms, extraction patterns (spread, deep first, ladder, left and right), opening directions and start rooms are picked with lower odds for anything seen recently. Modifiers and special rooms never repeat back to back.
  • Repeated rooms look different. Recently used rooms go to the back of the pick order. A room that comes back is turned a different way. Valuables avoid the spots they used last time, which also changes which of the game's swappable props show, because a spot that holds a valuable shows the valuable instead of the prop.
  • Rare surprises. A vault at the end of a long route, a grand open hub, or a long drop (the tallest room the mod knows of).

The game itself has no per-room lighting variants to pick from, so lighting stays as each level type defines it.

No weird clutter

The cleanup works only on objects the game keeps in sync for everyone: valuables and loose physics props. Room geometry and furniture are part of each room and are built identically on every machine, so the mod never touches them. It also never moves or removes doors, carts, shop items, enemies, players, cosmetics or extraction parts.

  • Before each valuable spawns, its spot is checked. It must not be in a doorway, an extraction area or the truck area, inside a wall or object, or on top of another valuable. A bad spot is swapped for a good unused spot of the same size.

  • After the level is built, the mod fixes, most important first:

    1. Stuck or fallen valuables, and anything blocking a doorway, extraction point or the truck.
    2. Unreachable or stacked valuables, and piles of duplicate props.
    3. Rooms over the density limit (default 14 objects), so players can move and carry big valuables.

    Valuables are re-placed into a free spot of the right size. Loose props are pushed clear of doorways, or removed if they're broken or piled up. If the pass runs over its time budget, it stops after the most important fixes and logs the rest.

  • The haul goal check runs after the cleanup, so the goal always matches what's really on the map.

  • With Debug logging on, each map logs what was swapped, re-placed, moved and removed, plus how similar it is to recent maps.

Valuables (base game and modded)

  • Catalog. On the first level, the mod logs every valuable the levels can spawn, with its size, the levels it belongs to and the mod it came from. Mods that add valuables (REPOLib, REPOLib-Sdk or any other way) all end up in the game's per-level lists, which is where the mod reads them.
  • Spawn spots. If a level is short of spots for a size its valuables need (big modded valuables often are), the mod turns spare larger spots into that size or adds new ones on open floor after a clearance check. Vaults and hidden rooms get a few extra spots for their reward.
  • Balanced mix. No single valuable mod can fill more than 35% of a map (the base game is exempt). Valuables only spawn on levels they're meant for. The game's own per-size limits still apply.
  • Broken valuables (missing prefab, no value data, impossible size) are skipped with one warning in the log, instead of breaking the level.
  • Haul goal. After the goal is set, including by other mods such as RepoRPG's player scaling, the mod checks it against the value players can actually reach from the truck. It never lets the goal go above 80% of that value.

Safety

  • A level always loads. The game's own layout step always runs first. The mod's layout replaces it only when its plan is complete and valid, and keeps the game's layout if anything fails or takes longer than 250 ms.
  • One failure doesn't stop the rest. If any step fails (special rooms, modifiers, similarity, freshness, valuables, spawn spots, cleanup, haul goal, history), only that step is skipped for that level, with one log line naming the level and seed. The game's own behaviour fills in.
  • Game updates. At startup the mod checks every game method and field it uses. If one is missing, only the features that need it turn off, and the host sees a notice once.
  • No game method is replaced. The mod uses Harmony prefixes, postfixes and finalizers only, and the original method always runs.
  • Checked before play. Start room, truck, connected rooms and reachable extraction points are checked. Valuables are fixed by the cleanup pass, and the haul goal is checked against what can really be reached.
  • Damaged files. The history file is versioned, written safely and size-limited. A damaged history or config file is set aside and rebuilt.
  • Leave-alone rules. Levels whose design doesn't fit the usual room types are left alone, as is any level on the host's leave-alone list. If another mod also replaces the tile layout, this mod keeps the game's layout (you can turn this off).

Compatibility

Mod or kind of mod Status Notes
REPOLib, REPOLib-Sdk content Works Modded valuables are found in the game's level lists and credited to their mod. Broken ones are skipped with a warning.
Valuable mods Works Get spawn spots of their size, capped at 35% of a map per mod.
Level mods (new level types) Works with notes Laid out like the game's levels when they have normal, dead-end and extraction rooms. Otherwise left as designed.
Module and room mods Works New rooms are picked by the game as usual; the mod only changes the odds and order.
Module-tier mods (e.g. HarderLevels) Works They change which room is picked; the mod's layout and tier weights apply first.
Other tile-layout mods Conflict, handled The mod keeps the game's layout and logs it (setting: "Stand down for other layout mods").
RepoRPG Works Its 5–20 player valuable and haul scaling run first; the haul goal check runs last. Elites, bosses, contracts, Scavenger and Appraiser are untouched (valuables keep their real values).
MorePlayers / bigger lobbies Works Only the host decides anything; the game sends the map to everyone.
Config menu mods (REPOConfig) Works All settings show up in game.

Settings

All settings are in BepInEx/config/interestinglevels.repo.cfg. They can also be edited in game with a config menu mod such as REPOConfig. Only the host's settings matter.

Setting Default
Layout variety on
Shape weights (winding / hub / compact / classic) 25 / 25 / 20 / 30
Loop frequency, branch frequency 0.5, 0.5
Depth gradient 0.5
Verticality bias 1.0
Special rooms on (vault 0.3, hidden 0.4, hazard 0.3, quiet 0.5 per map, max 3)
Map modifiers on, 15% per level
Valuable balancing, extra spawn spots on
Max share per mod 35%
Haul goal safety 80% of reachable value
Similarity threshold 0.7 (a map this similar to a recent one is regenerated)
History length 25 maps per level type (saved between sessions)
Max regenerations 6
Freshness strength 0.7
Surprise chance 8% per level
Clutter cleanup on
Room density limit 14 valuables and loose props per room
Cleanup time budget 30 ms
Fixed seed 0 (random). Set a number to repeat the mod's choices for testing

Turn on Debug logging to get a text picture of every map in the log.

CHANGELOG

Changelog

1.4.3

Fixed

  • Too many valuables on later levels (for example 79 on level 9, where the base game spawns about 35-45). Three causes:
    • "Keep maps full" raised the loot budget for every pricey valuable, even ones the game itself would have picked, and never lowered it. Now it only evens out picks the mod changed, by the difference to the game's own pick for that spot, both ways (cheaper picks lower it), and by at most 25% of the level's budget.
    • The vault bonus was added to every size (up to +6 each) while the log said +6. It's now 6 in total, spread over the sizes the vault has spots for.
    • Loot features stacked without limit. Now every feature that adds loot shares one cap per level: by default at most 1.3x the base game's count for that level. Past it, each gets its share in proportion.
  • The minimum valuables per room is now only a floor: it never adds past the cap.

Changed

  • Defaults: Wildcard loot bonus 1 (none), Scavenger Hunt weight 0.5, Junk Room weight 0.5 (lower until the new numbers are confirmed in play). Modifier and theme weights now accept decimals.
  • New settings under 5. Valuables: "Most valuables vs. the base game" (1.3) and "Keep maps full: most budget change" (0.25).
  • The debug log and the tuning log show the base game's count and budget for each level, the mod's count and value as a ratio to it, and what each feature asked for and got.

1.4.2

Fixed

  • Spiral maps no longer roll together with Long Haul (a spiral's extraction points are on its outer rings), and a Wildcard level never adds Long Haul to a spiral or a Stranded Start map.
  • Stranded Start never puts an extraction point next to the truck's part of the map; if a map can't manage that, it's made without Stranded Start.
  • Maps whose only way out is the truck (the smallest levels) no longer get extra rooms for a shortcut or spiral.
  • A map that only fits the small shortcut no longer keeps the extra rooms meant for the full one.
  • When the Modifiers or Special rooms step fails, Wildcard levels and the spiral's centre vault are skipped too, as intended.

1.4.1

Added

  • Small shortcuts: maps too small for a full risky shortcut can get a short one, a single dangerous room with a normal route around it.
  • Small spirals: when a full spiral doesn't fit, the map can get a short one, a single loop around the centre room.
  • Tuning log: one line per level in BepInEx/config/InterestingLevels.tuning.jsonl (stays on your computer, size-limited, can be turned off).

Changed

  • Maps stay full of loot. When the mod picks pricier valuables (deep rooms, vaults, hidden rooms, themed and crazy rooms), the level's loot budget grows to match, so maps get about as many valuables as the base game. With RepoRPG its value scaling still decides what everything is worth. Gold Rush still has fewer, pricier valuables. There's also a minimum number of valuables per room.
  • Calmer start to a run. Small maps (under 8 rooms) get at most one themed or crazy room. The crazy features start on level 3 and get more common over the next levels; with RepoRPG, over its chapters. All of this can be changed in the settings.

Fixed

  • Early levels sometimes had very few valuables (for example 5 on level 1), because pricey picks used up the loot budget.

1.4.0

Added

  • Crazy but fair features. They're rare, at most two show up on one map, and none appears on two maps in a row.
    • Monster Nest: a deep room with extra monsters guarding a jackpot valuable. They stay home until someone comes close.
    • Domino Room: shelves and tables stacked with fragile valuables.
    • Explosive Pantry: a room full of explosive valuables, with good loot next door.
    • Jackpot: one huge, fragile valuable worth a big part of the haul goal. You can still make the goal without it.
    • Wildcard level: two map modifiers at once, with bonus loot.
    • Stranded Start: every extraction point is far from the truck; the first one asks for less.
    • Spiral: the map winds inwards to a centre room with the best loot, with one shortcut between rings.
    • Escalating: each completed extraction brings another monster and wakes the nest.
  • Every new feature has its own on/off switch and chance in the settings.

Changed

  • New, clearer mod page and description.
  • The valuable list is now prepared in the main menu, so the first level loads faster.
  • The full valuable list goes to its own file instead of filling the log.

Fixed

  • A short freeze at the end of a level's loading while the map history was saved.

1.3.0

Added

  • Themed loot rooms: Fragile Gallery, Heavy Storage and Junk Room.
  • Extraction pacing: a small first extraction, bigger ones after, the same total.
  • New map modifiers: Gold Rush, Long Haul, Crowded and Scavenger Hunt.
  • Centerpiece rooms: space for the level's big four-tile room in a spot that matters.
  • Risky shortcuts: a short, dangerous way into the deep part, next to a longer, calmer way round.
  • The active modifier is shown on the truck screen for everyone.

1.2.0

Changed

  • Much safer: if any part of the mod runs into a problem, only that part is skipped for the level and the level still loads.
  • After a game update, only the parts that no longer fit turn off, with a notice for the host.
  • The map history and settings files can't be damaged by a crash; a damaged file is set aside and rebuilt.

Fixed

  • Valuables were sometimes left out when their spawn spot was blocked.

1.1.0

Added

  • No repeated maps: a new map that looks too much like a recent one is remade, even across sessions.
  • Recent layouts, modifiers, special rooms and start rooms are picked less often; repeated rooms are turned a different way.
  • Rare surprises: a vault at the end of a long route, a grand hub, or a long drop.
  • Clutter cleanup: no valuables in doorways, extraction areas or the truck area, nothing stuck or stacked, no overfull rooms.

1.0.0

  • First release: map shapes, loops and side branches, special rooms (vault, hidden, hazard, quiet), better loot deeper in, spread-out extraction points, map modifiers (Sprawling, Labyrinth, Treasure Pocket), support for modded valuables, and a haul goal that always stays reachable.