ModRoster
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.
介绍
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
常见问题
ModRoster 支持哪些 Minecraft 版本?
ModRoster 支持 Minecraft Java 版 1.20.1,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。
ModRoster 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。
okonomiyak 的其他作品
查看全部 →[SBW] Extra Armory
SuperbWarfare 附属,添加额外武器
Squadtp
A squad-based utility mod featuring party teleport, rally points, and a Battlefield-style down/revive system.
squadtp-conquest
A Battlefield-style Conquest game mode for squadtp — capture points, ticket bleed, and squad-based teamplay.
classroadout
Self-service 5-slot loadouts, OP whitelists/presets, resupply gadgets, cover, ammo grants, and a spawn kit — a standalone gearing system for any server.
评论
登录后评论和评分