跳到主要内容

哪些怪物显示血条

全部写在 plugins/CloudHealthBar/mobs.yml,改完 /chb reload。

最简单的写法:一只怪物一段​

在 mobs.yml 最上面,直接写 MythicMobs 的内部名称,说要不要显示、用哪个血条:

1fu1:
enable: true
health-bar: normal

1fuboss:
enable: true
health-bar: boss
height: 0.5 # 再往上 0.5 格

training_dummy:
enable: false # 这只不显示
栏位说明
enabletrue 显示 / false 不显示
health-bar用哪个血条:normal、elite、boss,或你在 styles/ 自己做的样式名称
height血条再往上几格(负数往下)
scale血条大小倍率
show什么时候显示:[damage, look, near]、[always]…(见下方「显示时机」)
name改显示的名字,例如 "<gold>精英 {name}"

除了 enable,其他都可以不写,没写的会沿用下面的默认规则。原版生物写大写英文名,例如 ZOMBIE:。

没写到的怪物

不用每只都写:没写到的 MythicMobs 怪物默认用普通血条(靠近、被打、准星都会显示),名字里有 boss 的自动用首领血条。 只想让写到的怪物显示?把 mythicmobs.enabled 改成 false:没写到的 MythicMobs 怪物就不显示,最上面逐只写的、以及 mythicmobs.mobs 里的照样显示。

规则可以写什么​

下面的进阶写法与上面的简单写法可以混用,health-bar / style、enable / enabled、show / triggers 互为别名。

每一条规则都可以只写一部分,没写的栏位用同一区块的 default。

栏位说明例子
style用哪个血条样式;写 none 就不显示boss
triggers什么时候显示(可以多选,见下表)[damage, look, near]
durationdamage / look 触发后显示多久(tick,20 = 1 秒)100
near-radiusnear 的距离(格),没写用 config.yml 的 triggers.near.radius24
height血条再往上几格(负数往下)0.4
scale额外缩放倍率1.3
name覆盖显示的名字(MiniMessage,{name} 代表原本的名字)"<red>☠ {name}"
model-height直接指定「头顶」离脚底几格(通常交给 CloudModel 自动算)6.5

整条写成一个字串也可以:some_mob: boss(只换样式)、some_pet: none(不显示)。

显示时机​

值说明
damage被玩家打到时显示给攻击者;config.yml 的 triggers.damage.show-to: nearby 时附近玩家也看得到。弓箭、宠物造成的伤害算主人的
look玩家准星指着时显示(距离 triggers.look.distance)
near玩家在 near-radius 格内就显示,离开就消失
always在显示距离(view-distance,默认 32 格)内一直显示,适合首领

damage / look 触发后会持续 duration tick;期间再被打、再看一眼会重新计时。

MythicMobs​

mythicmobs:
enabled: true
default: # 没有写到的 MythicMobs 怪物都用这条
style: normal
triggers: [damage, look, near]
mobs:
"*boss*": # 内部名称含 boss 的都用首领血条
style: boss
triggers: [always]
"*elite*":
style: elite
triggers: [damage, look, near]
SkeletalKnight: # 内部名称(不分大小写)
style: elite
height: 0.3
name: "<gold>精英 {name}"
training_dummy:
triggers: [damage]
duration: 60
some_pet: none # 这只不显示
  • 由宽到窄一层层套用:default → 通配(* 任意字、? 一个字)→ 完全相同的内部名称(最上层的简单写法最优先)。 没写的栏位沿用上一层,例如只写 1fuboss: {height: 0.5},样式与显示时机仍沿用 *boss*。
  • 名字默认用 MythicMobs 的 Display,支持颜色代码与 MiniMessage。
  • 不想让 MythicMobs 怪物默认显示:default 写成 style: none,再逐只开启。

原版生物​

vanilla:
enabled: false # 一般生物一律不显示……
default:
style: normal
triggers: [damage, look]
types: # ……但这里写到的还是会显示
WITHER:
style: boss
triggers: [always]
ENDER_DRAGON: none
WARDEN:
style: elite
triggers: [damage, look, near]

enabled: true 时所有原版生物都套用 default,types 可以针对某种生物改设定或写 none 排除。 原版生物的名字会按每位玩家的客户端语言显示(简体玩家看到「僵尸」,繁体玩家看到「殭屍」)。

玩家、盔甲架、展示实体等永远不显示的类型写在 config.yml 的 filters.entity-blacklist。

CloudModel 模型​

套了 CloudModel 模型的怪物(MythicMobs 的 model{} 技能、/cm apply 等)会自动:

  • 把血条放在模型头顶:优先用模型里的 tag_name(或 tag_ 开头)骨骼位置,没有就用 hitbox 骨骼的顶端,再没有就用最高的方块,乘上模型缩放; 再往上 config.yml 的 cloudmodel.padding 格。
  • 不会因为本体隐形而被过滤(CloudModel 会把原本的生物设成隐形)。

自动高度不满意时,按模型 ID 覆盖:

cloudmodel:
models:
dragon_king:
model-height: 6.5 # 头顶离脚底 6.5 格
style: boss
near-radius: 40

模型规则会盖在 MythicMobs / 原版规则之上,只写需要改的栏位即可。

LibsDisguises 伪装的怪物​

MythicMobs 用 Disguise: 伪装成别的生物(例如僵尸伪装成猪)时:

  • 血条高度自动按伪装后的生物计算,不会陷进模型里。

  • 显示血条时会藏起原本的名字牌,但 LibsDisguises 默认把伪装怪的名字改用它自己的盔甲架显示,那个藏不掉。 请在 plugins/LibsDisguises/configs/displays.yml 改成:

    OverrideCustomNames: false

    然后执行 /ld reload。没改的话开服时控制台会提示。改完后玩家看到血条时只会看到血条上的名字;离开显示范围后原本的名字牌会回来。

  • 伪装成玩家(Disguise: player ... setName "…" setNameVisible true)的名字,LibsDisguises 对所有人显示,任何插件都藏不掉。 想让血条取代名字,把 setNameVisible true 改成 false(之后名字只在血条上显示)。显示血条时控制台也会提示。

不会显示血条的情况​

  • 规则结果是 none,或怪物类型在 filters.entity-blacklist。
  • 所在世界被 filters.worlds 排除。
  • 怪物隐形(且没有 CloudModel 模型)且 filters.hide-invisible: true;怪物无敌且 filters.hide-invulnerable: true。
  • 玩家骑在这只怪物身上、玩家用 /chb toggle 关掉了血条、玩家离怪物超过 view-distance。
  • filters.hide-full-health-on-look: true 时,满血的怪物不会因为「准星 / 靠近」显示。