一个基于AI和行为分析的Minecraft Paper服务器反作弊插件,提供全面的作弊检测功能。
- 飞行检测: 检测玩家非法飞行行为
- 速度检测: 检测超速移动(包括加速药水滥用)
- 传送检测: 检测瞬移和位置跳跃
- 蜘蛛人检测: 检测墙上行走等异常行为
- 杀戮光环(KillAura): 检测自动攻击和超高CPS
- 攻击距离(Reach): 检测超出正常范围的攻击
- 临界点(Criticals): 检测强制临界攻击
- 连击检测: 检测不合理的攻击频率
- 客户端指纹: 识别已知作弊客户端
- Mod检测: 检测常见的作弊Mod
- 版本验证: 验证客户端版本合法性
- SQLite数据库: 存储违规记录和玩家数据
- Web控制面板: 实时监控和管理界面
- 详细日志: 完整的违规记录和证据
- 模块化设计: 可单独启用/禁用各检测模块
- 阈值调整: 灵活的检测灵敏度配置
- 权限系统: 基于权限的命令访问控制
# 克隆仓库后,在项目根目录执行
./gradlew shadowJar
# 或在Windows上
gradlew.bat shadowJar构建完成后,插件JAR文件位于 build/libs/PaperAntiCheat-1.0.0.jar
- 将生成的JAR文件复制到Paper服务器的
plugins文件夹 - 启动服务器以生成配置文件
- 停止服务器并根据需要编辑
plugins/PaperAntiCheat/config.yml - 重新启动服务器
项目包含自动化测试脚本,可以快速验证基本功能:
python test-anticheat.pyconfig.yml: 主要检测配置test-config.yml: 测试专用配置
# 移动检测配置
movement:
enabled: true
flying:
enabled: true
max-flight-time: 500
vertical-threshold: 0.08
speed:
enabled: true
max-speed: 6.0
check-interval: 10
# 战斗检测配置
combat:
enabled: true
killaura:
enabled: true
max-cps: 12
min-attack-cooldown: 100
reach:
enabled: true
max-reach: 3.15
tolerance: 0.05| 命令 | 权限 | 描述 |
|---|---|---|
/anticheat reload |
anticheat.admin | 重载配置文件 |
/anticheat toggle |
anticheat.admin | 启用/禁用反作弊 |
/anticheat info |
anticheat.admin | 显示插件信息 |
/anticheat violations <player> |
anticheat.admin | 查看玩家违规记录 |
插件内置Web界面,提供实时监控功能:
- 违规记录查看
- 玩家行为分析
- 系统状态监控
注意: Web服务器默认禁用,需要在配置文件中启用。
运行Python测试脚本进行基本功能验证:
python test-anticheat.py- 启动测试服务器:双击
test-server.bat - 连接到
localhost:25565 - 给自己OP权限:
/op <你的用户名> - 测试各种作弊行为观察检测效果
- 核心框架: Paper API + Bukkit
- 数据库: SQLite (轻量级,无需额外配置)
- Web框架: 内置HTTP服务器
- 检测算法: 基于行为分析和统计模型
- 构建工具: Gradle
本项目配置了GitHub Actions工作流,支持自动编译和测试:
- 推送代码到
main或master分支 - 提交Pull Request到主分支
- 操作系统: Ubuntu Linux
- Java版本: JDK 17
- 构建工具: Gradle
- 自动检出代码
- 设置JDK 17环境
- 执行Gradle构建 (
./gradlew shadowJar) - 上传编译后的JAR文件作为构件
- 运行自动化测试脚本(如果存在)
编译完成后,您可以在GitHub Actions页面的"Artifacts"部分下载编译好的插件JAR文件。
如果您想在本地编译,使用以下命令:
# Linux/Mac
./gradlew shadowJar
# Windows
gradlew.bat shadowJar- 异步数据处理,避免主线程阻塞
- 智能缓存机制,减少重复计算
- 可配置的检测频率,平衡性能与准确性
- 内存优化,适合长期运行
欢迎提交Issue和Pull Request!请确保:
- 遵循现有代码风格
- 添加适当的单元测试
- 更新相关文档
- 保持向后兼容性
MIT License - 免费用于个人和商业用途。
如遇到问题,请检查:
- 服务器日志中的错误信息
- 配置文件语法是否正确
- Paper服务器版本兼容性(推荐1.20.4)
注意: 这是一个演示版本的反作弊系统。在生产环境中使用前,请进行充分测试并根据实际需求调整配置参数。