今年是Minecraft 15周年,也是俺游玩这个游戏的第11年,在此写下俺与Minecraft的邂逅。
中二病也要打游戏
呼应标题,俺很早就有这种设计地下实验室的欲望,这个欲望在俺看完《生化危机》系列电影后更加浓郁。在小时候会绘制许多地下实验室设计的“图纸”以满足脑中的幻想。之前也是尝试过一些模拟经营类的游戏,但这类游戏以城市为单位进行设计,对于地下实验室这种单独的建筑无法进行细节的建筑。之后俺就很机缘巧合地发现了Minecraft。
其实在七年前正式玩Minecraft之前,俺已经在iPad上试玩过这个游戏。但是当时携带版还没有中文,也没有看到教程。于是瞎几把进入游戏后不小心选了生存模式,诞生在一座孤岛上,到了晚上被僵尸围攻干死了。面对这莫名其妙的死亡,俺恼羞成怒、气急败坏、生无可恋,于是就秒删了游戏。
而这一次重新尝试是在俺上初三的的时候,一个很平凡的周六下午。具体是怎么想到玩这个已经不可考,总之就阴差阳错的进入了MCBBS,又阴差阳错地下载了1.3版本的Minecraft。1.3版本创造模式的背包栏是没有分类的,还有著名的“雷石东直放站”,在通过1.3版本生成一片区域的地图后,俺就将版本更新到了1.5.1,这是当时最新的游戏版本。1.3和1.5的地图生成算法差不多,而俺所使用的那个种子,1.3比1.5在出生点地下多了一片废弃矿坑。这个废弃矿坑成为了俺游戏的主要活动场所。
前文讲到,俺这个半中二少年,喜欢搞什么邪恶地下实验室。而进入游戏游玩的俺,首要目标便是打地洞,毕竟地下实验室在地下。正当钻到y=20左右的地方,俺发现了这个废弃矿坑。瞬间就觉得可以改造这个矿坑来实现俺的地下实验室计划。
于是漫长的改造开始了,由于当时对指令了解不足,几乎所有矿道改造都是手工的。由于早期没安装Optifine,也没有调节足够的亮度,俺在游玩时晕3D晕得很厉害。但晕得多厉害也无法阻止中二少年的实验室梦。俺当时看闲书看了一些数字电路的资料,刚好Minecraft里面可以使用红石电路,俺就做了一些简单的门电路装置作为机关。
俺当时几乎每周放假回家都在玩Minecraft,到了俺中考前这片区域已经成型了,不过相比后来俺做的实验室,这个黎明时代的实验室显得很狭小,功能划分也很杂乱。这是没有WorldEdit工具选择手工制作的弊端。在这个地图最后的版本中,俺完成了一个简易的地下实验室、生物培育间、船坞、办公室、会议厅、一些地上建筑以及作为俺家的别墅。在地图的其中一个遗迹,俺还架设前哨站,并在实验室和前哨站间使用WorldEdit修建了用于模拟生存的巨大地下空间(中二少年的微光城市幻想)。
俺在这张地图上尝试过很多Mod。最开始为了能够传送装了Portal传送门Mod,除了《传送门》游戏有的发射式传送枪外,还附带有游戏的机器人可攻击怪物。为了做电梯,装了一个UGOcraft机关Mod,可以把方块临时变成实体进行位移、旋转等运动。此外就是一些零碎的客户端性能性模组。最重要的是SPC单人指令模组,附带有WorldEdit。多亏了这玩意儿,在地图开发的后期,俺的建筑越来越浮夸了。
这张地图只开发了一年多就停止了,实际的开发面积不大,成为了俺第一次正式游玩Minecraft最深刻的记忆。
生存挑战
俺中考完后,就开始接触生存模式。当时游戏的版本已经升级到了1.5.2,俺开了一张新的地图玩生存。俺当时开的地图有一个特色地形,在出生点不远处有个突起的石山,俺后来把石山改造成了据点,当然这已经是后话了。当时俺出生在一片平原上,附近有一些零散的树木。由于对怪物害怕,本着“轻松游戏”的宗旨,俺开着和平模式玩生存,和平带来的另一个好处就是没有饥饿消耗,方便俺下矿几天不回家。
虽然是和平模式,但俺还是按照Wiki上的“安全房屋建造指南”修建了一个“可以杜绝任何潜在危险”的房屋。其实不外乎是修屋檐防蜘蛛上墙,湖城河+栅栏防止JJ怪爆炸,以及修建安全的地下室。好巧不巧,俺修房子的地下刚好是一个地下湖。于是俺费了九牛二虎之力,把地底湖改造成了卧室+珍贵矿物存储房间。同时,俺根据Wiki的挖矿法尝试打了一个阶梯式的矿井,但是选位问题最终没有挖到有用的东西。
过了一段时间,俺因为工程问题需要大量泥土,俺看上了石山附近的一座泥山。要抵达那座泥山得先穿过一片沼泽地,在多次往返后俺决定在泥山附近再修建一座临时据点,于是俺就向着石山进发了。石山的下面是一片像骑楼建筑的凹陷处,可以躲雨。俺简单地处理了方块和光线以避免危险(其实和平模式哪有危险呢),却突然发现石山下有一个不显眼的洞穴入口,要知道天然的洞穴往往是探索更多其他物资的开始。俺现在洞穴尽头打了一个阶梯式矿井,但始终没有找到废弃矿井,最终探索中止在一个大洞窟内。俺又从先前洞穴的另一端发现了通往更深处的入口,通过了几处悬崖和岩浆池后,俺发现了俺玩游戏以来最庞大废弃矿井系统:三个相互交错的废弃矿井。
当然,俺当时并不知道这是三个连在一起的废弃矿井。俺首先在岩浆池附近发现了第一个矿井的泥土房间(泥土房间是废弃矿井一个地面铺了泥土的立方体空间,一个泥土房间可以认为是一个废弃矿井的标记)。经过简单处理,俺把一号泥土房间改造成了临时据点。并逐渐清理一号矿井的木头、轨道以及裸露的矿石。在清理矿井的过程中,俺发现了一些奇怪的矿道,这些矿道与其他矿道联络程度不够,且似乎相互冲突,俺逐渐意识到这些矿道属于另一个废弃矿井系统,在清理完一号矿井后,我逐渐探索二号矿井的矿道,并发现了二号矿井的泥土房间。同样将二号矿井泥土房间稍加改造后,俺又发现并改造了三号矿井。俺在两个泥土房间的地面修建了两所临时房屋,存放些临时物品,方便俺通过地面快速返回住宅区,两个矿井的地面是会下雪的地形,下了大雪后俺的房子基本上可以看作是隐形了(虽然在单人地图里隐形好像没啥用处)。俺还在泥土房间和地面中间修了一个交通层用于修建隧道,然后一条贯通三个矿井、石山和老房子的矿道系统就完成了。
在探索矿井期间,俺还不忘搞搞农业啥的。石山和老房子的平原间有一片相对安全的平地(就是泥山所在的平地),背靠高山,一面对着沼泽地,俺对这里稍加进行改造,搞了一片南瓜地、西瓜地和可可豆种植园。别问俺为啥不种粮食,因为和平模式不会饥饿呀。最后这片本来就不大的平地已经满了,俺就开始搞第一期地下工程,搞了一片地下南瓜地。
同时,俺还把房子给搬了。由于经常在石山附近的矿井里转,原来房子离现场太远,无论是取素材还是放材料都麻烦,于是俺盯山了石山。石山是一个凸起的大石块,不与其他山体相连,正好给俺一个避难所的感觉,而且石山最高处达y=120,在山体里挖房间应该有不错的景观。于是俺就对石山动了工,最终建成了四层左右的洞穴房间,入口处即上文提到的石山底层凹陷处,从通往矿井洞窟的旁边有楼梯通往上层,二楼设置了炼铁间,数十个炼炉一起工作加快燃烧速度,同时二楼设置了一个房间作为作坊;三楼设置了生活区,制作了客厅、厨房、俺的卧室以及附魔间,客厅修了一片小楼梯通往空中花园;四楼是一片开阔的阳台,一个小楼梯通向了石山顶部。
俺还在石山地下修了一批贮藏室,用来分门别类收藏俺的材料。扩建地下设施也是在这时开始的。由于地下有许多洞穴,俺在平地那边也设置了地下农场,因此一个逐步推荐、分类改造的地下城方案开始了。最终形成了一大片地下农场以及四通八达的地下通道系统。
这张生存地图大约进行了半年就停止开发了,整张地图刚好达到了自给自足的程度。俺通过这张地图了解到生存模式的常见游戏方式和合成表。同时这张地图也是俺唯一一次老老实实玩生存的地图,因为在之后数年,俺都是在服务器上进行生存体验,服务器带来的不仅是多人协作的愉悦感,同时还有作为管理员的上帝感(笑)。
“麦块卖思轱辘”计划
高中上了一年,某天俺在学校贴吧闲逛时,突然看到一个学长准备在Minecraft还原俺们的学校,于是俺很愉快地加入他们。俺突然想到之前Azure进入大陆市场时俺申请到了帐号,于是俺又尝试用Azure的虚拟机开服。很快俺就开始熟悉MCPC+——也就是后来著名的Cauldron服务器端程序——它同时支持了当时市面上流行两个Minecraft修改API:Bukkit API和Forge API。
在摸索中,游戏服务器也运行了起来,版本是1.7.2。学长们在一张超平坦地图上修建着俺们高中的校舍。群主——也就是领头的学长非常具有号召力,很快带来了一众游戏玩家,随着人数增多问题开始显现——许多玩家对Minecraft这款游戏并不熟悉,在阴差阳下甚至会点燃TNT炸毁学校。在经历一次紧急回档后,俺和群主决定开放一个新的普通地图作为新手村,让刚登录游戏的新玩家能够在新手村充分练习自己的建筑技巧后,再向管理员申请权限进入施工区地图。同时,俺再次研究了当时安装的GroupManager权限组插件,以实现更加精细化的权限控制。面对“熊孩子”带来的种种挑战,俺成功习得了基本的Minecraft服务器管理技能。
学长们的校舍复原计划如火如荼进行了约一个暑假,在大学开学后他们便各散东西。校舍复原计划虽然缓慢了下来,但作为练手性质的新手村地图却被保留下来,许多刚入群的校友们都在新手村地图上留下了自己的作品。俺也在这张地图上继续我在单人地图上未尽的地下实验室计划。在主要玩家Zhu The Elder的帮助下,新手村地图逐渐成为了一个拥有多个行政区的地图,拥有复杂的地下铁路系统和剧情。
在稳定运行了约四年后,俺逐渐发现“麦块卖思轱辘”的服务器程序逐渐更不上最新的游戏版本。当时最新的版本是1.12系列,而俺们服务器则停留在1.7.2这个版本。服务器难以升级的原因是众所周知的EULA事件——这导致了Cauldron服务器端程序的停留在了1.7.10,而俺们服务器恰好同时安装有需要Forge API支持的模组,也需要Bukkit API提供支持的众多服务器端插件以优化游戏体验。在经过一系列的考察后,俺重新选定了Sponge这个基于Forge API但又提供了众多服务器端插件的服务器端程序。经过了复杂的方块替换后,俺们服务器成功升级到了1.12.2。
在运作本计划中,一台稳定的服务器便是所有游戏运行的基础。既然拥有了腐竹的权利,就得承担起腐竹的义务和责任。在早期,俺作为一高中生,并没有太多资金和渠道购买服务器,Azure大陆版的虚拟机可以安装Windows系统,为早期俺部署服务器提供帮助。到了俺高三之时,Azure大陆的免费使用服务已然终止,俺也带着整个服务器设备辗转在境外VPS、境内小厂VPS、腾讯云学生机、某共享IP单核高性能VPS,最后在迈入社会工作后,将其安置在家中的机柜。
后记
在俺游玩Minecraft的11年中,整个Minecraft游戏圈也发生了数次变化。先是于2014年卖身微软,后因EULA事件及多个技术上的客观原因,各个服务器及插件出现了断层。俺的“麦块卖思轱辘”计划地图从1.7.2升级至1.12.2后,已停留在该版本长达7年。期间虽尝试升级至1.19,但由于种种客观原因,不得不回滚至1.12.2运行。在新版本持续发布的数年间,俺也和众网友开启过多个紧追新版本而行的生存服务器,但越来越多的新特性似乎已经难以达成俺当年埋头苦玩6小时的记录。也许俺们怀念的并不是Minecraft本身,而是俺们自己的青春岁月。