Skip to content

EmakiMobs

EmakiMobs 是自定义生物系统模块,允许服主通过 YAML 配置自定义生物属性、刷新规则、掉落表和技能行为,并深度集成 EmakiAttribute、EmakiSkills 和 EmakiItem。

基本信息

项目
模块版本1.0.0
主命令/emakimobs
硬依赖EmakiCoreLib
软依赖EmakiAttribute、EmakiSkills、EmakiItem、PlaceholderAPI
权限节点emakimobs.useemakimobs.spawnemakimobs.reloademakimobs.debugemakimobs.admin

功能页面

页面内容
命令与权限手动刷出生物与重载配置的命令。
生物定义mobs/*.yml 全字段说明,含组件、属性、技能、威胁表和 Boss 血条。
组件参考ComponentMapper 支持的所有组件字段速查表。
刷新规则spawn_rules/*.yml 的完整字段说明,含 naturalautonomous 两种类型。
掉落表loot_tables/*.yml 池、条目和函数的配置方法。
技能触发器生物触发器列表及动作上下文变量。

核心能力

能力说明
自定义生物定义YAML 配置生物类型、属性、外观和行为,加载后立即生效。
类型覆写id 与原版 EntityType 同名时,自动对所有该类型生物应用配置。
两种刷新规则natural 拦截原版刷新事件,autonomous 由自己的调度器驱动(interval / player_follow / day_interval / cron 四种 trigger)。
掉落表系统多池多条目设计,支持权重、概率过滤、计数函数和掠夺附魔加成。
EmakiItem 集成掉落表条目使用 emaki_item 键直接掉落 EmakiItem 物品。
EmakiAttribute 集成生物定义中的 attributes 节点直接写入 EA 属性。
技能触发器11 种生命周期事件触发 CoreLib 动作管道。
威胁仇恨表多玩家交战时按威胁值排序目标,支持权重和衰减配置。
Boss 血条范围内玩家界面顶部显示生物血量,支持颜色和风格配置。

默认配置目录

text
plugins/EmakiMobs/
├── config.yml
├── mobs/                   ← 生物定义文件
├── loot_tables/            ← 掉落表文件
├── spawn_rules/            ← 刷新规则文件
└── lang/

mobs/ 定义生物,loot_tables/ 定义掉落表,spawn_rules/ 定义刷新规则。三个目录的文件只要保存在对应目录下(.yml 后缀),执行 /emakimobs reload 后即可生效。

主配置

配置键类型默认值说明
versionstring当前版本配置结构标识,不建议手动修改。
languagestringzh_CN语言文件 ID,对应 lang/<language>.yml
release_default_databooleantrue首次启动时是否释放 mobs/loot_tables/spawn_rules/ 示例文件。
drain_timeout_secondsint30重载时等待正在处理的任务完成的超时秒数。

典型工作流

  1. mobs/ 中创建生物定义文件,指定 id、类型和组件。
  2. loot_tables/ 中创建同名掉落表文件,mob_id 与生物 id 对应。
  3. spawn_rules/ 中添加刷新规则,将生物与刷新条件关联。
  4. 执行 /emakimobs reload 或重启服务器使配置生效。
  5. 使用 /emakimobs spawn <mob_id> 在当前位置测试刷出效果。

与其他模块的关系

模块协作方式
EmakiAttribute生物定义的 attributes 节点直接写入 EA 属性值。
EmakiSkills生物定义的 skills 节点在触发器事件发生时调用 CoreLib 动作管道。
EmakiItem掉落表条目用 emaki_item 键指定 EmakiItem 物品 ID,掉落自定义物品。
EmakiCoreLib依赖 CoreLib 的动作管道系统执行技能动作,依赖其生命周期基础设施。