# AI 穿墙探测插件
本插件旨在帮助 Minecraft 服务器管理员检测和防止使用简单的 AI 模型进行穿墙作弊。它监控玩家的矿物开采行为,并收集各种数据点以确定玩家是否可能正在使用穿墙模组。
---
## 关键特性
- **AI 驱动的检测:**
插件使用两组模型权重(用于合法和穿墙行为)来计算一个置信度得分,表示玩家正在穿墙的可能性。
- **全面的数据收集:**
- **距离计算:** 跟踪到上次开采矿物的距离。
- **曝光分析:** 确定矿物是自然可见的还是由于附近方块的破坏而显露出来的。
- **矿脉分组:** 数据仅记录一次,以避免重复计数。
- **开采历史:** 维护矿物开采事件的滚动历史记录(默认:10 分钟)。
- **到上一次矿物的旋转角度**: 检查为了到达下一个矿物,你需要旋转多大的角度。
- **动态训练系统:**
使用 `/train ` 命令根据玩家行为调整 AI 模型权重。这使得模型能够随着时间的推移学习和改进:
- **合法训练:** 如果玩家被确认为合法的矿工,则调整模型。
- **穿墙训练:** 当检测到玩家使用穿墙模组时,调整模型。
- **可定制的配置:**
通过 `config.yml` 配置插件以设置:
- 标记阈值(置信度百分比)。
- 标记消息。
- 要监控的矿物列表。
- 数据收集的开采时间窗口。
- 更多...
- **自动文件管理:**
插件会自动创建必要的文件夹和文件(例如,ML/legit.dat、ML/xray.dat),如果它们不存在,确保顺利的首次设置。
---
## 工作原理
1. **数据收集:**
- 当玩家破坏方块时,插件会检查它是否是感兴趣的矿物。
- 如果破坏的方块是非矿物方块,插件会扫描相邻方块以查找矿物,并将其标记为“显露”。
- 当开采矿物时,插件会检查该矿物是否在记录事件之前自然暴露(即,无需破坏任何相邻方块即可可见)。
2. **特征提取:**
插件计算:
- **玩家到矿物的旋转角度差异**。
- **距离** 到之前的矿物开采位置。
- **暴露状态**(使用显露的矿物列表)。
- **计数** 在配置的时间窗口内开采的类似矿物数量。
3. **AI 预测:**
收集的特征被传递到加权模型中,并计算出一个置信度得分,表示使用穿墙的可能性。
4. **训练与适应:**
`/train` 命令允许管理员或受信任的玩家根据观察到的行为训练模型,更新存储在 `ML/legit.dat` 或 `ML/xray.dat` 中的权重。
5. **标记可疑行为:**
如果置信度得分超过配置的阈值,插件会标记玩家,然后通知工作人员他们潜在的不公平行为。
---
## 使用方法
- **安装:**
将插件 jar 放在服务器的 `plugins` 文件夹中。首次运行,将自动创建必要的配置和 ML 数据文件。
- **配置:**
编辑插件数据文件夹中的 `config.yml`,以自定义检测阈值、消息和矿物列表。
- **命令:**
- `/train `
使用此命令根据玩家最近的开采行为训练 AI 模型。
---
## 结论
这款 AI 穿墙探测插件利用游戏内数据来帮助您的服务器维护公平的游玩环境,通过动态学习和适应玩家行为来抵御穿墙作弊。享受一个更智能、自我完善的对抗穿墙作弊的系统!
欢迎就反馈或建议与我们联系,以进一步改进插件。 祝您开采愉快!
[https://bstats.org/plugin/bukkit/MLAntiXray/25104](https://bstats.org/plugin/bukkit/MLAntiXray/25104)