楠木轩

我的世界:mc一次“灾难性”更新!21w06a,改写高度历史

由 濮阳南烟 发布于 经典

文/M菌


如我此前所预告的那样,《我的世界》256格高度的历史,将会在春季迎来一次变革!

虽然,我们一直期盼着Mojang可以进行一场高度的变革,但如今它真的来了,这带来的或许将是一场灾难性的更新!



21w06a整个快照的核心内容,用一句话来解释就是:1.17加入了洞穴并更改了mc保持了长达9年的建筑高度的限制!

解读:9年mc建筑高度的历史



2009年,Notch将海平面高度设定在了32层,即以海平面为起点可向上和向下各延伸32格,所以mc最初有了建筑高度的概念,并且它是64格。

2011年,在Beta 1.6中,建筑高度被更改至了127层,固体方块将不可穿越127层,有趣的是当生物等实体试图穿过127层是,其材质会变成全黑色。

2012年,JAVA版1.2.1,由于mc的区块引入了一种新的文件格式,所以在这一版本建筑高度被改写至255格,也就是人们常说的256格限制,虽然高度增加了,但其实海平面高度未变,所以从某种意义上来说,这一次更改,只是增加了地面上方,空气方块的建筑高度。建筑等遗迹均按照原本的127层时代的逻辑来生成。

这种操作其实对存档兼容性,以及曾经生成代码的妥协。否则这将会是一个巨大的工程量。但自这个高度限制的变更之后,未来整整9年,《我的世界》再也未曾调整过。



但是,1.17洞穴更新彻底改变了这一历史!因为你会发现在-1层也可以划船了?

1.17将会是mc史上一次“灾难性”的更新?


本周Mojang在新快照划时代意义的将建筑高度范围由0=Y<256,改成了-64≤Y<320,合计建筑总高度达到了384格! 理论上这是让人兴奋的一次变革。

但为什么说21w06a将会是一次灾难性的更新?

其一:这次建筑高度的变革和9年前的有127变到256不同,这不再仅仅是天空中空气方块向上提升+38那么简单。而是建筑高度提升被分成了两块:向上+64层,向下-64层。

其二:向上+64,这很简单,对世界生成几乎不会有任何改变,毕竟加的也只是空气而已。但是向下-64,这可并不简简单单是增加了虚空空气的64格,而是整个地面向下延伸64格。

其三:基岩层变了,0层不再是基岩,而是石头,很奇怪是不是?基岩层下移到了Y=-64层的位置。按照Mojang的说法,这是为洞穴更新留下足够的空间。(不难看出Deep Dark洞穴将一定会位于64层以下。)



于是一个很难解释的“灾难性”问题就出现了,未来我们该怎么萌新解释Y=0层是如何定义的?举个例子:人类对于温度0的划分,是根据“水在这个温度下会结冰”来定的标准。那Y=0是什么?或许,Mojang应该给“0层”一个准确的定义和结构上的区分。

又或者可以将当前所以方块、建筑、结构的生成坐标-64,基岩层依旧是0,海平面上升了64格。但这么做将会推翻mc历史上所有的教程和认知。

未来:存档可以进行升级么?



这几乎是99%的玩家会思考的问题:“建筑高度增加了128格之后,我的旧存档是否可以在未来升级到1.17?”

Mojang用事实告诉我们,提示:Loading of old worlds is temporarily disabled,暂时禁止加载旧世界!

Mojang当然不会傻到旧存档不支持升级到新版本的事情。毕竟这事儿只有微软干得出来!(ps:当年微软就因为软硬件的不兼容,干死的可不只是自己的手机业务)



所以Mojang官方很快便出面澄清:未来旧存档一定会兼容和升级到1.17,高度的增加也不会影响到“旧世界”(指已加载的区块)。并且我们将探索将旧世界也增加新的建筑高度方式。

知识点:通常来说,《我的世界》旧存档升级到新版本,会默认一个规则,已加载的区块不变,未加载的区块将按照新版本的逻辑进行加载。但是若把这个规则放到1.17的话会发生一个“灾难性”的诡异生成:

即在已经加载的区块里,基岩出现了Y=0层,0层以下全是空气。隔壁未加载的区块基岩则出现在Y=-64层,地下64层将变得无比复杂和诡异!



所以截至目前,《Minecraft》的第一个高度更改的快照21w06a是禁止加载旧存档的,你要明白快照本来就是测试版本,居然连这都禁止加载!可以想象在Mojang的测试中,旧存档升级一定是出现一场无法挽回的“灾难”。

但有趣的一点是:未来在Y=-1挖矿会发生什么?地底向下延伸出64格,这将彻底改变Minecraft的矿物结构。钻石?或许在1.17你要去更深的地方……