跳到主要内容

其他指令

这一页收录不属于「看板 / 行 / 页 / Display」的指令:帮助、重载、列表、版本、从其他插件转换,以及「功能(feature)」和「性能分析(profiler)」两组子指令。

先说主指令本身:

  • 只输入 /clh:管理员会看到「输入 /clh help 查看可用指令。」;一般玩家会看到版本信息(因为 dh.default 默认所有人都有)。
  • 输入不存在的子指令:管理员会看到「未知的子指令。」和上面那句提示;一般玩家同样只看到版本信息。
权限

每条指令都要先通过主指令权限 dh.default(默认所有人都有),再检查各自的权限。feature、profiler 两组还要多一层群组权限。拥有 cloudhologram.admin(或 dh.admin)的人直接通过所有检查。完整列表见 权限。

指令一览​

指令作用
/clh help列出通用指令
/clh reload重新载入设定、语言、动画、看板、功能与 Display
/clh list列出所有看板
/clh version显示插件版本
/clh convert从其他看板插件转换
/clh feature help列出功能指令
/clh feature list列出所有功能和开关状态
/clh feature info查看某个功能
/clh feature enable暂时开启某个功能
/clh feature disable暂时关闭某个功能
/clh feature reload依 config.yml 重新载入某个功能
/clh profiler help列出性能分析指令
/clh profiler start开始记录性能数据
/clh profiler stop停止记录
/clh profiler stats查看统计结果
/clh profiler reset清空统计数据

/clh help​

列出所有「通用」指令的用法和说明,最后一行显示主指令的别名。

项目内容
用法/clh help
权限dh.command.help
别名?
控制台可以
  • 列表包含:profiler、help、reload、list、displays、lines、features、pages、convert、version,以及 快捷指令(click、style、validate 等)。
  • 看板指令和它们的快捷写法(create、delete、move……)不会出现在这里,要看请用 /clh hologram help,或参考 看板指令。
  • 每一组都有自己的 help:/clh line help、/clh page help、/clh feature help、/clh profiler help。

例子

/clh help
/clh ?

/clh reload​

重新载入整个插件:config.yml、lang.yml、动画、holograms/ 里所有看板、功能(feature)、Display。直接改了文件之后执行这条才会生效。

项目内容
用法/clh reload
权限dh.command.reload
别名无
控制台可以
  • 重载在后台执行,完成后提示:重载成功,耗时 N 毫秒!
  • 用 clone … true 建立的临时看板会消失(它们没有文件)。
  • 用 /clh feature enable/disable 暂时切换的功能,会恢复成 config.yml 里的设定。
  • 改完 yml 想先检查有没有写错,可以先执行 /clh validate,它只检查不重载。

例子

/clh reload

/clh list​

列出服务器上所有看板:名称、世界、坐标。每页 15 个,底下有可点击的翻页按钮。

项目内容
用法/clh list [页]
权限dh.command.list
别名无
控制台不行,只能玩家
参数必填说明
[页]否第几页列表,从 1 开始;超过最大页会显示最后一页。Tab 会补全现有页码
  • 停用的看板名称显示为红色。
  • 一个看板都没有时提示:目前没有任何看板。
  • 想找自己附近的看板,用 /clh near 更快。

例子

/clh list
/clh list 3

/clh version​

显示目前的 CloudHologram 版本,以及说明文档的网址。

项目内容
用法/clh version
权限dh.default 或 dh.command.version(dh.default 默认所有人都有)
别名ver、about
控制台可以

例子

/clh version
/clh ver

/clh convert​

把其他看板插件的看板,转换成 CloudHologram 的看板。转换步骤、支持程度、转换后要检查什么,详见 从其他插件转换。

项目内容
用法/clh convert <插件> [文件]
权限dh.command.convert
别名无
控制台可以(建议在控制台执行)
参数必填说明
<插件>是来源插件,不分大小写,见下表(Tab 可补全)
[文件]否来源文件的路径,从服务器根目录(放 server.jar 的文件夹)算起,例如 old/HolographicDisplays/database.yml。不写就读下表的默认位置。路径里不能有空格
插件也可以写默认读取的文件支持程度
HolographicDisplayshdplugins/HolographicDisplays/database.yml完整
GHologhplugins/GHolo/data/h.data完整
CMI—plugins/CMI/Saves/holograms.yml(找不到再找 plugins/CMI/holograms.yml)有限
FutureHologramsfh、fhologramsplugins/FutureHolograms/holograms.yml有限
Holograms—plugins/Holograms/holograms.yml有限
  • 支持「有限」的插件会多提示一句 注意:xxx 的支持有限!,部分功能可能转不过来,转完请逐个检查。
  • 结束后显示总数,以及成功、跳过、失败各几个。名称已经存在的看板会被跳过,不会覆盖。
  • 来源插件不需要安装,只要它的文件还在上面的位置即可。
用 [文件] 读别的位置

来源文件放在别的地方(例如从旧服务器复制过来的备份)时,可以用 [文件] 指定路径。注意文件名必须和上表默认的一样(database.yml、h.data、holograms.yml),只有文件夹可以不同;文件名不对或文件不存在时,这次转换算失败,控制台会提示需要的文件名。

例子

/clh convert HolographicDisplays
/clh convert hd
/clh convert cmi
/clh convert hd backup/HolographicDisplays/database.yml # 读备份文件夹里的文件

功能 /clh feature …​

「功能」是 CloudHologram 内置的两个小功能,平时用 config.yml 开关:

功能名称作用config.yml 段落
damage_display实体受伤时,在它身上冒出一个短暂的伤害数字(暴击另有样式)damage-display:
healing_display实体回血时,冒出一个短暂的回血数字healing-display:

两个功能默认都是关闭的。冒出来的数字只发给和这个实体在同一个世界的玩家。外观、停留时间、要不要显示玩家/生物等设定见 config.yml。

  • 写法:/clh feature <子指令> …,feature 可以换成 features 或 f。
  • 群组权限:dh.command.features,再加各子指令自己的权限。
  • 功能名称请照上表写小写加下划线(Tab 可补全)。
指令开关只是暂时的

enable / disable 只改变现在的状态,不会写回 config.yml。执行 /clh reload、/clh feature reload 或重启后,会回到 config.yml 里 enabled: 的设定。想永久开启,请改 config.yml。

/clh feature help​

列出功能组的全部子指令。

项目内容
用法/clh feature help
权限dh.command.features.help
别名?
控制台可以

例子

/clh feature help
/clh f ?

/clh feature list​

列出所有功能和目前状态(开启 / 关闭)。

项目内容
用法/clh feature list
权限dh.command.features.list
别名无
控制台可以

例子

/clh feature list
/clh f list

/clh feature info​

查看某个功能的名称、说明和目前状态。

项目内容
用法/clh feature info <功能>
权限dh.command.features.info
别名无
控制台可以
  • 功能的「描述」是英文(沿用 DecentHolograms 的原文,例如 Spawn a temporary hologram displaying damage.)。
  • 名称写错:该名称的功能不存在。

例子

/clh f info damage_display
/clh f info healing_display

/clh feature enable​

立刻开启某个功能(暂时的,见上方提示)。

项目内容
用法/clh feature enable <功能>
权限dh.command.features.enable
别名on
控制台可以
  • 已经开启:功能 "xxx" 已经是启用状态!;名称写错:功能 "xxx" 不存在。

例子

/clh f enable damage_display
/clh f on healing_display

/clh feature disable​

立刻关闭某个功能(暂时的,见上方提示)。

项目内容
用法/clh feature disable <功能>
权限dh.command.features.disable
别名off
控制台可以
  • 已经关闭:功能 "xxx" 已经是停用状态!

例子

/clh f disable damage_display
/clh f off healing_display

/clh feature reload​

只重新读取某一个功能在 config.yml 里的设定(外观、时间、开关等),不用整个插件重载。

项目内容
用法/clh feature reload <功能>
权限dh.command.features.reload
别名无
控制台可以
  • 重新读取后,开关状态以 config.yml 的 enabled: 为准。
  • 只读取这个功能自己的段落;config.yml 其他设定的修改仍需 /clh reload。

例子

/clh f reload damage_display
/clh f reload healing_display

性能分析 /clh profiler …​

性能分析器(profiler)用来测量插件内部某些步骤花了多少时间,给排查卡顿或回报问题时使用。平常不用开。

  • 它测量的是 Display 实体 的渲染流程,计时器名称如下。只用传统看板(hologram)、没有 Display 时,通常不会有任何数据。
计时器测量的步骤
post_processDisplay 内容的整体后处理
post_process.text文字 Display 的后处理
post_process.text.format_line每一行文字的格式转换
post_process.text.animate_line每一行文字的动画处理
render.diff计算哪些内容需要重新发送
render.platform实际发送给玩家
  • 计时器在第一次测到数据后才会出现,之后 stats、reset 才能补全它的名称。
  • 数据只存在内存里,重启后清空。
  • 没有别名,要写完整的 profiler。群组权限是 dh.command.profiler,包含下面五个子指令的权限;它也包含在 dh.command 里。

/clh profiler help​

列出性能分析的全部子指令。

项目内容
用法/clh profiler help
权限dh.command.profiler.help
别名?
控制台可以

例子

/clh profiler help

/clh profiler start​

开始记录。之前的数据会保留,想从零开始请先 reset。

项目内容
用法/clh profiler start
权限dh.command.profiler.start
别名无
控制台可以
  • 已经在记录:性能分析器已在运行中!

例子

/clh profiler reset
/clh profiler start

/clh profiler stop​

停止记录。已经记录的数据会保留,仍然可以用 stats 查看。

项目内容
用法/clh profiler stop
权限dh.command.profiler.stop
别名无
控制台可以
  • 本来就没在记录:性能分析器未在运行!
  • 不用的时候记得关掉,记录本身也会占一点点性能。

例子

/clh profiler stop

/clh profiler stats​

查看统计结果。不写计时器时,列出全部计时器(按总耗时由多到少排序),每个显示平均耗时(纳秒)、次数、P50 / P95 / P99;指定计时器时,显示更详细的次数、平均、最小、最大、各百分位数和分布。

项目内容
用法/clh profiler stats [计时器]
权限dh.command.profiler.stats
别名无
控制台可以(输出较长,建议在控制台看)
  • 计时器名称写错:找不到 ID 为 'xxx' 的计时器!
  • 时间单位是纳秒(ns),1 毫秒 = 1,000,000 纳秒。P95 表示 95% 的情况都比这个数字快。

例子

/clh profiler stats
/clh profiler stats render.platform

/clh profiler reset​

清空统计数据。不写计时器 = 全部清空;写了就只清空那一个。

项目内容
用法/clh profiler reset [计时器]
权限dh.command.profiler.reset
别名无
控制台可以
  • 清空不会停止记录;正在记录时会从零继续累积。

例子

/clh profiler reset
/clh profiler reset post_process.text