决策记录
D003首批插件清单与自研核心
- 状态:已确认:不用 CMI 这类大型综合插件;自研核心插件;采用 MythicMobs。策划建议:具体清单与分工(本文)。待验证:各插件 1.21.10 构建与兼容性。
- 日期:2026-10-21
- 关联:D001(技术栈)、D002(多语言)、头脑风暴 I12(三世界)、I15(防挂机)、I28(货币)
一、原则
自研核心,但不重复造轮子。
- 我们自己写:跟玩法和服务器特色有关的、需要按我们的规则来的部分,以及所有长期数据。
- 用成熟插件:权限、经济底层、反作弊、领地、地图编辑这类基础设施。这些东西一旦写出 bug,就是刷物品、丢数据、被入侵,自己从零写风险太大,也没有必要。
- 不用 CMI、EssentialsX 这类大型综合插件。它们自带经济、聊天、全息、传送、礼包等一整套功能,和云系列、我们的自研核心大面积重叠。知识库里已经能看到 CMI 和云系列抢
/sc命令的实例。我们实际只用得到其中一小部分,却要承担全部的冲突和性能开销。
二、首批插件清单
A. 依赖底层(云系列与 CE 需要)
| 插件 | 用途 | 费用 |
|---|---|---|
| CraftEngine | 方块、家具、物品外观、资源包 | 社区版免费 |
| PacketEvents | 数据包库,云模型、云血条、云时装依赖它 | 免费 |
| MythicLib | 属性和技能底层,云物品依赖它 | 免费 |
| FastAsyncWorldEdit | 地图编辑,云副本依赖它 | 免费 |
| PlaceholderAPI | 变量,供各插件显示数据 | 免费 |
B. 玩法插件
| 插件 | 用途 | 费用 |
|---|---|---|
| MythicMobs | 怪物 AI、技能、Boss(用户已定) | 免费版先用,需要高级功能时再评估付费版 |
| CloudUI / CloudModel / CloudItems / CloudDungeon / CloudHealthBar | 见 D001 第一层 | 约 222R,另加 CloudUI |
| CloudWorlds | 多世界管理:主城、冒险、生存,以及新手世界 | 免费 |
C. 基础设施(用成熟插件)
| 需求 | 选择 | 理由 |
|---|---|---|
| 权限 | LuckPerms | 行业标准,没有替代必要 |
| 金币(基础货币) | Vault,加一个轻量经济插件,候选 XConomy | 云系列通过 Vault 读写金币。经济插件只负责记账,越简单越好 |
| 神奇橡果(特殊货币) | PlayerPoints | 云系列原生支持 PlayerPoints 点券:市集、商城、行囊、邮箱、造物都能直接用它结算。如果自己写,云系列就认不出神奇橡果 |
| 领地 | 候选 Residence,备选 Dominion 或 GriefPrevention | 要能做到"生存世界野外不能破坏、领地内可以破坏"。还要核实能否保护 CE 的方块和家具 |
| 反作弊 | 候选 Grim | 免费开源。100 人公开争夺稀有生物和 Boss,没有反作弊就谈不上公平。要实测在网易客户端上会不会误判 |
| 性能分析 | spark | 排查卡顿 |
| 地图预生成 | Chunky | 每月换种子时生成冒险世界的母版 |
主题货币(比如奇幻松针)不另装插件,由自研核心管理。它们只在我们自己的兑换系统里流通,不需要云系列识别。
三、自研核心:AcornCore(暂定名)
把 CMI 那些用得上的小功能,加上本项目的特色系统,放进一个核心插件,分成多个模块,可以单独开关。
| 模块 | 内容 | 首批 |
|---|---|---|
| 基础功能 | 回主城、传送请求(tpa)、家(home)、返回(back)、各世界传送点、公告 | ✅ |
| 新手流程 | 新手世界、向导流程、旅人包、免费新手领地的发放 | ✅ |
| 世界时间与事件 | 全服统一时间、夜晚不跳过、每日事件(现实日刷新)、每周六大事件(I32)。原来的"游戏日特性、满月大事件"方案已作废;月相只作为稀有内容的出现条件 | ✅ |
| 冒险世界重置 | 每天用母版覆盖冒险世界,重置前预告并送回玩家,每月换种子 | ✅ |
| 防挂机 | 判断疑似挂机后才弹验证 | ✅ |
| 奖励账本 | 所有高价值发放都带唯一结算号,防止重复发放 | ✅ |
| 编年史 | 记录事件,并为网站预留接口(W001) | ✅ 先记录 |
| 收集与图鉴 | 晶球开启(分层抽取、重复保护)、手办图鉴与碎片、系列收集、"源"与源抽取(含保底计数)、主题货币 | 晶球开启和手办图鉴进首批(新手第一天要开第一颗晶球,见 S01 第七节);源抽取等第二批 |
| 世界 Boss 战 | 刷新、通告、前 N 名传送、最后一击和参与结算 | 第二批 |
| 网易专属 | 网易认证对接、充值发货(发放神奇橡果)、防沉迷 | ✅ 必须做成独立模块(D002) |
| 多语言 | 所有文字通过语言键读取,按玩家语言显示 | ✅ 贯穿全部模块 |
开发要求(交给开发窗口):
- 每个模块能单独关闭,一个模块出错不影响其他模块;
- 数据库里只存 ID;
- 所有玩家能看到的文字都走语言键;
- 货币一律通过 Vault 和 PlayerPoints 的接口操作,不直接改数据库。
四、刻意不装的
| 插件 | 原因 |
|---|---|
| CMI、EssentialsX | 见第一节 |
| Multiverse | 已选 CloudWorlds,两个世界管理器同时装会互相覆盖设置。Multiverse 5 留作备选,对比见第六节 |
| WorldGuard | 先看领地插件能否覆盖"野外禁止破坏"。能覆盖就不装,少一层规则叠加 |
| 第三方全息、聊天插件 | 以后用 CloudHologram、CloudChat |
五、待验证
- 每个插件都有 1.21.10 的构建:MythicMobs、XConomy、PlayerPoints、Residence、Grim、CloudWorlds
- 领地插件对 CE 方块和家具的保护
- Grim 在网易客户端上的误判率
- 网易充值发货接口 → AcornCore → PlayerPoints 加点,整条链路能跑通,并且有防重复发货的机制
六、多世界插件对比(2026-10-21)
依据:知识库中的 CloudWorlds 官方页面(介绍、安装、模板与重置、对比页),以及 Multiverse 在 Hangar 上的发行记录。
| 维度 | CloudWorlds | Multiverse-Core 5(加 Inventories、Portals 等附加插件) | My_Worlds | AcornCore 自写 |
|---|---|---|---|---|
| 费用 | 免费,但需要授权码 | 免费,开源 | 免费,开源 | 开发人力 |
| 是否开源 | ❌ 闭源 | ✅ | ✅ | ✅ |
| 成熟度 | 新:v1.0.6,作者自称做了 57 项实机测试 | 十几年的老牌插件,社区最大 | 老牌,依赖 BKCommonLib | 从零开始 |
| 1.21.10 | 官方写明 1.20 到 26.x | ✅ 5.3.1 起支持 1.21.10 | 待核 | — |
| 按模板定时重置 | ✅ 原生支持:每天固定时间、开服时、无人时三种模式;重置前会把世界里的玩家送走 | ❌ 没有,要再装插件或自己写 | ❌ | 要自己写 |
| 分世界背包 | ✅ 内置 | 需要装 Multiverse-Inventories | 有 | 要自己写 |
| 传送门 | ✅ 内置(地狱门重定向、区域传送门、告示牌传送) | 需要装 Portals、NetherPortals、SignPortals 三个插件 | 有 | 要自己写 |
| 性能工具 | ✅ 每个世界单独设视距、无人时自动卸载、内置预生成、实体上限 | 基本没有 | 一般 | 要自己写 |
| 加载顺序 | ✅ 在 Residence 等插件之前加载世界,避免领地数据被误清 | 偶尔会出现加载顺序问题 | — | 要自己处理 |
| 和云副本的关系 | 同一家作者,但不能接管云副本的专用世界 | 无关 | 无关 | — |
| 授权失效时 | 官方说明:没填授权码时世界照样加载 | 不涉及 | 不涉及 | 不涉及 |
| 风险 | 闭源;又多一个鸡蛋放在云系列这个篮子里;用户群小 | 功能要拼好几个插件,没有自动重置 | 维护节奏较慢 | 工作量大,没必要 |
结论:用 CloudWorlds,Multiverse 5 作为备选
理由:
- 它的"每天固定时间按模板重置"几乎就是为 I21(冒险世界每天重置)准备的。 用 Multiverse 还得另外补一套重置功能,等于又多一个插件,或者多一份开发量。
- 分世界背包、传送门、性能工具都在一个插件里,比 Multiverse 拼四个插件更简单。
- 世界会先于领地插件加载,正好对应我们选的 Residence。
风险对冲:
- 闭源加授权:CloudWorlds 只管世界的加载和重置,世界文件本身是原版格式。万一要换插件,最坏情况也只是重新配置一遍,不会丢地图。官方还支持从 Multiverse 导入,反方向的迁移成本也不高。
- 换插件不会丢失长期数据,因为这些数据都存在 AcornCore 里(D001 原则)。
技术指导(交给研发窗口)
| 编号 | 要求 |
|---|---|
| W1 | 冒险世界的每日重置和服务器的每日重启放在同一时间做。 用 on_startup 模式,在开服、世界加载之前直接换成模板,这是最快的方式。不要在玩家在线时运行 daily 模式去卸载、复制一张大世界,否则可能卡服。实际耗时要实测 |
| W2 | 每月换种子:用新种子建世界 → 预生成 → 保存为新模板 → 替换旧模板。由 AcornCore 负责公告和编年史记录("第 N 纪元开启") |
| W3 | 不要用 CloudWorlds 锁定时间,也不要用它设置一天的长度。 全服统一时间由 AcornCore 同步,否则两边会互相覆盖 |
| W4 | 主城、冒险、生存三个世界共用一份背包,否则冒险世界的收获带不回家。新手世界是否共用,等新手流程定稿后再决定 |
| W5 | 重置前的预告和倒计时由 AcornCore 负责;CloudWorlds 只负责执行重置,并把玩家送回出生点 |
| W6 | 云副本的世界只由云副本管理,CloudWorlds 不要去碰 |
七、奖励账本的范围(2026-10-21,答复 T003)
判断规则:神奇橡果的任何变动,以及稀有、可交易或拿不回来的东西,都必须经过账本。随手可得的普通产出不经过账本。
| 必须经过账本 | 不经过账本 |
|---|---|
| 网易充值发货(神奇橡果) | 普通怪掉落的金币和物品 |
| 任何系统发放的神奇橡果,包括活动怪掉落(C8)、成就奖励 | 普通采集、钓到的普通鱼 |
| 补偿发放 | 晶球开出的普通物品 |
| 新手旅人包、免费新手领地 | 每日事件带来的加成效果 |
副本通关的核心奖励(由 AcornCore 监听 Clear 事件发放,end.yml 只放低价值物品) |
玩家之间的市场交易(由星月市集自己结算) |
| 世界 Boss 的最后一击奖励和参与奖励 | |
| 系列收集集齐后得到的"源" | |
| 每周大事件的奖励 | |
| 编年史里"首个达成"一类的奖励 |
数值约定:金币一律用整数,不设小数。