常见问题
玩家需要装 mod 吗?
不需要。 Voidkit 主体是纯服务端,玩家用原版客户端即可进服。 只有 反作弊 的客户端 Agent 需要玩家安装(那是可选的强化项)。
会不会拖慢服务器 / 影响 TPS?
设计上以「不卡」为硬约束:
- 内核构造期零 IO,启动关键路径上不做文件操作;
- 周期性任务(记分牌刷新、清扫、性能采样)间隔全部可配、可关;
- 审计模块(inspector)主线程只做 O(1) 入队,重活在后台线程;
- 清扫单轮处理实体数有上限,避免一次性删几百万实体卡死主线程。
会不会和其它 mod 冲突?
- 零 mixin,不抢类改写,从根上避免和整合包里已有的 mixin mod 打架。
- 命令简写逐条容错:名字被别的 mod 占了只会跳过这一条,其余照常注册。
- MOTD 默认不改写
server.properties,不碰服主自己维护的文件。
命令没出现 / 没有补全?
先确认:
- 装的是 1.21.1 对应版本(1.20.x 的 jar 不能用);
voidkit_core在mods/里且成功加载(看启动日志的 voidkit 行);- 用
/vk features确认对应功能模块是开启的; - 权限:没装/关掉权限模块(在
voidkit_essentials里)时,管理类命令需要原版/op。
装了一半插件会不会崩?
不会。内核给每个服务都准备了兜底实现,缺哪个插件就退化成保守行为(见 安装与部署)。
升级后发现 voidkit_perm / voidkit_economy / voidkit_title ... -> MISSING,要紧吗?
不要紧,这是一次性、无害的提示。 如果你从合并前的 8-jar 旧版升级上来, 第一次进老的存档时控制台会打印类似:
The following mods have version differences that were not resolved:
voidkit_economy (version 1.0.0 -> MISSING)
voidkit_perm (version 1.0.0 -> MISSING)
voidkit_title (version 1.0.0 -> MISSING)
原因:合并后 perm + economy 的源码并入了 voidkit_essentials、title 并入了 voidkit_display,voidkit_perm / voidkit_economy / voidkit_title 这三个 modId 不再存在;而 NeoForge 会把「进过该存档的 mod 清单」记在存档里,进档时比对就报了这一条。
- 不影响启动,服务端照常起服;
- 不丢数据 —— 这些模块的数据都在服务端根目录的
voidkit/,不在存档里; - 怎么去掉:用新存档、或任意进过一次档即可 —— 存档里的清单会更新为合并后的 5 个 mod, 以后不再出现。什么都不用改。
详见 安装与部署 → 升级到合并版。
配置文件在哪?删存档会丢数据吗?
在服务端根目录的 voidkit/,不在 world/ 里。 删存档重开时,玩家档案、IP 记录、审计数据不会跟着没。
配置改错了怎么办?
- 所有配置都带中文注释,且内核读取时对区间做了钳制(例如间隔不会小于 30 秒), 写错值通常只是被修正回安全范围,不会让服务端起不来。
- 最坏情况删掉对应的配置文件,重启会自动按默认值重新生成。
支持 Fabric / 1.20.x 吗?
支持,而且是同一套代码:core.platform 适配层就是为跨加载器/跨版本准备的, 项目采用 一个仓库 + 版本线分支维护:
| Minecraft | NeoForge | Forge | Fabric |
|---|---|---|---|
| 1.21.1 | ✅ 已发布(main) | ✅ 已发布(mc/1.21.1-forge,需 Forge 52.x) | ✅ 已发布(feat/fabric,需 Fabric API) |
| 1.20.1 | ✅ 同一份 jar | ✅ 同一份 jar(mc/1.20.1) | ⏳ 未做 |
详细的版本矩阵与分支纪律见 版本与加载器。
反作弊能做到什么、做不到什么?
见 反作弊模块 的「威胁模型边界」一节 —— 我们不夸大能力: 它能赶走「装个透视就进服」的绝大多数人,但防不住内核级对手(那需要驱动签名, 与「零 mixin」冲突,明确不做)。
有 API 吗?能二次开发吗?
有。插件通过 core.api 包提供的稳定契约开发,见 开发指南。