BattleScars
Your Semibot cracks, bandages, dents and loses limbs as HP drops, so a glance across the room reads a teammate's health. Heal up and the scars mend. Unmodded teammates see your damage too. Optional sp
Screenshots 2 screenshots
About this mod Author’s original text
BattleScars
Your Semibot visibly falls apart as its health drops. A crack or two first, then bandages, dented plating, and limbs hanging off by the time you're one hit from dead. Heal up and it mends.
A note from Vippy
After way too long of a break, I'm finally back and working on these again:D Every one of my mods just got a full pass: bugs fixed, reports read, a few things I'd always meant to do. New builds and fixes land in Vippy's Discord before they hit, so come hang out. Thanks for sticking around.
R.E.P.O. puts a health bar on the back of everyone's neck, but you have to be behind them and close to read it. BattleScars writes the damage across the whole body instead, so you can read a teammate from across the room.
The part most cosmetic mods can't manage: it shows on every Semibot in the lobby, even your unmodded friends'. Damage rides the game's own cosmetic system, so everyone sees it whether they installed the mod or not. Nothing gets unlocked, saved, or written to your file. The scars wipe clean when you patch up.
Visuals only by default. No gameplay changes, just the look, plus a red low-health vignette creeping in at the screen edges. Want the Semibot to play as rough as it looks? Flip Mode = Full for a slower walk and capped stamina as the damage stacks up.
Install
Per-player. Every player who wants the effects on their own Semibot needs the mod. Your scars broadcast to everyone via the game's normal cosmetic RPC, so unmodded teammates still see them; they just can't have their own.
If only the host installs, only the host gets scars. There's no "host enforces on everyone" path. Unmodded clients never run the code that drives SetupCosmeticsRPC, so nothing can be forced onto them.
How it works
The first scar shows up at 95 HP, and another body part joins it every 6 HP you lose after that. Those numbers are the default Heavy intensity; ScarIntensity shifts the whole curve later (Normal, Light) if you want scars to hold off longer.
Each scarred part worsens by stacking layers rather than swapping one look for the next. A crack shows up first, then a bandage joins it, then the crack deepens into dented plating, and finally the limb breaks outright into a broken mesh. The parts don't worsen in lockstep. Whatever got scarred first runs a stage or two ahead of the newest scar, so most of the time the Semibot wears a mix. A bandaged arm next to a cracked leg next to a broken-mesh shoulder.
Rough landmarks at Heavy: the first broken-mesh limb shows around 40 HP. The broken head holds out the longest, until you're under 15. Everything between those overlaps.
Which limbs scar, and in what order, holds steady for a whole damage episode, shop and truck trips between levels included, and healing walks it back in reverse. It only reshuffles once you're patched back up to full health, so the next time you get hurt the damage lands somewhere else.
Max-HP upgrades buy a real buffer. 160 max HP means you can take 65 damage at Heavy before the first scar shows.
When you die your dead head wears the broken mesh, regardless of what HP the killing hit landed at.
What broadcasts
Different effects travel different paths:
| Effect | Reaches | How |
|---|---|---|
| Scars | Everyone in the lobby | Vanilla SetupCosmeticsRPC |
| Speed / stamina nerfs | Everyone | Local nerfs ride position sync |
| Red screen vignette | You only | Local |
The mod adds no network traffic of its own. Scars travel on the game's existing cosmetic RPC, and the nerfs are local.
Mode
One setting decides the overall feel:
- Off: Mod inactive.
- VisualOnly (default): Scars and the screen vignette. No movement or stamina changes.
- Full: Adds the move-speed and stamina nerfs on top.
Config
Lives at BepInEx/config/Vippy.BattleScars.cfg. REPOConfig picks it up as an in-game settings page, edits apply live.
[General]
Mode = VisualOnly
ScarIntensity = Heavy
[Effects]
Vignette = true
VignetteIntensity = 0.25
CameraGlitches = false
[Testing
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: