游戏动态难度发展历程及展望(下)

作者:王铮
2023-03-31
5 3 1

接续上篇,本篇将继续介绍“动态难度”的个性化应用实例,以及开发者对动态难度应用的反思。

第四阶段,个性化的动态难度应用

对动态难度的应用让更多开发者跳出了难度层级设计的桎梏,部分游戏在自身机制基础上做出的个性化动态难度调控十分有效且出色。

比如通过调控 AI 来实现动态难度:

《半条命》(Half-Life,1998)中,若遭遇多个敌人,最多只会有两名陆战队员同时向玩家发起攻击,剩下的敌人会向四周奔跑,寻找合适的位置包抄。

《光环:无限》(Halo Infinite,2021)中的敌人甚至可以实现接近真人玩家的效果:他们懂得灵活运用游戏中的武器道具,懂得伏击玩家,甚至还会在被击败的对手面前做嘲讽动作。

《忍者龙剑传 2》(Ninja Gaiden II,2008)的 AI 设计相当有分寸,敌人们会合作攻击,但并不会(持续)同时发动攻击(超忍难度略有例外)。玩家背对的敌人,攻击欲望会相对降低,此外,“断肢”体系的加入让游戏节奏变得更快,当隼龙砍断敌人头部会直接将其击杀,而砍掉身体其他部位则能限制他们的行动,方便接近这些敌人并快速斩杀。

《求生之路》(Left 4 Dead,2008)的 AI 系统,被称为“导演”系统:“导演”不会在关卡中使用固定的怪物刷新点,而是在每次加载时将敌人放置在预设的随机位置之一。为了使玩家保持警惕,“导演”还会监测玩家的健康状况和其它性能因素,并相应地在关卡中调整僵尸、弹药和药包的数量及位置,在某些战役地图中,甚至还可对部分阻挡物、出入口做调整。总的来讲,“导演”系统会持续运行一场激烈但可控的游戏。


还有一些游戏采用较为隐蔽的方式,在游戏机制内为玩家提供了容错下限:

《孤岛惊魂 3》(Far Cry 3,2012)为没有医疗包的玩家提供了掰手指回复少量生命的设计。

《马克思佩恩 3》(Max Payne 3,2012)会为死亡次数过多的玩家补充止痛药,在某些情况下会帮助玩家自动使用。

《使命召唤 6》,即使满屏红血都会有喘息之机

《使命召唤》系列、《战地》系列等经典 FPS 游戏应用了“呼吸”回血的手段。当玩家重伤,屏幕上红光闪烁时,可以寻找掩体暂时躲避,一段时间过后,红光消失,视线变得清晰,玩家会重新恢复健康状态。而当玩家血量很低时,受到非持续性的伤害也会被游戏中的残血保护机制抵挡,玩家只需在持续数秒的无敌时间内快速寻找位置躲藏便可化解。

《盗贼遗产》的可锁定地牢

很多随机生成地图的游戏运用“半生成半预设”(half generated half designed)的方式来控制难度。《洞穴探险》(Spelunky,2013)的地图会在每次开始游戏时变化,但玩家很快就能意识到地图是按照特定网格生成的。不过,由于拥有足够的模板和“随机突变”(random mutations),游戏也就保持了新鲜感和难度的基本统一。

《盗贼遗产》(Rogue Legacy,2013)中,除了“半生成半预设”的做法,玩家还可以锁定前次探索过的随机地牢(保留存档点等内容),以减少金币获取的代价重复挑战。这相当于通过减少奖励赋予玩家反复攻略地图的机会,变相降低游玩难度,尤其是挑战 Boss 前,玩家可以保持相对健康的状态。

《奥日》可以在地图任意位置利用精灵之火存档

还有一些动态难度,玩家需要学习才可理解。《奥日与黑暗森林》(Ori and the Blind Forest,2015)的存档点与回血能力运用同一种名为“精灵之火”的资源(击败敌人掉落),这个设计把难度、存档及资源平衡绑定在一起。玩家不能按寻常思路机械地按节点存档,而是要抉择存档时机,才能发挥资源的最大价值(在某些不恰当的位置存档甚至会导致一定程度的困境)。

此外,《奥日》的三大逃亡关卡,也针对不同水平的玩家做出了一定平衡,玩家身后的潮水和火焰会在合适的时候提升或降低追逐速度,以保证持续给玩家压力,同时不至于太过困难。

我们还可以看到,一些需要高沉浸度的游戏会通过动态难度调节辅助流程进行,有时甚至可以起到强化剧情体验的效果:

《神秘海域》(Uncharted,2007-2016)系列的部分任务设计十分有意思。尽管关卡顺序是可选的,但游戏会动态调整关卡中的敌人排布,使得玩家无论先触发哪一个关卡,体验总会从易到难,战斗情节方面的递进效果非常优秀。

《泰坦陨落 2》(Titanfall 2,2016)会在玩家死亡时(或由玩家主动选择)对滑行平台进行模拟轨迹提示,并通过道具设定将此行为合理化。

《最后生还者 2》(The Last of Us Part II,2020)将难度的前后变化较为和谐地融合在了一起。当玩家遭遇难以通过的地区时,可以选择暂时调低难度,成功通过后,难度会自动回调。在此基础上,玩家还可以调节受到的伤害、补给、血量、敌人和队友 AI 等数据以帮助通关。游戏整体容错高于前代,也保证了最重要的一点——剧情体验的流畅程度。

《林中之门》(Door in the woods,2019)采用了永久死亡的惩罚设定,探索和发现真相因此变得艰难,不过,游戏加入了非强制性的经验继承来实现动态难度。游玩过程中,随时间获得的经验会给角色带来属性增益,为了避免死亡后全无收获,玩家也可以利用搜集到的“小纸条”记录这些经验值(一旦选择记录,当前人物会立刻失去这些经验)。当角色死亡后,再次进入游戏世界的新人物可能会在探索中找到某些前人残存的记忆碎片(并不固定在下一局游戏中,也可能在后续任何一局或丢失),阅读后会得到此前记录的部分经验。这种动态难度设计很好地贴合了游戏的克苏鲁风格。

本阶段中,许多游戏个性化的动态难度应用既解决了难度调节问题,同时能够辅助展现游戏机制。

第五阶段,动态难度(滥用)的反思阶段

随着不同类型的游戏发展,动态难度调节的方式进化得非常庞杂,许多开发者会把动态难度作为调节游戏流程、保证体验顺畅的强大工具,有些时候,动态难度也会成为宣传卖点。当玩家因为自身水平卡关时,当游戏引导不足以帮助玩家获取足够信息时,当解谜路线构不成完整逻辑链时,或是当动作游戏中同时攻击的敌人过多时(让他们变蠢),动态难度都被当成一个近乎“万能”的工具。

游戏内提示系统也在这个阶段出现,玩家可以主动点按提示来获取信息。这种做法如同内置秘籍,尽管一些游戏对此有所限制(例如次数限制或是仅用排除法公布线索),但不得不说,玩家游玩方式仍旧受到了较大干扰,甚至产生线索依赖。

还有部分游戏的系统提示是主动发生,并不会提前询问玩家。例如时下三消游戏中几乎成为默认的停留指引、道具提醒(玩家长时间未反应或无法消除时提供的“手指”提示)。

而另一种较为隐晦的手段,常常出现在冒险类游戏。在屡次死亡后,系统会通过让玩家复读任务说明、人物对白,或利用摄像机镜头的转移提供线索。

《上古卷轴 4》强大的成长式 AI

再来看一看 AI。为达到棋逢对手的效果,开发者经常将敌人 AI 的实力设置为紧随玩家增长。例如《上古卷轴 4:湮没》(The Elder Scrolls IV: Oblivion,2006),其等级系统被很多玩家诟病,因为敌人等级会随玩家升级而提升,经常会造成玩家升级后反倒打不过小怪的困境。即时战略游戏《家园》(Homeworld,1999)也有 AI 兵种随玩家实力增强的设定,它甚至不是“橡皮筋”效应,而是种近乎作弊的行为。不过略显滑稽的是,如果玩家在实战中抓住 AI 的某些弱点,他们实际上不需要在游戏中提升实力,很多时候,玩家只会一次次使用已有的“经验”,如卡 Bug 等。

玩家永远是驱利避害的,在多数网游甚至单机游戏中,动态难度等级的设置,必定会对应出“最优升级路线”等解法。不论玩家玩游戏的初衷如何,以及想不想要这样游玩,为了保持更高的效率,他们必须这样做。而在当下信息交叉(外部媒介对游戏真实难度设计的干扰,如文字攻略或视频内容)的环境中,玩家往往难以获得纯粹的难度流程体验。

所以,很难说这类系统的优劣如何,但 DDA 的加入,客观上确实可以帮助玩家保持游戏内专注,同时方便部分信息的获取。(除了下面这些微观层面的动态难度系统优化)

  • 存档前移,玩家可以在未达到存档点的位置提前触发;
  • 音乐游戏中检定窗口期的优化;
  • 格斗游戏的简化输入;
  • 伪随机数值及概率判定;

不过,随着实践增多,确实有相当一部分玩家、开发者对动态难度的“过度应用”产生了厌恶与反思。

引用马克·文图雷利(Mark Venturelli)在其文章《难度等级以及为什么你永远不要使用它》(Difficulty Levels And Why You Should Never Use Them)中对动态难度等级的看法:

一拳击败游戏中的 BOSS 本身就是种非常令人振奋和有趣的体验,但需要确保玩家仍有动力去处理真正“困难”的内容,以避免使“优化”路径成为唯一可行的选择。对于挑战的选择应该是模棱两可的(不唯一的),这样才有意义。

提出心流概念的陈星汉同样抱有类似看法。严格意义上,他提出的理论为主动动态难度控制(Active dynamic difficulty adjustment),是为玩家提供完全掌控游戏难度的方法,而不是以可能破坏游戏流程的方式实现。此时,难度调整基于游戏核心机制,因此,当玩家选择改变难度时,应为嵌入式的和下意识的。这也是他有关“心流状态”的真正解读。虽然有些开发者对陈星汉定义的动态难度有少量质疑(存在一些与难度非相关的心流体验,例如老虎机等),但此概念的产生本身就对游戏设计理论补全提供了极大帮助。

除上述的内容,动态难度还会带来一些特殊问题,需要我们思考。

例如竞技游戏会根据玩家的表现实时排名,基本确保同等游戏实力的对手相互匹配。这种 DDA 设计虽然普遍,但不总是公平。很多游戏采取的隐藏分阶梯制(或是 elo 匹配系统)并不能适配全部清况,甚至可能会被玩家所利用。例如《英雄联盟》(League of Legends,2009)中,由于部分玩家的隐藏分低于实际段位,也许会出现胜利加分少而失败扣分多的情况(因为系统判定你应当处于更低的段位,所以连同匹配到的队友也可能来自更低段位)。此时,一些玩家发现,晋级赛秒退并不会干扰隐藏分,那么可以直接输掉三局晋级赛,让胜点先回到 70,再打到临近升段,如此反复,可以在较低段位达到修正隐藏分的目的。

再比如,单机游戏中,循环游戏系统重启导致的难度偏移。这点很有意思,尤其是很多难度偏高的游戏,玩家为了通关可能会多次重玩前序流程,“第一关”变得完全没有难度,反复挑战更像浪费时间。而由于对后续关卡仍知之甚少,当玩家真正抵达后期流程时,失败仍可能是大概率。此时游戏前中后期的难度在整个流程中不再均衡。部分开发者关注到了这一点,但似乎很难将其应用于实际的开发进程中,或者说运用还不够出色,例如前文所提到的《上古卷轴 4》。

FC 版《忍者龙剑传》的 Boss

不过确有游戏有类似尝试。FC 版本《忍者龙剑传》(Ninja Ryuukenden,1988)的最终 boss 有 3 种形态,如果初次尝试便打败 boss 的第一形态,那么玩家在每个阶段都会回复生命,而如果玩家在第一阶段死亡,之后的 Boss 战就不会回复。这意味着玩家只能依赖一条血槽对决 Boss 的 3 种形态。不知道是不是为保持初代忍龙的高难特性。

关于设计的思考总是循序渐进,也许是注意到上述提及的或未提到的问题,一些开发者尝试采取更人性化的难度控制方式。顽皮狗曾为原版《古惑狼》(Crash Bandicoot,1996)设计了一种玩家指标系统,将有关游戏的统计数据写入存储卡,在离线状态下进行汇总,以找到耗时过长或玩家死亡次数较多的区域。这些“有问题”的区域可能会被重新设计,这些数据也被用于调整该游戏中的动态难度系统。开发者的最终目标是消除 "shelf moments",即玩家被卡住而无法继续的时刻。

《复制岛》的热点分布图/图片: Hot Failure: Tuning Gameplay With Simple Player Metrics

《复制岛》(Replica Island,2010)的开发者克里斯·普鲁特 Chris Pruett 也有过类似尝试:他在《复制岛》中加入了一个事件记录系统,统计玩家的关卡完成时间及死亡情况等,随后用工具在地图中标点记录并生成热点分布图。数据收集完成后,他会对关卡做出动态难度调整,例如在某些高难度关卡中,若玩家连续死亡达一定次数,系统会秘密地为玩家增加一些生命值和飞行能量。又或者,若几个关卡的完成时间很长,但死亡次数却很少,可以判断有玩家处于迷路状态,那么可以为关卡提供更多指引或直接重新设计。这种动态的难度实时反馈能让开发者更好地理解自己的游戏,也能帮助游戏更好地迭代。

后记

动态难度其实是在利用开发者与玩家间的信息差,为玩家提供匹配自身认知的游戏体验,不至于让玩家产生过多的挫败感、无聊感。

《时空幻境》(Braid,2008)的作者乔纳森·布洛(Jonathan Blow)曾经在采访中表示,自己没有因微软方面的意见加入提示系统,从而改变游戏中过难的关卡。因为他希望塑造一种类似“动态难度”的效果,当玩家遇到难以解决的困境时,暂时跳过它们,而后续关卡一定会给玩家启发,此时转回头再次思考,便可事半功倍。最终,这种促使玩家学习的方式收获了不少赞誉。任何成功的游戏制作人一定有自己的坚持。无论何时都不该忘记,游戏的一大乐趣便是克服难以逾越的困难,超越原本的自己。

在构思和补充资料的同时,笔者可以感受到不同开发者对难度系统的理解差异。他们在自己的作品中付出心血,希望能创设合理的难度流程,为不同基础的玩家提供更贴合预设的体验,但即便是看似完美的动态难度设计,也不能满足所有人的偏好。也许,今年突破性发展的 AI 技术能为动态难度设计注入更多的可能性?

但在当下,笔者认为,最重要的还是传递出想要表达的内容。不同玩家、不同视角能获得的多样体验本就是奇妙且宝贵的,如果一味运用动态难度拉平体验,可能反倒会令作品丧失棱角,甚至变得平淡,有些得不偿失。

本文成文相对艰难,往往需要把个人游戏经验运用于查阅资料的过程。很多内容并不一定完全准确,尤其在分类和举例方面可能存在较强的主观性。但无论如何,希望能对有兴趣阅读的朋友有所帮助。



参考资料:
[1] Difficulty Levels And Why You Should Never Use Them, Mark Venturelli
https://www.gamedeveloper.com/design/difficulty-levels-and-why-you-should-never-use-them
[2] Game Design Essentials: 20 Mysterious Games
https://www.gamedeveloper.com/design/game-design-essentials-20-mysterious-games
[3] Development of Difficulty in Games
https://www.gamedeveloper.com/design/development-of-difficulty-in-games
[4] 2008's Breakthrough Developers, The Gamasutra 20
[5] Empowering the Player: Level Design in N++
https://www.youtube.com/watch?v=VZ4xevskMCI&t=1091s
[6] The Default Number of Players is One
http://keithburgun.net/the-default-number-of-players-is-one/
[7] Hot Failure: Tuning Gameplay With Simple Player Metrics, Game Developer magazine's September 2010 issue
[8] Flow In Games
http://jenovachen.info/new-page
[9] Game Changers: Dynamic Difficulty
https://www.gamedeveloper.com/design/game-changers-dynamic-difficulty
[10] Jonathan Blow: The Path to Braid
https://www.gamedeveloper.com/design/jonathan-blow-the-path-to-i-braid-i-
 

封面:《如龙:极》  
*本文内容系作者独立观点,不代表 indienova 立场。未经授权允许,请勿转载。

近期点赞的会员

 分享这篇文章

您可能还会对这些文章感兴趣

参与此文章的讨论

  1. bronzeface 2023-04-15

    共勉。

    最近由 bronzeface 修改于:2023-04-15 11:31:42

您需要登录或者注册后才能发表评论

登录/注册