Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
InteriorScrapTweaks
Scales scrap amount and value depending on the interior (dungeon). Per-interior multipliers keyed by dungeon name; works with modded interiors and LethalLevelLoader.
| Last updated | a day ago |
| Total downloads | 70 |
| Total rating | 0 |
| Categories | Tweaks & Quality Of Life BepInEx Server-side Items Mods Tools Misc Interiors |
| Dependency string | CunningFox146-InteriorScrapTweaks-1.0.0 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2305README
InteriorScrapTweaks
Scales scrap amount (item count) and scrap value (average value per item) depending on which interior (dungeon) is generated for the moon.
- Keyed by dungeon name, so modded interiors (e.g. Wesley's Interiors) work too:
with LethalLevelLoader installed the LLL dungeon name is used,
otherwise the DungeonFlow asset name (e.g.
Level1Flow). - Host-only: scrap is spawned by the host, so only the host needs the config. Clients don't need the mod (but having it is harmless).
- Original level values are restored right after spawning, so other moons and other mods are unaffected.
Config
BepInEx/config/CunningFox146.InteriorScrapTweaks.cfg
| Section | Key | What it does |
|---|---|---|
| General | DefaultScrapCountMultiplier |
Scrap-count multiplier for interiors not listed (default 1) |
| General | DefaultScrapValueMultiplier |
Scrap-value multiplier for interiors not listed (default 1) |
| Interiors | ScrapCountMultipliers |
Name=Multiplier, ... per-interior scrap-count multipliers |
| Interiors | ScrapValueMultipliers |
Name=Multiplier, ... per-interior scrap-value multipliers |
| General | LogDetectedInteriorNames |
Log detected interior keys on every generation (true by default) |
Example:
[Interiors]
ScrapCountMultipliers = Factory=1.0, Mansion=1.5, Mineshaft=0.7
ScrapValueMultipliers = Factory=1.0, Mansion=1.2, Mineshaft=1.0
Total scrap value on a moon roughly scales as
amount multiplier x value multiplier
(both compound: more items and richer items).
Safety caps: spawned scrap count is capped at 1000 items per moon and the effective value multiplier at x100000, so a config typo can't freeze the game. Hitting a cap logs a warning — legitimate values never come close to them.
Finding interior names
- Land on a moon with
LogDetectedInteriorNames = true. - Open the BepInEx console (or
LogOutput.log) and find the line:Interior keys: Mansion | Level2Flow | Type_1 -> scrap amount x1.5, ... - Use any of the logged keys in your multiplier tables (matching is case-insensitive, first match wins).
Install
- Via Thunderstore / r2modman: install like any BepInEx mod.
- Manual: copy
InteriorScrapTweaks.dll(plusmanifest.json/README.md) intoLethal Company/BepInEx/plugins/InteriorScrapTweaks/.
Build
Requires .NET 8 SDK. Game/reference assemblies are proprietary and not
committed — copy them into libs/ (see libs/README.md), then:
dotnet build InteriorScrapTweaks -c Release
Reference paths (LethalCompanyDir, BepInExCoreDir, LethalLevelLoaderDir)
default to libs/... and can be overridden per build, e.g.
-p:LethalCompanyDir="<game Managed folder>".
LethalLevelLoader is referenced at compile time (any installed copy of
LethalLevelLoader.dll works) but stays
runtime-optional: the mod runs fine without LLL installed and simply
matches interiors by DungeonFlow name in that case. No Thunderstore
dependency on LLL is declared.
Optional: deploy the built DLL into a local Thunderstore profile after
build with -p:ThunderstoreProfilePluginsDir="<profile BepInEx plugins folder>".
How it works
RoundManager.SpawnScrapInLevel reads SelectableLevel.minScrap/maxScrap
and RoundManager.scrapValueMultiplier. A Harmony prefix applies the
interior's multipliers to those fields; a postfix restores the originals.