这次的精选让你成为 Hacker,或是真正体验 Hack。你来判断哪一个更有趣,是汇编的古老机器,是生动奔跑执行程序的小人,是奔行于城市间执行正义的黑客,又或者是在虚拟空间里寻找出路?
目录
《TIS-100》
《看门狗》 (Watch Dogs)
《人力资源机器》(Human Resource Machine)
《异常空间》(GlitchSpace)
TIS-100
作者:Maliut
通过编写汇编代码,根据给定的输入得到正确的输出,以完成关卡目标。《TIS-100》初看并不像是一个游戏:黑乎乎的堪比命令行的界面,不存在的新手教程,查看游戏手册也仅仅是在游戏外给你打开一个 PDF 文件而已。也许它更像是一个游戏化的编程模拟软件。
我并不知道 TIS-100 的架构是否有历史上的原型,但其的确与现实的汇编有着不小差别。指令集被精简得可怜,只支持简单的赋值、加减、判断等操作,并不支持位运算和寻址等。如果说这是为了让之前没有汇编知识的玩家能够低门槛上手的话,那只提供了一个半寄存器、限制代码的长度和宽度,就是单纯为了增加游戏的难度了。此外,和其他大多数编程题材游戏不同,它提供了多个按拓扑关系连接的节点(相当于一个处理器内核),节点与节点之间通过端口传递数据,这就需要你合理利用各个节点拆分代码,或是提供额外的寄存器,或是用来并行处理以提高程序的性能。
虽说其与现实编程存在差距,但倘若接受了这个设定,《TIS-100》就是一个相当不错的解谜游戏。对数据进行加减乘除、比较、排序、作图等,这些看似简单的功能,在游戏严苛的限制下,也成为了极具挑战性的谜题。如果你还嫌不够,你还可以尝试下完成增加了更多限制的游戏成就。此外,游戏自带了关卡编辑器,你可以下载其他玩家的谜题,也可以使用 Lua 语言编写自己的谜题考验他人。
不过过关仅仅是这游戏的一半。在你运行程序的时候,游戏会记录下你的程序使用的节点数、指令数和运行的 cycle 数(相当于运行的时间),并在好友中排名。这给了玩家不断优化程序性能的动力,也为游戏带来了较高的可重玩价值。由于这三项指标往往难以同时达到最优,游戏为每个谜题提供了 3 个存档以便于你试验各种代码结构和算法。完成一个谜题已属不易,找到它的最优解更是难上加难。当然,在这之后超越了好友,排名第一的成就感也是难以用语言来形容的。
值得一提的是,《TIS-100》并不单纯是一个程序题的**,它还自带了一个幕后剧情。手册封面的书信、里面的涂涂画画、每个谜题中 DEBUG 节点中的日记、全是乱码的隐藏谜题,似乎都在说明这台机器背后的故事。然而作为一个还没打通第一页关卡的菜鸡码农预备役,我目前并没有余裕去探索,而 steam 评测和社区中讨论这个的人似乎也不多。希望有大神能还原它背后的故事。
然而《TIS-100》终究只能是一个小众的游戏。对于只想体验下编程思想的非程序员,相比于《Human Resource Machine》和《Lightbot》之类,它缺乏形象化的反馈,远不如它们直观和友好。对于希望用编程发挥创造力的玩家,尽管游戏有沙盒模式,但也只能做做简单的数字比较和画个分辨率感人的像素图,可发挥的余地也不大。而以程序员的角度,则可能会不满足于其过于精简的指令集和诸多严苛的限制。不过与其他编程题材的同类游戏相比,《TIS-100》很好地塑造了编程体验本身,开关机的动画音效、手敲代码的输入方式以及程序运行时的嗒嗒声等,都能让你身临其境地感受到你是在一台老机器上从事着真正的编程工作。如果你对这样的体验很感兴趣,也愿意静下心来盯着屏幕烧上几个小时的脑子,那么我向你强烈安利这款游戏。
最后说句题外话,看到有不少人希望通过这种类型的游戏来学习些编程,我想说人生苦短,还是学门 Python 、Ruby 这样的脚本语言比较好。拿这样被极度精简的类汇编语言只会让你事倍功半。
看门狗 Watch Dogs
作者:奏4柴可夫
本文包含微量剧透,以及作者是个大学计算机基础水平的育碧黑(切粉)。因此该篇测评不客观不中立。
首先是看门狗的官方简介(以及我的吐槽):只需(neng)滑动手指,您就可以联系亲朋好友(并没有几个)、购买最新出品的手工零件和工具(种类很少),还能获知世界各地(?)的新闻。但通过同样简单的滑动动作(其实是点击),我们还能投下不断扩张的阴影(呵呵蝙蝠侠好像是隔壁厂的吧)。每一次连接我们都会留下电子痕迹,循着这些痕迹就能追踪我们生活中的每一个行为和重要事件,辨别我们的好恶——而这不仅仅适用于人(本游戏与黑客设定最大的联系)。如今所有的大城市都有网络连接,市区的基础设施都由复杂的操作系统监视控制。(现实)
在《看门狗》当中,这个系统被称作中央控制系统(ctOS)。它控制了城市科技的几乎每一个角落,掌握了全体城市居民的关键信息。玩家在游戏中将扮演艾登·皮尔斯,作为一名天才黑客和曾经的恶徒(以及车技吓人的马路杀手),他过去的犯罪行为曾导致了一场可怕的家庭悲剧。现在,玩家正在追踪曾经伤害主角家人的罪魁祸首。通过操纵所有连入城市网络的物件,玩家能够监控并骇入身边所有人的系统。还可以接入无所不在的监控摄像头,下载目标的个人资料以定位他们,控制交通信号灯和公共交通系统来阻拦敌人,以及更多可能。(最大的可能就是芝加哥最强黑客也战胜不了UPlay
其实一开始有人叫我写看门狗的测评,我是拒绝的。因为你不能说育碧辣鸡就辣鸡。我必须自己玩过了,证明出来的效果是……我对于黑人手机、看人信息、偷别人账户里的钱、用摄像头炸人还骇入保安系统偷窥市民们这样那样的生活细节这些无耻的侵犯他人正当权利的事情全都是……玩得还蛮开心的。(没错我是故意不加标点符号的)但是你让我把它当一款黑客类型游戏写测评的话,本文到这里就差不多可以结束了。
为什么呢?同志们,黑客类型游戏的核心是什么?就是黑进别人的电脑啊!黑进去之后在电脑里这样那样啊!然后升级啊!再黑再升级啊!
归根究底黑客游戏只不过把“打怪升级”变成了“黑电脑升级”。但好歹攻击手段变成了骇入之后,招式也就变成了各种代码。像 Hacknet 就是使用了一部分 Linux 的命令来模拟真实操作。至于具体的骇入方式设计,各款游戏都有不同的地方,比较硬核的就全部用命令行,大众点的就结合鼠标点击。升级了以后该买硬件买硬件,该接任务接任务。但核心还是绕不开敲代码跟鼠标点击。某种程度上你可以把它们都归类成“黑客模拟器”,让你在不明所以地开着外挂打完全游戏里的“怪”的同时,获得一种黑客中的大神的体验,并省去了学习各种编程语言或通信协议的麻烦。
然而育碧打破了我们的这一“成见”!在看门狗里扮演黑客,一个代码都不用!在仿佛《1984》般全民被一个系统监控的芝加哥,只要手中有一台有电的手机,心中有没有代码都不重要!在看门狗的世界里,再高级的系统防火墙,用手机拍照以及接水管的方式都能解决!同志们!这是一种怎样新颖的想法!一种未来的趋势!育碧为我们打开了新世界的大门!指明了以后的科技发展方向!一定是他们从伊甸神器中研究出来的先行者科技!(一个猜想,不一定对。
你妹的接水管算哪门子的骇入方式啊摔!!!你家防火墙是消防供水管道吗!!!你家安全工程师的专业都是给排水工程吗!!!
我都不跟你提按X骇入监视器,提那个算欺负育碧。看门狗跟黑客游戏的最大最大的关联点,注意了,这是重点(敲黑板),就是
游戏主角是个开挂的黑客
游戏主角是个开挂的黑客,
以及游戏主角他真的是个开了很大的挂的黑客。
不不不,不是斯诺登那挂的,更不是马克扎克伯格那挂的。那些人都是少年时开始专注编程,一个把自己牛成了《社交网络》里的男主角,一个把自己牛成了躲在莫斯科的“叛变特工”。而艾登皮尔斯的牛,牛在左手拿手机、右手提甩棍、腰插十几把抢,整日在芝加哥开着车损坏各种公共设施(其中大半是车子撞坏的),不时把桥升起来把井盖掀起来把变压箱炸掉……干一票大的之后顺手来个大停电通讯瘫痪之类的,洒洒水啦。
代码是什么,能提高专注力爆你头吗?
如果你想得到的黑客游戏体验是硬科幻级别的,请去玩 Hacknet。如果你想得到的黑客游戏体验是玄幻级别的,《看门狗》欢迎你。
虽然以上吐槽了这么多,但我还是很喜欢《看门狗》的。毕竟有一个这么牛的设定在这里。但不能忽视的一点是,也许是因为多方面的原因,育碧并没有这张好牌打好。它的续作估计会在一年内(目前最晚的传言是 17 年 4 月)推出,希望育碧能吸取第一部的经验和教训,把这手牌打得精彩些,别浪费了这个这么开挂的好设定。
人力资源机器 Human Resource Machine
作者:KCN
人力资源机器继承了旧作粘粘世界和小小地狱之火的风格:一如既往的各种不知所云,面瘫而又不失可爱的粘土小人,神秘莫测而又似乎有点沉重的剧情,特别舒适的背景音乐,带着旧照片色彩的画风。
这是一个编程类游戏,但是,不懂编程的也能很快上手,因为游戏教程很为详细,关卡的难度成长很慢,慢得可能对于一些专业的工作人员会觉得这游戏有点幼稚无聊。
游戏故事大致就是你是某公司的一个员工,从年轻入职开始,开始日复一日年复一年的机械繁琐的工作,而这工作就是按照你写的流程来进行,慢慢长大变老,最后退休离开了自己的工作。
游戏里的编译器(暂且这么叫它吧)做得很不错,灵活度比较高,可视化效果也很棒,而且代码里还能加上很为自由的注释(只能自己画而不能打字),在各种基础功能方面看似有欠缺,其实也就是自己组一个简单算法来实现这种欠缺,而且不少算法屡试不爽,理论上能够完成各种简单的数据结构,但是这个汇编相对于大多数的正常主流编译器也有很多不为方便的地方,所以操作起来还是会有些不顺手或者就是感觉很乱很别扭。在你写完代码点击运行按钮之后,这个小人就会机械地按照你所写的代码编译运行,很为生动地给你展示了整个小程序运行的过程,有时候完成正确的代码,然后运行的过程看看这个小家伙忙碌着还是挺享受的;假如你的程序有问题,那么就乖乖地看着老板怎么骂你吧~
难度比较大的方面可能在于这个游戏的代码最优和速度最快两个挑战,需要玩家更加认真进行分析来进行完成,但总的来说对于程序员整个游戏应该没有非常大的困难,很可能是个用来虐题的玩意。
异常空间 GlitchSpace
作者:lililili
字符界面,大概就是大多数人对编程的粗犷印象了。不过实际上,编程就好像电子锁,你可以选择输入密码式的字符录入来开锁,也可以选择指纹锁、人脸识别锁。编程一样可以采用图形化的方式来实现,这就是本文要介绍的游戏——《异常空间 Glitcthspace》。
并非横空出世,实际上图形化编程语言(G语言)在现实生活中早已有之,不需要深谙编程却又离不开编程的工科生应该是接触最多的,例如 MATLAB 中的 Simulink 工具箱,还有 NI 公司的 LabVIEW。如果你没有接触过,没关系,继续往下看,慢慢道来。
当我们谈论编程的时候,首先需要明确自己的目的是什么。在本作中,游戏的总体目标是很明确的,那就是从出发点移动到终点。具体到每一个小的对应目标,则是在游戏中玩家会发现有一些红色的特殊扁平方块可以被编程赋予新属性或者本身就自带程序来帮助自己通过各种不同的阻碍。
图1 每个关卡终点处的传送门
图2 程序的对象——红色方块
这些阻碍可能是高台阶、深渊断层、数据流(一碰即死)等等,而对红色方块编程则是指赋予它们一些新特性或者改变原来的属性,例如让方块移动、拉伸、旋转、产生弹力等。编程的方式见图3。
图3 游戏中的编程框图
这个编程界面和传统的字符语言不大一样,图3中出现了三种方块图形,最左边代表数字常量,中间代表方向矢量(形参),最右代表动作函数,界面的右下角还配了一个参考坐标系。可以看到,连线的两端必须是匹配的才可以连到一起,直接把常量的三角和动作函数的<连在一起是办不到的。根据这张图,我们可以轻易的了解到这个程序需要达成的目的是将红色方块沿着Y方向移动10个单位。这是一个最简单的程序,它的表达和我们想要达到的目的思维方式很相近,非常容易理解。
随着游戏的进行,编程可以用到的素材方块越来越多,复杂程度也会相对上升,例如出现了不是针对红色方块自己而是针对其他“对象”的操作,出现了诸如if等的函数。总体来说编程难度不会很高。编程模块的选取采用层级菜单的方式,到后面会发现其实函数不多的情况下不如把所有模块直接罗列出来选取更为方便,一级级点进去查看模块很麻烦。
图4 游戏后半段编程逐渐复杂了一点点
介绍完了本作的最大特点——只用点点鼠标的图形化编程之后,再来聊一聊作为一个解谜游戏其本身的素质。
除了编程这个噱头外,本作吸引到我的无疑是它简洁明快的画面。没有过多修饰,看着清爽舒适,这种风格深得我的喜爱。毕竟解谜游戏,一忌重复单调,二忌题干不鲜明,三忌谜题难度低。除非设计得当,不然花里胡哨的画面比较容易带来题干不鲜明的问题,例如需要把大把时间浪费在寻找散落于地图上的小东西。说回本作,实际上每关需要跑动的范围并不小,而且途中基本无法看到终点在哪里,但是游戏地形引导做得很棒,几乎没有出现过呆立原地不知道该往何处前进这种问题。通常,玩家向着前方新出现红色方块的地方前进,如果没有看到红色方块,则有时墙壁上会有亮起的条灯,默默指引方向。
图5 适宜的地形引导
游戏的形式是线性关卡,但是并没有给出关卡传送门让玩家有回味之前关卡的机会。作为关卡游戏,它几乎没有任何背景故事,玩家唯一需要做的就是不断地从起点前进到终点、起点前进到终点、起点前进到终点。一口气玩太久,难免会觉得无趣。而且游戏中不同地点对函数开放程度不同,解题方式比较死,开放性、创意性低,也是一大诟病。不过毕竟本作集中在对红色方块实体的操作上,没有设计很多涉及逻辑的内容,所以一直向玩家开放所有函数以其目前的关卡设计水平是难以达到的。想必这也是为什么有人评论说玩完了整个游戏之后却像只是玩完了一个教程一样。
图6 终点的风景
在结束故事模式后,游戏会新增沙盒模式。沙盒世界中有许多预设的建筑和红色方块,并且开放了所有函数,包括成倍于故事模式中从来没有出现过的新模块。但是和建造系游戏不同,本作沙盒中的操作除了给人机会熟悉新函数外,并没有什么可以带来成就感的行为。从沙盒中丰富的模块来看,可以说整个游戏有优秀的机制设定,但是最后却严重短腿于关卡设计,导致几乎一大半的设定都没有被使用到。
图7 沙盒
图8 沙盒中的全部函数
个人评级(专门针对解谜游戏):
综上考虑,嗯…本作3级吧!值得一玩,但是离经典还有距离。
+画面简洁清新
+游戏机制新颖,采用第一人称图形化编程闯关
+说明丰富,容易上手
缺点:
-关卡设计一般,难度不够有挑战性
-没有关卡选择,缺乏故事背景,一次性玩久了可能会乏味
-选取编程模块的工具箱设计不够方便
-沙盒可玩性不高,比较鸡肋