Minecraft玩家们都曾听说过一个有趣的故事:在很久很久以前,《我的世界》的鱿鱼可以像牛一样“挤奶”,可以像玩家一样在空中飞翔。那么这段历史是真实的么?为什么会产生鱿鱼奶以及会飞的鱿鱼呢?
01
会飞的鱿鱼!可以产奶的鱿鱼!
不知道从什么时候起,又或者是古往今来玩家们的口口相传,似乎《我的世界》不论是新老玩家都听说过这样的一个故事:“你知道么,十年之前的鱿鱼是可以飞的。你知道么,十年之前的除了牛奶还有鱿鱼奶!”
仿佛知道这个故事的人,都是“成名已久”的老玩家,仿佛每个人都亲眼见证过这一罕见的奇观。确实,Minecraft长达14年的历史,如果你才曾在十年之前就见到过这样的一幕,对于大多数刚入坑的玩家来说着实足够的老了。只是会飞的鱿鱼,以及鱿鱼奶的故事究竟是否是真实的呢?
然而,很多所谓的“老玩家”其实并没有见过这所谓的会飞的鱿鱼。如今会飞鱿鱼的“梗图”泛滥于社区之中,人们甚至无需刻意的收集它们,这种梗图总是能扑面而来的出现在我们眼前。
所以在这个背景之下,我们尝试来追溯这一故事的真实性,以及它真正的来源!
02
2010年年底Jens Bergensten这个刚满31岁的有志青年加入到了Mojang团队,不难猜测,Notch一定是看上了他满头的秀发,才决定让其加入到团队当中的。当时在当时Notch只让他负责另一款游戏Scrolls的后端开发。
2011年年初,Jens开始参与到了Minecraft的后端开发。他负责开发的第一个生物就是“鱿鱼”,而在当时Jens还从未尝试过用《我的世界》代码来写一个Minecraft的生物。于是,它就复制了一头牛的代码,然后随便添加了一些新的特性,例如让鱿鱼可以像鱼一样游泳,让鱿鱼拥有拥有属于自己的行动方式。
当时,新人总是会犯一些未知的错误,而代码总是会以某些奇怪的方式运行起来。这个时候就出现了一个怪异的现象,鱿鱼居然可以用桶挤奶了!而这背后的原因,其实就是JEB在复制了牛的代码之后,忘记删除了部分的代码特性,譬如说挤奶的这一部分。当然,在弄懂了这一切的问题之后,鱿鱼产奶的特性在经历了Java版Beta1.2 和Java版Beta 1.4的版本之后,终于被Jens优化掉了。
那么问题来了,鱿鱼会飞又是怎么回事呢?还是当年的新人Jeb,还是那个代码总能以奇怪的方式运行起来这么个理由。Jeb删除了所有关于牛的行走方式,并赋予了鱿鱼可以在水中游泳的特性。这个时候Jeb忘了一件事,他忘了给游泳这个行为设置活动范围,也就是说牛可以活动的高度,譬如说爬上高山这一行为也作用在了鱿鱼上。
这就导致鱿鱼会以游泳的姿态,“飞”在海平面之上的空中。所以真相就是,鱿鱼并不是飞在天空里,而是脱离的海洋,在空中游泳。
解决办法也很简单,让鱿鱼可以游泳的高度保持在海平面以下,或者是让它不能超过水存在的范围就轻松的消除了这个鱿鱼会飞的特性。
所以这个经典的鱿鱼梗,其实不过是JEB粗心下的产物,然而这个奇葩的特性还是在《我的世界》持续了整整一年,也让鱿鱼很多人快乐的源泉。甚至鱿鱼会飞会产奶这件事,还被做成了玩笑特性加入到了Minecraft愚人节版本当中。故而很多玩家看到的可能不是12年前的“会飞的鱿鱼”,而是后来加入的愚人节版本的“会飞的鱿鱼”。