RarityWeightMod
Configure cosmetic box spawn count and rarity weights per level. Set how many boxes spawn and control the chance of each rarity tier.RarityWeightMod
📖 About
RarityWeightMod is a R.E.P.O. mod that controls how many cosmetic boxes spawn per level and the rarity weight of each tier.
✨ Features
- In-game Settings Panel (F5) — configure everything without editing files
- Box Markers (F6) — color-coded brackets showing box locations on screen
- Three spawn modes: Volume_Offline, All_Offline, AutoLevel_Online
- Rarity weights: control spawn chance of Common, Uncommon, Rare, and UltraRare independently
- Customizable hotkeys: rebind Settings and Markers toggle keys in-game
- Level-only: patches apply only during actual levels — not in shop, lobby, or arena
- BepInEx config: edit
BepInEx/config/com.yourname.rarityweightmod.cfgor use in-game Settings
🎮 In-Game Controls
F5 — Open/Close Settings Panel
- Change spawn mode, box count, rarity weights
- Toggle HUD and box markers
- Rebind hotkeys (click button → press new key)
- ESC to close
F6 — Toggle Box Markers
- Shows/hides color-coded brackets around cosmetic boxes
- Green = Common, Blue = Uncommon, Purple = Rare, Orange = UltraRare
⚙️ Spawn Modes
Volume_Offline (requires all players to have the mod)
Spawns up to BoxCount boxes per level, limited by available spawn volumes. Stops naturally when no volumes remain.
All_Offline (requires all players to have the mod)
Forces BoxCount boxes using a compensation window of BoxCount × 3 - 1 attempts. More reliable than Volume on smaller levels.
AutoLevel_Online (host-only — friends do not need the mod) Automatically spawns the maximum number of boxes the current level allows to extract. Scales with progression:
| Levels completed | Can sell per level |
|---|---|
| 1–5 | 1 box |
| 6–10 | 2 boxes |
| 11+ | 3 boxes (max) |
Values depend on cosmeticWorldObjectsLevelLoop (5) and cosmeticWorldObjectsLevelLoopsMax (2) from the game's ValuableDirector.
🔧 Configuration
In-Game (Recommended)
Press F5 during gameplay to open the Settings panel. All options can be changed in real-time.
Config File (Advanced)
Edit BepInEx/config/com.yourname.rarityweightmod.cfg:
[General]
## Enable or disable the mod entirely.
# Default: true
Enabled = true
## Spawn mode:
## Volume_Offline - targets BoxCount boxes, limited by spawn volumes (all players need mod)
## All_Offline - forces BoxCount boxes with compensation loop (all players need mod)
## AutoLevel_Online - auto-scales to level extract limit, host-only
# Default: Volume_Offline
Mode = Volume_Offline
## Target box count per level — used by Volume_Offline and All_Offline only.
# Acceptable values: 1-20
# Default: 3
BoxCount = 3
[Display]
## Show HUD info in top-left corner.
# Default: true
ShowHUD = true
## Show color-coded brackets around cosmetic boxes.
# Default: true
ShowBoxMarkers = true
[Hotkeys]
## These are hidden from REPOConfig — rebind in-game via Settings panel (F5).
## Format: <KeyCode>
# Default: F5
OpenSettingsKey = F5
# Default: F6
ToggleBoxMarkersKey = F6
[RarityWeights]
## Weights are ratios. Example: 60:25:12:3 gives ~60% Common, ~25% Uncommon, ~12% Rare, ~3% UltraRare.
## Setting all four equal gives 25% chance per tier.
# Default: 60
CommonWeight = 60
# Default: 25
UncommonWeight = 25
# Default: 12
RareWeight = 12
# Default: 3
UltraRareWeight = 3
📦 Installation
- Install BepInExPack REPO
- Place
RarityWeightMod.dllinBepInEx/plugins/ - Launch the game
- Press F5 in-game to configure
📜 Changelog
See CHANGELOG.md
📄 Dependencies
- BepInExPack_REPO >= 5.4.23
🧩 Compatibility
Patches ValuableDirector.SpawnCosmeticWorldObject, CosmeticWorldObjectLevelLoopsClampedGet, CosmeticWorldObjectLevelLoopsGet, and CosmeticWorldObject.Start. Does not modify EnemyDirector, LevelGenerator, or any other system.
