
RepoRPG
Roguelite RPG overhaul (formerly Semibot RPG): 30 classes with skill trees, attributes, gear, elites, bosses and contracts, lobbies up to 20. Resets every run.RepoRPG
Formerly Semibot RPG. Same mod, new name. Updating from Semibot RPG: install RepoRPG and uninstall the old "SemibotRPG" package. Your settings (
rpgmod.semibotrpg.cfg, same id) carry over as they are, and your account progress, saves and presets are copied fromBepInEx/config/SemibotRPGtoBepInEx/config/RepoRPGon the first start (the old folder stays as a backup). Everyone in a lobby needs RepoRPG; a player still on Semibot RPG is told to update.
A roguelite RPG overhaul for R.E.P.O. Every run you pick a class, level it up, spend skill and attribute points, collect gear, hunt elite enemies and clear side contracts. Progress is saved with your game save and resets when the run ends.
Requirements
- BepInExPack (BepInEx-BepInExPack 5.4.2305).
- MenuLib by REPOModding (REPOModding-MenuLib, 2.6.0 or newer). The mod manager installs it automatically.
- Remove the deprecated MenuLib by nickklmao (nickklmao-MenuLib) if you still have it. Both use the same id, so only one of them loads. With both installed, RepoRPG writes a warning to the log naming the old one.
- Without MenuLib the mod still runs as normal (its menu opens with K / View); the log notes that it's missing.
Guide tab
A Guide tab (it replaces Help) explains every feature in plain language: categories on the left, the topic on the right with a one-line summary, short bullets, Tip / Note boxes and "Go to" buttons. Numbers, keys and lists come from the live data (your bindings, the host's settings); the Classes topic lists every class with role, active and synergy partners. Searchable, fully usable with WASD or a controller, and the ? button opens it on the screen you're on.
Team play
- Team synergies: 38 class pairs (every class has 2-3 partners) get a small bonus while both are alive and within
15 m (
[Team] SynergyRange). The HUD shows "Synergy: Name" with both class colours under the contracts; the class page lists each class's partners. A class never pairs with itself and identical partners don't stack; bonuses go through the normal stat code, so the global caps still apply. Table:synergies.json(override like the other data). - End-of-level highlights: when every extraction point is done, the host picks up to 4 highlights from a pool of 18 ("Most valuable carried", "Clutch revive", "Pied piper", "Cart MVP", ...) and shows a card for 8 s. It never delays the level change; any key (or Back on a controller) closes it.
- Revive drama: a death head can call out (
V/ d-pad left): a ring and a HELP marker with the distance for teammates, 10 s apart, 3 per death. Medics and Undertakers get up to +60% revive XP for a revive within 20 s of the death (less after, none at 90 s). - Host settings in
[Team], shared with the lobby:Synergies,SynergyRange,Highlights,HighlightCount,HighlightSeconds,CallOuts,CallOutCooldown,CallOutMax,ClutchReviveBonus. Personal:[Controls] CallOutKey,SynergyHud,[Controller] CallOutButton.
Loot and challenge
- Elite bosses: every 3rd level (from level 3) one monster becomes a named boss ("Rustmaw the Unpaid"): elite tier
3 with 3 modifiers (the elite ones plus boss-only Relentless and Stalwart), tougher with more players (x2 solo to
x3.5 with 7-10). Banner + top-right line while it lives. On the kill every player gets their own Legendary (25% a
Unique, half set pieces), 30 Scrap and a Boss Heart.
[Bosses], names inbosses.json. - Gear sets: 8 sets (
sets.json), 2- and 4-piece bonuses. Set pieces drop from Rare+ gear (15%) and bosses. The Gear tab shows "Mover's 2/4" with the bonuses, compare shows set bonuses gained / lost, salvaging a set piece asks. - Crafting parts: Sinew, Core Shard, Prime Essence, Boss Heart. Monster drops are glowing labels: walk over one to
take your own copy. Also from contracts, extractions, 5 dodges, 5 lured / pacified monsters and salvage. Craft on the
Gear tab (point at an item, press Craft, or the extra action on its row): reroll a line, raise a stat, upgrade
rarity, Epic to Legendary. 3 crafts and 1 rarity upgrade per item.
[Loot]. - Team contracts: one optional contract per level (
teamcontracts.json), majority vote in 40 s (Contracts tab, or hold the call-out key). Big rewards; failing costs Scrap (never below 0) or curses the next level (Fragile, Exposed, Marked, Drained). Only the players there for the vote are in it.[TeamContracts].
Host settings in game
The Host tab lists every setting shared with the lobby, grouped, with its description, default and when it takes
effect (NOW, NEXT LEVEL, NEXT RUN). The host edits, presses Apply (a summary first), and the values are saved to
the host's config and sent to everyone in one versioned message; changes for the next level / run wait until then.
Reset per setting or per group; named presets (BepInEx/config/RepoRPG/presets). Clients see it read-only
("Set by host") and get a pop-up when the host changes something. A client's own config is never written; its
gameplay waits until the host's settings arrive. A different mod version is caught with a clear message: the
client's mod pauses, or the host can remove them ([Lobby] VersionMismatch = Kick).
Controls
| Action | Keyboard & mouse | Controller |
|---|---|---|
| Open / close the menu | K |
Hold View / Select |
| Use your class ability | G |
LB + RB together |
| Move around the menu | Mouse | D-pad or left stick |
| Select / close / switch tabs | Click | A / B / LB, RB |
Everything except the in-menu controller buttons can be rebound in game: open the menu and go to the Controls tab. While the menu is open the game ignores your inputs, so you won't walk around or grab things by accident.
Readable at any resolution. The menu and HUD size themselves to your screen: 720p, 1080p, 1440p, 4K, 16:10, ultrawide 21:9/32:9 and the Steam Deck's 1280x800 all stay on screen and in proportion. Text never gets smaller than a readable minimum (14px at 1080p, more on bigger screens, a bit more on small handheld screens); instead of shrinking further, it wraps, and skill nodes, perk cards, gear rows and ability boxes grow taller (their lists scroll). Controls > Text Size sets 75% to 200% on top of the automatic size (with a controller: select - / + with A). Fit to boxes lets text grow into spare room in boxes, and Reduced effects turns off menu animations and slows HUD refreshes for weak PCs.
Looks like the game. The mod's screens take their colours, text shadow, font and sounds from R.E.P.O. itself: a
style probe reads the game's own menus while they're on screen and saves what it finds to
BepInEx/config/RepoRPG/vanilla_style.json (readable summary: vanilla_style.md). Every mod screen uses that one
style. Nothing from the game is bundled with the mod. If the game's style can't be read (for example after a game
update), the built-in style is used and the log says so. Menus open with a short fade, close with Esc or B,
and use the game's own hover, click, confirm, back and error sounds.
Notifications (XP gains, level ups, loot, contracts, perks, purchases) stack in the bottom-left corner, directly
above your class name and XP meter, newest nearest the meter. Repeated gains merge ("+30 XP – Monsters killed (x3)"),
the XP meter pulses when XP comes in, and each type has its own colour. They stay clear of the game's own HUD (and other
mods' UI) in that corner. Big announcements (welcome back, refunds, ability use, dodges) stay centred. Settings:
Controls > Notifications (on/off, duration, how many at once, and each type), or [Notifications] in the config.
Controller not detected? Open the menu with K, go to Controls and check the controller line.
- Xbox controllers (wired, Xbox Wireless Adapter or Bluetooth) are read directly through Windows, so they work even though R.E.P.O. itself ignores controllers. Press any button once after connecting it.
- Steam Deck: leave Steam Input on (the default "Gamepad" layout). Hold View to open the menu, LB + RB for your ability.
- On a PC, if Steam Input is turning your controller into a keyboard/mouse for R.E.P.O., set Steam Input for the game to "Default" or "Disabled" (Steam > R.E.P.O. > Properties > Controller).
- Other controllers (PlayStation etc.) use Unity's input system; the mod switches gamepad support back on for it.
Classes
Ten classes, each with 2 passives, 1 active ability and 3 talent trees of their own. Levels go to 30 within a run.
One player per class. In multiplayer, a class someone else is playing is locked and shows who has it. It frees up when they switch or leave.
Every class has a signature mechanic only it can get, from its passives and its talent trees. Dodge, death saves, enemy sense, healing auras, heal-on-kill and extra jumps also belong to one class each.
| Class | Signature |
|---|---|
| Juggernaut | Shield Wall: allies within 5m take 10% less damage (up to 31% and 10m with talents, +15% during Iron Wall) |
| Medic | Stabilize: allies in your healing aura who are below 30% HP take 15% less damage (up to 40%) |
| Scout | Momentum: each second of sprinting adds +2% sprint speed, up to 5 stacks (up to 8 stacks of 3.5%) |
| Hauler | Steady Grip: items you hold lose 10% less value when damaged (up to 70% with Power Lift) |
| Brute | Frenzy: kills near you give stacks for 15s: +5% throw strength and weapon damage, +2% speed each (up to 5 stacks of 8%) |
| Engineer | Power Link: allies within 6m regenerate +2 stamina/s (up to 5.5/s within 12m) |
| Phantom | Shadowstep: every dodge gives +20% speed for 3s (up to 35%), and Vanish takes 4s off your ability cooldown per dodge |
| Survivor | Scar Tissue: every hit you take gives 1% damage reduction for the rest of the level (up to 2.5% per hit, 19% total) |
| Appraiser | Appraisal aura: valuables within 8m gain 10% value, once each (Rare+ more; up to 14m) |
| Warden | Mark: enemies hit by Stasis Field take 20% more damage from everyone for 10s (up to 45% for 16s) |
Team effects (Shield Wall, Stabilize, Power Link, Mark, appraisal) need the mod on every player. The HUD shows what's
active: Momentum stacks, Frenzy, Shadowstep, Scar Tissue, and when a teammate's Shield Wall or Power Link covers you.
Caps are host settings under [Rules]: MaxShieldWall, MaxStabilize, MaxScarTissue, MaxMarkDamage,
MaxHeldItemProtection, MaxAppraiseBonus.
| Class | Role | Active ability |
|---|---|---|
| Juggernaut | Tank | Iron Wall: take 60% less damage for 6s; Shield Wall gets stronger |
| Medic | Support | Nanite Burst: heal yourself and nearby allies |
| Scout | Mobility | Overclock Sprint: faster, free sprinting for 8s |
| Hauler | Cargo | Power Lift: double grab strength for 12s, and items you hold take 25% less damage |
| Brute | Fighter | Shockwave: damage and stun nearby enemies |
| Engineer | Endurance | Overdrive: refill stamina, free sprinting for 10s |
| Phantom | Stealth | Phase Out: immune to damage for 4s |
| Survivor | Sustain | Emergency Patch: heal 30% max HP over 6s |
| Appraiser | Economy | Appraisal Scan: track the most valuable loot nearby. Valuables near you gain value automatically |
| Warden | Control | Stasis Field: stun and Mark every enemy within 10m |
Skill trees
Every class has 3 talent trees of 5 tiers (ranks 5 / 3 / 3 / 3 / 1), each ending in a capstone that defines
that build. Every node is exclusive to its class: no effect appears in two classes' trees, and the
all-class stats (ability power, cooldown reduction and so on from gear and attributes) never appear in trees at all.
Ability nodes improve only that class's own ability. The mod checks this every time it starts (errors go to
LogOutput.log), and the host's Debug tab has a Check skill trees button.
| Class | Tree | Theme | Capstone |
|---|---|---|---|
| Juggernaut | Bulwark | Become unkillable yourself. | Immovable Object: take 6% less damage and +15% max health |
| Juggernaut | Shield Wall | Stand in front so your team doesn't have to. | Living Fortress: Shield Wall 6% stronger and reaches 2m farther |
| Juggernaut | Siege Engine | Lock down more often and punish whatever hits the wall. | Citadel: Iron Wall holds 2 charges, and its stun lasts 1s longer |
| Medic | Triage | A bigger, stronger healing aura. | Guardian Angel: aura heals 1 more HP per pulse, Stabilize 10% stronger |
| Medic | Biotech | Turn Nanite Burst into a team-saving blast. | Miracle Worker: Nanite Burst 30% stronger and reaches 20% farther |
| Medic | Lifeline | Nobody stays down on your watch. | Lazarus Protocol: revived allies get +10 HP, +25% revive XP, Stabilize 5% stronger |
| Scout | Velocity | Build Momentum and never let it drop. | Unbroken: Momentum lasts 3s after you stop, +8% sprint speed |
| Scout | Acrobatics | Take the high road: over gaps, rails and monsters. | Double Down: +1 extra jump, +10% jump force |
| Scout | Pathfinder | Overclock Sprint, more often and longer. | Afterburner: Overclock Sprint lasts 25% longer and fills your Momentum instantly |
| Hauler | Cargo Master | Lift anything, from anywhere, for as long as it takes. | Crane Arm: +20% grab range, +15% grab strength |
| Hauler | Careful Hands | Get every valuable to the truck in one piece. | White Glove: items you hold take 10% less damage, Power Lift protects 10% more |
| Hauler | Logistics | Bigger, longer, more frequent Power Lifts. | Heavy Lifter: Power Lift 30% stronger and lasts 20% longer |
| Brute | Wrecker | Every object is a weapon. | Wrecking Ball: +25% throw strength, +10% weapon damage |
| Brute | Bloodlust | Kill, heal, frenzy, repeat. | Rampage: +2 max Frenzy stacks, heal 1 more HP per weapon hit |
| Brute | Quake | Harder, wider Shockwaves that start the frenzy. | Earthshaker: Shockwave 30% stronger and gives you a Frenzy stack |
| Engineer | Power Grid | A stamina pool that never runs dry. | Perpetual Motion: +4 stamina/s, 15% less sprint stamina drain |
| Engineer | Power Link | Share the grid with your team. | Grid Overload: Power Link +2 stamina/s, reaches 3m farther |
| Engineer | Overclock | Run the frame hot, as long as you dare. | Meltdown: Overdrive lasts 25% longer, cooldown 10% shorter |
| Phantom | Shadow | Creep past everything, unseen and untouched. | Ghost Walk: +10% dodge chance, +20% crouch speed |
| Phantom | Shadowstep | Every near miss pushes you faster. | Vanish: each dodge takes 4s more off the cooldown, +5% dodge chance |
| Phantom | Phasing | Live between worlds a little longer. | Between Worlds: Phase Out lasts 30% longer and heals 5% more |
| Survivor | Resilience | Get tougher with every hit you take. | Battle-Scarred: +1% Scar Tissue per hit, +6% max |
| Survivor | Last Stand | Cheat death, then come back swinging. | Cockroach: +1 Last Stand per level, heals 10 HP more |
| Survivor | First Aid | A better patch, sooner. | Phoenix Protocol: Emergency Patch 30% stronger, cooldown 15% shorter |
| Appraiser | Valuation | Make every item worth more. | Golden Eye: appraised valuables gain 5% more, Rare+ another 5% |
| Appraiser | Accountant | Turn every haul into XP and better gear. | Insider Deal: +10% all XP, +3 gear luck |
| Appraiser | Scanner | See every valuable in the building. | Omniscience: Appraisal Scan tracks 50% more items and reaches 25% farther |
| Warden | Watchtower | See them coming, and hunt the elites. | All-Seeing: enemy warning 15m farther, Marked enemies take 5% more |
| Warden | Judgment | Marked enemies fall fast, and every kill reloads you. | Sentence: Marked enemies take 10% more damage for 4s longer |
| Warden | Stasis | Bigger, longer freezes. | Time Lock: Stasis Field lasts 30% longer and reaches 20% farther |
Points: 1 per level plus 1 every 10 levels, 32 at level 30, against 45 ranks per class: enough to finish two trees, or two capstones plus part of the third. Tiers open at levels 1, 7, 13, 19 and 25.
Refund: runs saved with the old trees get every spent skill point back once, to re-spend on the new trees.
Tuning: every node's name, description, values, unlock level and prerequisite is in classes.json (copy
classes.default.json to classes.override.json to edit). Ability nodes use the class's own ability stats
(active.mods), and ability extras are active.riders (a class stat that adds an action or a buff to the ability).
Attributes
2 points per class level (plus contract and upgrade rewards), 13 attributes in three groups. Each attribute goes to 20 points; past its soft cap, every extra point counts half, so nothing can be stacked into a broken build (20 points = 15 points' worth). Attributes are general: none gives a class signature (those stay in the talent trees).
| Group | Attribute | Per point | Soft cap |
|---|---|---|---|
| Combat | Throw Strength | +3% throw strength | 10 |
| Combat | Weapon Damage | +3% weapon damage | 10 |
| Combat | Focus | +2% cooldown reduction, +3% ability power | 10 |
| Physical | Vitality | +3% max health | 10 |
| Physical | Endurance | +3% max stamina, +0.15 stamina/s | 10 |
| Physical | Agility | +1.2% walk speed, +1.2% sprint speed, +1.5% crouch speed | 8 |
| Physical | Leap | +2% jump force | 8 |
| Physical | Grip Strength | +3% grab strength | 8 |
| Utility | Reach | +2.5% grab range | 8 |
| Utility | Finesse | -2% stamina drain while carrying | 10 |
| Utility | Stealth | +2% less noise | 10 |
| Utility | Recovery | +0.02 HP/s regen, +4% revive XP | 10 |
| Utility | Fortune | +0.5 gear luck, +1.5% bonus currency share | 10 |
Stealth works on the host's monsters: noises made right next to you (your steps, what you carry or drop) reach less
far, capped at 40% quieter. Fortune's currency bonus is created on top of your share, so nobody else gets less (capped
at 25%). The Attributes tab shows each attribute's current total and exactly what the next point adds. Everything
(names, descriptions, values, soft caps) is in rpg.json. Runs saved before this change get all attribute points back.
Gear and loot rarity
Four gear slots: Weapon Module, Plating, Servos and Core. Gear rolls Common, Uncommon, Rare, Epic or Legendary with random stats; Legendaries add a unique effect such as bleeding hits, lifesteal, an extra death save or an extra jump. Gear drops from elites, contracts, extraction points and finished levels. Salvage unwanted gear for XP.
Valuables roll a rarity too, and rare ones are worth up to 3.5x more.
Elite enemies
Some enemies spawn as Champions (1 modifier) or Overlords (2 modifiers): Armored, Regenerating, Swift, Unstoppable, Enraged. They get more common each level, give 2-3x XP and always drop gear.
Contracts
Three team contracts each level, the same for everyone: Exterminate, Elite Hunter, Speedrun, No Casualties, Rescue, Specialist and Haul. Rewards: XP, gear and attribute points.
Extraction XP. The first extraction point in a level gives everyone 30 XP; each one after that gives 75% of
the previous (never less than 40% of the first), so levels with many extraction points don't flood you with XP.
Host settings: ExtractionXpFirst, ExtractionXpFalloff, ExtractionXpFloor under [XP Sources].
Healing balance
R.E.P.O. has no natural healing, so the mod keeps heals modest and caps them, whatever you stack:
| Healing source | Cap (host setting) |
|---|---|
| Your regeneration (all sources) | 0.6 HP/s, and only after 6s without taking damage |
| Healing auras on allies | 3 HP per ally every 3s |
| Heal when an enemy dies near you | 20 HP |
| Heal per weapon hit (lifesteal) | 3 HP |
| Bonus HP on revive | 35 HP |
| Heal when an extraction completes | 25 HP |
Ability heals (Nanite Burst, Emergency Patch) only get half of your Ability Power bonus. All caps are in the
[Healing] section of the config.
Saved runs
RPG progress belongs to the game save it was earned in. Leave the game any way you like (quit to menu, disconnect, close the game, even mid-level) and loading that save brings everything back exactly as it was: every player's class, levels, XP, skill points and skill tree, perks, attributes, gear and inventory, contracts in progress and anything bought in the mod shop.
- One file per game save:
BepInEx/config/RepoRPG/saves/<save name>.json, holding every player of that save by Steam ID. Two saves never share progress, and a new game always starts fresh. - Saved automatically: whenever the game saves, a few seconds after anything changes, and when you quit or leave.
Each write goes to a temporary file that then replaces the real one (the previous copy is kept as
.bak), so a crash can't corrupt it. If a file is ever unreadable, it's set aside as.bad, a warning is logged and that save starts fresh (or uses the.bak). - Roguelite rule: when a run ends and the game deletes its save (team wiped / game over), that save's RPG data is deleted too.
- Multiplayer: the host's game owns the save file. When you join or rejoin, the host sends you your progress
(matched by Steam ID, not by slot or join order), and your game sends changes back as you play. Restored classes
stay locked to whoever has them. Your game also keeps its own copy (
runs/<steamid>/), used only if the host has nothing for you. - Menus show "Loading your progress..." until your real data has arrived, so you never see an empty run.
- The data has a version number, so future updates can upgrade old saves instead of breaking them. Progress from older versions of the mod is brought into the new format automatically the first time a save is loaded.
Perks
Every 5 levels (of your best class this run) you pick 1 of 3 perks. There are 30 and each can be taken once per run, for example: Double Charge (your ability holds 2 charges), Adrenal Loop (kills near you cut your cooldown), Glass Cannon, Bounty Hunter (elites drop extra gear), Haggler (mod shop discount), Field Medic (heal when an extraction completes). Choose them in the Perks tab or from the game's pause menu. The Perks tab also lists all 30 perks with their exact effects, marked as owned, on offer now, or still to come.
RPG Scrap (the mod's currency)
Every player has their own RPG Scrap (rename it, its short name and its badge symbol under [Currency]).
- Earned as a bonus: whenever the team earns money (extractions, finished levels), the host creates 10% of it as Scrap ($100 of team money = 1 Scrap at 100%) and splits it between everyone in the game. The team's money is never reduced or touched, so the game's shop works exactly as without the mod.
- Split: evenly by default; the host can switch to
ByContribution(half evenly, half by the value of the valuables each player carried out that level). - Yours alone: you only spend your own balance, and spending it changes nobody else's. The host can allow gifts
(Shop tab) with
AllowGifting. - Shown next to your XP meter, in the Shop tab and on the class screen; gains appear in the notifications above the XP meter ("+12 Scrap – Valuables extracted").
- Safe: the host's game keeps every balance (by Steam ID, in the save's RPG file) and checks every purchase and
gift, so a modified game can't spend what it doesn't have. Balances come back with the save and are deleted with it
when the run ends. Players new to a save start at
StartingAmount(default 0). - Host settings (shared with the lobby):
Percent,SplitMode,StartingAmount,AllowGifting.
Mod shop
While you're in the game's shop between levels, spend your Scrap on:
| Item | Price |
|---|---|
| Gear Crate (Uncommon or better) | 40 |
| Premium Crate (Rare or better) | 100 |
| Reroll a gear item's stats | 30 |
| Upgrade a gear item one rarity | 80 |
| Reroll perk choices | 30 |
| Skill or attribute respec | 20 |
Prices are set by the host ([Shop], set RespecScrap to 0 to make respecs free anywhere). The Haggler perk still gives
a discount, applied by the host only for perks it has seen you earn. Purchases outside the shop are refused and the buy
button is rate-limited.
Game shop upgrades
The game's own upgrades (Health, Stamina, Sprint Speed, Grab Strength and the rest) now feed the RPG too:
- They roll a rarity, like valuables, and everyone sees the same one. Using a rarer upgrade gives more mod XP; Rare+ also gives an attribute point, Epic+ a piece of gear, Legendary a perk pick.
- Each type adds an RPG bonus that stacks for the run, e.g. Grab Strength +3% weapon damage, Sprint Speed +2% cooldown reduction, Map Player Count +3m enemy sense, Health +0.02 HP/s regen.
- Class favourites count double. Every class has two (Juggernaut: Health and Grab Strength, Scout: Sprint Speed and Extra Jump, Appraiser: Grab Range and Map Player Count...).
- Hold an upgrade to preview its rarity and exactly what it will give you before you use it.
Game menus
Press K (hold View on a controller) anywhere - the lobby, the shop or a level - to open the mod's menu. The hint at the top (lobby) or bottom centre (shop) shows the key, with a dot when points, perk picks or new gear are waiting. The mod adds nothing to the game's own pause and lobby menus.
Host settings
The host's balance settings (leveling, XP, rules, elites, perks, shop prices) are used by everyone in the lobby. Your own config file is never changed, and your own settings come back when you leave. Controls stay personal.
Performance and compatibility
- Light on every PC, Steam Deck included. Nothing heavy runs every frame: enemy, valuable and aura checks run a few times a second and share one scene search; game values are read without creating garbage (no GC stutter); HUD text is rebuilt a few times a second; the menu skips Unity's extra GUI layout pass. The mod has no particle effects, projectiles or damage numbers. All its UI is lightweight text.
- Lean networking. Class, stats, aura and perks are sent when they change and when someone joins (plus a slow safety resend every 30-60s). Never per frame. Progress is batched every few seconds.
- No save hitches. Saves are written on a background thread, atomically, and batched.
- Windows and Linux / Steam Deck (Proton). No Windows-only file paths. Xbox-style controllers (including the Deck's built-in controls) are read through XInput, which Proton provides.
- Plays nicely with other mods. Only prefix/postfix patches, each applied separately, under the unique ID
rpgmod.semibotrpg. A few seconds after start the log lists any other mod that patches the same game methods, and warns if one could skip or rewrite them. Network events another mod might also use are ignored with one warning instead of errors. Works alongside Semibot Performance. - Mixed lobbies. Display settings (text size, reduced effects, controls) are personal and never synced, so players on different hardware and settings play together normally.
Multiplayer
Everyone in the lobby should install the mod, and the host must. The host runs elites, loot rarity, weapon effects and team XP.
Configuration
BepInEx/config/rpgmod.semibotrpg.cfg - keys, XP rates, level cap, elite chances, inventory size and more.
To rebalance classes or gear, copy classes.default.json or rpg.default.json in BepInEx/config/RepoRPG/
to classes.override.json / rpg.override.json and edit it.
Notes
- Don't install alongside Semibot Classes (this mod includes it).
- If a game update breaks a feature, only that feature switches off; check
BepInEx/LogOutput.log.