【不止游戏】我研究了上百个游戏的NPC,发现了它们隐藏的秘密

2021-11-04 21:06:44 来源:游戏主播网

【不止游戏】我研究了上百个游戏的NPC,发现了它们隐藏的秘密

欢迎收看本期的《不止游戏》,我是乔伊。

最近有一部较为大火的游戏题材电影——《失控玩家》,估计在座有部分观众已经看过了。如果有没看过的观众,我在不剧透的情况下先给大家简单讲讲剧情。

电影讲的是有家游戏公司,开发了一个多人在线的开放世界游戏《自由城》。跟目前很多玩家玩过的开放世界游戏差不多,游戏中也有很多NPC为玩家提供各种服务。按理说这些NPC都是一堆代码构成,只需要兢兢业业在这个虚拟世界中和玩家互动即可。但其中有一个NPC出于某些原因,拥有了更“自主的意识”。让它拥有了近乎人类的强大智能。由此引发了一连串的故事。

当时我看完这个电影之后,突然想到了一个这期节目的灵感。就是我们大家玩过不少开放世界的游戏,例如《看门狗》《荒野大镖客》《刺客信条》等等。平常我们玩这些开放世界的游戏时,除开少部分有关键剧情的角色会给大家留下印象。大部分NPC在虚拟世界中只扮演“纯路人”,它们既不能给我们提供任务,也不能给我们带来剧情。很多时候只是一种“环境道具”和“人肉背景板”的存在。

那么这期节目我们来研究下这些游戏中的NPC,它们一天到底在干些什么?它们背后的运行逻辑是什么样的?《失控玩家》真的可能实现吗?

根据我在多个游戏中,花了数小时“尾随”了不同的NPC的观察。发现很多“纯路人”NPC真的只是纯路人。它们通常就围绕某个路线转圈,偶尔走走停停。哪怕玩家们和他们发生碰撞,它们也会绕开玩家重新走回预设的道路上。如果和它们互动,例如打了它一拳。它要不就是逃跑,要不就是反击。等过一段时间恢复正常,还是会按照最先预定好的路线继续移动。

通过我的调查发现,他们的行为和反应,是根据游戏开发者设定好的脚本来执行的。开发者规定他们在什么情况下作什么事情,他们就完全按照规则忠实的行动。一般来说NPC都会有一整套行为树,以对应玩家可能会对NPC做出的各个行为。

一般来说,开发者给NPC设定的脚本越多,行为树越丰富,就能越让他们接近于真人。比如不差钱的R星,花费几年时间上千名设计师,为《荒野大镖客:救赎》几乎每个角色都写了详实的脚本,才使得游戏里的西部世界在细节上还原的很真实。

而有时候玩家看到这些NPC,做出一些很奇怪的举动。可能是因为玩家做出的操作超出了开发者的预料,以至于没设置过对应的行为反应。所以在表现上,NPC回应的驴头不对马嘴,或根本不回应玩家。

当简单了解背后的运行逻辑之后,你就会发现几乎游戏中的NPC虽然看起来“活灵活现”,但其实连演员都算不上,只是游戏设计师的提线木偶。那些被玩家一口一个“老婆”叫着的游戏人物,不过是只会执行设计师操纵的工具人罢了。(牛头人震怒)

既然传统行为树做不出完全还原真人的NPC,那人工智能是否可以呢?

最近几年AI应用发展很快,人脸识别短短几年铺遍了大街小巷、自动驾驶成各大新能源车企主要课题、视频、购物乃至外卖APP都无一例外在用算法推荐。

但游戏领域里,反倒比较少听到有人工智能的消息?明明是阿尔法狗击败人类强者,才掀起了近些年AI研究的热潮,现在都2021年了,游戏AI又有哪些进步呢?我们有可能玩到《失控玩家》里那样的游戏吗?世界上是否真有人在做这样的游戏AI技术呢?

为了探寻这些问题,我便开始在网上寻找答案,我先是找到了一家很有名的国外人工智能团队 Open AI。就是之前用 AI 打败了 Dota 2 世界冠军的那个。不少玩 Dota 2 的观众对那场比赛应该有较为深刻的印象。

后来 Open AI 还搞过一个“AI 躲猫猫”的游戏。里面的角色全由 AI 构成,规则非常简单。在一个固定的游戏场地中,蓝色方负责躲藏,而红色方则负责抓人。游戏一开始会先把小红人固定住,蓝色方趁这个时间躲起来。

最初所有的 AI 都有点“笨”。只知道游戏目标。但却不知道如何实现,四个角色基本都是各种乱跑,蓝方最终总会被抓到。但随着训练次数增多,慢慢蓝方 AI 学会了利用场景中的箱子,把缺口给堵住并将其锁定。让外面小红人无法进入,这一堵门战术让蓝方胜率大幅度提高。然而后来,红方也学会了利用斜坡方块,可以直接翻墙进去抓人。胜利的天平重新倒向红方。再接着蓝色方也渐渐理解了斜方块的作用。他们在游戏开始前会先把斜方块抢进来再堵门,让外面的红色方一点手段都没有,杀死了这场比赛。

后来 Open AI 的研究员重新弄了个新地图,这次由较多的可移动方块构成。一开始 AI 还是要熟悉环境,随着训练次数不断增加。蓝方想出了用长板自己搭围墙并锁定。来构成一个封闭环境避免被抓。而红方也想到可以利用斜方块的翻墙功能。再往后蓝方见招拆招,想出了先提前锁定所有斜方块,让红方不能再利用斜方块的方法翻墙。

此刻看起来是不是红方又陷入第一局的情况没招了。结果它们搞出了个一般人类都未必能想到的骚操作,先把普通方块移到被锁定的斜方块旁,然后靠斜方块走上普通方块。利用 BUG 站在上面移动方块最后跳进围墙去抓人。

越往后开始越离谱,AI 的不断学习和进化,使得游戏越来越超出开发者的预想了。蓝方开始游戏干脆锁定所有方块,或者直接跑路逃之夭夭。红方也不知道哪摸索出了引擎 BUG,还能用“弹跳”的功能来实现飞越。

AI 躲猫猫的案例,很形象的让我理解了“训练”这一过程对于 AI 的重要性。可以想象到,如果这种带有自我学习功能的 AI 被做成NPC加入游戏当中,那未来的游戏一定非常有意思。就比如万一怪物猎人里应用了类似的技术,雄火龙在一次次被讨伐过程中越来越强,太恐怖了我都不敢想,可真就是“怪物虐人”了。

那么我又接着在网上找,找到另一个展示游戏 AI 的技术 Demo 案例。这个封面和标题晃眼一看,就感觉像是一个标题党。游戏场景和《失控玩家》很相似,都是发生在银行的抢劫故事,都是玩家扮演劫匪。画面还周围显示着各种不明觉厉的数据。

这个案例和 AI 躲猫猫不一样,是有玩家参与其中的。其他角色则全是 NPC。我们看到玩家跟着同伙进入银行,随即鸣枪震慑现场所有人。NPC 同伙不断威胁柜员,逼她打开柜台大门,但柜员刚上班没几天不会开门,气的 NPC 同伙用脚踹、用枪破门也无济于事。

此时玩家张口说话,用枪胁迫大堂内的其他人,迫于无奈大堂经理帮忙开了门,两名劫匪鱼贯而入,命令柜员打开保险柜帮他们装钱。

女柜员笨手笨脚。搞了好半天才打开保险柜,劫匪 NPC 迫不及待,让她滚一边去自己上手,拿到钱两人立刻溜之大吉。这时候肯定有观众说:“这游戏的剧本编很平淡啊,就一个很简单的抢银行。我上次在圣丹尼斯抢银行的时候比这个精彩多了。”

但此时反转来了:演示视频时空回溯,这次不让同伙去装钱了,让柜员去装。趁同伙不留神,玩家一枪将他打死,面对突如其来的谋杀,柜员吓得连忙求饶,玩家自己独吞了所有赃款逃之夭夭,走之前甚至还不忘开两枪庆祝一下。

再次回溯,在威胁大堂经理开门之前,玩家一不小心手抖打死了大堂经理。巨大的枪声把银行所有人吓懵了。就连 NPC 同伙都被玩家吓到。这跟计划的不一样啊?抢个钱而已你杀什么人?直接抛下玩家落荒而逃。抢劫行动至此失败。

看了这个视频,大家是不是觉着,这个游戏 Demo 自由度还不错,玩家的各种行为 NPC 都能配合做出各种相对应的反应,行为树编的还挺全的啊。然而最大的反转来了,我瞄了一眼视频的简介才知道。原来 Demo 里的 NPC 都没有被设定过任何脚本,所有动作、反应、包括说的每一句话,都是 AI 根据玩家的行为和语言实时动态生成的!

更离谱的是,这竟然还是 2019 年的技术展示 Demo。虽然一开始看视频的时候没搞懂,但看了简介后再看一遍我觉着大受震撼。

通过 B 站私信,我与制作团队 rct AI 取得了联系。才发现这个游戏 Demo 居然是中国人做的。于是向他们请教到了很多有关技术的问题。他们也非常乐意将各种资料和其他案例发送给我,并且深入浅出的介绍了许多技术原理。

那么如何在没有任何脚本的情况下,实现这样一个由多个 NPC 构成的实时动态交互场景呢?简单来说,核心在于 rct AI 的混沌球算法。首先他们给每个NPC都设定了性格与目标,以及一些人物背景。就比如:银行雇员非常胆小,故事发生时她才入职银行不久,有心保护银行财产但更怕死;再比如:玩家的劫匪同伙,目标是抢走尽可能多的钱,他脾气暴躁但没啥本事,所以碰上玩家杀人时才会提前逃跑。

那么这些 NPC 在游戏中怎么知道自己每时每刻该做什么呢?这是因为,除了性格和目标规定了 NPC 能做哪些事之外,他们还受当时所处的空间位置、环境参数等因素影响。就比如门打没打开,有没有拿到钱,现场是否死了人。游戏场景进度影响 NPC 做不同的活动。

玩家的行为、说的话,会被识别并梳理为各种相对应的“意图”输入 AI 引擎混沌球之中。就比如玩家说:(插入 just open the safe,fast 让柜员打开保险柜门的画面),AI 判断玩家想要让它去执行打开保险柜的操作,而且自己还被枪指着,于是立刻乖乖就范。AI 在游戏中可以被理解为“演员”,他们配合玩家的行为进行“表演”,还原现实里抢劫的“刺激体验”。

当然,和 AI 躲猫猫一样,rct AI 的智能 NPC 也需要进行大量训练,这也是为什么视频还存在一些剧情BUG 的原因。但令我非常吃惊的是,NPC的说的话居然也是 AI 实时生成的,NPC 没有固定的对话模板,理论上,只要玩家想,甚至可以跟一个 NPC 无限对话下去!

我们生活中有很多可对话的 AI 应用案例。就比如小爱同学,就比如手机导航。不过这与 rct AI 在做的有一些区别。比如百度导航,AI 回答给你的句子是固定的,在相同情况下只会以固定语料回答;而 rct AI 在做的却是生成式语料,回复的句子也是由 AI 生成,即便不同玩家对 AI 说相同的话,得到的回答也大概率不会重复。同意,在不同环境条件下,AI 也给到的回复也大不相同。

在这些技术加持之下,他们做游戏不再是以往那样线性叙事,而是直接打造出一个游戏场景,让玩家在场景中自由探索。理论上,玩家几乎可以玩出成百上千种剧情可能,即使同一个玩家用相同的方式玩游戏,也有可能玩出截然不同的剧情结局。

随着训练次数的增加,rct AI 也曾见到NPC做出过完全出乎他们意料的举动。就比如在他们做的另一个演示“盗梦人”技术 Demo 中,同样的抢银行场景,在玩家抢劫的时候,女柜员竟然会偷偷自己从柜台里拿钱。这谁能想到!

可惜,他们本职工作是做 AI 的,不是做游戏的,这个 Demo 大部分人体验不到。不过他们跟国内外不少游戏公司有技术合作,未来一两年会有一些初步应用了他们技术的游戏陆续上线。

可以预见,AI 技术对游戏行业进步有着很大的积极意义。一方面,开发者能从枯燥的脚本地狱中解放出来,用更多的精力去打磨画面与玩法;另一方面,这种完全打破以往游戏固定线性叙事的玩法,能做出我们从未尝试过的自由体验。就比如《底特律变人》,虽然看上去好像是我们玩家选择了分支剧情走了不同的结局,但实际上无论走哪条线,都不过是观看设计师提前定好的剧本,我们从未真正决定过故事走向。

当下开放世界主要在做“空间”与“时间顺序”上的开放,玩家可以决定先去哪里。先做哪些任务,但最终还是得做完所有事情才能通关,所有人都不过是用不同的顺序去体验同一个流程。《巫师3》《刺客信条》《大表哥2》都是如此。

但如果这些AI技术能在游戏里大规模落地,或许空间和时间就能变得不那么重要。开发者甚至可能不需要再给玩家设定任何具体任务,而只是做出一个生动开放的幻想世界任玩家去自由探索。没人知道我会遇到什么冒险,没人能定义我会玩出什么结局,游戏像现实一样未知且神秘。或许“开放世界”的定义都将被改写。

说不定在未来的游戏,通过这种由 AI 生成的多变的剧情和结局。我都没办法给大家做《游戏不止》的节目了。不过那时候我说不定也没心思做节目了,这种游戏都能有了,AI女友岂不也能实现?做节目、做啥节目,跟AI女友没羞没臊去不好吗!

人类对自由的渴望,是灵魂最底层的渴望。但长久以来,我们所做的一切选择都未逃不过开发者的束缚,始终是带着镣铐的舞蹈。

在 2021 年的互联网中,我们以为凭借着自己所谓的自由意志,阅读了一篇篇文章、观看了一条条视频、或在游戏中完成了几个任务。然而实际上,是网站编辑决定了我们能看到哪些东西,游戏设计师决定了我们将经历的游戏体验。

真正自然的体验和生活方式绝不应该被限制在屏幕的流转之间,而应该处于心流状态的场景带入和转换。不管是 AI 躲猫猫还是 rct AI,能看出我们距离《失控玩家》里表现出来的技术水平显然还是有很大差距的。但值得庆幸的是,2021 年的地球上,人类已经朝着这个方向做了不少有意义的探索。

也许未来,我们能在 AI 的帮助下,在更好的世界中认识彼此。

感谢收看本期的《不止游戏》,喜欢的观众朋友可以点赞关注收藏转发,同时这期也感谢 rct AI 对本期节目的支持和帮助,我是乔伊,我们下期再见。


相关阅读

大家都在看

  • 别再等了 命运3可能已经开始了
    别再等了 命运3可能已经开始了

    在Bungie推出《命运2:进入光能》和发布“终焉之形”新实机后,有关《命运3》的传闻就开始流传。一个代号为Payback的项目引发了人们的猜测。然而,最近一名Redditor澄清...

  • 梦幻西游:山哥打16万定金买第一耳饰,卖家反悔只退16万不赔双倍
    梦幻西游:山哥打16万定金买第一耳饰,卖家反悔只退16万不赔双倍

    大家好!我是胖虎,「胖虎看西游」每天为你带来不一样的梦幻西游故事。今天的故事还是要从这个耳饰说起。这个耳饰虽然不是现在主流的3法伤1法爆,但是属性太炸裂了。达到了101,也算是当之...

  • 美到飞起 《真女神转生5》角色公开
    美到飞起 《真女神转生5》角色公开

    近日,Atlus官方发布了《真女神转生5:复仇》每日恶魔介绍影片“皮亚雷”篇。该影片展示了名为“皮亚雷”的游戏角色的相关信息。根据公开的影片内容,该游戏预计将于2024年6月14日...

  • 《传奇3光通版》手游、三端互通!悬赏BOSS攻略!
    《传奇3光通版》手游、三端互通!悬赏BOSS攻略!

    哈喽大家好,还记得那些年泡在网吧里玩传奇的青春岁月吗?虽然我们回不到过去,但那个青春记忆不会改变。现在今天给大家说的是传奇3里的悬赏BOSS攻略,希望能对大家有所帮助!悬赏boss...

  • Steam即将开启FPS游戏促销活动 精选大作六折优惠
    Steam即将开启FPS游戏促销活动 精选大作六折优惠

    近日,Steam官方宣布将于北京时间4月16日凌晨开启FPS游戏促销活动。本次活动旨在为玩家提供丰富多样的游戏选择,并且这些游戏的价格也会有折扣优惠。根据预告视频显示,参与折扣的游...

  • 三国杀:谁才是斗地主秒男?十秒钟就能结束游戏,你知道几个?
    三国杀:谁才是斗地主秒男?十秒钟就能结束游戏,你知道几个?

    现在的斗地主模式可以说是鱼龙混杂,能打出高胜率的武将已经固定了。就是那些常见的阴间将,而阴间将在斗地主模式里的强势表现也给平民玩家带来了不小的苦扰,要是没有阴间将根本打不过啊,有些...

  • 巴风特之怒:挑战傲慢之塔,勇者的试炼!
    巴风特之怒:挑战傲慢之塔,勇者的试炼!

    《巴风特之怒》游戏新区开张啦!我们为新手玩家们准备了一份超详细的攻略,从1级到50级。助你踏上游戏征程,轻松驾驭技巧,尽享精彩旅程!当你踏入《巴风特之怒》的世界,第一件事就是紧随主...

  • 对战模式中,玩家不怎么在意单位护甲值的4大原因
    对战模式中,玩家不怎么在意单位护甲值的4大原因

    护甲作为单位最重要的基础防御属性之一,重要性不言而喻。对局过程中,护甲值过低的单位(比如炼金术士),哪怕其它防御属性都不差,生存难度依旧非常大。想要提升普通单位伤害输出时,玩家也经...

  • 《永恒岛怀旧版》快速升级攻略!让你秒成满级大佬!
    《永恒岛怀旧版》快速升级攻略!让你秒成满级大佬!

    升到越高的等级就可以装备更加强力的装备和道具,玩到更多有趣的玩法。在《永恒岛怀旧版》手游中除了正常的副本刷怪、主线、支线和日常任务刷经验升级的手段,为了方便玩家更快的升级。设立了彩...

  • 《永恒岛》手把手教你如何养好宠物!快速提升实力!
    《永恒岛》手把手教你如何养好宠物!快速提升实力!

    在《永恒岛怀旧版》手游中,宠物的作用不仅可以陪伴玩家。还可以学习各种技能和阵容组合搭配提升玩家的评分,更好的辅助玩家。宠物的获取途径很多,最直接的方式就是通过商城使用点券或者绑点购...