« July 2020 | Main | September 2020 »

August 19, 2020

银河竞逐的设计

银河竞逐 RFTG 是我最喜欢的桌游之一。我认为直到今天,它仍旧是最棒的引擎建造类卡牌游戏。最近,我看了银河竞逐的作者 Tom Lehmann 在 GDC2018 上的演讲 非常有收获,所以写这篇 Blog 分享一下。

策略竞争类的游戏一定要设计多种结束条件。RFTG 的基础版设计了建造出 12+ 张卡结束和分完 12n 个 VP 结束。基础策略就可区分为快速打出一堆小分卡,还是构造一个 VP 引擎。我最近玩得比较多的五扩(Xeno Invasion)还增加了击败(或被击溃)Xeno 结束。

这样可以使得创造出 strategic tension 。

Tom 谈了一个想法:

在炉石传说中,一般的胜利条件就是把对手的 HP 减到零。或许可以加一个胜利条件,在攻击对手的同时还可以去盖塔,当塔盖到 10 层也能结束游戏。这样,策略就能更多样化一些。

另一个重点是要体现机会成本(opportunity cost)。

在 RFTG 中,支付建造费用的是手牌,而不是货币/Mana 之类的额外 Token 。这样,在打出哪张牌时,即使是同费的牌,玩家不光是要考虑打 A 还是打 B 的问题,还要考虑弃掉哪些手牌的问题。如果只是消耗 Mana ,那么就仅仅是花多花少的问题了。而用手牌支付,玩家需要考虑机会成本问题(保留哪些卡后面使用),如果只是花掉 Mana ,机会成本的损失就小的多。

事实上,RFTG 最初的想法就是来源于对波多黎各的建造费用支付的改进。

一开始,波多黎各希望出一个卡牌版。(有偿)让 Tom 做了一个备用方案。Tom 大概做了三个月,经过了三次大的迭代工作。在试玩了一周后,觉得玩法大体都成立,但是最终还是坚持使用了原来的方案。就是后来发行的圣胡安。

但 Tom 拿到了授权,可以用这个没有使用的备用方案做一款新游戏。他结合自己没有发行的游戏 Dual for the stars ,以及后来加入的同步行动选择机制,就成了银河竞逐。

这里的同步动作选择机制也是一个重大改进。在此之前,大多数欧式桌游都采用的是轮流行动制。玩游戏时的感觉就是总要等上家完成行动,然后才轮到下一个人。游戏节奏很慢。

而 RFTG 允许所有玩家一起行动,大大的减少了玩家空等的时间。同时,为了让玩家行为能够并行。规则上也尽量隐藏了不必要的信息。玩家行动很多都是在隐蔽状态下做的:选择行动、选择要 Build 的卡片等等。既然规则上不允许你了解对手在干什么,你不知道,自然也不需要根据这些对手信息来做决策。这同时也加快了自身行动的节奏。

但更为重要的是,轮转制很容易造成 left-right binding 问题。因为每个玩家做所作的事情就是尽量约束下个人的行动(RFTG 里行动选择则是自己获得加成)。

Tom 谈了自己玩 5 人版波多黎各的感受,他老是被上家压制。如果上家最后赢了倒也无所谓,可是上家也没能赢得游戏,自己也赢不了。这种感受不太好。在五人游戏中,如果四个人都很会玩,另一个人是一个新手,那么赢得总是那个新手的下家。


其实不光是结束条件的多重选择,在游戏设计的各个角度,都应该设计出两种以上不同的选择。

例如:RFTG 里,每轮最多可以 Build 出来的卡,不是一个,而是两个(开发和扩张)。这样,当一轮出现两次 Build 机会时,如果资源有限,玩家就要选择,是打出两张较弱(费用低)的卡,还是打出一张强卡(费用高),还是打出一张弱卡,而保留更多的卡在手上。

RFTG 打出星球卡相对除了传统的,支付费用打出手牌的模式,增加了军事征服。这丰富了每类行动的作用。让每种行动在游戏的不同时期(早期、中期、晚期)都能发挥出作用来。

VP Engine 流需要生产消费循环去拿分,为了提高效率,必须借助其他玩家的开发扩张行动。而军事征服流后期军事点起来了之后,不需要消耗手牌就能放下那些高分的星球。他就可以选择在后期打扩张,一口气扩张出高分星球,而不用担心扩张行动被 VP Engine 流的玩家借用。

即使是积攒军事点,也给出了两种主要的军事点能力:永久增加军事点,和消耗型临时军事点。比如说,当你有两点军事点,却想在本轮打出一个 4 费军事星球时,你就可以在开发轮选择一张 1 费的临时 +3 的设施卡,也可以选择一个 4 费的永久 +3 ,或是一个 2 费的 +2 。

过去的传统欧式桌游中,通常都会额外设计特殊计分目标。在游戏结束时根据你的桌面额外加分。RFTG 中做了改进,6 费设施除了终局计分外,还设计了自身的能力。这样玩家就可以选择是在游戏晚期打出,还是在中期就打出享受额外能力。玩家在游戏过程中,不仅会对 6 费设施卡座 VP 价值的评估,还需要同时考虑卡片上带的能力的价值。

游戏中的 5 费设施非常的少(远少于 6 费设施卡),也是故意制造出的费用间隙。让卡片体现出高费和低费的区别,而不是线性的频谱。玩家玩的时候就要选择是积攒力量打高费卡,还是快速出多张低费卡。

当设计规则的时候,在不同方面都涉及不同的选择。组合的威力就可以极大的丰富游戏的策略深度。


关于卡牌构筑类游戏有很多方式:

第一,万智牌 (TCG)那样的提前组好卡组。策略性很强,但是对游戏前的准备工作要求很大。玩游戏的成本很高。

第二,Drafting 类,比如七大奇迹、璀璨宝石等。玩家之间从公共牌堆里面竞争获取手牌组成卡套。

第三,游戏过程中构筑卡组。典型就是领土。用一大堆卡牌的一个子集,然后玩家在游戏过程中去构筑自己的牌组。

最后就是 RFTG 这种卡组轮换的机制了。整体卡组非常丰富,用来构建卡组的牌轮番进入玩家手中,再由玩家挑选出来组成需要的 Engine 。

RFTG 选择的这种构筑方式,可以让游戏玩法更多样化。让手牌管理变成一个重要策略。RFTG 的基础版一共有 91 种卡牌,一个玩家一局游戏大约会抽到其中的 30-50 张卡,然后从中选出 8-12 张打出来构成自己的桌面。这样就可以组合出非常多的策略。

但这种机制也引起过一些批评:比如让玩家过于焦虑,该打那张牌,该留那张牌,犹豫不决;另外,对熟悉所有牌的玩家来说,相对新手优势过于明显。RFTG 在这条路上发展了三个扩展,整个牌库扩大到了 180+ ,实在是太多了。后期加入的一些特殊卡过于特别,破坏了原始设计。所以后来就改出 Arc ,又重新回到较小的集合。


谁去给猫挂上铃铛的问题

在波多黎各中,生产是会给所有人带来巨大好处的。但一个行动太重要了,就容易引起焦虑:既然大家都有好处,如果别人也能获得好处,而我选择这个行动却未必是获利最多的那个人。这样就导致没人愿意去做这件事(不愿意去给猫脖子上挂铃铛)。

RFTG 为了解决这个问题,把生产环节强制放在最后。这样生产出来的商品本轮无人可以从中获得额外收益。等下一轮开始,大家又重新回到同一个起跑线了,每个人都可以去想怎样利用这些新生产出来的商品。同时还增加了(光环)意外收获星球,不需要经历生产就能有商品,即使所有人都不愿意选择生产,游戏也可以玩得下去。

到 Xeno Invasion 中,更是在生产环节增加了修复和战争贡献操作,让玩家更有动力主动选择生产了。


在设计卡片方面,Tom 谈了他的设计思路。

有一种卡牌游戏,喜欢设计大的 Combo 。鼓励玩家玩的过程去积累 Combo ,保证自己在凑出 Combo 前不要死掉。一旦凑出 Combo ,就能攒出巨大的效果。放出大招的那一刻,玩家是很爽快的。

但这种设计的问题是:不太容易调整平衡。效果过于复杂的时候,需要大量文字描述。需要玩家学习过多的规则,认知负荷很大。玩家在积攒套路的过程中,切换成本过大。

而 RFTG 的设计则是让每个卡片效果都足够小,非常简单。玩家的认知负荷要小的多。而且也适合用图标去指代所有的能力。一旦每种能力效果都很小,平衡问题就很容易调整。玩家也不至于一旦开始积攒 Combo ,就承担过大的沉没成本。

设计卡牌构筑游戏,尤其忌讳让玩家初始手牌对整局的策略路线决策影响过大。不要让玩家被一开始的想法困住,要鼓励他们更换路线。当玩家试图更换路线时,要在规则上给予补偿。

RFTG 在卡片牌面的设计上,充分考虑了新手和老手。原本描述卡牌能力用图标就足够,可以把图标的解释放在说明书上。但设计者还是把一些说明用文字的形式追加在图标之后。这样新手理解卡片时就不必翻说明书求证;而玩过很多盘之后,则可以跳过文字直接理解图标的含义。

最后,卡片中应该加入一些新奇卡片。其功能明显异于别的卡片。这样,当玩家第一次抽到这样的卡片时,就会自觉联想到这张卡的背后可能代表着一种有趣的发展路线。这样就启发了他们去构建符合要求的牌组。

August 04, 2020

Evidence-based software engineering

《The New C Standard》 是我很喜欢的一本书。因为这本书,我有幸结识了作者 Derek M Jones 。

在 2018 年的时候,他就写 email 给我介绍了他正在写的一本关于软件工程的书。

这是一本非常特别的书。里面有大量的、从公开渠道获得的关于软件工程方面的数据。作者对这些数据做了统计和分析。我之前从未看过如此全篇基于数据去讨论软件工程领域问题的著作(通常在社会学领域更多一些)。

数据摆在那里,或许不同的人,不同的方法会得到不同的解读。这本书不在于给出结论,而是展示了分析过程。让你来从中发现数据透露出的信息。

当时我就很喜欢这本书,陆陆续续读了一些。

最近,这本书《Evidence-based software engineering —— based on the publicly available data》终于快完成了。我很高兴能分享给大家,有兴趣的同学可以在这里下载电子版

如果有同学有兴趣公开自己的一些有关软件工程方面的数据,还可以看看这里