创建 EliteMobs 内容
EliteMobs 允许你通过 YAML 配置文件为你的服务器创建大量自定义内容。所有内容都是通过将格式正确的 .yml 文件放入 EliteMobs 插件目录中特定的文件夹来创建的。
内容类型
EliteMobs 支持 8 种主要内容类型:
- 自定义 Boss —— 创建拥有自定义技能、装备和能力的独特精英怪
- 自定义物品 —— 设计带有附魔的自定义武器、盔甲和物品
- 自定义任务 —— 构建带有目标和奖励的任务链
- 自定义事件 —— 设置定时或触发式的 Boss 事件
- 自定义 NPC —— 添加任务发布者、商店和可交互 NPC
- 宝箱 —— 放置带有自定义奖励和拟态机制的战利品箱
- 竞技场 —— 设计带有 Boss 遭遇战的基于波次的战斗挑战
- 虫洞 —— 创建在不同位置之间的传送门
每种内容类型都有自己的配置文件夹和字段结构。
快速上手
所有自定义内容都遵循以下模式:
- 创建一个扩展名为 .yml 的 YAML 文件
- 使用 lowercase_with_underscores.yml 格式为其命名
- 将其放入相应的文件夹
- 使用 YAML 字段配置内容
- 重载 EliteMobs 或重启服务器
文件位置
每种内容类型都存储在它自己的文件夹中:
- 自定义 Boss:~/plugins/EliteMobs/custombosses/
- 自定义物品:~/plugins/EliteMobs/customitems/
- 自定义任务:~/plugins/EliteMobs/customquests/
- 自定义事件:~/plugins/EliteMobs/customevents/
- 自定义 NPC:~/plugins/EliteMobs/npcs/
- 宝箱:~/plugins/EliteMobs/customtreasurechests/
- 竞技场:~/plugins/EliteMobs/customarenas/
- 虫洞:~/plugins/EliteMobs/wormholes/
内容创建工具
WebApp(推荐初学者使用)
使用 EliteMobs WebApp 通过可视化界面生成配置文件。这个工具能让整个过程快得多,并有助于避免语法错误。
手动 YAML 配置
对于高级用户,可以手动创建 YAML 文件,以完全掌控所有可用的字段和选项。
YAML 文件格式
所有 EliteMobs 配置都使用 YAML 格式。关键规则:
- 缩进使用空格,而非制表符
- 带有颜色代码的字符串需要使用单引号
- 列表使用连字符格式或方括号格式
isEnabled控制内容是否加载;它是可选的,在每种内容类型中默认为true(因此你只需设置isEnabled: false即可禁用某个文件)- 文件名应使用 lowercase_with_underscores.yml 格式
有关详细的 YAML 语法帮助,请参阅 配置文件指南。
内容类型概览
自定义 Boss
自定义 Boss 是拥有增强能力、自定义装备和特殊技能的精英怪。Boss 系统支持 60 多个配置字段,包括:
- 实体类型和等级
- 生命值和伤害倍率
- 装备(盔甲和武器)
- 精英技能和能力
- 战利品表和掉落物
- 生成 / 死亡消息和命令
- 多阶段机制
- 自定义模型和伪装
基础 Boss 示例:
isEnabled: true
entityType: ZOMBIE
name: '&e Test Boss'
level: dynamic
healthMultiplier: 2.0
damageMultiplier: 0.5
helmet: GOLDEN_HELMET
chestplate: IRON_CHESTPLATE
mainHand: GOLDEN_AXE
powers:
- invulnerability_knockback.lua
spawnMessage: A test boss has been spawned!
deathMessage: A test boss has been slain by $players!
自定义物品
自定义物品允许你创建带有自定义附魔和效果的独特武器、盔甲和工具。物品系统支持 15 个配置字段,包括:
- 材质类型
- 显示名称和说明文字(lore)
- 附魔列表
- 药水效果
- 自定义模型 ID
- 掉落权重和缩放
- 等级和灵魂绑定设置
基础物品示例:
isEnabled: true
material: DIAMOND_SWORD
name: '&4Legendary Blade'
lore:
- '&7A powerful weapon'
- '&7forged in dragon fire'
enchantments:
- DAMAGE_ALL,5
- FIRE_ASPECT,2
level: 10
soulbound: true
自定义任务
自定义任务为玩家创建目标,并在完成时给予奖励。任务系统支持 17 个配置字段,包括:
- 任务目标和类型
- 奖励(物品、金钱、权限)
- 接受 / 完成对白
- NPC 交付要求
- 任务锁定计时器
- 追踪和音效
自定义事件
自定义事件会基于时间、几率或其他条件触发 Boss 生成。事件系统支持 18 个配置字段,包括:
- 事件类型和 Boss 列表
- 触发几率和权重
- 开始 / 结束消息和命令
- 冷却计时器(本地和全局)
- 最少玩家数量
- 事件持续时间
自定义 NPC
自定义 NPC 为任务、商店和竞技场提供可交互的角色。NPC 系统支持 18 个配置字段,包括:
- NPC 名称、角色身份和职业
- 生成位置
- 对白(问候语、对白、告别语)
- 交互类型
- 任务和竞技场引用
- 自定义模型和伪装
宝箱
宝箱提供带有可自定义补货计时器和拟态机制的战利品奖励。宝箱系统支持 15 个配置字段,包括:
- 宝箱类型和朝向
- 位置坐标
- 战利品表
- 补货计时器
- 拟态几率和 Boss 列表
- 视觉效果
竞技场
竞技场创建带有 Boss 遭遇战的基于波次的战斗挑战。竞技场系统支持 19 个配置字段,包括:
- 竞技场边界(corner1、corner2)
- 波次数量和延迟
- Boss 列表和生成点
- 奖励和玩家数量限制
- 竞技场消息
- 间歇波次
虫洞
虫洞在两个位置之间创建传送门。虫洞系统支持 11 个配置字段,包括:
- 两个位置端点
- 每个位置的显示文本
- 视觉样式和粒子颜色
- 硬币花费和权限
- 致盲效果和大小倍率
常见模式
引用内容
各内容类型之间使用文件名相互引用:
- 在 Boss 中引用技能: power_name.yml
- 在战利品中引用物品:
filename: item_name.yml(关于几率、数量等,请参阅 战利品表 格式) - 在事件中引用 Boss: boss_filename.yml
- 在 NPC 中引用任务: quest_filename.yml
占位符
在消息中使用这些占位符:
- $players - 击败 Boss 的玩家列表
- $distance - 到 Boss 位置的距离
- $eventBossLevel - 动态事件 Boss 等级
颜色代码
在名称和消息中使用 Minecraft 颜色代码。颜色代码必须用单引号括起来。
标准 Minecraft 颜色代码:
- &0 - 黑色
- &1 - 深蓝色
- &2 - 深绿色
- &3 - 深青色
- &4 - 深红色
- &5 - 深紫色
- &6 - 金色
- &7 - 灰色
- &8 - 深灰色
- &9 - 蓝色
- &a - 绿色
- &b - 青色
- &c - 红色
- &d - 浅紫色
- &e - 黄色
- &f - 白色
格式化代码:
- &l - 粗体
- &m - 删除线
- &n - 下划线
- &o - 斜体
- &r - 重置
精英技能系统
EliteMobs 包含 60 多种可以分配给自定义 Boss 的精英技能。技能在 Boss 配置中通过文件名引用。
技能分类
攻击 / 战斗类技能:
- ArrowFireworks、ArrowRain、AttackArrow、AttackFireball、AttackLightning
- AttackPush、AttackVacuum、BulletHell、DeathSlice
元素类技能:
- Firestorm、FlamePyre、Flamethrower、FrostCone、FrostWalker
- LightningBolts、Thunderstorm、PhotonRay、PlasmaBlaster
防御类技能:
- ShieldWall、InvulnerabilityArrow、InvulnerabilityFallDamage
- InvulnerabilityFireworks、InvulnerabilityKnockback
- ChannelHealing、SpiritWalk
特殊能力:
- GroundPound、Implosion、MeteorShower、GoldExplosion、GoldShotgun
- SkeletonPillar、SkeletonTrackingArrow、TrackingFireball、Taze、Taunt
- ZombieBloat、ZombieFriends、ZombieNecronomicon、ZombieParents
- SummonEmbers、SummonTheReturned、MovementSpeed
末影龙专属技能:
- AimedFireball、ArrowBombardment、DiscoFireballs、EmpoweredLightning
- Shockwave、Tornado(共 11 种龙专属技能)
战利品类技能:
- BonusCoins、BonusLoot、HyperLoot
技能通过 powers 列表字段添加到 Boss 上:
powers:
- invulnerability_knockback.lua
- flame_pyre.lua
- spirit_walk.lua
进阶功能
多阶段 Boss
Boss 可以拥有多个阶段,每个阶段使用独立的配置文件。使用 phases 字段引用阶段 Boss 文件,并使用 phaseSpawnLocation 设置阶段转换发生的位置。
精英脚本(Elite Scripts)
精英脚本通过事件驱动的动作、条件和冷却为自定义 Boss 提供进阶能力。脚本在 Boss 配置中使用 eliteScript 字段进行配置。
自定义模型
可以使用 customModel 字段将自定义模型应用到 Boss、NPC 和物品上。这需要额外的模型集成设置。
Boss 装备
Boss 可以穿戴自定义盔甲并手持武器:
helmet: DIAMOND_HELMET
chestplate: IRON_CHESTPLATE
leggings: LEATHER_LEGGINGS
boots: CHAINMAIL_BOOTS
mainHand: GOLDEN_AXE
offHand: SHIELD
命令执行
Boss 可以在特定事件时执行命令:
- onSpawnCommands - 在 Boss 生成时执行
- onDeathCommands - 在 Boss 被击败时执行
- onCombatEnterCommands - 在战斗开始时执行
- onCombatLeaveCommands - 在战斗结束时执行
Boss 消息
自定义 Boss 公告:
- spawnMessage - 在 Boss 生成时广播
- deathMessage - 在 Boss 被击败时广播(支持 $players 占位符)
- escapeMessage - 在 Boss 逃脱时广播
- locationMessage - 显示到 Boss 的距离(支持 $distance 占位符)
- deathMessages - 随机死亡消息变体列表
公告优先级等级(0-3)控制广播范围。使用 announcementPriority 字段。
区域 Boss
区域 Boss 使用 isRegionalBoss 字段,可以拥有牵引半径、生成限制和方块状态变化:
- leashRadius - 距离生成点的最大距离
- onSpawnBlockStates - Boss 生成时的方块变化
- onRemoveBlockStates - Boss 被移除时的方块变化
战利品配置
控制 Boss 掉落物:
- dropsEliteMobsLoot - 启用自定义战利品掉落(默认:true)
- dropsVanillaLoot - 启用原版掉落(默认:true)
- dropsRandomLoot - 启用随机战利品(默认:true)
- uniqueLootList - 带数量的特定战利品物品
示例:
uniqueLootList:
- custom_sword.yml:1
- rare_helmet.yml:1
预制内容
EliteMobs 包含 134 多个预制 Boss 配置以及适用于所有内容类型的模板。它们可以在各自的 /premade/ 文件夹中找到,并可作为创建你自己的自定义内容的示例。
获取帮助
- 查看侧边栏以获取具体的内容创建指南
- 访问 EliteMobs Discord 获取社区支持
- 查阅 GitHub 仓库 获取源代码示例