Skip to content

项目介绍

Emaki Series 是一套 Minecraft Spigot 服务端的 RPG 插件,用 Java 编写,以多模块 Maven 工程组织。整套插件围绕 EmakiCoreLib 这个核心库展开——属性战斗、锻造、强化、烹饪、宝石镶嵌、主动技能,每个玩法都是一个独立模块,按需组合。

项目快照

项目属性详情
项目类型Minecraft Spigot 多模块 Java 插件工程
Java 基线21
API 基线Spigot API 1.21.11-R0.1-SNAPSHOT
文本组件Adventure 4.26.1
构建工具Maven 多模块聚合
许可证GPL-3.0-only
仓库地址GitHub

当前版本线

模块artifactId版本
EmakiCoreLibemaki-corelib3.3.0
EmakiAttributeemaki-attribute3.3.0
EmakiForgeemaki-forge3.3.0
EmakiStrengthenemaki-strengthen3.3.0
EmakiCookingemaki-cooking2.0.0
EmakiGememaki-gem1.2.0
EmakiSkillsemaki-skills1.0.0

模块关系

EmakiCoreLib
├── EmakiAttribute
├── EmakiForge
├── EmakiStrengthen
├── EmakiCooking
├── EmakiGem
└── EmakiSkills

所有业务模块都强依赖 EmakiCoreLib,它负责 GUI、动作执行、物品源、配置管理、经济接口、PDC 读写和运行时服务这些底层工作。之所以把这些东西集中到一个库里,是为了让各模块在操作物品时共享同一套"层快照 → 重建展示"的流程,避免模块之间互相覆盖物品数据。

各模块之间的协作关系:

  • EmakiAttribute 独立处理属性定义和战斗计算。Forge、Strengthen、Gem 可以通过 PDC 把属性写进物品,Attribute 会自动识别并纳入计算。
  • EmakiForge 通过 CoreLib 装配物品、读取材料来源,锻造产物可以选择性地携带 Attribute 属性数据。
  • EmakiStrengthen 用配方系统给装备叠加强化层,强化产生的属性同样可以接入 Attribute。
  • EmakiCooking 走的是"世界工位"路线——四类厨具放在世界里,玩家直接交互。它依赖 CoreLib 的物品源、动作系统和方块桥接来识别工位和处理配方。
  • EmakiGem 通过装备模板、开孔器和宝石定义实现可组合的装备成长线,宝石属性同样可以接入 Attribute。
  • EmakiSkills 管理技能的解锁、槽位、触发器和施法模式,但技能效果本身由 MythicMobs 配置驱动。换句话说,Skills 是"技能管理框架",不是"技能效果引擎"。

仓库结构

Project/
├── EmakiCoreLib/        # 核心基础库
├── EmakiAttribute/      # 属性与战斗系统
├── EmakiForge/          # 锻造系统
├── EmakiStrengthen/     # 强化系统
├── EmakiCooking/        # 烹饪系统
├── EmakiGem/            # 装备宝石系统
├── EmakiSkills/         # 主动技能系统
└── pom.xml              # Maven 父工程

构建方式

pom.xml 默认聚合五个开源模块:EmakiCoreLibEmakiAttributeEmakiForgeEmakiStrengthenEmakiCooking。如果根目录下存在 .key 文件,private-modules profile 会额外纳入 EmakiGemEmakiSkills——这两个是闭源模块,需要授权才能构建。

bash
# 完整构建
mvn clean package

# 只做编译检查,跳过测试
mvn -DskipTests compile

构建完成后,各模块的 jar 会输出到对应模块的 target/ 目录。

社区

Released under the GPL-3.0 License