Community listing page, reviews may not be monitored by the author.
ModRoster
No reviews yet
Kicks clients whose mod list doesn't match the server's allowed roster during login (required/optional, with version and SHA-256 checks). Forge 1.20.1. Install on the server and all clients.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
ModRoster
ModRoster is a Forge 1.20.1 mod that checks each client's mod list during the login phase and rejects clients that don't match the roster the server allows. Players are refused before they enter the world, so no join/leave messages appear. Discord bridges such as SDLink also see nothing.
Install the same jar on the server and on every client.
Features
- Required / optional roster: define which mods every player must have and which they may have. Anything else is rejected.
- Version and hash checks: each entry can pin versions and jar SHA-256 hashes. An entry with no versions/hashes acts as a wildcard.
- Audit mode: log what would be rejected without kicking anyone. Good for rolling out to an existing server.
- Build the roster from a real client:
/modroster copy player <name> required, review the preview, then/modroster confirm. A client's own report can be copied straight into the roster. - Backups and restore:
roster.jsonis backed up on every change, and/modroster restorebrings a previous one back. - Audit log:
logs/modroster-audit.logrecords time, result, player name, UUID, and what was missing or violated. - Cross-check with the Forge mod list (on by default), so a client can't simply omit mods from its own report.
- Timeout: clients that never send their report are disconnected (
timeoutSeconds, default 10). - Hash results are cached on the client, so only the first launch is slow.
- English and Japanese (ja_jp) language files included.
Quick start
- Put the jar in
modson the server and on all clients. - Start the server once.
config/modroster-common.tomlandconfig/modroster/roster.jsonare created. - Set
enabled = trueandauditMode = true, then run/modroster reload. - Join with a correctly configured client, then run
/modroster copy player <name> requiredfollowed by/modroster confirm. - Move optional mods with
/modroster move <modid> optional. - When
AUDITentries stop appearing inlogs/modroster-audit.log, setauditMode = falseand run/modroster reload.
Commands
| Command | What it does |
|---|---|
/modroster reload |
Reloads the config and roster |
/modroster copy player <name> required |
Previews building the roster from a player's report |
/modroster confirm |
Applies the previewed change |
/modroster move <modid> optional |
Moves a mod between required and optional |
/modroster restore |
Restores a backup of the roster |
Limitations
- This is not anti-cheat. The mod list is reported by the client, so a modified client can fake it. ModRoster prevents accidental mismatches in mod setups.
- Clients without ModRoster are rejected by Forge's channel check, even with
enabled=false. - The hash of
minecraftandforgeitself is not reliable, so these stay inalwaysAllowby default. - On a very large modpack, the first-launch hash calculation may exceed
timeoutSeconds(max 25). - The list of rejected reports shown by the commands is kept in memory only and is cleared on server restart.
Links
- Source / issues: https://github.com/okonomiyak/ModRoster
- License: MIT
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Get it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources