插件联动
EMC 大数据支持与多个插件联动,扩展检测和封禁能力。
独立空岛联动
联动 EMC 独立空岛(IndependentSkyIsland)插件,实现岛屿成员阈值共享。
功能
- 获取玩家所属岛屿的全部成员列表
- 将岛屿成员的阈值分数合并计算
- 支持
sum(累加)和max(取最高)两种共享模式
配置
threshold:
island-share: true
island-share-mode: "sum"
说明
- 插件启动时自动检测独立空岛插件
- 如未安装独立空岛插件,仅使用个人阈值
- 在线成员实时计算,离线成员使用数据库缓存
登录插件联动
联动登录插件实现自动封禁功能,优先检测 EMCAdvancedLogin,其次 AuthMe。
支持的登录插件
| 插件 | 优先级 | 说明 |
|---|---|---|
| EMCAdvancedLogin | 高 | 通过反射读取封禁状态 |
| AuthMe | 中 | 原生集成 |
| Bukkit 原生封禁 | 低 | 无登录插件时的后备方案 |
封禁流程
检测到违规(超 100%)
↓
添加到本地封禁列表(login-bans.yml)
↓
添加到 Bukkit 封禁列表
↓
踢出在线玩家(显示封禁原因)
↓
玩家再次登录时自动检查封禁状态
封禁数据
本地封禁数据持久化在 plugins/EMC大数据/login-bans.yml:
bans:
steve:
reason: "异常物品检测超阈值(150.0%): 氪金物品 资产估值"
time: 1704067200000
QQ 机器人通知
联动 EasyBot 插件,通过 HTTP 接口推送检测通知到 QQ 群。
配置
qq-notify:
enabled: false
easybot-url: "http://127.0.0.1:23580"
warning-percentage: 50
ban-percentage: 100
通知类型
| 类型 | 触发条件 | 说明 |
|---|---|---|
warning | 违规百分比超过 warning-percentage | 预警通知 |
ban | 违规百分比超过 ban-percentage | 封禁通知 |
whitelist | 白名单玩家触发违规 | 白名单提醒 |
通知数据格式
{
"event": "warning",
"player": "Steve",
"percentage": 75.0,
"details": " 氪金物品: 870/1160 (75.0%)\n",
"timestamp": 1704067200000
}
通知通过异步 HTTP POST 发送到 {easybot-url}/emcdata/notify。
白名单系统
白名单系统允许特定玩家跳过封禁处理。
三级白名单
| 级别 | 配置 | 说明 |
|---|---|---|
| UUID 白名单 | whitelist.players | 指定玩家 UUID |
| 权限白名单 | whitelist.permissions | 拥有指定权限的玩家 |
| 物品白名单 | whitelist.items | 指定 Material 不参与检测 |
白名单行为
- 白名单玩家仍然执行检测,但不会被封禁
- 如果白名单玩家触发违规,会通过 QQ 发送
whitelist类型通知 - 物品白名单中的 Material 在所有检测项中被跳过