CheckMOD
1.2.0A server-side anti-cheat plugin that detects client-side mods and kicks players using blacklisted cheats. Supports Paper 1.20 - 1.21.11 | Requires PacketEvents 2.7.0+ 目前只支持简体中文语音,后续将会更新支持多语言。
1.2.0latestCheckMOD 1.2.0Jul 5, 2026 * 修复了等待Packetevens加载的时间。 * 修复了一个报错问题。 * 如果依赖加载慢,ChecksMOD会等待其加载成功。1.1.0CheckMOD 1.1.0Jul 5, 2026 ChecksMOD v1.1.0 更新说明
发布日期:2026-07-05 | 作者:YuHongChen(LiquidTeam)
---新增内容
1. Paper 1.21.5 支持
- Paper API 升级至1.21.5-R0.1-SNAPSHOT- 兼容 Paper 1.20 ~ 1.21.5 全版本2. PacketEvents 2.9.4+
- PacketEvents 升级至 2.9.4,支持最新的 Minecraft 协议变更3. 通道追踪
- 记录玩家加入时发送的所有网络通道 -/cm check <玩家>会显示通道列表,黄色标记的§e[未知]通道即为可疑 - 帮助管理员快速发现未知客户端特征4. 品牌空值检测
- 原版客户端不会向服务端发送 `minecraft:brand` 通道 - 只要客户端发送了该通道(即使内容为空),即可判定为非原版客户端 - 空品牌显示为空品牌(可疑)---
| 问题 | 原因 | 修复 | |------|------|------| | LiquidBounce 无法拦截 | 品牌内容为空字符串,未被判定为违规 | 空品牌也触发检测 | | 退出重进不检测 |修复问题
checkedPlayers未在退出时清除 | 新增PlayerQuitEvent清除状态 | | Forge 通道被误标为 Fabric |fml:在 Fabric 通道前缀中 | 分离出独立的 Forge 通道检测 | | Configuration 阶段包被跳过 |Bukkit.getPlayer()在该阶段返回 null | 改用event.getPlayer()| ---注意事项
运行环境
| 要求 | 说明 | |------|------| | Java 21 | Paper 1.21.5 强制要求 JDK 21 | | PacketEvents 2.9.4+ | 必须安装对应版本的 PacketEvents 插件 | | Paper 服务端 | 不支持 Spigot / CraftBukkit |兼容性说明
- Paper 1.20 ~ 1.21.1 → 需要 PacketEvents 2.7.0+(包括 2.9.4) - Paper 1.21.2 ~ 1.21.5 → 需要 PacketEvents 2.9.4+ + Java 21 - 迁移前请先在测试环境验证 PacketEvents 版本兼容性已知限制
1. 独立作弊客户端拦截有限 - 如 LiquidBounce 虽然能被空品牌检测捕获,但仍有部分静默客户端无法检测 - 建议配合反作弊插件使用 2. FML3 Mod 列表解析有限 - Forge 1.20.2+ 的 Mod 列表以压缩 NBT 发送,目前仅能扫描黑名单 Mod - 不影响踢出功能,仅影响/cm check显示的 Mod 列表完整度 3. Fabric 无完整 Mod 列表 - Fabric 没有标准 Mod 列表包,只能检测是否使用了 Fabric 加载器 4. 客户端可伪造数据 - 检测依赖客户端主动上报,恶意客户端可伪造/屏蔽 - 本插件不能替代反作弊系统 ---
1. 下载 PacketEvents 2.9.4+ →安装步骤
plugins/- 下载地址:[Modrinth](https://modrinth.com/plugin/packetevents) 或 [CodeMC](https://repo.codemc.io/) 2. 下载 ChecksMOD-1.1.0.jar →plugins/3. 重启服务器 4. 编辑plugins/ChecksMOD/config.yml配置黑名单 5. 执行/cm reload重载配置 ---
| 命令 | 权限 | 说明 | |------|------|------| |命令速查
/cm reload|checksmod.reload| 重载配置 | |/cm check <玩家>|checksmod.check| 查看 Mod/通道信息 | |/cm recheck <玩家>|checksmod.check| 重置检测状态 | |/cm list|checksmod.check| 已检测玩家列表 | |/cm stats|checksmod.check| 统计信息 | ---
-从 1.0.0 升级
config.yml完全兼容,无需修改 - 只需替换 jar 文件 - 如使用 Paper 1.21.2+,请确保: - 服务端已升级到 Java 21 - PacketEvents 已升级到 2.9.4+ - 升级后执行/cm reload1.0.0CheckMOD 1.0.0Jul 5, 2026 * 需要[PacketEvents](https://modrinth.com/plugin/packetevents) 2.7.0+ 作为前置插件。 * 问题反馈联系作者QQ:1464670605 (记得备注来意)功能
- 品牌检测 — 拦截minecraft:brand通道,识别客户端品牌(vanilla、fabric、forge、作弊客户端等) - Forge Mod 检测 — 解析 FML 经典握手(1.20~1.20.1)中的完整 Mod 列表 - Forge FML3 检测 — 处理fml:loginwrapper(1.20.2+),扫描黑名单 Mod - Fabric 检测 — 检测fabric:通道,识别 Fabric 加载器 - 通道黑名单 — 匹配客户端发送的任意网络通道,支持*通配符 - 品牌白名单/黑名单 — 精细控制允许/拒绝的客户端品牌 - vanilla-only 模式 — 仅允许纯原版客户端进入 - 单次检测 — 玩家加入时检测一次,之后不再拦截,不影响性能 - OP 命令 — 查看玩家 Mod 信息、重置检测状态工作原理
命令 | 命令 | 权限 | 说明 | |------|------|------| |玩家连接 → Configuration/Play 阶段 → PacketEvents 拦截 PluginMessage 包 ├─ minecraft:brand → 品牌检查 → 黑/白名单比对 → 违规则踢出 ├─ fml:handshake → 解析Mod列表 → 逐个比对黑名单 → 违规则踢出 ├─ fml:loginwrapper → 扫描Mod ID(FML3) → 比对黑名单 → 违规则踢出 ├─ fabric:* → 检测Fabric加载器 → vanilla-only则踢出 └─ 其他通道 → 通道黑名单匹配 → 违规则踢出 PlayerJoinEvent → 标记检测完成 → 不再拦截该玩家后续包/cm reload|checksmod.reload| 重载配置文件 | |/cm check <玩家>|checksmod.check| 查看玩家的 Mod 和通道信息 | |/cm recheck <玩家>|checksmod.check| 重置检测状态,该玩家重连后重新检测 | |/cm list|checksmod.check| 查看所有已检测的玩家 | |/cm stats|checksmod.check| 查看统计信息 |权限
| 权限 | 默认 | 说明 | |------|------|------| |checksmod.admin| op | 管理权限(包含以下所有) | |checksmod.reload| op | 重载配置 | |checksmod.check| op | 查看玩家 Mod 信息 |配置说明
# 检测模式: KICK(踢出), WARN(仅记录) mode: KICK # 仅允许原版客户端 (启用后 Fabric/Forge/Lunar 等都被踢出) vanilla-only: false # 品牌白名单 (留空=允许所有, 非空=仅允许列表中的品牌) brand-whitelist: [] # 品牌黑名单 (匹配客户端发送的品牌标识) brand-blacklist: - "wurst" - "future" - "liquidbounce" - "meteor" # ... # Mod ID 黑名单 (Forge/Fabric 握手协议中的 Mod ID) mod-blacklist: - "xray" - "baritone" - "wurst-client" # ... # 通道黑名单 (匹配客户端发送的网络通道,支持通配符 *) channel-blacklist: - "wurst:*" - "xray:*" # ...
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta