跳到主要内容

计分板、王条与音效

右侧计分板​

进入副本后,每位玩家都有自己的右侧计分板,离开时还原成原本的计分板。

  • plugins/CloudDungeon/config.yml 的 scoreboard: 是全服默认。
  • 每个副本的 config.yml 也可以写 scoreboard::写了 title 就换标题,写了 lines 就整份换成自己的内容,enabled 单独开关。
# plugins/CloudDungeon/config.yml
scoreboard:
enabled: true
title: "&b&l✦ 云 副 本 ✦"
lines:
- "&8&m "
- "&f{dungeon}"
- "&7难度 &e{difficulty}"
- ""
- "&b▍ &f{objective}"
- "&b▍ &f剩余 &a{time_left}"
- "&b▍ &f生命 &c❤ {lives}"
- ""
- "&7队伍 &f{party_size} 人"
- "{members}"
- ""
- "{leave}"
member-line: "{status} &f{name} {health_bar}"
hooks:
on-enter: []
on-leave: []
# dungeons/<副本>/config.yml
scoreboard:
enabled: true
title: "&b&l霜烬古殿"
lines:
- "&7目标"
- "&f {objective}"
- ""
- "&7剩余时间 &a{time_left}"
- "&7寒冰碎片 &b{v:碎片}"
- ""
- "{members}"
- ""
- "{leave}"
  • 最多显示 15 行,超过的部分不显示。
  • 内容可以重复(例如好几行空白),改字时不会闪烁;1.20.3 以上右边的红色数字会隐藏。
  • 每 5 tick 最多重画一次(一次打死 50 只怪也只会重画一次),不会因为刷新太频繁卡服。

变量​

变量内容
{dungeon}副本名称
{difficulty}难度(有难度模式时 = 模式名称)
{mode}难度模式名称
{phase}阶段(准备中、倒数、进行中、结算)
{objective}当前目标(objective 动作设置,或怪物组的 objective)
{time_left}剩余时间 mm:ss;没有时间限制显示「不限」
{elapsed}已经过时间
{lives}剩余生命(全队共用或自己的)
{deaths} / {kills} / {damage}自己的死亡数、击杀数、造成的伤害
{alive_mobs}场上剩余的副本怪物数
{party_size}还在副本里的人数
{online}在线且在场的人数
{ends_in}结算倒数剩几秒
{rank}评价
{player}自己的名字
{members}展开成每位队员一行,格式见 member-line
{leave}离开提示「输入 /leave 离开副本」(指令名称跟着 leave-command)

另外,脚本变量 也都能用,例如 {v:变量}、{group:怪物组:killed}、{group:怪物组:total}、{kills:怪物}、{task:任务};装了 PlaceholderAPI 时 %变量% 也可以。

不想要离开提示,把 {leave} 那一行删掉,或在副本 config.yml 写 notify.leave-hint: false(那一行会变成空白)。

队员行 member-line​

{members} 每位队员一行,member-line 可用:

变量内容
{status}状态符号:活着 ❤、等待复活 ☠、出局 ☠(灰)、掉线 ⚡
{name}名字
{health} / {max_health}血量 / 最大血量
{health_bar}10 格血条,依比例变绿 / 黄 / 红
{lives} / {kills} / {deaths}生命、击杀、死亡

member-line 只能在全服 config.yml 设置。状态符号在 lang.yml 的 hud.status。

和其他计分板插件共存​

TAB、FeatherBoard 这类插件会一直把自己的计分板盖回来。用 hooks 在进出副本时执行指令,暂时关掉它们:

scoreboard:
hooks:
on-enter:
- "tab scoreboard off {player}"
on-leave:
- "tab scoreboard on {player}"
  • 默认由控制台执行;开头写 [player] = 玩家自己执行,[console] = 明确指定控制台。
  • 可用 {player}、{uuid}。
  • on-enter 在显示副本计分板时执行(副本关闭了计分板就不执行);on-leave 在离开副本时执行。玩家掉线时也会执行 on-leave,重连回到副本时再执行一次 on-enter,所以 TAB 这类插件不会一直停在关闭的状态。

王条​

每场副本一条王条,全队共用。

# plugins/CloudDungeon/config.yml
bossbar:
enabled: true
color: PURPLE # PINK / BLUE / RED / GREEN / YELLOW / PURPLE / WHITE
overlay: NOTCHED_10 # PROGRESS / NOTCHED_6 / NOTCHED_10 / NOTCHED_12 / NOTCHED_20
# dungeons/<副本>/config.yml(可以只改开关和颜色)
bossbar:
enabled: true
color: BLUE

王条随阶段显示不同内容:

阶段显示
准备中「副本名称 准备中…」,贴地图期间给还在原地等的队员看
开场剧情中(before.yml 执行中)显示副本名称;倒数时显示「N 秒后开始」
进行中(有 Boss)Boss 名称与血量,进度条 = Boss 血量,红色。怪物组里标了 boss 的怪物就是 Boss
进行中(脚本设置了文字)bossbar 文字 动作设置的文字;bossbar reset 换回默认
进行中(其他)「目标 │ ⌚ 剩余时间」;进度条 = 目标进度(例如怪物组击杀进度),没有进度时 = 剩余时间比例
全队掉线「全队掉线,副本暂停中」
通关 / 失败评价与返回倒数,绿色 / 红色

各阶段的文字在 lang.yml 的 bossbar:。

音效​

每个副本的 config.yml 用 sounds: 设置,只写想改的,其他用默认值:

sounds:
start: "ENTITY_ELDER_GUARDIAN_CURSE 0.5 1.2"
clear: "myserver:dungeon.clear 1 1"
death: "ENTITY_WITHER_HURT 0.6 0.8"
group-end: none

格式是 音效 [音量] [音调],填 none 或空白 = 不播放。

键什么时候默认
countdown开场倒数每一秒BLOCK_NOTE_BLOCK_HAT 1 1.6
start正式开始ENTITY_ENDER_DRAGON_GROWL 0.6 1.2
clear通关UI_TOAST_CHALLENGE_COMPLETE 1 1
fail失败ENTITY_WITHER_DEATH 0.5 1.2
death有人倒下不播放
revive复活ENTITY_PLAYER_LEVELUP 0.6 1.6
checkpoint更新存档点(有提示时)BLOCK_BEACON_ACTIVATE 0.7 1.4
group-start怪物组出怪不播放
group-end怪物组打完UI_TOAST_CHALLENGE_COMPLETE 0.7 1.4
time-warning剩 1 分钟、剩 10 秒BLOCK_NOTE_BLOCK_BELL 1 0.8

音效名称可以写:

  • 原版音效的枚举名称:ENTITY_WITHER_SPAWN
  • 原版音效的键:entity.wither.spawn
  • 资源包里自己加的音效:命名空间:名称(对应资源包 sounds.json 里的名称),例如 myserver:boss.roar

脚本里随时播放音效用 sound 动作,同样的写法,见 动作:消息与音效。

内置提示开关​

副本的 config.yml 用 notify: 关掉内置的标题、结算信息,改用自己的脚本(end.yml)写:

notify:
clear-title: true
result-menu: false
键默认内容
countdown-titletrue开场倒数的大标题
start-titletrue正式开始的大标题
clear-titlefalse通关大标题(评价、时间)
clear-summaryfalse通关时聊天栏的结算(每人伤害、承伤、击杀、死亡)与获得的奖励
fail-titletrue失败大标题(原因)
fail-summaryfalse失败时聊天栏的结算
result-menutrue通关 2 秒后自动打开结算菜单
death-messagetrue有人倒下时的提示
time-warningtrue剩 1 分钟、剩 10 秒的提醒(时间限制要大于 2 分钟 / 20 秒才会提醒)
leave-hinttrue计分板 {leave} 那一行的离开提示;false = 那一行变成空白

提示的文字都在 lang.yml。