Radiant AI 项目设想拆解:理想与现实的落差
社区深度回顾了已停项目 Radiant AI 的设计理念与技术挑战,分析了其为何难以实现。对理解 AI 系统架构演进有参考价值。
社区深度回顾了已停项目 Radiant AI 的设计理念与技术挑战,分析了其为何难以实现。对理解 AI 系统架构演进有参考价值。
承诺了什么 公告与封面报道 E3 2005 演示 粉丝采访与论坛引文 Radiant AI 的异常行为与一段神秘引文 发布与反响
公告与封面报道
粉丝采访与论坛引文
Radiant AI 的异常行为与一段神秘引文
发布与反响
那么,Radiant AI 究竟是什么? 角色属性 AI 包 AI 包的日程与条件 标志、位置与目标 世界如何运转,以及底层 AI 处理 再多聊一点
AI 包的日程与条件
标志、位置与目标
世界如何运转,以及底层 AI 处理
再多聊一点
破解 Radiant AI 迷思 公告文章与采访中的说法 重新审视 E3 演示 skooma 事件 神秘引文轶事
公告文章与采访中的说法
重新审视 E3 演示
神秘引文轶事
Radiant AI 与 GOAP GOAP 示例 Radiant AI 对比 GOAP Fallout 3 中的 GOAP(?)
Radiant AI 在 Oblivion 发售前经历了怎样的变化
Oblivion 之后的 Radiant AI Fallout 3 与 New Vegas Skyrim 与 Radiant Story 的兴起 Fallout 4 Starfield
Fallout 3 与 New Vegas
Skyrim 与 Radiant Story 的兴起
最近发布的 The Elder Scrolls IV: Oblivion Remastered 再次点燃了公众对这款已有 19 年历史的 RPG 经典之作的兴趣,使它再度——至少暂时——成为 Bethesda Game Studios 旗下玩家最多、讨论度最高的作品之一。这个重制版对原作进行了全面升级:画面完全重做,但大体忠于原貌;部分玩法得到改进,用户界面也经过重新设计。但它依然是 Oblivion,而且我说的并不是它“保留了原作的精神”之类的意思。这个重制版确实是直接构建在原版游戏之上的;2006 年的 Oblivion,包括它的游戏引擎和内容,仍然存在,只是在外面套了一层负责视听表现的 Unreal Engine 5 外壳。
这很有意思,因为以当时的标准来看,Oblivion 是一款野心极大的游戏。它的世界规模庞大,画面处于技术前沿;但也许更重要的是,它承诺带来一个动态、鲜活的世界,其中有超过一千名全程配音的非玩家角色(NPC)。为此提供支持的技术名为 Radiant AI,但它对那个时代而言过于超前,因此最终版本中大部分相关内容都被删掉了。又或者,Oblivion 确实使用了它,只是 Bethesda 在推出 Fallout 3 和/或 Skyrim 之前放弃了这项技术。也可能它从一开始就根本不存在,Todd 一直都在欺骗我们。那么,Radiant AI 究竟是什么?
毫不夸张地说,我已经在网络上看到人们讨论这个话题几十年了,而 Oblivion 重制版又一次让它在那些终日泡在网上的人群中成为焦点。大多数人把它视为 Bethesda 最早的争议事件:这是 BGS 第一次承诺了某样东西,却最终未能兑现的事件之一。然而,除了最硬核的粉丝和模组作者,真正尝试亲自理解它的人寥寥无几。而我所说的理解,是指弄清整件事:为什么需要它、它曾被承诺成什么样、它实际上是什么,以及如今又身在何处。这篇庞然大物般的文章(紧张地瞥了一眼预计阅读时间)正是我试图彻底解答这些问题的成果。
这原本应该只是一个简短的支线任务:用一种希望足够直白的方式解释 Radiant AI 是什么,同时借机纠正一些关于它的常见误解。但遗憾的是,事情很少会这么简单。我翻遍了旧 RPG 论坛、粉丝网站、模组制作教程,以及 21 世纪初游戏杂志的扫描件。我可能还花了几十个小时,仅仅为了使用 Bethesda 的模组制作工具探索其游戏的运作方式,从 Morrowind 一路研究到 Starfield(为了核实一些事实,我甚至不得不专门买下它)。我最后甚至只能去阅读各种脚本扩展器模组和 DLL 插件的源代码——相关资料就是如此匮乏。即便如此,我依然不认为自己是最有资格撰写这个主题的人,因为经验丰富的 Bethesda 模组作者应该早就知道其中许多内容。我几乎可以肯定自己弄错了某些地方,因此如果你发现错误,请在 Bluesky 或其他平台上 @ 我并予以指正。
你可以使用目录跳到自己最感兴趣的部分;如果有时间,也可以从头到尾全部读完。每个标题都是锚点链接,因此你也可以收藏或分享特定章节。祝阅读愉快。
但在讨论 Radiant AI 之前,我们必须先回到一切开始的地方——Vvardenfell 岛。好吧,事情其实并不是从那里开始的,但无论如何,我们还是先聊聊 Morrowind。
Bethesda Game Studios 的电子游戏因许多东西而闻名:庞大的开放世界、规模巨大的模组社区、平庸的战斗系统,当然还有 bug。The Elder Scrolls III: Morrowind 并不是该系列的第一款游戏——标题中的罗马数字 III 已经说明了这一点——但它确立了许多惯例,并在接下来的二十年(很快就是三十年)里定义了 BGSFPRPG。它是第一款使用 Bethesda 新游戏引擎构建的作品——该引擎是 Gamebryo 的一个分支,后来更名为 Creation Engine,直至今日仍在使用——并将这个系列带入了硬件加速的 3D 时代。Morrowind 不再沿用 Daggerfall 那种主要由程序生成的世界,转而采用手工打造的世界;可以说,从那以后,这一直是 Bethesda 游戏最重要的特色。得益于当时新潮的像素着色器技术,它还拥有 2002 年最漂亮的一批水面与天空效果。
但还是缺了点什么。好吧,缺少的东西其实很多——例如斜向行走动画和像样的战斗系统,这些功能直到 Skyrim 才算真正出现在 Bethesda 的游戏中——但从现代视角看,最显眼的缺失是完全没有任何预定日程式的 NPC 行为和/或非战斗 AI。Vvardenfell 的居民不分昼夜,无论晴雨,都站在原地等着玩家与他们互动,活像某个令人压抑的迪士尼主题公园里工作量大到荒唐的员工。
可以通过脚本让 NPC 漫无目的地四处走动,也可以让他们跟随玩家或其他实体,但这套系统的能力极其有限。据我所知,被放置在室外的 NPC 永远无法进入建筑,反之亦然。这些角色通常有相当多的话可说,但除非玩家和/或任务脚本介入,否则他们实际上什么也不会做。Morrowind 在许多方面都具有开创性,但在当时的一些其他 RPG 中,NPC 日程已经算是某种标准功能,例如 Ultima 系列、Troika Games 的 Arcanum,以及备受喜爱的欧洲粗粝经典 Gothic。
但随后,Oblivion 改变了一切。
我没有亲历 Oblivion 发售前的宣传热潮(当时我还不到 10 岁),但根据我搜集到的信息,那股热潮非常夸张。Oblivion 于 2004 年 9 月通过 Elder Scrolls 官方网站上的一则简短声明正式公布,随后又在 10 月成为 GameInformer 的封面报道,我在 Internet Archive 上找到了这篇文章。那篇长达 12 页的报道介绍了游戏的舞台设定、新战斗系统以及许多全新的图形特性,并配有数张漂亮得令人难以置信的截图。看看那些树木、那些草,还有那迷人的 HDR 泛光!只有 Xbox 2 和 Nintendo Revolution 这样的次世代主机,才能实现如此逼真的画面!
文章还介绍了新的 AI 系统,不过当时还没有使用“Radiant AI”这个名称。下面是文章中的相关内容:
为这款次世代作品提供支持的技术,所做的远不只是让一切看起来更加出色;它也在改变虚拟游戏世界的运作规则。如前所述,Oblivion 所呈现的 Tamriel 区域中居住着 1,000 名 NPC。与当时的游戏不同,这些角色不会在玩家离开该区域后直接消失;他们每周七天、每天 24 小时始终存在。每个角色都有自己的虚拟生活,也有自己需要遵循的日程安排。
游戏中的 1,000 名角色,每人都会获得一份需要在每个虚拟日中遵循的基本事件日程。他们会购物、探索、吃饭、上班报到等等。然而,系统只会告诉这些角色需要实现什么目标,却不会告诉他们该如何实现。例如,一个想要食物的农民可以通过多种不同方式获取食物。如果这个角色有钱,他很可能会购买食物;但如果他身无分文,就会尝试通过其他方式得到食物。他可能会前往森林狩猎,但如果在错误的地点打猎,守卫就可能因偷猎而找上他。因此,这个角色也可能选择偷窃食物——他甚至可能试图从你身上偷走食物。
如果你公然蔑视法律,守卫肯定会出动追捕你;但你也可能亲眼看到他们追捕犯下罪行的 NPC。
下面这段的相关性稍弱,但如果你玩过 Oblivion,应该会觉得很好笑:
玩家与充斥游戏世界的虚拟角色之间的互动是《晨风》指向游戏未来的又一个领域。角色之间会自由流畅地进行非脚本化的讨论。
对于这样的文章,很难判断哪些陈述是对 Bethesda 声明的准确描述,哪些是记者推断甚至凭空捏造的。我们稍后会质证这些说法,但现在可以说《晨风》发行前的大部分炒作都源于这篇文章。不过并非仅此一篇。独家封面故事发表后不久,Bethesda 随即在官网发布了更多信息,并与各大游戏媒体进行了一轮采访。他们对 AI 是这样说的:
《晨风》采用了突破性的全新 AI 系统,称为 Radiant AI,它赋予非玩家角色(NPC)基于周围世界做出自主选择的能力。他们会决定在哪里进食、与谁交谈以及说什么。他们会睡眠、去教堂,甚至偷窃物品,这一切都基于各自的特性。完整的面部动画和口型同步,加上所有对话的完整语音,使 NPC 能够以前所未有的方式栩栩如生。
我相信这是"Radiant AI"这个术语首次被公开使用。
关于该游戏,尤其是 Radiant AI 的第二大重要信息来源(及炒作源头)是 2005 年 5 月的 E3 演示。遗憾的是视频的伽马值完全错误——所有室内和夜景看起来都像是在黑洞里拍摄的——但这是我能找到的最高质量版本。
Todd Howard:我们新的 Radiant AI 系统……允许 NPC 拥有完整的 24/7 日程安排。这些 NPC 不是脚本化的。我们给他们宏观目标,由他们自己想办法实现这些目标。
在演示的 6 分钟 Radiant AI 部分中,Todd Howard 的角色漫步于 Chorrol 城市,偶然听到两个 NPC 之间的对话(比最终游戏中的任何内容都要流畅得多),并获得了一项新任务。随后他进入 Renoit 书店,从店主那里获得了一个极其动态的介绍,并体验了说服小游戏的早期版本。然后更多 Radiant AI 的内容出现了:
Todd Howard:她(注:店主)决定要练习她的箭术,所以她拿起了这里的弓;她决定需要弹药所以她装备上了箭囊。她可以练习她的技能;相同的技能系统也适用于她……而且她很菜。(游戏内) Estelle Renoit:太糟糕了!真是太糟糕了!我需要来点提神的东西。Todd Howard:他们甚至能检测到环境中的药水如果他们需要的话,所以她会喝这瓶药水,它会提升她的箭术;对她产生与对我一样的效果。它会自动提升她的技能,现在她擅长这项活动了,这完全是系统自动运作。Estelle Renoit:好多了!
随后发生了几件小事:Estelle 捡起一块肉,喂给她的狗,坐下来读书,对狗施放了麻痹咒,又坐下来吃饭。
Todd Howard:如果他们需要吃东西,他们会吃。他们如何获得食物取决于他们自己。他们可以偷,可以买,也可以种植。随时想睡就睡。
最后,她施放一个火焰咒语来驱赶狗,然后上床睡觉。演示继续进行下一个环节。
演示中发生了许多有趣的事情,我之后会更详细地讨论其中的一些。Todd 的旁白确实暗示《晨风》中的 NPC 拥有需求和欲望,他们会自主尝试满足这些需求。
Bethesda 在官方 TES 论坛上总共进行了三次"粉丝采访"(本质上是那个年代的 AMA);从 2004 年到 2006 年每年一次。全部由公关副总裁 Pete Hines 组织,由创意总监 Todd Howard 提供答案。第一次是在 2004 年 12 月 8 日,我能从互联网档案馆找到。它也被镜像到了 Chorrol.com(当时名为"等待晨风"),令人惊讶的是该网站仍在在线。
Q:关于新的 Radiant AI 系统,据说 NPC 将能够独立于脚本之外进行思考和反应。这是否意味着玩家可以命令 NPC 做某事(如果处于公会首领的位置等),或者可能因 NPC 的独立行动而发现随机的非脚本化任务?
A:是的,我们可以做这些事。我没说它们都在游戏里,我们现在在试验观看 NPC 的行为以及我们如何能真正让玩家影响它或从中获得更多乐趣,或者甚至看到它。所以我现在不会给出具体例子,但我们会在某些地方尝试类似的东西。我可以告诉你我们 Radiant AI 的目标是《晨曦》开头的"Fargoth"任务,那个任务需要大量脚本编程来让 Fargoth 表现良好、偷偷摸摸、盗取戒指、把它放在树桩里之类的。我们 Radiant AI 的早期目标就是这类事情"自动发生",不需要任何脚本。它能做到——这太好了。但如果我们不告诉你 Fargoth 在做什么,你永远不会注意到,或者看起来真的很奇怪。不管怎样,这就是我们所处的阶段,我们有这些行为,我们在尝试最大化玩家对发生事情的感知。
之后在 2005 年和 2006 年又进行了两次粉丝采访,后者在游戏发售前夕进行。我懒得去找 TES 论坛的原始链接了,但我会假设 Chorrol.com 的转载是准确的。
粉丝采访 #2(2005 年)
粉丝采访 #3(2006 年)
Q:我们读到"朋友"可以加入你所在的派系,你可以看着他们进步。这是由 RAI 管理的还是特定任务的东西?甚至有可能交到这样的朋友吗?
A:Radiant AI 是一个全局系统,管理 NPC 的每一个行动。虽然我们用它来做宏大的、全面的事情,比如规定 NPC 如何以及在哪里度过他们的日夜,我们也在更小的场景中使用它来做诸如让角色穿过房间去拿一个物品这样平凡的事情。从某种意义上说,NPC 所做的一切在某个时刻都受 Radiant AI 的管理。在某些派系中,你会遇到我们称为"持续角色"的角色。这些是你将在任务线的不同点多次接触的角色。你可以与他们交谈,看着他们成长,影响他们,甚至可能与他们一起去做任务并改变他们在游戏中的路径。
Bethesda 的开发人员在《晨风》发售前在官方论坛和其他社区都表现得出人意料地活跃,Chorrol.com/等待晨风将这些引述汇集到了一个地方。不幸的是,各个引述没有链接到它们的原始来源,所以我无法轻易验证它们,但我没有理由相信它们是捏造的。
开发者引述 #1(2004 年 - 2005 年 2 月)
开发者引述 #2(2005 年 3 月)
开发者引述 #3(2005 年 4 月)
开发者引述 #4(2005 年 5 月 - 8 月)
开发者引述 #5(2005 年 9 月 - 10 月)
开发者引述 #6(2005 年 11 月 - 2006 年 1 月)
站外开发者引述 #1
站外开发者引述 #2
站外开发者引述 #3
我很惊讶 Bethesda 人员甚至费力回答了其中一些问题,因为许多问题看起来就像纯粹的刷屏,根本不值得回应。但也有好东西,比如一个几乎完整的 Radiant AI 工作原理描述(在站外引述 #1 中),我这里就不重复了,只除了其中一个重要部分:
读一本关于 AI 的书,你会发现与我们所做的事情非常相似的东西。它是 AI 而不是脚本编程的原因是因为它使用目标和规则来确定某个东西将如何被完成。设计师建立目标,在参与者上设置参数(比如责任感、侵略性、自信心),然后由代码中建立的规则来决定行为如何发展。从学术意义上讲,它绝对是人工智能。
与此相关,其中一位开发者(Steve Meister,又名 MrSmileyFaceDude)也直接谈到了 E3 演示(在站外引述 #2 中):
至于书商的序列。不,整个事情都不是脚本化的——不是在设计师打入数百行脚本代码意义上的脚本化。在"它是按特定顺序发生的一系列事件"这个意义上,你可能会认为它是脚本化的,但你设置这些事件的方式,以及参与者如何完成它们,是不脚本化的。
例如,射箭练习。她一开始接到的练习指令(大致)只有:“站在这个位置,朝这个靶子射出一定数量的箭。”仅此而已。房间里有一把弓,所以她会先自动过去拿弓。房间里还有一个箭袋,于是她也会过去拿上。然后,她装备这些物品,走到射击点,射出几箭。箭没有命中靶子,并不是因为有人用脚本让她射向偏离靶子的位置,而是因为她的射术技能较低。
这就是区别所在。她得到的是一个基本目标,然后根据自己可以利用的物品和自身属性,想办法完成这个目标。
这段演示是一组示例,展示了你可以利用 RAI 实现哪些事情——其中包括将一系列 AI 包组合起来,生成一段紧凑且确定性的事件序列。
这段视频与我们在 E3 展示的内容相同。它由现有游戏内容的片段和章节,以及大量专门为 E3 演示制作的内容组成(例如,书店内的整个桥段——包括所有对话——都是为了在 E3 上展示 RAI 能够实现的一些效果而专门制作的)。
我们还第一次看到了有关 Radiant AI“过于聪明”并引发问题的故事(摘自站外语录第 3 条,Emil Pagliarulo):
好吧,Radiant AI 是这么回事……如果你问:“NPC 能做这个吗?或者能做那个吗?”答案是肯定的:有了 RAI,他们能做非常多的事情。但出于各种原因,玩家不太可能看到其中一些行为。例如,如果玩家用法术击中一名 NPC,导致其中毒,这名 NPC 会不会尝试购买一瓶解毒药水?嗯,大概不会,因为他正忙着试图杀死玩家,而且毒效可能也不会持续那么久。
而且在某些情况下,我们开发者不得不有意识地削弱他们会执行的行为类型。还是那个问题,为什么?因为有时候,AI 实在是他妈的太聪明、太执着了,以至于会把我们的任务搞砸!说真的,有时事情会变得极其诡异,简直就像在应付一个产生了自我意识的全息甲板。想象一下你在玩《模拟人生》,而你的模拟市民对谋杀和盗窃情有独钟。所以很多时候,这类事情既好笑、又惊人,而且是自然涌现出来的;当它发生时,效果棒极了。但在另一些时候,它又出乎意料到足以破坏游戏内容。设计师需要对自己创造的场景拥有一定程度的控制权,而当 NPC 有了自己的想法时,事情就可能彻底失控。
一个有趣的例子:在某个黑暗兄弟会任务中,你会见到一名贩卖 skooma 的可疑商人。在测试期间,玩家赶到时,这名 NPC 总是已经死了。为什么?当地 skooma 窝点里的 NPC 毒瘾发作,手头又没有 skooma,于是便杀死商人去抢!
至于 Radiant AI 的功能失控(例如 skooma 商人被杀的例子)——不,我们没有移除任何功能。这些问题通常会针对具体场景分别处理。我们会调整 NPC 等内容,以获得预期的行为。
这些年来,我见过下面这段有关 Radiant AI 闹出乱子的文字被一字不差地反复转载,但它从未注明作者或出处,所以我不知道它究竟来自哪里。我能找到的最早版本,是 2006 年 4 月 TTLG 论坛上的一篇帖子,当时距离《Oblivion》发售仅仅过去几周。抱歉,接下来又是一大段文字;我保证这是本文最后一段长篇引文:
《Oblivion》号称采用了一套全新的人工智能系统,它完全由 Bethesda 内部开发,代号为“Radiant AI”。它旨在解决被认为是前作(《The Elder Scrolls III: Morrowind》)主要缺陷之一的问题:游戏中的 NPC 缺乏“生命力”。Radiant AI 会为每个 NPC 赋予一组必须满足的“需求”(例如饥饿),从而创造出一个更加栩栩如生的世界。
Radiant AI 的工作方式,是为 NPC 提供一份目标列表。除此之外,没有任何内容是由脚本规定的。他们必须根据各自的属性,自行决定如何实现这些目标。一名饥饿的 NPC 可能会将自己当前拥有的金币与道德观念进行权衡,以决定是走到商店购买食物,还是直接偷走食物;一名技艺娴熟的弓箭手则可能选择亲自猎鹿。
这需要进行大量测试,但它也为未来的 NPC AI 带来了更大的长期灵活性,同时还能配合 PAC AI 进行测试,以推动进一步开发。
以下是早期测试中发现的一些意外行为示例:
一个角色得到了一把耙子,以及“耙拢树叶”的目标;另一个角色得到了一把扫帚,以及“清扫道路”的目标,一切运行顺利。随后,测试人员交换了他们的工具,让负责耙树叶的人拿到扫帚,让负责扫地的人拿到耙子。最后,其中一人杀死了另一人,以便拿到正确的工具。
在另一项测试中,一名正在执勤的 NPC 守卫感到饥饿。于是,这名守卫跑进森林寻找食物。其他守卫也纷纷离开岗位,前去逮捕这名擅离职守的守卫,结果整座城镇无人保护。由于没有执法人员,村民 NPC 随即洗劫了所有商店。
在另一项测试中,一头牛头怪接到了保护独角兽的任务。然而,由于牛头怪被设定为攻击性生物,它会反复尝试杀死那只独角兽。
在某个黑暗兄弟会任务中,玩家会见到一名贩卖游戏内毒品 skooma 的可疑商人。在测试期间,玩家赶到时,这名 NPC 总是已经死了。原因是当地 skooma 窝点里的 NPC 毒瘾发作,又没有钱,于是便杀死商人去抢 skooma。
为了确认一件名为“Skull of Corruption”的魔法物品所使用的物理模型是否正常工作,测试人员进行了一次测试。这件物品能够生成它所作用的角色或怪物的邪恶复制体。测试人员将其扔在地上后,一名 NPC 立即捡起它,对玩家角色使用,创造出了玩家角色的复制体;这个复制体随后杀死了视野中的每一个 NPC。
Bethesda 一直在努力解决这些问题,在 NPC 的需求与其破坏倾向之间取得平衡,让游戏世界仍能以一种可用的方式正常运转。游戏中有超过 1,000 名独特 NPC,这还不包括怪物和随机生成的强盗。
这听起来不像 Bethesda 的官方声明,更像是某位粉丝对自己从某处读到或听到的不同故事所作的总结。除了前面提到的 skooma 商人案例之外,起初我找不到……