对比
MLSAC 与 Grim、Vulcan、Polar、Matrix、Spartan、NoCheatPlus 对比
传统反作弊依靠开发者手写的检测规则来发现作弊。MLSAC 则使用在真实战斗录像上训练的神经网络来识别战斗类作弊。两者是不同的工具,配合使用效果最好。
简要回答
MLSAC 不能替代移动类反作弊。 它只负责战斗:KillAura(杀戮光环)、自瞄辅助(AimAssist)、TriggerBot(自动扳机)、Reach(攻击距离) 以及隔墙攻击。飞行、加速、自动搭路(Scaffold)等移动作弊不在它的检测范围内。
推荐组合: 用 MLSAC 检测战斗作弊,再搭配一个 Grim 分支(例如 LightningGrim 或 GroundedGrim)检测移动作弊。两者互不冲突。
MLSAC 的不同之处: 判定由 MLSAC 云端的神经网络做出,而不是一组固定阈值。模型由我们统一重新训练,服务器无需更新插件即可获得改进。
ML 对比 ML
MLSAC Ultra 与 Shard 2 对比
Kaelus 的 Shard 2 是另一款用于识别战斗作弊的机器学习模型。以下是它在 0.9 阈值下与 MLSAC Ultra 的对比。
作弊检出率
召回率 @ 0.9 — 越高越好
误报率
FPR @ 0.9 — 越低越好
两种反作弊思路
手写检测规则
传统反作弊就是这样工作的。开发者写下规则:玩家的移动速度不能超过 X,攻击距离不能超过 Y,数据包不能以某种顺序发送。规则触发迅速,结果也容易解释。弱点在于那些“几乎像真人”的作弊:平滑的瞄准、随机的延迟。要用规则抓住它们,就得不断调整阈值,而这总是在漏检和误判之间取舍。
MLSAC 神经网络
插件收集战斗行为数据:瞄准、点击、移动和攻击。云端的神经网络把一小段战斗作为整体来看,并给出它像作弊的程度。模型在我们自建的数据集上训练,其中包含数百场针对数十种作弊客户端录制的战斗。单次高分不会直接触发标记:缓冲区会累积检测结果,而触发标记后执行什么操作由你决定。
两种思路各自擅长什么
| 场景 | 检测规则(传统反作弊) | MLSAC 神经网络 |
|---|---|---|
| 飞行、加速、自动搭路、变速 | 最大强项:移动的物理规律可以被精确描述。 | 不检测。请同时安装 Grim 分支。 |
| 不可能出现的数据包和明显违规 | 能立即发现,原因清晰。 | 不在其职责范围内。 |
| 自动瞄准并攻击的 KillAura | 明显的光环容易发现;经过平滑、模仿真人的光环则需要反复调整阈值。 | 主要目标。在模型从未见过的录像上,Ultra 识别出 98.9% 的光环时间窗口。 |
| TriggerBot(自动扳机) | 较难:瞄准由玩家完成,规则很难区分作弊的点击和出色的反应。 | Ultra:测试中识别出 92.6% 的时间窗口。MLSAC 以前的模型几乎无法发现它们。 |
| 自瞄辅助(AimAssist) | 较难:辅助很轻微,看起来像正常瞄准。 | Ultra:识别出 73.0% 的时间窗口,优于以前的模型。这对神经网络来说也是最难的场景。 |
| Reach 与隔墙攻击 | 几何检测有效,但需要考虑网络延迟。 | Ultra 模型新增的能力。 |
| 服务器负载 | 所有检测都在你的服务器上运行。 | 神经网络在云端运行。在 200 名玩家同时战斗时,2.0 版插件约占 50 毫秒 tick 中的 1.5 毫秒。 |
| 新出现的作弊 | 开发者编写或修改检测,你再更新插件。 | 模型统一重新训练,无需更新插件。 |
| 离线运行 | 完全在本地运行。 | 需要连接 api.mlsac.net(可自动切换到备用地址 ruapi.mlsac.net)。 |
| 基岩版玩家(Geyser) | 取决于具体的反作弊。 | 不检测。 |
Ultra 的数据来自基准测试:使用模型训练时从未见过的作弊录像,阈值为 0.9。
如何选择
移动
Grim
通过模拟客户端物理来检测飞行、加速和变速最为精确,而且免费。也可以使用它的分支,例如 LightningGrim 或 GroundedGrim。
战斗
MLSAC
规则能抓到明显的光环和 Reach,却会漏掉表现得“像真人”的作弊。MLSAC 的神经网络正是在这类战斗上训练的。
最佳组合
MLSAC + Grim
移动和战斗都能完整覆盖,两个插件互不冲突,而且都可以免费开始使用。
谁能检测什么
依据各反作弊的工作方式及其开发者的说明整理,并非我们的测试结果。
| 反作弊 | 移动飞行、加速、变速 | 战斗:明显作弊Reach、隔墙攻击 | 战斗:拟人化作弊平滑光环、自瞄辅助、TriggerBot | 云端重分析不在你的服务器上 | 免费 | 开源插件代码在 GitHub 上公开 |
|---|---|---|---|---|---|---|
| MLSAC | ||||||
| Grim | ||||||
| NoCheatPlus | ||||||
| Vulcan | ||||||
| Matrix | ||||||
| Spartan | ||||||
| Polar |
各反作弊简介
这里只列出各开发者及其页面公开的一般性信息。我们没有在相同条件下测试这些反作弊,因此不发布关于它们的数据。
| 反作弊 | 授权方式 | 检测方式 | 要点 |
|---|---|---|---|
| MLSAC | 免费套餐 + 付费套餐 | 云端神经网络 | 专门检测战斗作弊:KillAura、自瞄辅助、TriggerBot、Reach 以及隔墙攻击。神经网络基于战斗录像训练,并会定期重新训练,无需更新插件。支持 Paper、Purpur、Spigot 1.16.5–26.2 以及 Folia。不检测移动作弊,因此需与移动类反作弊一起使用。 |
| Grim | 免费开源(GPL-3.0);另有付费的 Grim Premium | 移动模拟 + 检测规则 | 它复现客户端物理,把玩家的每一次移动与理论结果逐一比对,因此对飞行、加速、变速等移动作弊非常有效。支持 1.8–26.x,适用于 Paper、Spigot、Folia,另有 Fabric 版本。带额外检测的 Grim Premium 为闭源付费版。我们推荐与 MLSAC 搭配使用的正是 Grim 的分支版本。 |
| NoCheatPlus | 免费,开源 | 检测规则 | 最早的 Bukkit 反作弊之一,包含移动、战斗、方块交互和聊天方面的检测。由 NeatMonster 和 Asofold 在 Evenprime 的 NoCheat 基础上开发。如今由社区分支(例如 Updated-NoCheatPlus)继续维护,对新版 Minecraft 的支持取决于所用分支。 |
| Vulcan | 付费(SpigotMC) | 数据包层面的检测规则 | 自 2020 年起的商业反作弊,开发者称已有 7000 多个服务器在使用。检测范围广:战斗(KillAura、Reach、AimAssist、Velocity)、移动(Speed、Fly)、Scaffold 以及异常数据包。支持 1.8–26.x 和 Folia,需要安装 PacketEvents。默认主要记录违规,回拉(setback)需在配置中开启。 |
| Matrix | 付费 | 检测规则 | 面向付费服务器网络的商业反作弊,配置项丰富。购买后需使用开发者发放的令牌或账号才能运行。据开发者介绍,支持 Folia 以及通过 GeyserMC 进入的基岩版玩家,买家还可获得小游戏和生存服的现成配置。 |
| Spartan | 付费 | 检测规则 + 防漏洞利用 | 最老牌的付费反作弊之一,将作弊检测与防漏洞利用结合在一起。其更新日志宣布正在为移动检测训练机器学习模型。另有面向 Geyser 基岩版玩家的独立版本。 |
| Polar | 付费,云服务 | 云端 + 本地检测 | 以云服务形式提供的反作弊:插件把玩家数据包发送到 Polar 云端,大部分检测在云端完成。需要即时回拉的检测(例如移动)直接在插件内运行。移动和攻击距离异常默认只会被拦截,而不会触发惩罚。 |
常见问题
01MLSAC 能替代 Grim、Vulcan 或其他反作弊吗?
不能。MLSAC 只检测战斗类作弊:KillAura、自瞄辅助、TriggerBot、Reach 和隔墙攻击。移动类作弊(飞行、加速、自动搭路)需要另一个反作弊来处理。我们推荐 Grim 的分支,例如 LightningGrim 或 GroundedGrim。
02MLSAC 和 Grim 装在同一台服务器上会冲突吗?
不会。两者互不干扰,配合良好:MLSAC 负责战斗,Grim 负责移动。
03既然已有检测规则,为什么还要用神经网络?
现代战斗作弊会刻意模仿真人:平滑瞄准、加入随机延迟。简单的阈值很难把这种行为和高水平玩家区分开。神经网络会把一段战斗作为整体来分析,并从有作弊和无作弊的真实战斗录像中学习,因此能发现规则需要手动调参才能抓到的作弊。
04MLSAC 像 Grim 一样免费吗?
有永久免费的 Beginner 套餐,使用 Pro 模型。付费套餐提供更多每日请求次数和 Pulse 模型,账户通过验证后还可使用 Ultra,价格见定价页面。MLSAC 不开源,神经网络运行在我们的云端。
05MLSAC 对服务器的负载比传统反作弊更高吗?
神经网络运行在 MLSAC 云端,插件只负责收集并发送战斗数据。在 Paper 1.21.4 上 200 名玩家同时战斗时,2.0 版插件约占 50 毫秒服务器 tick 中的 1.5 毫秒。
06MLSAC 会误封正常玩家吗?
任何反作弊都可能出错。在测试中,Ultra 对训练时从未见过的正常玩家,误判率为 0.27% 的时间窗口。单个时间窗口不会触发标记:缓冲区需要累积大量高置信度检测,而且处罚方式由你决定,甚至可以只降低伤害而不封禁。
07MLSAC 需要联网吗?
需要。检测在云端进行,所以服务器必须能连接 api.mlsac.net。如果主地址不可用,插件会自动切换到备用地址 ruapi.mlsac.net,之后再自动切回。