第九十七章 forceload-Java版控制常加载区块
(此章节于2022年7月30日重写)
在『第二十八章:区块』中,我曾提到过Java版和基岩版分别有一条指令用于控制常加载区块。我们在第三十二章具体了解了基岩版常加载区块指令的使用方法,但是Java版的呢?
这一章,我们就来了解:Java版控制常加载区块的指令
在Minecraft Java 1.13.1版本更新中,Mojang为Minecraft加入了一条全新的指令:
/forceload
force,即『强制......』的意思;load,即『加载』的意思。因此,『force load』就是『强制加载』之意。这个/forceload,也就是Java版用来控制常加载区块的指令。
/forceload
作用:强制使区块不断加载
存在版本:Java1.13.1-今
需要权限等级:Java-2
需要作弊:是
格式:
/forceload add <起点方块坐标>[终点方块坐标]
\\使得与框选范围有重叠的区块不断强制加载\\
/forceload remove <起点方块坐标>[终点方块坐标]
\\使得与框选范围有重叠的区块不再强制加载\\
/forceload remove all
\\使得当前纬度所有区块不再强制加载\\
/forceload query [位置:方块坐标]
\\查询所有正在加载的区块,或检查指定位置所在的区块是否正在被强制加载\\
虽然forceload和基岩版的tickingarea都是用来控制常加载区块的,但两者却有那么一点点不一样:前者是直接控制区块,后者是控制由区块组成的常加载区域。
啥意思呢?
当你在使用/tickingarea控制常加载区块时,实际上是在控制由一个或多个常加载区块组成的不同的常加载区域。这就是为什么当你使用/tickingarea添加常加载区块时,要指定名称的原因,因为你实际上是在通过框选得到的区块来创建一个常加载区域,然后游戏会让这个常加载区域内的所有区块不断加载。
而/forceload就没有『常加载区域』这个概念,因为当你使用forceload控制常加载区块时,还真的就是直接控制到区块本身,而不是控制由区块组成的区域。这就是为什么你使用forceload添加常加载区块时不需要指定名称的原因。
比如:
/forceload add ~~
假设你此时在主世界的(17,42,18)这个位置,那么这条指令将会使得你所在的区块不断强制加载,并返回以下数据:
已将minecraft:overworld中的区块[1,1]标记为强制加载
需要注意的是,由于区块不考虑Y轴,所以你在使用forceload添加常加载区块时不需要指定Y坐标,只需要指定X和Z坐标即可。
上面这条信息中,区块[1,1]是什么意思?
[1,1]在这边并不是一个普通的坐标,而是区块坐标。区块坐标本质上和普通的MC坐标没啥差别,唯二的两个差别无非以下两个:
①区块坐标的单位长度为16格,也就是1区块边长
②区块坐标的X、Z坐标均为整数(Y坐标其实也是,只不过如果算上Y坐标的话就变成区段坐标了)
也就是说,上面的区块[1,1],指的就是(16,?,16)这个坐标位置所处的区块。
现在,让我们尝试一下取消这个区块的强制加载:
/forceload remove ~~
如果你的位置在刚才都没有发生改变,那么这条指令将会使得你所在的区块,也就是区块[1,1]解除常加载:
已将minecraft:overworld中的区块[1,1]解除强制加载
但如果你已经跑到了其他区块,那么运行上述指令只会返回:
没有强制加载的区块被移除
那么我们该怎么找到被强制加载的区块呢?这时候就需要用到query子命令来查询:
/forceload query
运行上述指令,不出意外的话,游戏应该会返回以下信息:
在minecraft:overworld内找到一个强制加载的区块:[1,1]
然后呢?怎么移除?运行『/forceload remove 1 1』吗?
NoNoNo,上面已经说过了,[1,1]这个是区块坐标,你需要将它的x、z坐标均乘以16才能将其转化为能够被我们使用的坐标:
/forceload remove 16 16
这样子才行嘛。当然,如果你觉得这很麻烦,也可以通过运行:
/forceload remove all
来取消当前纬度的所有常加载区块。
这就是本章的全部内容。对了,query的可选参数『位置』也是填写普通的坐标,并不是填写区块坐标哦!
附录:/forceload历史
Java
1.13.1——加入了/chunk,并重命名成了/forceload
1.14.4——现在/forceload的权限要求为2
......
......
......
(我很好奇,这些营销号是什么眼光,竟然仅仅只看上了这个章节。然后现在一堆什么CSDN、爱代码爱编程等营销号都跟风转发。只不过,它们转发的是旧版的章节,并不是本书第一次大修过后的章节。所以如果你之前有看过那些营销号的文章,请注意,那并不是他们自己写的,而是转发了以前本章节的内容)