机器之心报导
机器之心编辑部
游戏的角色设计是一学院问,我们希望不同角色各有特色,但总体又是平衡的。但之前炉石等游戏,总会有玩家能钻游戏设计的空子,他们能找到强于其它组合的阵容,并发展成一套简单高效的策略。现在,进化算法也能拿来评估角色属性的平衡了,用 AI 来设计游戏,说不定能大大提高可玩性。
炉石传说似乎被觉得是运气成份最大的竞技游戏,但在每位版本之中总会出现最强和最弱的职业与卡组。对于玩家来说,游戏的公平性是其是否「好玩」的重要诱因,但人类设计师对于卡牌与技能的提高和消弱,总会带来新的不平衡。
11 月 2 日,炉石传说特级大师赛亚军总决赛在暴雪嘉年华会议上结束,来自中国赛区 Valiant Knighthood 战队的 Liooon 斩获世界冠军头衔,并获得了高达 20 万美元的奖金。
作为首位登上暴雪嘉年华炉石全球总决赛的女选手,Liooon 初次登场便获得亚军招来了众人喝采。在赛事中,她反常规地带上了一套宇宙猎拿来克制其他八强选手人手一套的火气牧,并最终取得了成功。
除了宇宙猎之外,Liooon 采用的其他卡组分别为:心火牧、异变萨、蓝龙德,她在半决赛以 3 比 2 战胜了 Casie,并且在八强以 3 比 0 战胜了 bloodyface。
能够用恰当的牌组实现胜利,说明了 Liooon 对游戏牌组研究至深。但是,在《炉石传说》这样的高复杂性策略游戏中,保持角色的平衡是一项困难的任务。游戏中策略的多元化和多样化将衍生微妙复杂的游戏系统。在不破坏当前环境的情况下通过调整 2000 多张卡片来达到预期游戏疗效极其困难。
在本文中,来自纽约大学游戏创新实验室(Game Innovation Lab)、新泽西理工学院吴鹰计算机大学以及其他几位独立研究者阐述了《炉石传说》中现有卡牌的变换对游戏策略的影响。
在这项研究中,研究者们剖析了不同策略下不同牌组之间相互攻守的胜率,然后提出对发生变换之前和以后的表现进行比较,从而提高或消弱不同的卡牌。
之后,借助于进化算法,研究者探求牌组之间胜率同为 50% 时卡牌属性出现什么组合变换。因此,他们接着将使用的进化算法扩充到多目标解决方案,同时对现有卡牌作出最小程度的变换,从而尽可能不影响游戏整体。最后,他们提出并评估了一些指标,从而得出什么卡牌实现了预期的平衡变换。
什么是炉石传说
炉石传说是一款由暴雪游戏公司开发的集换式卡牌游戏,在 2014 年公开,其中有超过 2000 张卡牌。在游戏中,两位玩家互相出牌,目的在于将对手的生命值降低到 0。开局前,玩家选择 30 张牌,组成一副。这副牌是玩家在游戏中才能使用的牌组。在每轮抽牌的时侯,牌随机从牌组中抽取。一般来说,玩家都希望就能抽取出一组牌的组合,这些组合才能最大限度地取胜。有时候,暴雪也会适当更改一些牌。这个游戏还能经久不衰,依然遭到欢迎,无疑是因为暴雪的投入和对游戏的调整。
炉石传说的游戏一部分界面。
现在聊聊炉石卡牌的设计
有着无数联通的组件的游戏一般是复杂的系统。在这样的游戏中设计师须要提供好多游戏目标的选择,如牌、技能或武器炉石传说最有可玩性的职业,使得玩家可以用好多方法对那些目标进行组合。
然而,在大赛类的游戏中,为了取胜,玩家一般会专注于搜集特定的目标组合炉石传说最有可玩性的职业,使其落败的机率最大化。在角色属性不平衡的游戏中,玩家会发觉好多简单而不可打败的策略,或者她们不再玩某种角色。这样的游戏会很快崩溃,使得有经验的玩家失去兴趣。
正是由于炉石传说有百万玩家,因此新卡牌的公布和已有卡牌的更改会让玩家们很快发觉角色属性不平衡的漏洞。即使是一张不平衡的牌也会让元游戏(metagame)——即受欢迎的牌组和对其他牌组的胜率,发生很大改变。
一个平衡的元游戏则还能让好多有竞争力的牌组互相对抗。虽然暴雪早已使用了结合深度领域知识、内部游戏测试和元游戏数值可视化的方式,但是在一个有着 2000 张卡牌的游戏中,他们仍然须要估算工具进行辅助。本文便提出了相关研究。
AI 告诉你如何设计炉石
那么机器学习该怎样帮助设计卡牌游戏呢?这篇论文探求了一些技巧以估算集换式卡牌游戏的角色平衡,其主要关注的是《炉石传说》。这篇论文采用的方式其实同样也能应用于其它卡牌游戏,即玩家能从一大堆游戏物体中选择一些以建立自己的角色。
这篇论文讨论的游戏角色平衡主要分为三个方向。其中第一个方式基于简化假定,即一副牌组应当近似等价于其它牌组。对于第一个实验,研究者通过进化算法将一组卡牌的变换编码为独立的个体(进化算法中的 individual),其中好的变换表示两组牌有相等的胜率。这是一种单目标最优化问题,其中个体的适应度依赖于每组牌究竟与 50% 的胜率有多近。
虽然在游戏发行后,我们为了达到角色平衡须要对复杂的游戏做一些改变,但即便卡牌有很小的改变就会对元游戏形成比较大的影响。此外,卡牌的这种改变一般要求玩家重新思索之前的策略,在《炉石传说》中,他们还须要获取仍未搜集到的卡牌。
实验 2 是一个多目标最优化问题,它基本的思路与实验 1 是一样的,然而实验 2 会添加一个额外的目标函数以最小化卡牌角色的改变。最后实验 3 探索了针对特定扑克的角色平衡疗效,它关注单组卡牌,并首先排序卡牌以决定假如玩家打这副牌会有多大的胜率。
最后,在这篇论文中,研究者考虑的角色平衡主要有以下几个属性,算法会对其中一个或多个卡牌的属性进行降低或减低。
一般而言,魔法消耗的降低或功击与生命值的增加是消弱,而魔法消耗的增加或功击与生命值的降低是提高。一张卡牌有这种及其它一些属性定义,它们总体上遵守角色平衡的策略。如果算法能手动建立角色平衡的各类属性组合,那不能够帮助设计游戏了吗?
实验结果
虽然之前的一些技巧探求了可能出现的牌组空间,并创建了有竞争力的牌组,本文研究了卡牌属性的微小变化对牌组元性能的影响,其中元性能是通过相对于其他进化牌组的平均胜率来评判。
此前,Fontaine 等人总结出了猎人、圣骑士、术士等职业的 12 个牌组,并在两个不同牌组的较量进化中运用到了功击和控制策略。进化后的牌组可以使用基本级和精典卡牌。
然后,研究者决定评估 12 个牌组彼此之间的性能,以两两交锋的方式评判。如下表 1 所示,每组交锋进行了 10000 次。有意思的是,启发式的游戏玩法对牌组性能具有重大影响:当借助了控制启发式(control heuristic)时,所有牌组表现更好。
12 个牌组在一万场交锋中的赛事结果。
上表展示了仅考虑彼此较量时三个卡组的胜率。研究人员将这些由三个套牌或在此后实验中演化出的套牌进行赛事的形式称为「小自下棋」。原始的 12 个牌组被称为「原始元」。
表 2:在小自下棋中每位牌组的胜率。
进化算法对于炉石传说的理解也许和目前你们理解的水平十分接近。这一研究的论文《Evolving the Hearthstone Meta》前一阵也在IEEE游戏大会(CoG 2019)上进行了宣讲。
不知未来的炉石传说中,术士能够甩掉垫底的命运?
本届 NeurIPS,机器之心为读者们悉心企划了NeurIPS 2019 专题,包括线上分享、论文剖析、现场报导等内容。这是机器之心 NeurIPS 2019 线上分享的第一期,我们约请到了北大博士后黄文炳为我们介绍她们被会议接收的一篇 Spotlight 论文。