北冥饼鲲 | 99%人不知道的局部坐标和大家都知道的相对坐标与绝对坐标 | 指令详解第5期

本教程强烈推荐你一边打开游戏一边学习;同时,本教程仅适用于Java版我的世界。
坐标(coordinates)在数字上反映了玩家在主世界中的位置。坐标基于一个由三条交于一点(即原点)的坐标轴而形成的网格。玩家会出生在距离原点数百方块的位置上。
——Minecraft Wiki
一、什么是相对/绝对坐标/局部坐标
绝对坐标,是基于0,0,0建系的一个三维直角坐标轴,每一个坐标可以指定一个绝对的方块位置,不因任何因素而变化。
相对坐标,是基于执行者原点或指定的某个坐标(可以通过execute 目标 ~ ~ ~ 等诸类方法)的一个偏移量来确定的一个坐标。该坐标系列建系时是通过上述所指的执行者(可能是命令方块?)或指定坐标为0,0,0并尝试建立一个相对绝对的相对坐标。
局部坐标,则是基于执行者面对的方向的一种很少接触到的指定方式,用开方符^来指定。这三个坐标^ ^ ^不再是指定xyz的相对偏移,而是指定左上前,负数代表右下后。/setblock ^ ^ ^2 stone的效果是在玩家面前两格放下一块石头,虽然部分功能也可以用相对坐标替代,但是相对坐标是做不到“看向哪哪就是墙”的恶搞效果的,可以说Mojang不是人造革,而是( )。
二、相对/绝对/局部坐标的用处和用法
相对坐标主要是对于不确定或者会变化的目标使用的,比如《行尸危机》中要在玩家附近生成僵尸,因为玩家的位置不确定、而目标也是不确定,但目标相对与玩家位置是确定的,就需要用到execute嵌套玩家嵌套summon。这样,就可以在玩家的附近,而非某个位置的附近生成僵尸。
相对坐标的格式是波浪符+偏移量,比如 ~ ~5 ~,单个~等同于~0。一种获取现在绝对坐标的方式是查看/tp @p ~ ~ ~的运行结果,但通常来说后面会有很长很长的小数。
比如:传送到我上面5格:/tp @p ~ ~5 ~,让我向东移动3米:/tp @p ~3 ~ ~。
绝对坐标主要是对于一个确定的、永不变化的位置使用的,比如《行尸危机》中玩家胜利后传送到结束屋,因为玩家的位置不确定、而目标是确定的,所以可以使用/tp @p 0 64 0来传送到确认位置。
局部坐标因为平时很少见而几乎不用,但是局部坐标有一个几乎是无敌的存在:限制视野。除去看向哪哪就是墙的恶搞,最常用的就是刷怪只刷脸上不刷背后这种超级超级超级良心的设定了,PVE地图制作者一定要熟练掌握这项技能,对提升玩家游戏体验非常重要。
混合坐标的使用方法相对就很灵活,比如/tp @a ~ 64 ~这个指令可以限制玩家无法跳跃或向下落(但可能导致半米深坑摔死人),/tp @a 0 ~5 0这个指令可以传送到x=0,z=0但有着比现在高5米的高度,可以适用于楼层型的PVE或者解密。
不过请注意,混合坐标只能混合相对和绝对坐标,而不能混合局部坐标。
三、如何使用和练习:
在接下来的课程中我会讲到tp和setblock等几种操作。点击关注,推荐,投币,收藏,就能看到更多的指令教程,一步步成为真正的指令大佬!
引用内容来自Minecraft Wiki “命令”词条