BetterModeration
Native host-side Fusion moderation with session and custom timed bans, persistent offline-editable storage, individual pardons, and platform-ID spoof protection.BetterModeration
BetterModeration expands BONELAB Fusion's host moderation controls without requiring other players to install the mod.
Features
- Native Fusion UI: Adds a nested
BetterModerationgroup directly to the selected player's existing Actions page while preserving Fusion's ready-made Kick, Ban, and Teleport controls. - Delayed UI initialization: Registers the Actions-panel extension only after Fusion completes network login, following Fusion's own menu lifecycle.
- Client-side host tool: Only the lobby host needs BetterModeration installed. Joining players do not need the mod.
- Normal kicks: Fusion's existing Kick action remains available and continues using Fusion's normal networking.
- Session bans: Kicks the selected player and blocks that authenticated platform account from rejoining for the life of the current hosted server session.
- Automatic session reset: Session bans remain memory-only and clear when the host disconnects or starts a new server session.
- Custom timed bans: Separate native Minutes, Hours, and Days controls allow a combined duration from one minute through 30 days.
- Persistent timed bans: Timed bans survive game and server restarts in
UserData/BetterModeration/timed-bans.json. - Automatic expiration: Expired timed bans are removed automatically when the ban list is loaded or checked.
- Individual pardons:
Clear this player's moderationremoves that player's BetterModeration session and timed bans without affecting other players. - Offline management: The indented JSON ban file can be reviewed or edited in a text editor while BONELAB is closed.
- Pre-join enforcement: Active session and timed bans are rejected during Fusion's connection request, before the player finishes joining.
- Platform-ID spoof protection: Compares the client-claimed backup platform ID with the platform ID authenticated by Fusion's transport and denies mismatches.
- Identity-safe enforcement: Usernames and nicknames are treated as display metadata only; moderation decisions bind to the authenticated platform ID.
- Host validation: Moderation actions refuse invalid players, the lobby host, and attempts made by a non-host client.
- Fusion notifications and logs: Timed-ban results, invalid durations, pardons, and rejected connections produce feedback for testing and moderation auditing.
Using the menu
- Start BONELAB with Fusion installed.
- Connect to Fusion and host a lobby.
- Open Fusion's Location tab.
- Select another player from the lobby player list.
- Find and open BetterModeration in the player's existing Actions panel.
- Choose a session ban, enter a custom timed duration, or clear that player's moderation actions.
BetterModeration registers its Actions-panel integration only after Fusion has finished logging in.
Ban storage and offline editing
Timed bans are stored as readable JSON at:
BONELAB/UserData/BetterModeration/timed-bans.json
Close BONELAB before manually editing the file. Session bans are intentionally kept only in memory and clear when the server session ends.
Installation
Install with a Thunderstore-compatible mod manager, or place BetterModeration.dll in BONELAB's Mods folder manually.
Requirements
- BONELAB
- MelonLoader
- Fusion 1.14.2 or compatible
Important limitations
- BetterModeration only enforces its rules while the player running it is the lobby host.
- Other players do not need BetterModeration installed.
- A genuinely new Steam account has a new authenticated identity and cannot be conclusively linked to an older account by a local-only mod.
- Public IP collection is not included. Steam relay networking does not provide a trustworthy public-IP identity to this mod.
- Host migration does not transfer BetterModeration's in-memory session bans to another player's computer.
