项目介绍
Emaki Series 是一组面向 Minecraft Spigot 1.21+ 的 RPG 插件模块。它不把所有玩法塞进一个插件,而是把公共能力放进 CoreLib,把属性、装备、强化、宝石、技能和烹饪拆成可组合模块。
如果你的服务器需要下面这些能力,按模块选择安装即可:
- 装备应该有稳定 ID、名称、Lore、属性、套装和技能绑定。
- 属性系统需要支持物理、法术、投射物、暴击、防御、穿透、资源等数值。
- 装备成长需要锻造、强化、宝石、品质、材料、失败惩罚和展示刷新。
- 技能需要主动释放、被动触发、冷却、资源消耗、等级参数和外部技能引擎联动。
- 玩法系统需要世界工位、交互流程、输入材料、产物发放和状态持久化。
- 所有模块需要共享动作、GUI、物品来源、经济、PDC 和配置加载能力。
后续文档会按模块说明配置目录、命令、权限、核心 YAML 字段和验证方式。
技术基线
| 项目 | 当前基线 |
|---|---|
| 服务端 | Spigot / Bukkit 1.21+ |
| API | spigot-api:1.21.11-R0.1-SNAPSHOT |
| Java | 25 |
| plugin.yml api-version | 1.21 |
| 构建方式 | Maven 多模块聚合 |
文档以 Spigot API 为基线。Paper 服务器通常也能运行基于 Spigot API 的插件;当前插件描述文件也声明了 Folia 支持。
模块定位
| 模块 | 版本线 | 聚合 | 定位 |
|---|---|---|---|
| EmakiCoreLib | 4.1.0 | 默认 | 公共基础库,所有业务模块都依赖它。 |
| EmakiAttribute | 4.1.0 | 默认 | 属性、资源、伤害、条件、PDC 属性 API。 |
| EmakiForge | 4.1.0 | 默认 | 锻造、图纸、材料、品质、配方书和编辑器。 |
| EmakiStrengthen | 4.1.0 | 默认 | 装备强化、星级阶段、保护、失败惩罚和刷新。 |
| EmakiCooking | 3.1.0 | 默认 | 世界工位式烹饪玩法。 |
| EmakiGem | 2.1.0 | private-modules | 宝石、插槽、开孔、镶嵌、提取和升级。 |
| EmakiSkills | 2.1.0 | private-modules | 主动/被动技能、触发器、资源消耗、MythicMobs 桥接。 |
| EmakiItem | 2.1.0 | private-modules | 自定义物品、套装、触发器和自动更新。 |
为什么需要 CoreLib
CoreLib 是 Emaki Series 的“基础设施层”。很多插件都会遇到相同问题,例如:
- 如何在 YAML 中执行奖励、提示、扣费、命令、粒子、音效?
- 如何统一打开 GUI、处理按钮点击、保护交互状态?
- 如何识别 Vanilla、MMOItems、ItemsAdder、Nexo、CraftEngine 等来源的物品?
- 如何把不同模块写入的装备状态保存到 PDC,且不互相覆盖?
- 如何把锻造、强化、宝石、物品基础信息组合成最终展示?
- 如何写条件表达式、概率、延迟动作、经济扣费?
如果每个模块都自己实现一套,最终会难以维护。CoreLib 把这些能力统一起来,业务模块只需要关注自己的玩法逻辑。
常见组合方式
只做属性和战斗
安装:
- EmakiCoreLib
- EmakiAttribute
- 可选:PlaceholderAPI、MythicMobs、MMOItems
适合:只想做 RPG 属性、伤害类型、资源状态、PAPI 展示和外部怪物技能联动。
做装备成长
安装:
- EmakiCoreLib
- EmakiAttribute
- EmakiItem
- EmakiForge
- EmakiStrengthen
- EmakiGem
适合:做一条完整装备线,例如基础装备由 Item 生成,Forge 改造品质,Strengthen 提升星级,Gem 提供插槽与宝石属性,Attribute 负责最终数值计算。
做技能系统
安装:
- EmakiCoreLib
- EmakiSkills
- MythicMobs
- 可选:EmakiAttribute、PlaceholderAPI、EmakiItem
适合:让装备、权限、配置或外部来源解锁技能,由 Skills 处理冷却、资源消耗和触发,再交给 MythicMobs 执行实际技能效果。
做生活玩法
安装:
- EmakiCoreLib
- EmakiCooking
- 可选:CraftEngine、ItemsAdder、Nexo
适合:制作砧板、炒锅、研磨机、蒸锅等世界工位,让玩家通过方块交互完成烹饪流程。