您当前的位置:中国手游网 > 要闻 > 现代游戏AI的鼻祖–聊聊你所不知道的《吃豆人》

现代游戏AI的鼻祖–聊聊你所不知道的《吃豆人》

时间:2017-09-20 01:53:25  阅读:4734+ 来源:新浪科技 作者:周传雄

本文授权转载自: 游戏研究社(yysaag)

作者: 半球

作为“全世界卖得最多的街机游戏”,“吃豆人”大家再熟悉不过了。但它是“现代游戏AI鼻祖”这件事,恐怕知道的人不多。前几天,日本网站“電ファミニコーゲーマー”发布了一篇文章,内容是“吃豆人之父”岩谷彻和日本游戏AI开发者三宅阳一的对谈,岩谷徹首次公开了《吃豆人》的设计策划书,并从设计的角度阐述了游戏中那些性格各异的怪物是如何被创造出来的。

我们将这篇文章进行了编译整理,由于这里说的是街机版的吃豆人,所以和大家玩的最多的红白机版会有一些差别。

三宅阳一(下文简称“三宅”):在世界各国的高校或科研机构中,游戏AI的研究正逐渐兴起,其中有不少人认为《吃豆人》是游戏AI的鼻祖。它可以说是第一款能够把游戏中的角色以个性丰富的形态呈现出来的作品。具体来说,能让角色表现出不同个性的角色AI,和控制游戏整体难易度的meta AI功不可没。

话说回来,《吃豆人》是岩谷老师加入Namco之后制作的第几款游戏呢?

左:三宅阳一,右:岩谷徹

岩谷彻(下文简称“岩谷”):应该是第4作吧。前面有三款失败的游戏《GeeBee》《BombBee》和《CutieQ》。当时大家都想在游戏里展示出自己的开发水平,结果把游戏难度搞得太高了。后来开发《吃豆人》时,大家都时刻注意不要把游戏做的太难。

《GeeBee》的改良产品《BombBee》游戏画面

《CutieQ》游戏画面

另外,我们那会儿也在不断思考另外两个问题,一个是“玩家在游戏中会采取什么行动”,另一个就是“好玩的游戏到底是什么”。最终“吃豆人”里的很多细节设定,都体现出了我们对这两个问题的答案。

三宅:今天您带来了一份非常珍贵的资料——《吃豆人》的定版策划书。

岩谷:这个策划书里写了很多细节方面的设定,比如说,游戏失败的时候,如果以同样的难度在死亡地点复生重新开始的话,玩家很可能就玩不下去了。因此,这个时候游戏会稍微降低下难度。

这份策划书写于1980年6月30日

在怪物的行动模式方面我们也下了很多功夫。《吃豆人》里一共有4种颜色的怪物。如果这4个怪物都以相同的算法来追踪玩家的话,那游戏里就变成4个怪物排队追赶玩家。如此一来,玩家只要确保屁股不被咬到就能安全过关。

所以我们把这4只怪物分散到了玩家的四周,同时采用了包围并追击玩家的算法。这个想法是由当时的程序员提出来的,每只怪物的运动方式都各不相同。

描述了4只怪物不同状态下行动模式的表格

整体地图及界面设计

三宅:那这个表格又是什么东西呢?(下图)

岩谷:这个表格展示的是怪物和玩家移动速度差的变化。玩家在吞噬路上的豆子的时候行动会变慢,这时很容易被身后的怪物追上。但是,如果吃到了变身豆的话,玩家会瞬间从猎物变成猎人,移动速度也会变快。

三宅:游戏设计和AI设计是密不可分的。在开发《吃豆人》的时候,是已经提前开发出相关的AI技术,然后再将之植入到游戏中的吗?

岩谷:从结果来看的话,并不是这样的。毕竟,当时我连“人工智能”或者“AI”这两个词都不知道,我只是努力地让所有人能都从我的游戏中获得快乐。除了经常能在游戏厅看到的青少年之外,小女孩和上了年纪的老人也是我们预设的用户对象。

三宅:到20世纪90年代后,游戏逐渐进入3D时代,游戏AI也产生了巨大的变化。“自主思考型AI”也是在这个时间段出现的。游戏中的NPC会在游戏中观察及分析,并在此基础上采取必要的行动。在那之前,游戏AI基本只是整个游戏程序的一部分。而现代游戏AI已经发展成角色AI、meta AI和导航AI三部分组成的复合型程序。

回过头再来看看《吃豆人》,角色AI是肩负起怪物角色大脑功能的AI、在那之上的meta AI则是像游戏中的上帝一样控制游戏整体难度的AI、而在游戏内负责定位玩家位置并给出追踪路径的,也正是上面所说的导航AI。所谓现代AI的三要素在《吃豆人》中就已经存在了。

目前,在世界范围内正在掀起第三次AI发展的大潮,AI的形态已经从程序进化了可以从大量的信息中获取所需的内容并自主学习。之前谷歌开发的深度学习程序Deep Q-Network通过5款雅达利2600主机的游戏进行自主学习就是一个比较知名的例子。从这点来说,这些深度学习AI应该可以用来进行Debug的工作。不过,游戏整体难易度的调整目前还只能由人类来控制。

这个深度学习AI也尝试过学习怎么玩《吃豆人》,但结果却是失败的——找不到窍门成绩很难提高

岩谷:没错,难易度调整的方法就是先设定一个玩家类型,然后去尽全力扮演这个玩家,以他的角度来审视游戏。比如说,我是一个在新宿工作的厨师,中午休息的时候去游戏厅玩玩。我比较喜欢非常爽快的动作游戏,一个偶然的机会我发现了《吃豆人》,然后上去试了下。那么,这个人是以什么样的心情来玩《吃豆人》的呢?这就需要开发人员在脑袋里进行模拟了。

在游戏中,我们有时候会从一些意料之外的事情中感受到愉悦。正如相声和小品中,观众会因为某些和自己所想的完全相反的桥段而发出笑声。玩家通过不断地进行游戏,他们的过关能力会逐步提高。通过这个学习并获得提升的过程,玩家也能感受到快乐。但是,包括游戏AI在内,如果总是让玩家觉得很舒适的话,他们很快就会感到厌倦。因此,适当地让玩家“失望”是非常必要的。

三宅:这部分应该也是我们游戏界的一大特征吧。

岩谷:没错,其他产业的AI和人类思维的匹配度有些过高了。

三宅:“就差一点”和“再努力试试没准就能过了”,我觉得,通过制造这两种思维矛盾并借此控制人类的心理活动正是游戏AI的最大特征

如果说我们这些人到底是为了什么而从事游戏AI开发,应当说最大的理由就是驱动玩家的心理变化。这一点从《吃豆人》诞生至今,从未发生过变化。

岩谷:为了这个,我曾经在酒吧里和各式各样的人聊过。当了解了一个人为什么会以某种形态生活之后,在模拟玩家心理的时候我能考虑的范围就会变得更加宽广。酒吧里能遇见有着各种不同经历的形形色色的人,从他们身上能学到很多有用的东西。这也是我个人开发游戏的小诀窍之一吧。

三宅:接下来聊聊meta AI。meta AI属于游戏系统控制级别的AI,它负责调监视和游戏的整体状态。现在的meta AI除了调控游戏之外,还能进行迷宫和支线故事的创造。而《吃豆人》中那种古典AI,则可以从玩家的游戏记录中判断出“这个人水平不行”,然后降低游戏难度。

岩谷老师您在2005年的GDC演讲中说过这样的话:

“由程序来判断玩家的游戏水平,然后以此为基准调整游戏的难易度——这个被称为自主控制系统的东西,我在十几年前的开发工作中就已经在使用了”

您在这里提到的十几年前,具体是哪一年呢?

岩谷:这里说的是1981年4月,当时我提交了一份报告书。提交的背景前面也提到了,因为推出了好几款难度太高而导致失败的游戏。但反过来,如果单方面去配合玩家降低游戏难度的话,玩家单次游戏时间会变得很长,这样的话游戏厅就赚不到钱了。

游戏本身很好玩,但仅仅是因为源于几个数字变化的难易度调整就被骂成渣游戏的经历我已经体会了很多次了。所以我非常希望有一个能监视玩家的游戏状态,比如说命中率和操控失误等数据的程序。

当时我们做了一个这样的实验:在一个游戏厅里放两台《吃豆人》,其中一台的难度设定比较高。当时有玩家来玩了之后很纳闷,甚至觉得是不是自己状态不太好,实际上是他玩的那台机器是高难度版本的。

自诞生至今,《吃豆人》光在美国地区创造的销售额就超过了1000亿日元

经过测试之后,这两台机器每天的收入差大概有2000日元。假设在全日本范围内有1万台《吃豆人》,然后按300天来计算的话,每天的收入差是2000日元的话会怎样呢?

三宅:300天的话就60亿日元吧(约合人民币3.7亿元)。

岩谷:差距就是这么大了。假如在全世界卖出10万台的话,这个数字就会变成600亿日元。仅仅是难度调整的原因就能造成如此巨大的收入差距。对于主机游戏来说,基于100日元的纯利和150日元设定的售价,最终差距也是非常可观的。

三宅:只是一个难度控制的开关就能制造出如此巨大的收入差距,而且游戏越受欢迎数字就会越大。

岩谷:正是如此。但是,前面提到的自主控制系统有一个问题,它就是过于相信玩家的表现。随着玩家水平的进步,系统给玩家提出的新挑战也越高,这样一来,玩家就会一直处于一个不停地被迫追赶的状态。

举个例子,一个小学生完成了3年级的答题,然后系统说“3年级的问题难不倒你,那来试试4年级的吧?”,然后小朋友只能努力去回答4年级的问题,然后系统继续说“接下来是5年级的”,小朋友也只能硬着头皮继续上。这读起来就觉得很累,游戏也是如此。自主控制系统能判断一个人的水准是否满足了难度提升的条件,但它无法知道这个人所能承受的极限在哪里。

从这点来说,AI有时候会把人逼到一个窘境。如果能让AI在某个难度的前提下保持一段时间不再继续提升。这样玩家就获得一种征服的感觉,并且会觉得自己至少能玩上30分钟。

三宅:如今的游戏AI可能也无法完美无缺地做到上面描述那个情景吧。现在的meta AI也仅仅是勉强能够做到游戏的整体难度的控制和调整。

游戏中的起伏变化和起承转结也是非常重要的,法国著名社会学家Roger Caillois将游戏定义为4个类型:偶然、竞争、模仿和眩晕。而我觉得还有第5种:享受随着时间轴变化的起伏以及起承转结乐趣的游戏,也是小说和电影中常见的手法。

Roger Caillois。除了他之外,英国游戏研究者Richard Bartle也在在其论文将玩家分为成就者,探索者,社交者和杀手4个类型

三宅:目前AI已经可以实现随机地图的生成,而这些之前都是关卡设计师的工作。这样以来,即便是小规模的团队也能设计出大规模的游戏。那么,当时《吃豆人》的开发团队一共有几个人呢?

岩谷:游戏设计和策划是我负责,然后1个程序、1个音效、1个负责PCB(基板)的设计,在加上框体的机械设计和外观设计,一共七八个人吧。

三宅:如今我正在参加的游戏开发组就有好几百人

岩谷:这么多人的话,设计理念的传达没问题吧?

三宅:需要花不少时间,并且现在开发一个能控制整个游戏的AI实在是太难了。从完成度的角度来看的话,能做出和《吃豆人》同等水准AI的游戏,即便到现在也没几个能算得上。

要说现代meta AI的原点的话,比较多的共识是《求生之路》这款僵尸FPS游戏。开发出这款游戏的团队之前还制作过著名的《反恐精英》。后者的各个版本最后卖了1000多万套。他们最开始的时候也不知道为什么能卖得那么好。在仔细分析之后才发现,游戏中由AI实现的良好节奏控制是其中的最大原因。

《求生之路》中针对玩家紧张度进行怪物刷新的说明,其中比较显著的是“玩家的紧张感在超过设定目标值之前持续刷新怪物”。嗯,虐的还不够狠

然后,借助《反恐精英》获得的经验,他们在《求生之路》中加入了能控制玩家紧张度的meta AI。

《反恐精英》中平时玩家看不到的导航路径

三宅:最后,我想聊聊现在的游戏AI的发展前景,在《求生之路》里,游戏会随时计算玩家的紧张度,并以此为依据进行调整。这个设计已经是目前游戏界的标志规范了。在玩家看不见的地方设置一个怪物,并在玩家的精神松懈下来的时候突然出现。AI在判断出玩家的水平较低的时候就会减少这类怪物的出现数量,反之则会增加。

过去的游戏有“背版”一说,玩得越多对游戏中怪物的出现位置和时机就会越熟悉。而现在借助AI技术的发展,大量的东西都变成随机生成的了。meta AI自动生成地图,同时对其进行解析,并算出对应的导航路径,然后传达给同样自动生成的敌方角色,诱导其前进。除了这些之外,AI还能自动生成过场剧情。如果一个玩家长时间没有进入战斗状态的话,AI就需要生成一些剧情来让玩家不会感到厌烦。这些都是AI设计者所必须要考虑的事情。

在《巫师3》里,游戏中的AI会根据设定好的动作及场景自动生成过场动画,其中的镜头位置、角色的表演内容和动作等都是由AI自动完成的

这样一来,包括地图、副本和剧情在内的所有东西就都不需要进行过多的人为设计了。如今比较流行的开放世界的游戏开发成本都不低,如果采用自动生成技术的话可以节省大量金钱和时间。并且其开发的门槛也会大大减低。我认为这对于日本的游戏开发者来说是一个赶超欧美的捷径。

岩谷:能让设备和程序做的事情就交给他们,剩下的就用人的智慧和金钱去实现。而这方面也正是日本游戏开发者一直以来的强项:仔细考虑人的需求,并以细致的形式去实现。

三宅:这种meta AI的应有理想形态,如岩谷老师所说,那正是我们最擅长的。

正如产业革命中工业机器人的出现为人类节省了大量的劳力和金钱那样,游戏AI的发展也能起到同样的效果:一些耗时费力、但又有一定规律可寻的重复性工作让AI去代替人类来完成。也许在未来的某一天,游戏开发组里只需要1个策划、1个游戏设计、1个AI设计和若干个美术设计就能满足需求了。有人要问为什么没有音乐?如今的人工智能都能写小说了,距离编曲应该也不远了吧。

本文授权转载自: 游戏研究社(yysaag),作者:半球