制作罗盘
用普通布局制作方位、刻度和目标样式,再组合罗盘并添加运行时目标
罗盘模板组合外观与排列规则,目标坐标由运行时命令提供。希望在画布中制作时,直接阅读可视化罗盘教程。

资产前提
已有资产时可替换这些引用,不必重复复制。下面每段标注完整路径的 YAML 都是一份独立文件。
文件结构
tutorial_compass_content.yml
tutorial_compass.yml
tutorial.yml
tutorial_compass.yml
创建内容布局
方位、刻度、中心与目标都使用普通布局。一个目标布局可以同时包含图标和距离文字。
defaults:
font: tutorial_font
image:
namespace: tutorial
basename: ui
tutorial_compass_north:
label:
y: -14
value: "&fN"
tutorial_compass_east:
label:
y: -14
value: "&fE"
tutorial_compass_south:
label:
y: -14
value: "&fS"
tutorial_compass_west:
label:
y: -14
value: "&fW"
tutorial_compass_tick:
mark:
value: "&7|"
tutorial_compass_center:
mark:
value: "&f▼"
tutorial_compass_target:
icon:
y: 12
image:
id: gem
distance:
x: 14
y: 12
value: "&e{{ get distance }}m"组合罗盘模板
下面只引用布局 ID,不再内联文字或图片,也不配置 option。字体和图片组已经属于上一步的内容布局。
tutorial_navigation:
width: 180
fov: 180
directions:
north: tutorial_compass_north
east: tutorial_compass_east
south: tutorial_compass_south
west: tutorial_compass_west
ticks:
step: 15
layout: tutorial_compass_tick
indicator: tutorial_compass_center
outside: edge
collision:
mode: hide
markers:
default: tutorial_compass_target目标样式 ID 是 default,引用的是布局 tutorial_compass_target。后面的命令使用样式 ID,不使用布局 ID。
定位并绑定 HUD
tutorial_compass:
navigation:
anchor:
x: 50
y: 0
y: -90
compass:
template: tutorial_navigationtutorial_compass_hud:
layouts:
tutorial_compass: {}屏幕锚点定位整条罗盘,内容布局中的局部偏移安排图标与文字。省略 compass.id 时,目标集合 ID 为模板 ID tutorial_navigation。
执行 /xerr pack 并让客户端加载新包。此时应看到方位条;尚未提供运行时目标时,没有目标图标是正常的。
添加运行时目标
/xerr compass set tutorial_navigation home world 120 64 -300 default把 world 和坐标换成实际位置。目标 ID 为 home,再次设置相同 ID 会更新它。
最后的玩家参数省略时作用于自己;控制台必须指定观看玩家,例如:
/xerr compass set tutorial_navigation home world 120 64 -300 default Steve
/xerr compass list tutorial_navigation Steve完成检查
- 转动视角时方位随方向移动,中心标记保持固定。
- 与目标处于同一世界时,家园图标和距离作为一组内容显示。
- 已有
default样式,运行时目标集合与布局绑定一致。
目标由命令创建后无需重新打包;修改布局、模板外观或排列范围后重新打包。更多方位、排序、贴边和碰撞字段见罗盘模板参考。