Omniscye-BanEnforcer icon

BanEnforcer

BanEnforcer — Host-only SteamID64 ban list with Steam lobby gate + Photon cleanup. Glass UI, built-in Pong, and a tiny easter egg.

Last updated 4 days ago
Total downloads 49
Total rating 1 
Categories Mods Server-side
Dependency string Omniscye-BanEnforcer-1.9.4
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
nickklmao-MenuLib-2.5.0 icon
nickklmao-MenuLib

A library for creating UI!

Preferred version: 2.5.0

README

BanEnforcer — Steam-Only Ban Tool (Host)

BanEnforcer lets the host keep troublemakers out—fast. It stores bans as Steam64s and stops banned players at the Steam lobby gate (before they ever reach Photon). If someone slips through, BanEnforcer immediately cleans up RPCs/objects and closes the connection.

It also comes with a slick glassmorphism UI, a built-in Arcade (Pong) tab, and a tiny easter egg 👀.

Features

  • Steam-Only bans
    Bans are stored as steam:<Steam64> and enforced for Steam players.

  • Host-side lobby gate
    Blocks banned SteamIDs at the Steam lobby level when you’re the lobby owner.

  • Photon cleanup fallback
    If a banned player appears in-room, their RPCs/objects are removed and their connection is closed.

  • Modern UI
    Semi-transparent glass look, 3D shading, shadows, and a tidy 3-panel layout (Players / Banned / Steam Lobby).

  • Persistent
    Saves to BepInEx/config/RepoBanList.json.

  • Fast controls

    • F6 — open/close BanEnforcer
    • F7 — debug dump to console
  • Arcade (Pong)
    A quick break built into the Arcade tab. Left paddle = W/S. Right paddle has adaptive AI. Runs on unscaled time so it’s playable even when the game is paused.

  • A little easter egg
    There’s a small audiovisual mode tucked away. We won’t spoil how to trigger it. If you find it, switching tabs exits it.

How it works (short version)

  1. You ban a Steam64 (from in-room Players, from the Steam Lobby list, or by manual entry).
  2. BanEnforcer adds steam:<Steam64> to your local list and saves it.
  3. As lobby owner, it tries to kick that SteamID at the Steam lobby level.
  4. If a banned user is already in, BanEnforcer removes RPCs/objects and closes the connection via Photon.

⚠️ Host-only enforcement. Non-hosts can open the UI in “viewer” mode but only the host’s instance enforces bans.

UI & Controls

  • Open UI: press F6 (also adds a BAN LIST button to Escape/Lobby menus)
  • Debug dump: press F7
  • Tabs:
    • Bans — players in room, your banned list, current Steam lobby members, and a manual Steam64 field
    • Arcade (Pong) — quick game; Left = W/S, Right = AI

Save file: BepInEx/config/RepoBanList.json

Using BanEnforcer

  • Ban a current player:
    UI → Players in RoomBAN (Steam)

  • Ban from Steam Lobby list:
    UI → Steam Lobby MembersBAN (Steam)

  • Manual Steam64 ban:
    UI → Manual Steam64Ban by Steam64

  • Remove a ban:
    UI → Banned (Steam)Remove

  • Clear all bans:
    Top bar → Clear All Bans

If a player shows “Unknown” for Steam64, give it a moment or use the Steam Lobby panel/manual entry. The F7 debug dump prints everything it knows.

Compatibility & Notes

  • Steam-only: bans apply to Steam64 IDs.
  • Host required: only the host can enforce kicks/gates.
  • Lobby ownership: Steam lobby kicks work when you own the lobby (BanEnforcer falls back to Photon cleanup otherwise).

Support

Created by Omniscye
Support my work: Ko-fi --> Shout of to OrigamiCoder for being an awesome person in general and helping me test!