ZKX's LAB

《Spelunky 2》怎样用AI来测试关卡?

2020-10-20新闻10

原标题:《Spelunky 2》怎样用AI来测试关卡?

作为今年最出色的新游戏之一,《洞穴探险2》(Spelunky 2)难度极大。你只要在游玩时稍不留神,就有可能被打回起点。这是一款充满了随机性的游戏:关卡根据一些预设规则即时生成,但整体布局可能会发生巨大变化。如果你想手动测试可能出现的所有关卡,就不得不耗费大量时间。因此,开发团队制作了一个AI,来处理这项繁重任务。

《洞穴探险2》的关卡看似完全随机,但其设计背后仍有逻辑。关键规则之一是:在不使用炸弹和绳索的情况下,玩家应该能通过游戏里的任意关卡。

在《洞穴探险2》开发期间,设计师Derek Yu与Blitworks进行了合作。Blitworks是游戏行业著名的移植外包公司之一,曾为《神界:原罪2》制作Switch版本,但《洞穴探险2》还是他们以合作开发团队参与的首个项目。对这样一家擅长移植的公司来说,测试是他们重点关注的工作内容。

Javier Moya Nájera是《洞穴探险2》的玩法和AI程序员,在与Polygon的一次邮件采访中,他讲述了团队使用AI来确保游戏内所有关卡都能被玩家通过的过程。

“我认为这一切都是从主程序员Micky Pascual的测试系统开始的。那套系统不断创造关卡,释放帧速度,目的是尝试发现任何潜在的关卡生成问题。”

但测试系统本身并不能完全模拟玩玩家通过关卡的体验。Blitworks编写了一个AI来控制“被雇来的帮手”(Hired Hands)——你可以在做任务的过程中救出他们。开发团队无意将这些帮手设计成为天才,但他们确实对怎样才能顺利通过一个关卡有所了解。

有一天,Moya Nájera和同事们突发奇想:“如果我们让AI来测试关卡,那会怎么样?经过一些更改后,我们进行了一次初步测试,让AI努力抵达出口,不考虑任何其他因素。”

遗憾的是在刚开始的时候,AI的表现令人非常尴尬。

“我记得那个AI角色粗心地试图穿过所有怪物和陷阱,所以在大部分时间里,它没有到达出口就会被杀死。随着AI的发展(我们添加了战斗AI、更复杂的寻路方式、教它怎样应对陷阱),水平不断提高,最后它终于变得能够攻击怪物,进行非常复杂的跳跃并抵达出口了。”

当然,编写一个能够适应《洞穴探险2》里所有不同变量的AI本身就很困难。

“游戏里有很多物品、增强道具、怪物等等,并且每种怪物都有自己的行为和特点,AI必须对它们有非常全面的了解才能做决定。例如,如果你面对一只飞行蝙蝠和雪人,战斗方式是不同的。你可以踩踏或鞭打蝙蝠,雪人不能鞭打,但你可以朝雪人射击。”

Moya Nájera承认,在《洞穴探险2》中,那个被用来测试关卡的AI仍然会犯很多愚蠢的错误……虽然AI的水平与玩家还有距离,但Moya Nájera觉得,观看AI尝试打通游戏非常有趣。

“我花了很多时间盯着屏幕,看AI能不能抵达出口。它完成了一些令人难以置信的动作,还在几乎不可能的情况下轻松击杀了很多怪物。”他说,“我感觉简直就像观看一段直播。”

《洞穴探险2》的玩家们无法看到AI挑战关卡,不过,游戏里的那些AI帮手也能完成一些流畅、华丽的动作。请记住,它们玩《洞穴探险2》的次数很可能比你多得多。

#洞穴探险

qrcode
访问手机版