快速开始
本页说明从源码或插件包开始,到服务器首次成功加载为止需要做什么。按顺序执行,不要把 API Jar 放进 plugins/。
环境要求
| 项目 | 要求 |
|---|---|
| Java | 25 |
| 服务端 | Spigot / Bukkit 1.21+,当前插件声明支持 Folia |
| 构建工具 | Maven,多模块聚合工程 |
| 必装基础模块 | EmakiCoreLib |
构建插件
在项目根目录执行:
bash
mvn -DskipTests package默认聚合模块包括:
- EmakiCoreLib
- EmakiAttribute
- EmakiForge
- EmakiStrengthen
- EmakiCooking
如果根目录存在 .key 并启用 private-modules profile,还会额外聚合:
- EmakiGem
- EmakiSkills
- EmakiItem
构建完成后,每个模块的插件本体 jar 通常位于:
text
模块名/target/*.jar只把插件本体 jar 放进服务器 plugins/。不要安装 emaki-*-api-*.jar,这些 API Jar 是给开发者编译依赖使用的。
安装顺序
推荐按依赖层级安装:
- EmakiCoreLib:所有业务模块的基础库,必须先安装。
- EmakiAttribute:如果你需要属性、战斗、资源或其他模块写入属性,建议安装。
- 装备线模块:EmakiItem、EmakiForge、EmakiStrengthen、EmakiGem。
- 玩法线模块:EmakiSkills、EmakiCooking。
- 外部生态插件:PlaceholderAPI、Vault / ExcellentEconomy、MythicMobs、CraftEngine、ItemsAdder、Nexo、MMOItems 等。
实际加载顺序由服务端和 plugin.yml 决定。CoreLib 是硬依赖,其他多数外部生态是 softdepend,没安装时相关桥接功能会不可用,但插件主体通常仍可加载。
首次启动流程
- 将需要的 jar 放入服务器
plugins/目录。 - 启动服务器,等待插件生成默认配置。
- 停服,或至少确认没有玩家正在操作相关系统。
- 修改
plugins/Emaki*/下的配置文件。 - 再次启动服务器,先看控制台第一条加载错误。
- 使用各模块的根命令、reload、inspect 或 debug 命令检查功能是否可用。
常见生成目录示例:
text
plugins/
├── EmakiCoreLib/
│ ├── config.yml
│ └── lang/
├── EmakiAttribute/
│ ├── attributes/
│ ├── conditions/
│ ├── damage_types/
│ ├── lore_formats/
│ └── config.yml
├── EmakiForge/
│ ├── recipes/
│ ├── gui/
│ └── config.yml
└── EmakiSkills/
├── skills/
├── resources/
├── gui/
└── data/验证 CoreLib 是否正常
CoreLib 没有面向玩家的复杂玩法,但它是所有模块的基础。验证方式:
- 控制台没有
EmakiCoreLib启动异常。 - 业务模块没有提示缺少 CoreLib。
- 使用动作、GUI、物品来源或经济功能的模块能正常初始化。
如果 CoreLib 没有正常加载,先不要排查业务模块。修好 CoreLib 后再看 Attribute、Forge、Skills 等模块。
验证业务模块
建议按模块逐个验证。
Attribute
- 确认控制台没有属性定义加载错误。
- 使用模块根命令查看帮助。
- 修改一个属性定义后重载,检查是否报错。
- 如果启用 PlaceholderAPI,确认占位符能返回数据。
Forge / Strengthen / Gem
- 打开 GUI,确认按钮和槽位正确显示。
- 放入目标装备和材料,测试成功、失败、材料不足等分支。
- 查看装备 Lore 是否被正确刷新。
- 如果依赖 Attribute,确认属性 PDC 没有丢失。
Skills
- 确认 MythicMobs 已加载(如果技能需要 MythicMobs 执行效果)。
- 创建一个简单技能,测试主动释放。
- 测试冷却、资源不足、条件不足时是否阻止释放。
Cooking
- 放置或识别对应工位方块。
- 测试砧板、炒锅、研磨机、蒸锅的基础交互。
- 重启服务器,检查工位状态是否持久化。