这是一篇2021年的旧文,讨论的是棋类游戏的规则设计相关问题,最新版本见关于「现实复杂度」

以下所有讨论实际上都是为游戏设计服务的。我尝试说明,在棋类游戏的范围内,什么样的游戏是好游戏。由于棋类游戏这个限定词,我可以更多地关注玩法,尤其对于桌面棋类,我可以只关注「离散」的玩法⸺在空间上表现为由一个个格点组成的棋盘,在时间上表现为由一个个回合组成的游戏进程。为了客观评判玩法的优劣,我尝试在主观的判断中找到一些客观的依据,以此指引我的设计,这个依据就是「现实复杂度」。

在引入「现实复杂度」的概念之前,请先思考一个问题:围棋棋盘为何从十七道扩展为十九道,而象棋棋盘仅仅是从8×8发展为9×10,却没有变得更大呢?

我们自然地想到,人们是觉得原来的游戏不够难、不够复杂,才会扩大棋盘、增加棋子⸺这是提高复杂度最简单的两种方式。

然而,围棋的难度远远没有被穷尽,即使是目前最先进的围棋ai,也未能穷尽围棋的变化。那么当初棋士扩大围棋棋盘的理由就耐人寻味了:也许,即使是17×17的巨大棋盘,即使是「千古无同局」的高度复杂性,仍不能满足棋士们。或者说,我们所感受到的复杂度,要远远低于其复杂度的上限。

再看看象棋,中国象棋从宝应象棋发展而来,棋盘扩大到9×9,又增加了楚河汉界,变成9×10;棋子改动也不小,最大的变化是加入了「炮」。但宋代以后,象棋基本定型,大家认为它已经足够复杂了。

同样是「足够复杂」,十九道围棋与中国象棋的复杂度难道是差不多的吗?这似乎有悖于我们的常识。在相关研究中,围棋的「状态空间复杂度」与「策略树复杂度」是远远大于象棋的,其差距有几十个数量级。然而,围棋的棋手与象棋的棋手同样是人类,脑力并没有如此显著的差异,虽然围棋爱好者们在大众印象中更加硬核,但这难以解释巨大的复杂度差距。在长久的历史发展中,人们修改围棋与象棋的规则,使其复杂度处在大家能够广泛接受的范围中,由于历史足够长,我认为实际上两者的复杂度已经到了相当接近的水平,至少没有数量级上的巨大差别。

显然,原来使用的几个复杂度指标(状态空间复杂度、策略树复杂度)并不能很好地描述我们实际感受到的游戏复杂度,我们需要一个新的复杂度指标。

在与室友讨论后,我认为,对一种棋类游戏,可以简单地用算路的深度表示玩家水平。算一步棋需要理解规则,然后经过剪枝,考察可能的变化。那么规则越复杂,算一步需要消耗的脑力越多。对于一个水平固定的玩家,当他轻松算清获胜途径,他觉得游戏「简单」;当他感到自己脑子不够用,他认为游戏「难」或「复杂」。因此,姑且定义「现实复杂度」为行棋时实际需要的脑力。人们通常认为玩更复杂游戏的人会对同类的简单游戏形成降维打击,此观点在dota、lol、王者荣耀玩家的辩论中与柯洁赢得斗地主冠军的评论区里都有体现。这个观点可以用上述模型解释。当然,「现实复杂度」目前还没有一个很严密的定义,我希望未来通用型人工智能的出现能解决我的难题。

那么为何「现实复杂度」与另外两种复杂度差距如此之大呢?应该注意到,对游戏复杂度的描述,基本都是基于计算机科学的。人脑相比电脑,有一个显著的特点是内存极小,因此对任何复杂的规则都难以记忆,尤其是那种充满特例,难以抽象为和谐统一有机体的规则。计算机则不然,加几个限定条件并不拖慢运行速度,重要的是储存容量远大于人脑,耗时间的不是记忆,而是运算。因此,计算机看来难度相差极大的两种游戏,对人类来说可能差距很小。那么基本可以认定,象棋在9×10棋盘上达到了围棋19×19同数量级的「现实复杂度」,是由于象棋的规则更复杂,也就是说,「现实复杂度」与「规则复杂度」正相关。

「现实复杂度」还与什么因素相关呢?首先,既然这是人类感受到的实际的复杂度,自然与人类的大脑有关。越高水平的棋士能够动用更多的脑力来行棋,能够算到更多步数之后的变化。对同一种棋,不同人体会到的「现实复杂度」显然是不同的。显然,「现实复杂度」还与棋的种类有关,但我认为不同棋种,尤其是经过时间考验的流行棋种之间,其复杂度差距并不大,都受限于人脑的极限运算能力。毕竟,无论是围棋还是象棋,人类棋手的水平都远远没有到达穷尽所有变化的地步。

第三个因素,也是最重要的因素,我认为是「策略复杂度」。为什么不用传统的两种复杂度指标,而要新造一个概念呢?因为游戏是给人玩的,而「策略树复杂度」或「状态空间复杂度」都不能正确表示现实中的游戏深度。下面给出解释:

「状态空间复杂度」表示所有可能性,显示的是现实复杂度的上限,棋盘大小是它的一个小小侧面。状态空间复杂度不能正确拟合实际复杂度,它往往过分夸大游戏复杂性。想象一个100×100的棋盘,着一子于左上角,每步走一格,到达右下角胜利。100×100的巨大棋盘,无疑有很大的状态空间复杂度,但它难吗?傻子都知道走对角线最快。

「策略树复杂度」表示所有可能的走法,以上文游戏为例,它去除了许多不可能发生的走法,比如第一步走一格,第二部突然走五十格,等等。但还是那句话,傻子都知道走对角线,你却统计了所有绕弯路的走法,这显然也不能正确表示实际复杂度。

那么出了什么问题呢?我认为是游戏设计的「不均衡」导致的。这里的不均衡,指游戏的所有策略有明显的优劣之分,导致剪枝非常容易,「浪费」了设计者预想的复杂度。比如上文那种棋,走对角线显然是最优走法,玩家在得出最优策略后就无需理会其他任何策略了。由于玩家实际上非常容易得出最佳策略,那么这个游戏实际上是「简单」的,无论棋盘扩得多大,都无法使其拥有足够的现实复杂度。我认为,玩家实际得出最优策略的难度,即「策略复杂度」,就是我们实际体验到的游戏深度,也是游戏设计应当关注的因素。

这里举例说明「不均衡」是如何破坏游戏策略深度的:

首先,对于绝大多数回合制棋类,先后手不平衡都是现实存在的现象。比如五子棋,在没有其他规则的情况下先手是必胜的。必胜策略面世后,严重的「不均衡」出现了:五子棋就变成了一个背谱游戏,即使不断加禁手也只是背新谱而已。本来五子棋发展势头正盛,必胜策略给了它沉重一击。
我们可以看到,先后手的不平衡会影响游戏的均衡性。有一个经典的误区是:虽然先后手不平衡,但玩家分配到先后手的概率是一样的,因此仍然不失公平,并且让游戏更刺激了。我们知道这个观点是不对的,但往往找不到好的理由去反驳。但现在我们可以说:严重的先后手不平衡会容易得出最佳策略,进而破坏游戏的「策略复杂度」,伤害游戏深度,因此尽管并不影响公平性,仍然应该尽量避免。

对此,不同的棋类游戏有不同的办法,常用的解决方案有贴目、交换、二打等。五子棋在引入一手交换后,比赛的情形有明显的好转。另一个有趣的解决方式是六子棋贡献的:每手交换,即ABBAABBA……如此轮换。可以看到,它在形式上表现为除第一手外,每人连下两手棋。

其次,对于多兵种棋类游戏,比如各种杀王棋,棋子间的不平衡是常见的。如果这种不平衡过了头,策略深度就完蛋了。比如,如果给中国象棋设计一种强大的新棋子,它不能被吃、能走任意格、不会被阻挡,那么走其他棋子就毫无意义,象棋就变成一个棋子的游戏了。你看,一个不平衡的棋子使象棋变得多么「简单」。事实上一般热衷于设计新棋子的爱好者一般也不会设计出这么强的棋子,但只要新棋子离开了一个合理区间,游戏的策略深度都会受到不利的影响。考虑到棋子间的相互影响,以及棋盘对棋子的影响,这个问题会变得十分复杂。但一般而言,在一个比较长的演变历程中,人们会通过打补丁的方式解决这个问题。

现在我们知道,「现实复杂度」与「策略复杂度」正相关,而「策略复杂度」与游戏深度与游戏乐趣高度相关,在情况允许时,应尽量提高游戏的「策略复杂度」。

对于一种棋类游戏而言,规则是复杂好还是简单好呢?如上文所说,一种优秀的棋类应当有合适的「现实复杂度」,与围棋、象棋等流行棋类处于同一个区间。我们可以近似认为它的「现实复杂度」是一个常数。那么,在其他条件不变的情况下,规则越简单,策略深度越高。

从另一个角度看,规则复杂度会压缩算路深度,也就是说规则太复杂的游戏,人类很难算清好几步之后的变化。那么,这首先不利于高水平对抗,极端情况下,职业选手和普通人下棋都是丢石头,对胜负没有半点影响。这时,棋士就失去了提高的途径,失去了钻研的动力。其次,低水平棋手进步会很困难,感受不到自己的成长。举个例子,围棋爱好者通过钻研与对战,实力上涨,能多算一步,能压着之前的对手打,能直接感受到自己的进步。而镰仓大将棋的棋手呢?要多算一步何其困难,你的小小提升并不能带来实际的收益。成长带来成就感,胜利带来快乐,在游戏之外,规则简单的棋种为棋士创造更多的价值。

还有一点,规则更复杂的游戏每多算一步要消耗更多的脑力,那么,算零步的门外汉与算一步的入门者之间的差距也更大,俗称门槛高。任何游戏都要在知道规则的前提下才能玩,门槛高意味着想玩这个游戏都很困难,这显然不利于推广,也难以扩大影响力。你看,镰仓大将棋有普通的将棋受欢迎吗,如果不是出于猎奇,恐怕这种棋早就消失在历史的尘埃中了。

我们说,「易学难精」是好游戏的一个特点,从前文可以看出,这实际上就是「规则简单、充分复杂」。因此,大道至简,棋类游戏的规则越简单越好。

讨论到这里就够了吗?恐怕不是的。我之前一直在讨论的,仅仅是静态的「现实策略复杂度」,而棋局是动态的过程,复杂度的变化同样存在于棋局的各个阶段之间。下面是一个例子:

围棋是设计得很优秀的一种棋类,虽然难以得出最佳策略,但在序盘和官子阶段,又相对容易得出较优策略。序盘时情况简单,大可不必考虑具体的攻杀,只需注意大势。收官时棋盘上可落子的点越来越少,计算也越来越容易。我们注意到,对计算机来说,最开始的时候棋盘上每个点都能落子,情形是最复杂的,对人类而言则不然,这是因为人类有模糊计算的本领,现在深度学习也在利用算法模拟这种能力。我们看到,这种优秀棋类的复杂度曲线对人类来说是纺锤形的:序盘情形简单容易入门,中盘导向复杂引人入胜,终盘回归简单柳暗花明。

我认为只要游戏规则是简明的,人类通过模糊计算,体会大势,很快就能总结出游戏的较优策略,俗称「大势」,又叫指导思想。那么问题就在于游戏会不会走向复杂,会以什么样的速度滑向复杂。显然,所有优秀的棋类都应该有充分的中盘深度。而另一方面,如果序盘到中盘的局面展开太快,很可能大多数人玩得一头雾水,体验不到乐趣。如果太慢,极端情况下就是一本道的计算,同样体验不到乐趣。是以对理想的复杂度曲线,其斜率大于零,且大小适中。

现在讨论终盘,世界四大棋类的难度都是收敛的,这仅仅是个巧合吗?终盘难度降低有几个优点。第一个好处,就是能使对局平均步数方差比较小,而减少太过迅速或冗长的对局。另一个好处是,经过中盘的高强度思考后,终盘能够让棋手重新聚焦于胜利,意识到自己离终局越来越近,这会给棋手紧张刺激的感觉;而终局更多是直线计算,有利于棋手算得更远。那么胜利了,就是「我精心计算赢得了胜利」,失败了,就是「可惜,要是算到了就不会输」,赢了成就感很高,输了挫败感不强。而且,无论输赢都明明白白,赢得明白,输得也明白。这同样是一种正面的反馈,吸引着棋手再来一局。因此,形状比较类似正态分布的难度曲线,对于游戏的吸引力是有很大帮助的,这是围棋、国象、中象、跳棋经久不衰的一大原因。

那么,是不是难度不收敛的游戏就不是好游戏呢?恐怕也不尽然。观察之前我们对终盘的叙述,可以发现收敛的好处并不在于游戏性的优越,而更多体现在对玩家心理的迎合与游戏时间的控制,这些都是棋盘之外的优点。不收敛的游戏当然也有好游戏,比如黑白棋,后期局面并不会变简单;比如魔方,后期每一步都要拆解为更多的步骤。

总之,平衡是棋类游戏的设计中一定要注意的事情,这没什么捷径可走,只有多思考,多测试,多调整。那么,在保持合理的「现实复杂度」的同时,拥有充分的「策略复杂度」与较低的「规则复杂度」,这款棋类游戏的玩法设计就比较成功;设计风味等因素以后再谈。