扒一扒天之游《王者军团》你所不知道的黑科技 第三辑
天之游《王者军团》精致的人物设计、次世代的游戏画面、宏大的故事背景给封测玩家留下了深刻印象。作为FPS与MOBA元素首次移动平台的融合尝试,天之游深知《王者军团》寄托着玩家的重望。临近第三次封测,天之游研发团队正加紧备战,优化手感、完善细节、创新游戏玩法、丰富地图与英雄。特别感谢在此期间,通过各渠道向天之游建言献策的热心粉丝们,《王者军团》在你们的帮助下,正日趋完善!
每款优秀的游戏背后,都凝聚着游戏策划、技术大牛、程序猿、美术师智慧的结晶与思维的碰撞。连续两期“扒一扒天之游《王者军团》你所不知道的黑科技(一)(二)”发表后,游戏玩家纷纷点赞,期盼《王者军团》下一次封测。小编在这里对热心的你们表示由衷感谢!前两期“黑科技”专题介绍了天之游在《王者军团》中使用的“百万级Server+服务端”、“体素化技术”以及“可控UDT+通讯技术”,本期我们来聊一聊游戏中更高大上的AI技术。
现在大红大紫人工智能AI(Artificial Intelligence),是指利用电脑模拟类生命智力及情感的程序,在游戏AI分支中也有很长历史了。从人机游戏诞生起,游戏AI作为非玩家控制角色就被置于重要地位,包括游戏中与玩家对抗的CPU对手、推动情节发展的NPC、配合进攻的虚拟队友、RTS游戏中自防御单位等。限于当时的电脑运算能力及仿真水平,游戏AI不得不遵循预先编写好的简单逻辑算法,不少AI显得稚嫩刻板,有的甚至还暗留不少BUG(据说部分无意BUG还引发了玩家津津乐道的喜剧效果),但依然有玩家乐此不疲玩耍着游戏中的各种AI,涌现出一批诸如走位、卡墙、脚本刷Bug等神玩法,也给玩家们带来了无数的乐趣。
如今,随着大数据分析的盛行及人工智能的发展,游戏内的AI也高速发展。在棋牌竞技界,甚至出现了像阿尔法围棋(Alpha Go)这样的模仿人类棋手,依靠神经网络、深度学习、蒙特卡洛搜索等新技术战胜人类最顶尖高手的人工智能程序。
然而,在游戏中为保证游戏的趣味性,游戏AI并非提升智商那么简单,要考虑更多因素。如果AI设计智商过高,电脑表现太强,会导致玩家失去乐趣,认为电脑在作弊。毕竟玩家需要的是一种在渐进难度下,熟练度不断提升而完成每个挑战,获得奖励满足和喜悦感的体验过程;同样,游戏AI又不能设计得过于简单,一旦被发现规律,玩家便觉得单调、乏味,丧失了挑战和趣味性,开发者为此伤透脑筋。策略游戏精典《文明》、《铁路大亨》的策划者,素有“游戏界的泰斗”和“AI策略设计大师”称号的席德·梅尔坦言,好的AI设计的思路应结合游戏心理,为玩家提供足够扎实的竞争,同时又能让玩家感到自己取得了进展。玩家应该觉得AI在一定程度上可以预测,虽然打法稳健,但是并不算高明,而真正的高招都来自玩家。
天之游《王者军团》在游戏规划时,就提出了AI需求。一方面是来自测试,游戏开发过程中,为减少机械而繁琐的人工测试并提高效率,需要借助AI对各功能模块遍历测试,并留下详尽的日志;为测试百万级服务端Server+的承载,也需模拟大批玩家的登录与游戏操作,如果没有AI则必须以成本更高的真人实测替代。此外,后续人机竞技玩法,也提出设计不同级别AI的要求。
对于游戏AI来说,设计难度从高到底依次为竞技>FPS>MMO。而天之游《王者军团》属于FPS+MOBA电竞游戏,更强调团队配合与角色技能组合。在进攻中,充当潜入、先遣作用的先锋和哨兵英雄,在辅助英雄的补给配合下,才能把控场上优势;而在防守中,还需要肉盾、堡垒英雄稳住防线、火力吸引。所以《王者军团》中的AI,特别是中高难度的AI,需要具备职业玩家素质,利用实际地形躲闪、变换走位、判断各技能冷却间隙、恰当时机使用攻击或辅助技能,并根据战场形势,做出进攻、防守、撤退、救护等判断······这样的AI开发难度并不低。
在游戏领域,常见的AI实现方法包括有限状态机和决策行为树。所谓有限状态机(Finite-state machine, FSM),是表示有限个状态以及在这些状态之间的转移和动作等行为的模型。基于规则设定,AI会根据目前状态及所面对情况,选择应对方式,并从一个状态转移至下一状态(如待命、技能、追击、躲避、撤退等),而状态与状态之间构成链接的网状,如此循环。比如在攻击状态时,遇到血量不足时,AI会利用大招掩护寻找血包补血或退出交火区域,等血量回升,又冲向战场杀敌。而辅助型英雄AI会根据队友血量在补血与助攻中变换。这都是AI在不同状态间转移的表现。所以,精细AI的有限状态机需要考虑各种可能的情况,将不同应对策略都录入其中。但任何复杂的AI程序设计,都不足以概括所有的情况。随着游戏内容增加和复杂度提升,状态机数量不断扩大,其逻辑越来越复杂,而且多层状态相叠,在事无巨细的写入各种环境、角色交互等输入参数后,AI程序结构将异常复杂,为修改和优化带来困难,更容易出现各种让人哭笑不得的Bug。
行为树法(Behavior Tree)为简化程序结构而提出,根据树形枚举所有可能的行为分支,然后让AI沿着规定好的路径运动。早期的下棋软件就是这种枚举法的产物,电脑棋手其实完全不知道棋盘上落子的意义,只是跟着设计师设计好的动作应对对手的棋路。行为树可以方便地把复杂的AI知识条目组织得非常直观。可是这种方法也需要提前预设数量极为庞大的判断策略。一句话,看似智能的AI行为,实际上都是剧情设计师规定好的。
这种预先设定好的AI行为,最终会被玩家发现规律,总结出应对方法,几轮之后玩家趣味性便随之降低。所以,含有随机因子或者根据随机权重决策的AI模型在游戏内才更符合团队的需求。AI还应有一定自学模仿能力,不但会随着游戏进行,不断提升战术技巧,还会“以其人之道还其,还治其人之身”,让玩家认为是与真实玩家对战。比如《红警3》的AI,它们能学习人类玩家的战术并进行分析。后期AI不仅会根据玩家使用过的战术调整游戏策略,甚至还会用玩家的战术来对付玩家,很多玩家就这么措手不及的被自己的战术打死。
天之游认为有趣的游戏AI应该具有人性。作为友军,AI配合玩家进行细节辅助,既不做猪队友,也不当把玩家冷在一边而急于表现的大神,让玩家有更多的精力投入到策略的思考中,并觉得战斗胜利是来自于玩家的设计与操控。作为敌方,AI不应是枪法如神闷声秒人,而是有一定策略、会学习、会判断、会模仿战场上玩家套路,像真人那样策略性应对游戏不同状况,并对战场对局情况产生惊讶、愤怒或恐惧的情感,带有一定随机性犯错并露出破绽,让玩家能够借助这些随机松懈取得战斗优势,最终产生乐趣与成就感。
在《王者军团》各开发版中,自定义房间中已有添加机器人功能,AI根据智力水平又分为简单、普通、困难三个等级。在尝试过几次与《王者军团》困难级AI对战后,小编还是提心吊胆的,需要花心思才能控制战局。随着版本的升级,新一代的AI战术将越发难以捉摸,又控制得恰到好处,不至于让玩家觉得是与作弊AI的不公平竞争。须要在队友协助配合下发挥组合优势,并商讨好战术,开黑将AI歼灭,因此带来了不少乐趣。
《王者军团》三测时,天之游将使用同样的AI技术,在前期对游戏进行独立的压力承载测试,在服务器中模拟出数十万用户同场竞技的盛事,这也是对百万级服务器Server+的首次临场环境压力测试,我们相信此次测试数据,能够为未来上线后用户承载能力提供科学的指导。《王者军团》上线以玩家间PVP为核心,至于什么时候向玩家们开放对战AI,还需要看策划大大的规划。但天之游已经完成了前期技术准备,很可能作为保留项目,在未来个性化玩法中,推出团队灭敌机器人、人机配合等各种模式,请玩家们拭目以待!
《王者军团》融入了天之游研发团队十几年来游戏研发经验与硕果,小编将继续深入游戏制作团队,为大家挖掘更多《王者军团》中你所不知的“黑科技”。赶快关注“王者军团官微”,与我们一起体验2017年这个“黑科技”浓浓、诚意满满的游戏大作吧!
关于《王者军团》
《王者军团》是一款云南天之游科技股份有限公司历时一年多研发打造的FPS+MOBA手游巨作,玩家在游戏中以第一视角化身为王者军团的英雄们和其他玩家同屏竞技,一起维护世界的和平!游戏基于先锋、辅助、堡垒、哨兵四类角色各异化的英雄技能设定,将个人英雄特色与团队配合的作用充分融合,并基于手机平台操作特点优化英雄射击与技能操控,为玩家带来不同的MOBA类射击手游体验。