/worldborder 有十种形式,但只有两种会动
set 和 add 接受一个可选的时间参数,让边界逐渐缩小;其他八种都是即时生效的。另外,Minecraft 的四个边界默认值到底意味着什么。
世界边界是一个命令,有十种完整形式,其中两种与其他形式的区别正是缩小边界地图能起作用的全部原因。这些信息来自 Mojang 26.2 版本的命令树,以及本页面规划器所基于的默认值。
全部十种形式
/worldborder get
/worldborder set <distance>
/worldborder set <distance> <time>
/worldborder add <distance>
/worldborder add <distance> <time>
/worldborder center <pos>
/worldborder damage amount <damagePerBlock>
/worldborder damage buffer <distance>
/worldborder warning distance <distance>
/worldborder warning time <time>
这是完整的列表——没有 remove,没有 reset,也没有办法查询单个设置。get 只返回直径,没有其他信息。
只有 set 和 add 接受时间参数
有两种形式带有一个可选的尾随 <time> 参数,单位是秒:
/worldborder set 100 60— 在 60 秒内将直径移动到 100 格/worldborder add -50 30— 在 30 秒内缩小 50 格
其他所有形式都是即时生效的。这是所有缩小边界小游戏所依赖的机制,这也是为什么这些地图使用 set/add 配合计时器,而不是重复设置一个较小的数字——一个带时间参数的命令会产生平滑的缩小效果,客户端会将其渲染为移动的墙壁。
使用 负数 距离的 add 是相对缩小的实现方式。没有单独的减法形式。
distance 指的是直径,而不是半径
set 和 add 接受的是直径。一个 /worldborder set 6000 会让你在每个方向上离中心有 3000 格的距离,而不是 6000 格。这是该命令最常见的错误,本页面的规划器部分是为了在这两者之间进行转换。
center 是独立的,它接受一个位置参数,所以边界是一个以你上次设置的位置为中心的方形——移动中心不会改变边界大小。
四个默认值意味着什么
| 设置 | 默认值 | 含义 |
|---|---|---|
damage amount | 0.2 | 每秒伤害,每超出缓冲区一格的伤害值 |
damage buffer | 5 | 玩家超出边界多少格后开始受到伤害 |
warning distance | 5 | 玩家离边界多少格时出现红色晕影 |
warning time | 15 | 传入边界到达前多少秒显示警告 |
伤害部分值得再读一遍:它与你超出边界的距离成比例,而不是与在边界外停留的时间成比例。在默认设置下,站在边界外 10 格意味着超出缓冲区 5 格,所以每秒受到 1 点伤害——而超出 30 格则每秒受到 5 点伤害。玩家持续向外走会越来越快地死亡,这是预期的压力效果。
将 damage buffer 设置为 0 会完全移除宽限区,将 damage amount 设置为 0 会使边界纯粹是视觉效果——一道你可以穿过的墙,屏幕会变红但没有实际后果。
警告时间与移动有关,与位置无关
warning distance 根据你所在的位置触发。warning time 根据边界将要到达的位置触发:在默认的 15 秒下,一个正在缩小的边界会在它到达你之前 15 秒警告你,即使你目前还在边界内很远的地方。
两者可以同时触发,并且都只会在屏幕上着色——两者都不会阻止玩家。