Skip to content

项目介绍 ​

Emaki Series 是一组面向 Minecraft 26.1 及以上版本的 RPG 插件. 它不把全部玩法塞进一个插件里: 公共能力都放在 CoreLib, 属性, 装备, 强化, 宝石, 饰品, 等级, 技能, 合成, 烹饪, 图鉴和仓库则各自拆成独立模块, 你想装哪个就装哪个

举个例子: 你只想给服务器加 RPG 属性, 就只装 CoreLib + Attribute 两个; 想要完整装备线, 再加 Item, Forge, Strengthen, Gem. 用不到的模块可以不装, 互不拖累

对照下面的能力清单, 你的服务器需要哪几项, 就装哪几个模块:

  • 装备应该有固定 ID, 名称, Lore, 属性, 套装和技能绑定
  • 属性系统要能算物理伤害, 法术伤害, 投射物, 暴击, 防御, 穿透, 资源等数值
  • 装备成长要有锻造, 强化, 宝石, 品质, 材料, 失败惩罚和展示刷新
  • 玩家成长要有多种等级类型, 经验来源, 升级条件, 排行榜, 以及占位符展示
  • 技能要有主动释放, 被动触发, 冷却, 资源消耗, 等级参数, 并能对接外部技能引擎
  • 玩法系统要有世界里的工位, 交互流程, 投料, 产物发放和进度保存
  • 生产系统要能按配方制作, 合并扣除材料, 排队生产, 产物等玩家领取
  • 角色外观与加成要有独立于装备栏的饰品槽与饰品套装
  • 收集与引导要有原版成就页, 节点触发和完成奖励
  • 所有模块都要能共用动作, GUI, 物品来源, 经济, 数据保存和配置加载这些能力

后面每个模块都会单独讲清楚配置目录, 命令, 权限, 常用 YAML 字段和验证方式, 你照着配就行

支持版本 ​

项目要求
服务端Paper 26.1 及以上 (Folia 也支持)
Java25
插件声明的最低接口版本26.1
构建方式 (自己编译时才需要)Gradle 多模块工程, 已固定 Gradle 9.8.0

CAUTION

这些插件只面向 Minecraft 26.1 及以上版本开发, 不兼容更低的版本. 插件里声明的最低接口版本是 26.1, 低于这个版本的服务器会被 Paper 直接拒绝加载. 插件同时声明了 Folia 支持

模块一览 ​

你只是下载现成 jar 装来用的话, 表里"归属"一列可以忽略; 它说明的是源码构建: 默认 表示每次构建都会编译; 私有 表示只有在源码仓库根目录放了一个 .key 文件时才会一起编译

模块版本归属它能做什么
EmakiCoreLib4.8.36默认公共基础库, 其他所有模块都要靠它
EmakiAttribute4.8.7默认属性, 资源, 伤害计算, 条件判断, 属性读写接口
EmakiForge4.8.8默认锻造: 图纸要求, 材料投入, 品质与配方书
EmakiStrengthen4.8.9默认装备强化: 星级阶段, 保护道具, 失败惩罚与刷新
EmakiCooking4.3.8默认世界里的烹饪工位 (砧板, 炒锅等)
EmakiLevel1.6.9默认多种等级类型, 经验来源, 升级条件, 排行榜与 MythicMobs 经验掉落
EmakiCodex1.1.6默认用原版成就页做的图鉴 GUI, 支持解锁/激活/领取与动作奖励
EmakiStation1.1.8默认通用合成工作站: 排队生产, 付费队列位, 独立分解站
EmakiGem2.8.11私有宝石: 插槽, 开孔, 镶嵌, 提取与升级
EmakiSkills2.8.8私有主动/被动技能: 触发器, 资源消耗, MythicMobs 对接
EmakiItem2.8.16私有自定义物品: 两级浏览界面, 套装, 触发器与自动更新
EmakiStorage1.1.5私有分页仓库界面, 单格大额存放, 容量档位与付费解锁
EmakiAccessory1.1.8私有多页独立饰品栏, 部位槽位, 丢失取回, 饰品套装与属性/技能加成
EmakiMobs1.0.13默认自定义生物: 刷新规则, 掉落表与技能行为
EmakiStructure1.0.5私有结构模板导出与放置, 多方块机关交互, 生成回滚与家具还原
EmakiDungeon1.0.2默认组队副本: 独立实例世界, 挑战限制与难度选择, 奖励暂存结算, 流程门禁与地图编辑器

NOTE

上面说的"私有"是源码构建层面的门控: 源码仓库根目录有 .key 文件时才会把 EmakiSkills, EmakiGem, EmakiItem, EmakiStorage, EmakiStructure, EmakiAccessory 一起编译. 没有 .key 时构建 27 个模块, 有 .key 时构建 33 个. 与"能不能安装使用"无关

除了上面这些服务器插件, 工程里还有各模块的 emaki-*-api 编译期构件. 普通安装用不到它: 它们不是服务器插件, 不要放进 plugins/ 目录 (这一条只对开发插件的服主/开发者有意义)

为什么需要 CoreLib ​

CoreLib 是 Emaki Series 的"公共地基". 你做配置时迟早会遇到下面这些难题:

  • 怎么在 YAML 里执行奖励, 发提示, 扣钱, 执行命令, 放粒子, 播音效?
  • 怎么统一打开 GUI, 处理按钮点击, 保护交互状态?
  • 怎么识别来自原版, MMOItems, ItemsAdder, Nexo, Oraxen, EcoItems, CraftEngine 等不同来源的物品?
  • 怎么把各个模块写进去的装备状态都存好, 又互不覆盖?
  • 怎么把锻造, 强化, 宝石, 物品基础信息组合成最终显示的样子?
  • 怎么写条件判断, 概率, 延迟动作, 经济扣费?

如果每个模块都各写一套, 最后会很难维护. CoreLib 把这些公共能力统一起来, 业务模块只管自己的玩法

常见组合方式 ​

下面按"你想做什么"分组, 每组直接列出要装的模块

只做属性和战斗 ​

  1. EmakiCoreLib
  2. EmakiAttribute
  3. 可选: PlaceholderAPI, MythicMobs, MMOItems

适合: 只想做 RPG 属性, 伤害类型, 资源状态, 占位符展示, 以及和外部怪物技能联动

做装备成长 ​

  1. EmakiCoreLib
  2. EmakiAttribute
  3. EmakiItem
  4. EmakiForge
  5. EmakiStrengthen
  6. EmakiGem
  7. 可选: EmakiAccessory

适合: 你要做一条完整装备线, 基础装备由 Item 生成, Forge 改造品质, Strengthen 提升星级, Gem 提供插槽与宝石属性, Attribute 负责最终数值计算. 再装上 Accessory, 你就多一条不占装备栏的饰品线

做等级成长 ​

  1. EmakiCoreLib
  2. EmakiLevel
  3. 可选: PlaceholderAPI, MythicMobs, EmakiAttribute, EmakiCooking, EmakiForge

适合: 做主等级, 战斗等级, 采集等级, 生活职业等级等多条成长线, 把经验来源接到原版事件, MythicMobs 掉落或其他 Emaki 插件的动作上

做技能系统 ​

  1. EmakiCoreLib
  2. EmakiSkills
  3. MythicMobs
  4. 可选: EmakiAttribute, PlaceholderAPI, EmakiItem, EmakiLevel

适合: 让装备, 权限, 等级, 配置或外部来源解锁技能; Skills 负责冷却, 资源消耗和触发, 实际技能效果交给 MythicMobs 执行

做生活玩法 ​

  1. EmakiCoreLib
  2. EmakiCooking
  3. 可选: EmakiLevel, CraftEngine, ItemsAdder, Nexo

适合: 做砧板, 炒锅, 研磨机, 蒸锅这些世界工位, 让玩家通过和方块交互完成烹饪; 想让烹饪也给经验, 可以接 EmakiLevel 或 CoreLib 的动作

做生产与仓储 ​

  1. EmakiCoreLib
  2. EmakiStation
  3. 可选: EmakiStorage, EmakiItem, EmakiLevel

适合: 做按配方排队生产的工作站, 材料可以同时从背包和仓库里取, 产物直接入库, 还能用分解站回收装备. 装了 EmakiStorage 后仓库会参与取材与发货; 不装就只用背包

做成就图鉴 ​

  1. EmakiCoreLib
  2. EmakiCodex
  3. 可选: PacketEvents, PlaceholderAPI, MythicMobs

适合: 用 advancements/*.yml 把玩法目标做成原版成就页, 由击杀, 合成, 钓鱼, 破坏方块等共享事件触发节点, 节点完成时执行动作发奖励. 装了 PacketEvents 还能额外注入成就树坐标