前暴雪工程师:复盘[炉石传说]的AI设计
据SuperData此前发布的数据显示,《ob电竞》去年的平均月收入超过了2000万美元,成为暴雪的另一个‘顶梁柱’,同时也引发了更多公司相继做出CCG游戏。在2014年的GDC大会上,从事《ob电竞》项目的前暴雪工程师Brian Schwab做了题为‘《ob电竞》的AI设计’的演讲,对该公司在游戏AI制作方面的一些经历和想法进行了阐述,以下请看Gamelook整理的演讲内容:
【Gamelook专稿,转载请注明出处】
Gamelook报道/据SuperData此前发布的数据显示,《ob电竞》去年的平均月收入超过了2000万美元,成为暴雪的另一个‘顶梁柱’,同时也引发了更多公司相继做出CCG游戏。在2014年的GDC大会上,从事《ob电竞》项目的前暴雪工程师Brian Schwab做了题为‘《ob电竞》的AI设计’的演讲,对该公司在游戏AI制作方面的一些经历和想法进行了阐述,以下请看Gamelook整理的演讲内容:
大家好,我是Brian,在离开暴雪之前是负责《ob电竞》AI引擎设计的,今天我可能讲不了交换协议背后的秘密,也说不来很多的设计原则,但仍然可以分享一些有用的知识。如果你不了解《ob电竞》,这里我简单介绍一些,它是一款卡牌对战游戏,你可以用不同的卡牌和对手进行回合制游戏,出卡有资源限制(魔法),OB欧宝体育电竞官网最主要的目的就是击败对方的英雄角色。
作为试验品的《ob电竞》
这个游戏是暴雪的试验品,通常情况下暴雪制作团队都在70、80甚至100人以上,然而《ob电竞》这个游戏是希望通过有限的资源创造最大可能的游戏,希望看我们能否在什么都没有的基础上做出不同的游戏,我们最初团队有15人,4名美术师、5名程序员、2名制作人、2名策划,加上我(AI)和一名负责音乐的同事。我们接受了挑战,并且非常确定可以完成它。
《ob电竞》本身就是一个问题,首先是卡牌游戏的规则是固定的,很多的游戏都是在实体卡牌基础上做规则的优化和调整,如果你违反一些基本的规则,就会看起来很蠢。第二就是我要做的系统和AI都必须可以接受大量的修改,主要是因为这就是暴雪的做事风格,还因为我们需要对卡牌游戏做尽可能多的平衡。最后是刚刚说过的,我们面临的困难包括,有限的团队、资源和时间,AI、CPU以及预算也达不到大型游戏的规模。
以游戏设计为主的研发模式
在做游戏的过程中,有一些考虑是一直贯穿研发过程的,首先是设计为主,这是暴雪所有产品的主流做法,从这一点来说,我们必须把游戏做到易于调整,可以对卡牌进行编辑,因为所有的工作不可能都交给程序员,设计师需要负责卡牌,我们必须做到游戏系统方便修改。我们还用了很长的时间来确定需要做多少AI,因为我们很早就有一个版本,很多游戏可能都会做一个新手教学,即便如《ob电竞》这么容易上手的游戏,所以我们在做的时候决定加入AI控制,让OB欧宝体育电竞官网们通过它来一步步熟悉,这样慢慢学会更多东西。
AI的难度也是一个问题,很多的卡牌游戏难以被人接受都是因为遇到了这个问题,比如《ob电竞》有太多太多的卡,太多的机制,所以让学习曲线变得很漫长,以至于很多人还没开始就放弃了。所以暴雪希望做的AI就是让你觉得它很聪明,但又不能碾压你,让OB欧宝体育电竞官网觉得他们最终可以学到AI的技术,最终能够很快超越AI的技术,带来一定的成就感。
这个项目开始时另一个比较大的争议就是是否以数据为驱动做研发,你们想不到的是,由于团队和资源限制,很多人其实宁愿做数据驱动的游戏,因为这一套做起来会很顺畅,但我非常的自信,我觉得这款游戏会流行,而想让一款卡牌游戏生根发芽,最终枝繁叶茂的最好做法就是不断的推出更新,发布之后不断的推出卡牌。这样如果我们后来再决定做出大改就会导致游戏崩溃。所以我们做的妥协是,卡牌是按照数据做的,我们有这些工具所以很容易做,但AI却并不是的,实际上AI很多是代码组成的,所以我在这方面做了很多的决定,因为我必须把AI做到容易上手,能够吸引用户,然后让他们一直可以继续游戏。
玩法系统
我们的做法是为所有事物打上符号,由于规则的限制,我们必须为这些卡做很多的Tag,比如传说卡,军团,卡牌类型等等, 所有这一切都需要是可以调整的,我们只能通过卡牌能力来改变。另外一个系统就是状态更新,我们可以清除所有的限制条件然后重新开始,在出发技能的时候或者卡牌死亡的时候更新状态。这样一来在游戏中同时最多需要调用24个符号,所以这其实没那么复杂。
ob电竞APP下载的主要玩法包括收集所有的可能性然后发送给OB欧宝体育电竞官网选择,根据OB欧宝体育电竞官网的选择运行能力,然后更新状态,为了让用户们更容易理解,我们会做不同的颜色,比如绿色表示OB欧宝体育电竞官网可以使用这些牌,所以这就减轻了AI的压力,因为它不用去判定哪些卡牌可以用,哪些不能用,这一切都有固定的套路,你使用哪些卡牌就会有相应的能力配套,AI所承担的压力减少了很多。
《ob电竞》的Galaxy编辑器
接下来要说的是符号编辑器,最初我们的设计师和《ob电竞》项目上的人共同子在做Galaxy编辑器,所以他希望我们对此做出改动,你从图中可以看到原来的编辑器是这样的,你们看到这个很复杂,但我们进行了简化,用高级语言实现了多功能调用,所以《ob电竞》的脚本语言其实更自然,更简单,我们对Hearth编辑器做也采取了同样的做法,使用了非常简洁的代码。
AI系统的打造
我们最初就打算把AI做成中等OB欧宝体育电竞官网水平,为此我们采访了很多OB欧宝体育电竞官网,有些玩卡牌游戏,也有的人不玩卡牌游戏,把这些采访得出的中间数作为中等OB欧宝体育电竞官网水平的参照,按照传统的分类,新OB欧宝体育电竞官网了解玩法,中等OB欧宝体育电竞官网了解战术,高级OB欧宝体育电竞官网了解更高级的东西,但其实我们采访的高级OB欧宝体育电竞官网是可以在有限的卡牌数之内进行技能组合,而中等OB欧宝体育电竞官网则直接是看卡牌数值和游戏内资源的,所以我把游戏内资源分成不同的组,比如你手中可以使用的资源,可以用于攻击的卡牌数等等。
我们采取了非常简单的计分系统,不管是你的攻击消耗了多少点HP、造成了多少伤害,或者哪些卡牌被消灭看,这些都是简单的计分系统完成。而且我们是不允许OB欧宝体育电竞官网一上来就把对手击败的,因为必须给对方一定的时间进行反击,这样双方的战斗才会更有趣。
ob电竞APP下载中的锁定机制很少,因为你在游戏中这么做的时候容易造成一些复杂情况,还会引起一些意外情况发生,遇到这样的情况,代码还需要知道你为什么要锁定这些卡,所以更容易出问题,因此我们尽可能减少这样的情况出现。
另一个做法就是困难的升级,主要表现为OB欧宝体育电竞官网对AI反应的猜测难度、AI攻击机制的随机性以及AI卡组的可调整性。由于魔法的限制,所以一开始不管是OB欧宝体育电竞官网还是AI所做的动作都是有限的,而由于不能看到对方手里的牌,所以只有熟悉的OB欧宝体育电竞官网才会猜测的比较准确,然而随着游戏回合的增多,AI可以获得更多的卡牌,所以设计师来决定AI所获得的卡组,这样一来可以对难度更容易进行调整。
当然,我们还会对AI印象做一些调整,但这些都是比较细微的变化,比如HP剩余多少的时候可以判断对方在几个回合制内赢得比赛,然后对此进行策略微调。
那么,哪些是可以变得更好的呢?
首先要说的是,我们的代码开始的很慢,由于初期主要是设计阶段,所以很多的东西到代码阶段做起来会有些难度。其次是工具的成熟度不足,前面说到,由于人手不够、资源和资金都不多,因此我们很多工具做起来都比较慢,如果有更成熟化的工具,这个过程应该会更快一点。
我们采取的一些不错的做法
首先是用了一年的时间在设计修改上,这样不仅反复验证和调整了玩法的可行性,也增进了开发者和游戏之间的感情,通过多次的讨论和修改,最终游戏变得更加稳定。其次就是Flash创意原型,我们一开始并没有使用代码做创意原因,因为这样做起来简单,而且后来改起来又不用调整代码就可以进行快速便捷的修改。
我们当时做的一个比较对的决定时延迟了游戏发布日期,使用了更长的封测和公测期,不过在这个过程中我们找到了更多问题,比如触发机制在初测期间改了3次,所以我们必须重新写很多低级的东西,做重复的事情,但这也为发布之后减少了很多的问题。
另外一个就是AI性能做的很好,这一点我们前面说过了,最后一点要说的是,这款游戏的表现很好,出乎我们的意料之外。
如若转载,请注明出处:http://www.ashkeling.com/2015/09/228008