第六十七章 更高级的locate(1 / 1)

(此章节于2022年7月13日重写)

近日,Mojang在Minecraft Java1.19.1版本中添加的Player Reporting System(玩家举报系统)引起了轩然大波,许多Minecraft玩家认为这是Minecraft将要走向下坡路的前兆。

但这和我们暂时没有关系,相反,1.19荒野更新中的一些关于指令的更新更需要得到我们的注意。比如1.19版本中,Mojang对指令/locate的更新。

在第二十一章,我们了解到了/locate指令的用法,也就是如下:

Java1.19版本前

/locate <结构名>

基岩1.19.10版本前

/locate <结构名>[仅在未生成的区块中查找:布尔值]

看起来相当的简单,Mojang也这么认为。但Mojang不只是认为这条指令简单,他们还认为这条指令简单到过于简陋。于是,在Minecraft Java1.19和Minecraft Bedrock Edition 1.19.10更新中,Mojan对/locate指令进行了大更新,变成了如下模样:

Java1.19及之后版本

/locate biome <生物群系ID>

/locate poi <兴趣点ID>

/locate structure <结构ID>

基岩版1.19.10及之后版本

/locate biome <生物群系ID>

/locate structure <结构ID>[仅在未生成的区块中查找:布尔值]

(注:基岩版的locate尚在更新中,有可能会发生变化)

看起来仍然相当的简单。

首先,/locate原来的功能,也就是『定位特殊的建筑(结构)』,被移植到了structure子命令中,这里我们就不细讲了。然后,Mojang将/locatebiome这条指令合并到了/locate,变成了biome子命令。最后,Mojang添加了一个新的子命令,叫做poi,可以用于查找兴趣点。

唉,什么是兴趣点?它有什么用?为什么会让我们兴趣?

待会我们会讲到,先让我们来看看这个/locatebiome命令又是什么。

/locatebiome

作用:寻找指定生物群系

存在版本:Java1.16-1.19快照

需要权限等级:2

需要作弊:否

格式:

/locatebiome <生物群系ID>

/locatebiome这条指令添加于1.16版本,其功能类似于当时的/locate指令,可以查找最近的生物群系并返回其位置。

也是很简单,但功能由于和locate太类似,Mojang就让它合并过来了。

现在我们再来看看poi子命令。

上面说了,poi子命令可以查找兴趣点。兴趣点是什么?

兴趣点(point of interest),是在Minecraft Java 1.14加入的一个东西,主要指的是能被村民或其他生物认领的方块(注:这是作者自己的定义,官方目前没有给出定义)。也就是说,并不(只)是你会对这东西感兴趣,而是村民以及其他的一些生物会对这东西感兴趣。

有哪些方块是兴趣点呢?

截止目前(Java1.19.1),有如下兴趣点:

\\能被村民认领的\\

高炉(armorer)

烟熏炉(butcher)

制图台(cartographer)

酿造台(cleric)

堆肥桶(farmer)

木桶(fisherman)

制箭台(fletcher)

床(home)

炼药锅(leatherworker)

讲台(librarian)

切石机(mason)

钟(meeting)

织布机(shepherd)

锻造台(toolsmith)

砂轮(weaponsmith)

\\跟蜜蜂有关的\\

蜂巢(bee_nest)

蜂箱(beehive)

\\跟玩家有关的\\

避雷针(lightning_rod)

磁石(lodestone)

下界传送门(nether_portal)

举个例子。比如我们要寻找最近的下界传送门,就可以运行如下指令:

/locate poi minecraft:nether_portal

蛮简单的,这个兴趣点看起来好像很高大上,实际上也没什么嘛。

现在,新版本的/locate算是介绍完了。但还有一些问题:

在Java新版本中,各种村庄的ID被拆分了,虽然这对我们搜索特定种类的村庄有很大帮助,但万一我们仅仅只是想找个村庄该怎么办?

答案很简单:用标签。

还记得我们在『本书第一次大修新增章①』中提到的标签吧?在Minecraft Java 1.18.2更新中,Mojang开始允许/locate和/locatebiome指令使用标签进行查找,就算/locate经过了如此大的更新,这个功能也没砍。

那有哪些标签,怎么使用呢?

对于结构来说:

cats_spawn_as_black(会生成黑色的猫)

cats_spawn_in(会生成猫)

dolphin_located(会有海豚)

eye_of_ender_located(会有末地传送门)

mineshaft(是矿井)

ocean_ruin(位于海里的废墟)

on_ocean_explorer_maps(在海洋探险家地图上的)

on_treasure_maps(在宝藏地图上的)

on_woodland_explorer_maps(在林地探险家地图上的)

ruined_portal(是破败的传送门)

shipwreck(是船的废墟)

village(是村庄)

对于生物群系来说:

非常多,不列了,自己去Minecraft Wiki上查

对于兴趣点来说:

acquirable_job_site(村民的工作站)

bee_home(蜜蜂的家)

village(跟村庄有关的)

比如,我们要查找最近的村庄,我们可以这么做:

/locate #minecraft:village (Java1.18.2)

/locate structure #minecraft:village (Java1.19及之后)

我们要查找最近的山地类生物群系,我们可以这么做

/locatebiome #minecraft:is_mountain (Java1.18.2)

/locate biome #minecraft:is_mountain (Java1.19及之后)

那么本章就到这里了。接下来,我们将正式开始学习execute的使用。

最新小说: 开局小破屋,我靠种地征服诡界 深蓝:虬海霸主 全班穿越到明日方舟 Minecraft指令手册 网游之神游弓手 冥卡世界 你们管这叫游戏 超时空teacher之寻石战纪 奥拉星:黯星的入侵者 钻石王牌之最强双子星