NekoAntiXray 附录
参考资料、配置模板和技术规范。
目录
矿石类型参考
主世界矿石
| 材质 (Material) | 显示名称 | 检测层级 | 默认状态 |
|---|---|---|---|
DIAMOND_ORE | 钻石矿 | Algo, XRay, Deep, Enhanced | 启用 |
DEEPSLATE_DIAMOND_ORE | 深层钻石矿 | Algo, XRay, Deep, Enhanced | 启用 |
EMERALD_ORE | 绿宝石矿 | Algo, XRay, Deep, Enhanced | 启用 |
DEEPSLATE_EMERALD_ORE | 深层绿宝石矿 | Algo, XRay, Deep, Enhanced | 启用 |
GOLD_ORE | 金矿 | Deep, Enhanced | 黑名单 |
DEEPSLATE_GOLD_ORE | 深层金矿 | Deep, Enhanced | 黑名单 |
IRON_ORE | 铁矿 | Deep | 黑名单 |
DEEPSLATE_IRON_ORE | 深层铁矿 | Deep | 黑名单 |
COPPER_ORE | 铜矿 | - | 黑名单 |
DEEPSLATE_COPPER_ORE | 深层铜矿 | - | 黑名单 |
COAL_ORE | 煤矿 | - | 黑名单 |
DEEPSLATE_COAL_ORE | 深层煤矿 | - | 黑名单 |
LAPIS_ORE | 青金石矿 | Deep, Enhanced | 可选 |
DEEPSLATE_LAPIS_ORE | 深层青金石矿 | Deep, Enhanced | 可选 |
REDSTONE_ORE | 红石矿 | Deep, Enhanced | 可选 |
DEEPSLATE_REDSTONE_ORE | 深层红石矿 | Deep, Enhanced | 可选 |
下界矿石
| 材质 (Material) | 显示名称 | 检测层级 | 默认状态 |
|---|---|---|---|
ANCIENT_DEBRIS | 远古残骸 | Algo, XRay, Deep, Enhanced | 启用 |
NETHER_GOLD_ORE | 下界金矿 | Deep | 可选 |
NETHER_QUARTZ_ORE | 下界石英矿 | Deep | 可选 |
其他
| 材质 (Material) | 显示名称 | 检测层级 | 默认状态 |
|---|---|---|---|
SPAWNER | 刷怪笼 | Deep | 可选 |
BUDDING_AMETHYST | 紫晶块 | - | 黑名单 |
AMETHYST_CLUSTER | 紫晶簇 | - | 黑名单 |
VL 计算参考
AlgoAntiXray VL 来源
| 来源 | 基础 VL | 条件 |
|---|---|---|
| 可疑路径模式 | +1 | 路径未通过平滑度检查 |
| 多个矿脉命中 | +1~3 | 基于超过阈值的矿脉数量 |
| 人造空气检测 | +1 | 空气比例 > 阈值 |
| 可疑爆炸 | ×2.0 | 命中率 > 0.1 |
| AI 检测 | +1~15 | 基于概率 |
VL 修正
| 修正项 | 效果 | 条件 |
|---|---|---|
| 洞穴环境 | -50% | cave.reduce-vl: true |
| 水域环境 | -50% | water.reduce-vl: true |
| 岩浆环境 | -50% | lava.reduce-vl: true |
VL 衰减
| 模式 | 公式 | 默认值 |
|---|---|---|
| 线性 | VL = max(0, VL - amount) | 每 3 分钟 -1 |
| 指数 | VL = ceil(VL × factor) | ×0.9 (默认禁用) |
XRayCheck VL 来源
| 来源 | VL 增加 | 描述 |
|---|---|---|
| 破坏自己的假矿石 | +1.0 | 自己生成的假矿石 |
| 破坏他人的假矿石 | +2.0 | 他人生成的假矿石 |
| 连续违规 | +1.0 | 60 秒内 3+ 次违规 |
性能基准测试
内存使用
| 配置 | RAM 使用 | 备注 |
|---|---|---|
| 仅 Enhanced | ~50 MB | 基础内存占用 |
| Enhanced + Algo | ~80 MB | +30 MB 用于路径追踪 |
| 全部 (含 ML) | ~150 MB | ONNX 运行时开销 |
CPU 影响
| 配置 | CPU % | TPS 影响 |
|---|---|---|
| 仅 Enhanced | 3-5% | 极小 |
| Enhanced + Algo | 8-12% | 轻微 |
| 全部 (含 ML) | 12-18% | 中等 |
线程池使用
| 线程池 | 默认大小 | 最大负载 |
|---|---|---|
| 射线追踪 | 4 线程 | 高负载期间 80% |
| FoliaLib 异步 | 共享 | 可变 |
数据包吞吐量
| 场景 | 数据包/秒 | 延迟 |
|---|---|---|
| 空闲玩家 | ~2 | <1ms |
| 挖矿中 | ~20 | 2-5ms |
| 区块加载 | ~50 | 5-15ms |
配置模板
模板: 生存服 (平衡)
check:
mining-behavior-analyzer:
active: true
world-configs:
world: { enabled: true, y-limit: 32 }
world_nether: { enabled: true, y-limit: 128 }
world_the_end: { enabled: false, y-limit: -1 }
target-blocks:
- ANCIENT_DEBRIS
- EMERALD_ORE
- DEEPSLATE_EMERALD_ORE
- DIAMOND_ORE
- DEEPSLATE_DIAMOND_ORE
data-collection:
path-max-blocks: 500
cleanup-after-minutes: 15
vein-cluster: { distance: 5, small-size: 4, trigger-count: 3 }
pattern-analyzer:
turning-limit: 10
branching-limit: 6
y-shift-limit: 4
environment-filters:
apply-filters: true
cave: { air-count: 14, reduce-vl: true }
water: { water-count: 14, reduce-vl: true }
lava: { lava-count: 14, reduce-vl: true }
violation-system:
auto-decay: { enabled: true, interval-minutes: 3, amount: 1 }
threshold-commands:
10: 'say %player% triggered detection [VL: 10]'
20: 'say %player% triggered detection [VL: 20]'
30: 'kick %player% Abnormal mining detected'
xray:
enable: true
spawn:
ore: 30
time: 225
vl:
ban:
enable: true
threshold: 10.0
blacklist:
ores:
- COAL_ORE
- IRON_ORE
- COPPER_ORE
world-settings:
default:
enabled: true
ray-trace-threads: 4
replay:
enabled: true
record-duration: 300
antiSeedCracker:
enable: true
模板: 技术/生电服 (宽松)
check:
mining-behavior-analyzer:
active: true
pattern-analyzer:
turning-limit: 15
branching-limit: 10
y-shift-limit: 8
environment-filters:
apply-filters: true
cave:
air-count: 10
reduce-vl: true
violation-system:
auto-decay: { enabled: true, interval-minutes: 2, amount: 2 }
threshold-commands:
20: 'say %player% triggered detection'
50: 'kick %player% Please contact staff'
xray:
enable: false
mass-excavation:
enabled: true
detection-time-window: 60
block-count-threshold: 80
bypass-duration: 300
world-settings:
default:
enabled: true
anti-xray:
ray-trace-distance: 60.0
replay:
enabled: true
record-duration: 600
模板: 竞技/PvP 服务器 (严格)
check:
mining-behavior-analyzer:
active: true
pattern-analyzer:
turning-limit: 8
branching-limit: 4
y-shift-limit: 3
environment-filters:
apply-filters: false
violation-system:
auto-decay: { enabled: true, interval-minutes: 5, amount: 1 }
threshold-commands:
5: 'say %player% Warning [VL: 5]'
10: 'kick %player% Suspicious activity'
15: 'ban %player% 7d X-Ray detected'
xray:
enable: true
mining-count-threshold: 2
vl:
ban:
enable: true
threshold: 5.0
deeplearn:
enable: true
prediction_threshold: 0.6
violations:
enable-punishment: true
vl-multiplier: 15.0
world-settings:
default:
enabled: true
anti-xray:
ray-trace-distance: 100.0
max-ray-trace-block-count-per-chunk: 150
ray-trace-threads: 6
文件位置
插件文件
| 文件 | 位置 | 用途 |
|---|---|---|
| 主 JAR | plugins/NekoAntiXray-AllPlatform-*.jar | 插件二进制文件 |
| 配置 | plugins/NekoAntiXray/config.yml | 主配置文件 |
| 矿石统计 | plugins/NekoAntiXray/ore-stats.yml | 挖掘统计数据 |
| 封禁统计 | plugins/NekoAntiXray/ban-statistics.yml | 封禁记录 |
可选文件
| 文件 | 位置 | 用途 |
|---|---|---|
| ONNX 模型 | plugins/NekoAntiXray/model.onnx | ML 模型 |
| 特征统计 | plugins/NekoAntiXray/feature_stats.json | 特征归一化数据 |
| 回放 | plugins/NekoAntiXray/replays/*.replay | 回放录像 |
| 训练数据 | plugins/NekoAntiXray/training_data/*.csv | ML 训练数据 |
依赖项
| 文件 | 位置 | 必须 |
|---|---|---|
| ProtocolLib | plugins/ProtocolLib.jar | 是 |
| Paper 服务端 | paper-1.21.10.jar | 是 (或 Folia) |
版本兼容性
Minecraft 版本
| MC 版本 | Paper | Folia | 状态 |
|---|---|---|---|
| 1.21.10 | ✅ | ✅ | 主要目标 |
| 1.21.x | ✅ | ✅ | 支持 |
| 1.20.6 | ✅ | ✅ | 支持 |
| 1.20.4 | ✅ | ⚠️ | 有限支持 |
| < 1.20 | ❌ | ❌ | 不支持 |
Java 版本
| Java 版本 | 状态 |
|---|---|
| Java 21+ | ✅ 支持 |
| Java 17 | ✅ 主要目标 |
| Java 16 | ❌ 不支持 |
| Java 11 | ❌ 不支持 |
依赖版本
| 依赖 | 最低版本 | 推荐版本 |
|---|---|---|
| ProtocolLib | 5.0.0 | 5.3.0+ |
| FoliaLib | 0.4.0 | 0.5.0+ |
| ONNX Runtime | 1.14.0 | 1.18.0+ |
术语表
检测术语
| 术语 | 定义 |
|---|---|
| VL | Violation Level (违规等级) - 追踪可疑行为的数值评分 |
| Vein | 矿脉 - 一组相连的矿石方块 |
| Path | 路径 - 挖掘方块位置的序列 |
| Fake Ore | 假矿石 - 放置用于诱捕 X-Ray 用户的隐形矿石 |
| Ray Trace | 射线追踪 - 计算从玩家位置出发的方块可见性的技术 |
| Obfuscation | 混淆 - 在数据包中用假数据替换真实方块 |
技术术语
| 术语 | 定义 |
|---|---|
| DDA | Digital Differential Analyzer - 射线遍历算法 |
| BFS | Breadth-First Search (广度优先搜索) - 用于矿脉聚类 |
| NMS | Net Minecraft Server - Minecraft 内部代码 |
| Mojang Mapping | Mojang 映射 - Minecraft 代码的官方反混淆名称 |
| FoliaLib | 用于 Folia/Paper 调度器兼容性的库 |
配置术语
| 术语 | 定义 |
|---|---|
| Threshold | 阈值 - 超过时触发动作的值 |
| Decay | 衰减 - 随时间自动减少 VL |
| Blacklist | 黑名单 - 排除在检测之外的物品/世界 |
| Heavy Mode | 重型模式 - 与 Paper 内置反矿透的集成 |
| Environment Filter | 环境过滤器 - 在自然结构中减少检测 |
NekoAntiXray v2.1.1 附录