One player against the rest of the server — a full-loadout solo takes on a wall of 1-HP grunts, ModSharp/CS2.
An admin picks one (or more) players to be the solo — full HP, $99999, every weapon, infinite reserve ammo. Everyone else is a grunt: 1 HP, knife and Zeus only, no buy menu. Solo goes T-side, grunts go CT, and the round resets every restart. Original ModSharp build, not a port.
Copy the build output into your ModSharp install (<sharp> = your sharp directory):
| From | To |
|---|---|
.build/modules/OneVsAll/ |
<sharp>/modules/OneVsAll/ |
.assets/locales/onevsall.json |
<sharp>/locales/onevsall.json |
.assets/configs/onevsall/commands.jsonc |
<sharp>/configs/onevsall/commands.jsonc |
Restart the server (or change map) to load. ConVars are written to an auto-exec config under
configs/onevsall/ on first run.
Uses the ModSharp first-party modules (they ship with ModSharp): AdminManager (gates
!streamer behind a permission), LocalizerManager (all player-facing text), TargetingManager
(resolving !streamer <name> to a player). All three are resolved optionally — !streamer still
works without AdminManager (falls back to an unauthenticated command with a logged warning), and
without TargetingManager it falls back to a plain name-substring match.
External plugins:
| Plugin | Required? | Why |
|---|---|---|
| EventManager | ⚪ Optional | Lets 1 vs All register as a switchable event mode alongside other gamemodes on a shared server, booting dormant (onevsall_enabled 0) until activated. Without it, 1 vs All just runs standalone and always-on. |
| Command | Description | Permission |
|---|---|---|
!streamer <player> |
Toggle a player onto/off the solo side. More than one solo is allowed. | @onevsall/streamer |
!streamer off / !streamer clear |
Clear the solo side entirely. | @onevsall/streamer |
Command name/aliases/permission are configurable in configs/onevsall/commands.jsonc.
ConVars (auto-exec'd from configs/onevsall/):
| Setting | Default | Meaning |
|---|---|---|
onevsall_enabled |
1 |
Whether the mode is active — also the EventManager dormancy switch. |
onevsall_solo_hp |
200 |
HP given to the solo player(s). |
onevsall_grunt_hp |
1 |
HP given to each grunt (the rest of the server). |
onevsall_money |
99999 |
Money given to the solo player each round. |
onevsall_round_time |
5 |
Round time in minutes. |
On every round restart, whoever is set via !streamer is switched to T with the full solo loadout;
everyone else is forced to CT, stripped down to knife + Zeus, and set to 1 HP. Fall damage is
suppressed for both sides, the solo's reserve ammo is topped off on every weapon_fire, and
mp_roundtime/mp_buy_anywhere/mp_buytime/mp_maxmoney are re-applied each round so the solo can
buy freely at full money. If no solo is currently set, round-restart team assignment is skipped
entirely rather than forcing an all-CT round. With the optional EventManager plugin present, the mode
registers as a switchable event and starts dormant instead of always-on.
dotnet build -c ReleaseOutputs .build/modules/OneVsAll/OneVsAll.dll.
Made with ❤️ by yappershq
⭐ Star this repo if you find it useful!