人工智能在很多时候,都是与游戏话题绑定的。『地址发布页邮箱: ltxsba @ gmail.com 』这也是很理所应当的事情,要想让游戏中的“怪物”、“敌人”动起来,本来就需要靠程序赋予其一定程度的“智能性”。
随着游戏发展愈发次世代,尤其是当游戏中的“敌人”表现为人类形态时,对“智能性”的要求就越高。
毕竟随着成年玩家比例增多,大家都挺难接受人形怪物表现得像个“板栗仔”似的。要不然“无双”也不会被吐槽为“割草”了。
前尘往事里,板垣伴信更是把他老东家光荣特库摩出品的“无双”系列,评价为“就只是做一份拿着大刀或大镰在甘蓝菜田收割几千个甘蓝菜的工作”、
“要表现出数千个甘蓝菜的东西,还说很厉害,这真是愚蠢。”云云。
当然,爽度游戏有其自身的爽快玩法,藏马就是个割草迷。要是玩个“真三国无双”还要像《黑暗之魂》一样,连个大众脸武将都是“吕布”等级,他或许老早就弃坑了。
不过总体而言,玩家对于游戏AI 的要求还是在逐步增高的。这里有一个很重要的概念需要明确:那就是游戏 AI 的提高不代表游戏难度的提高。
拿上面的“真三国无双”系列来说,被吐槽为割草也不是因为它的难度低,单纯就是真实性不足。真正的战场上,小兵得多萌新才会一直围在你身旁,傻站着任你砍?
而且虽然武将有格挡技能,小兵却都是只攻不守?只能说这AI 设计是真的很低(ruo)水(zh)平。
游戏AI 的提高用比较形象的说法来形容,应该说是“演技”的提高而不是游戏难度的提高。
总的来说,游戏中的AI 就像一部电影里的配角一样,而玩家则是毋庸置疑的主角。『地址发布邮箱 ltxsba @ gmail.com』一部优秀的电影既会凸显配角的特点,却又不会让其夺走主角的光辉。
游戏的AI 将变得越来越聪明,所能表达的行为也会越来越丰富,但是有时候这些 AI 也要会装傻充愣,在玩家最需要“帮助”的时候稍微放下水。
只有在判断玩家需要一些挫折感来砥砺奋进时,才要给予玩家致命一击。
可以说越是悄无声息,越不容易让玩家发现AI 在放水,就越是考验一个游戏 AI 的水平。
说起来很容易,但别说游戏AI 了,现实里的演员都很难做到演技自然的。不然也不好有那么多小鲜肉、流量小花被人狂骂演技不好了。
磨炼演技是一件很困难的事情,提高游戏AI,更是在困难的同时还加上了真金白银的限制条件。
上世纪九十年代末,主机、电脑的硬件每年都在发生翻天覆地的变化,而游戏内容也越来越复杂。
为了适应更加复杂的游戏内容,设计师就必须开始制作更聪明的AI,也就是加入了有限状态机制和行为树,然而从这时候开始游戏程序的设计师们就开始有点手忙脚乱了。
比较典型的例子就是游戏中单位的自动寻路AI。
当玩家操控一个角色的时候,点击一个目的地,AI 就会自动计算出最佳的路径自动前往,如果遇上什么障碍物之类的也会自动躲避,但就这么一个简单的寻路AI可苦了不少程序设计师。
(PS:作者菌大学里老师要我们做个简易版坦克大战,那 AI 设计都挺麻烦的)
一般来说,在RPG 游戏中玩家基本上只需要操控一个单位进行寻路,这个问题不大。
然而在“魔兽争霸”、“星际争霸”这些 RTS 游戏里,往往玩家一次就需要操作几十个单位同时前往一个目的地,而这些单位又都有真实的碰撞体积,因此这个寻路算法就出现问题了。
当年在《星际争霸》中,就因为这个寻路问题让设计师无比头大,往往你在前方和敌人激战正酣,结果发现自己的单位却越来越少,回过头来一看所有的后援部队全部被卡在一个狭小的路口动弹不得。
解决办法就只能玩家去一个个操控让他们有序通过路口,这无形间就增加了玩家们的操作难度。
不过这个问题却也成为了后来星际争霸中一种玩家与玩家间的操作博弈,因为这样被动要求玩家提高自己的APM 手速。
由于玩家的操作水平甚至可以没有上限,这也让那个时期《星际争霸》的职业比赛特别精彩。韩国人甚至将其捧上了坛,差点都要让人以为暴雪是一家韩国游戏公司了。
但是这个问题放在《星际争霸》中另一个地方可就不那么有趣了。
在《星际争霸》中,玩家需要让农民去自动采矿,然而依然是寻路问题会导致所有农民都挤成一团而停止采矿。
这个问题肯定是无法容忍的。然而暴雪的设计师想尽了办法也想不出如何继续优化这个寻路算法,农民依然会堵成一团。
到最后还是一个程序员想出的一个取巧办法,让所有的农民在采矿时没有碰撞体积,这才解决了这个问题。
更有趣也更令人咋舌的是,直到前几年《星际争霸2》诞生以后,这十年间暴雪仍旧没有解决这个寻路算法问题,仍旧是采用农民采矿无碰撞体积的方式来解决。
不熟悉星际的玩家可以看看《魔兽争霸3》,里面的兽人苦工与人族农民也是这样子。采矿时看似很流畅,但你在现实中根本实现不了那种“穿人术”。
客观来说,暴雪在这个寻路AI 上已经做得比较好了,那个年代新诞生的3D游戏AI也好不到哪去甚至更糟糕。
在经典元祖级设计游戏《007黄金眼》中,作为 NPC 的“邦女郎”娜塔莉在游戏中虽然拿着武器,但基本上什么都不会干,还经常冲进敌军中。
偏偏如果她被击中了游戏也会宣告失败,就这样玩家不得不想尽办法保护这个智障NPC,这也是那个时期一个坑玩家的经典 NPC 代表之一。
而之所以会出现这种情况,只是典型的经费不足再加上程序员水平有限,无法将这个AI 优化到预期水平。
设计者的初衷肯定是希望“邦女郎”能像《上古卷轴5》里的随从护卫一般,成为玩家在战斗中的好帮手,甚至是“抱大腿”中大腿般的存在。
可惜在那个时候,不管是当时的硬件条件,还是已经被藏马收购了的开发公司RARE 的经济实力,以及程序员那受到时代约束的技术力,都不足以实现这样的设计。
结果等到交货的时候,就弄出了这么一个让人哭笑不得的阿库娅式NPC 了。
……
上述情况在它们各自所处的时期,都几乎是无解的难题,但是在2014年这个时间节点,要解决却并不算太难。
当然,藏马才不会在这年头浪费人力物力去解决这些问题,RTS 游戏都已经凉了。但他的野心可要大得多。
“在座的诸位。是时候实践我当初的诺言了。我的要求很简单……好吧,其实有点小过分。
我希望大家能够帮我针对《英雄联盟》这款游戏,设计出一款上限至少拥有钻石等级的人工智能程序来。我希望在今年的全球总决赛上见到它。( ̄▽ ̄)/”