炉石的卡牌费用分析(下)

  • # 炉石传说

0.前言

关服的消息来得猝不及防。

作为九年老玩家的笔者,还是有很多不甘心的地方,比如竞技场还没打到过12胜,比如一直想玩的卡组还没来得及体验。最不甘心的,是国服关闭之前,笔者都不可能再构建出一套较为完整的理论体系了。从14年到现在和炉石一起成长,经历了一个个版本,看着主播人来人去,看着卡牌设计空间逐步打开。但就在笔者下定决心为这个老伙计做点什么后,没多久却要迎来离别了。树欲静而风不止,叹之奈何。

笔者还是会坚持把这个系列的文章写下去的,作为献给青春岁月的挽歌。

 

1.卡牌费用与打出卡牌的资源

笔者在上篇中推导出了卡牌累计伤害值的期望:一张卡的伤害期望,等于其在不同回合打出后的累计伤害之和。

这个公式中,核心概念是“在某个回合打出一张卡牌的概率。而打出一张卡牌,至少需要满足两个条件:

  • 有足够的费用(当前费用不低于卡牌所需费用)
  • 这张卡牌在手牌里

第一点是费用限制,第二点可以拆分为两个限制:

  • 抽到了这张牌
  • 这张牌没有被爆掉(进入手牌的卡牌总数-用出的卡牌总数≤手牌上限)

一般情况下,爆牌的限制可以考虑不计。故而打出卡牌主要消耗两种资源:费用和抽牌次数。是的,抽牌次数是一个极其重要,但是又经常被忽略的资源。炉石对战的机制就是每回合抽一张牌,换言之,每回合能够获取一个抽牌次数资源

这两种资源,费用每回合会增加一点(封顶为10),但是抽牌次数是开始是有免费的3/4次,固定每回合一个。这两种资源的获取累计速度是有明显差异的,这也就对战前期费用是紧缺资源,对战后期抽牌次数是紧缺资源

既然二者的获取速度有差距,那么其转换比也自然不是一成不变的。说句题外话,这也是为什么笔者一直认为传统的费用理论模型不客观的原因。抽一张牌值X费,以及3费过2、5费过3、7费过5的标准过牌模型在笔者看来是毫无道理的,这涉及到两种资源之间的转换,不可能是恒定的。举个例子,法师在3费打出奥术智慧和在10费打出奥术智慧的含义是完全不同的。

打出卡牌需要耗费费用和抽牌次数这两种资源,那么卡牌费用就天然的代表着两种资源的转换比。卡牌的费用各有不同,但是每张卡牌都需要耗费相同的一次抽牌机会。

再回到这个系列的核心观念——伤害曲线上,笔者之前提到过伤害曲线有两种基础逻辑:爆发型和持续型(随缘型的逻辑基础不是进攻而是防守,在这里暂不讨论)。爆发型逻辑中抽牌次数是更加珍贵的资源,需要大量过牌来拿到组件并完成爆发的前置条件。持续型逻辑中费用值更加珍贵的资源,需要尽可能的利用获取的每一颗法力水晶来组织攻势持续施压。

由上可以推出:爆发型卡组会注重过牌,不会太看重法力水晶的利用率,经常有所谓的“空过”,比较典型的有冰法、元气骑、机克术、手速德等。而持续型卡组会碰到一个致命的逻辑悖论:为了充分利用法力水晶,长期来看卡组中的高费卡应该越多越好(因为法力水晶在后期的获取效率要远超过抽牌次数),但是带了高费卡无法利用前期的法力水晶。一言以蔽之,高费卡无法利用前期的法力水晶,会空过,低费卡无法充分利用后期的法力水晶,会鬼抽

让我们先抛开爆发型逻辑,在接下来的部分聚焦于持续型逻辑面临的这个矛盾。由这个矛盾引出一件事情:持续型卡组的力竭期。

 

2.持续型卡组的力竭期

首先,需要明确的是全带高费卡对于持续型卡组而言是不可能的,如果无法从前期开始组织攻势,持续施压也无从说起。反之,如果全带低费卡或者卡组以低费卡为主逻辑是成立的。这样虽然后期有鬼抽的风险,但是只要持续施压争取尽早结束对局即可,毕竟前期更加稀缺的是费用而非抽牌次数(抽牌次数先手3后手4,不会导致前期无牌可用)。

法力水晶的获取效率越来越高,所以随着对局进行,持续型卡组对法力水晶的利用率总会在某个时间点后进入较低的水准并持续下降。笔者将这个时间点称之为“力竭期”。进入力竭期后,持续型卡组就越来越难以维持攻势,对局胜率也会一路走低。力竭期反映了一个卡组施压的持续性特征,也可以指导卡组构筑与对局思路。

 

2.1 理论推导

当无法维持攻势时,卡组会进入力竭期。从费用维度考虑,可以视作抽到的卡牌总费用小于能够获取的总费用。一般而言,获取到的总费用是固定的,故下面解析“通过抽到卡牌的总费用数”。

假设一个卡组前k回合共抽了Ck张卡,那么其总费用Sk为这Ck张卡之和,即

抽到的牌一般而言是随机的,所以这Ck张卡相当于是从整个卡组里面的一个采样,其期望等同于卡组的期望,即卡组的平均费用数。所以,可以得出抽到的总费用数和抽牌总期望值及卡组平均费用数挂钩。即

笔者在hsreplay上找了几个典型的节奏型卡组,来验证这个公式。分别是鱼人萨、小鬼术、40野兽猎和40龙火法

鱼人萨 小鬼术 40野兽猎 40龙火法
平均费用:2.67 平均费用:2.76 平均费用:4.125 平均费用:4.3
平均回合数:7.0 平均回合数:7.5 平均回合数:9.0 平均回合数:11.5

抽牌期望,笔者在这里近似为费用小于等于k的过牌,在k回合被抽到的概率,乘以这张牌的过牌量之和。

依据此计算这四个卡组抽到牌的总费用变化图(以先手为例),如下:

由图可以看出,四个卡组抽到牌的总费用数与获取费用数的交集分别出现在8,9,11,12回合。这个先后顺序与卡组的平均对局回合数是一致的。

小鬼术的卡组平均费用比鱼人萨只高了不过0.1费,但是力竭期却要晚一回合。这是因为小鬼术的平均抽牌期望要高于鱼人术,也印证了上面提到的过牌对于维持攻势的必要性。而攻势可以维持更久也是小鬼术可以携带一些高费的能****的卡(比如大帝)的原因之一。

 

2.2 仿真模拟

卡牌费用是离散而非连续的,故抽到卡牌的费用不一定能够完全填补获取的总费用数,因此通过期望值算出的力竭期是存在偏差的。笔者自己写了个仿真程序来统计卡组打牌的逻辑,希望获取更加近似于真实对局中的情况。

这个程序按照手牌费用从高到低的逻辑进行打牌,大致过程如下图:

 对四个卡组各跑了10W次,得到的结果如下:

 

模拟的结果和测算的结果得出的趋势图是十分贴近的,这证明了上面的理论推导是正确的,即抽到的总费用数和抽牌总期望值及卡组平均费用数挂钩。

从结果中不难发现,小鬼术的抽牌数量要比测算结果更多,相应的“力竭期”也晚了一个回合。这个是因为测算的时候没有考虑到抽牌卡也有可能会抽到其他的抽牌卡,从而在单回合内形成大量过牌的情况。实际上,这种情况在拥有大量过牌的卡组中经常会碰到,最经典的如元气骑的过牌链。

 有了模拟结果之后,可以从其他维度更加全面的看待节奏型卡组“力竭期”的问题,比如从打出牌的总费用以及浪费费用等指标上,如下

  前15回合 前10回合
打出费用
浪费费用

在7~8回合之前,鱼人萨和小鬼术的打出费用是要高于野兽猎和龙火法的,基本和获取到的总费用数持平,说明其充分的利用了费用。而在7~8回合之后,龙火法和野兽猎的打出费用才开始反超。从浪费费用上来看,鱼人萨和小鬼术的曲线在8回合开始飙升,野兽猎在10回合,龙火法在14回合,这与上面得到的卡组力竭期也能呼应得上。

 

3.由力竭期可以带来什么启发?

3.0 建模的近似与失真

笔者上述的推导测算和仿真模拟都存在一些问题。比如不是任何牌都会在费用满足的情况下打出,再比如忽略了英雄技能(尤其是术士的技能)这一点。此外,由于很多卡牌的效果是比较难评估的,所以笔者在建模的时候进行了近似。

 

笔者的建模算是一个相当粗糙的模型了,但依然可以由力竭期这个概念推出一些好玩的结论

3.1 力竭期是衡量卡组快慢的指标

给定一个卡组(此处限定节奏类卡组,即取胜逻辑依赖于持续造成伤害),其力竭期是比较好计算出来的(卡组获取总费用数与抽牌总费用数的交点)。同时力竭期又代表了卡组维持攻势的时间跨度。因此,力竭期可以作为一个客观指标,评价一个卡组的“快慢”。

这里的快慢是相对的概念,两个卡组中力竭期更早的是更快的。这里的“更快“,并不是指能更快的取得胜利,也不是指能更快的堆叠伤害,而是指其维持攻势的时间更短。这个和传统意义上的“快攻”并不是完全一直的概念。举个例子,这套任务骑中携带了大量的1费卡,平均费用还不到2,过牌数量也不多,因此其力竭期是要比小鬼术来得快的,是更快的卡组。但是这并不意味着任务骑在前期造成的伤害要比小鬼术更加多,这只意味着任务骑的攻势维持时间比小鬼术短。

力竭期作为衡量卡组快慢的指标,自然可以根据其来调整对战思路。假如自己卡组的力竭期是8回合,而对手卡组的力竭期是10回合开外,那么要做的是争取在8回合内堆叠攻势消灭对手。否则一旦进入8回合后,很容易陷入摸一打一的困境,而取胜的手段也会愈加渺茫。因此,面对力竭期高于自己的对手时,打法应当更加激进,以堆叠攻势造成伤害为主要目的。反之,如果对手的力竭期是6回合,那么自己能做的是尽量拖延对手的攻势到6回合后,在自己的强势期:7,8回合决胜。这种情况下打法应该更加保守一些,以消除对方攻势为主要目的

3.2 力竭期可以作为牌组构筑时的考量

明确了卡组的力竭期后,可以依据此来考虑要不要带某张高费卡。上面提到过一个例子,鱼人萨和小鬼术的力竭期相差1~2个回合,这就是为什么小鬼术可以带大帝而鱼人萨不能带大帝的原因之一(另一个原因自然是小鬼术和大帝更加契合)。类似的,上面提到的任务骑也不适合带大帝,因为其力竭期也要小于9~10回合。如果高费卡的打出回合要比卡组力竭期晚1回合以上,那么在这张高费卡打出之前对局很可能就已经结束了。换句话说,高费卡在这类卡组中起不到****扭转乾坤的作用,反而会成为前期卡手的阻碍。同理,在一个力竭期较短的卡组里面,越是高费的卡越应该有维持攻势或者****的功能。因为这类卡打出时一般都是卡组获胜最佳窗口期的末班车了。****的卡如鱼人萨中的嗜血、小鬼术中的小鬼大王拉法姆,而维持攻势的卡如鳄鱼人掠夺者恐惧巫妖塔姆辛

 此外,力竭期揭示了过牌的重要性。上面推导过,抽到的总费用数和抽牌总期望值及卡组平均费用数挂钩。

可以看出,过牌期望数直接影响了卡组的力竭期,因此节奏型卡组中的过牌手段也是相当重要的。但过牌卡一般身材(或者说对战局的立即影响)要低于同费用的卡,这就成了构筑卡组时的一个取舍点。是需要更久的攻势,还是需要更迅猛攻势?这并不是一个简单的抉择,毕竟一旦选择了更持久的攻势,就意味着战线拉长,此时就可以携带一些更加高费的强力卡。若选择了更迅猛的攻势,那么就带一些低费强力卡,争取尽快结束对局。这又导致了卡牌平均费用的变化,又引起了卡组力竭期的变化……总之,在笔者看来,卡组的调整不是小修小补看,而是牵一发动全身的。哪怕两个卡组有20张牌重复,其力竭期也可能有很大的差异,打法也因此完全不同。

 

3.3 避免力竭期的尝试

上面说了这么多力竭期的推论,现在让我们重新回到根本:为什么会出现力竭期?

笔者在第二部分中提到,力竭期是持续型卡组不得不面临的一个悖论持续型卡组不能携带太多高费卡,必然要携带大量低费卡来从低费开始组织攻势,而大量低费卡在后期会造成鬼抽,无法充分利用费用,从而进入力竭期。

可以看出,只要让持续型卡组在后期依然能充分利用费用,就可以尽量的延后力竭期这一痛点。

笔者总结了历来的尝试,大致可以分为两个思路:1.后期抽到高费卡。这个思路实现起来很简单,就是卡组中携带一定量的高费卡。这点可以追溯到从2014~2015年左右的变速猎,其构筑混合了T7猎和中速猎的特点,力图做到1费回合~8费回合的持续施压。但是这种思路的缺点也很明显,就是稳定性不够,即常说的吃牌序。变速猎如果前期来了中速猎组件,后期来了T7猎组件的话就很尴尬了。

后来出的一些卡或多或少的避免了这种尴尬。博学者普可尔特和法庭秩序的效果可以保证之后几个回合内抽到高费卡。感知宝珠和探底的效果避免了鬼抽,有助于做好费用规划。而可交易的效果可以将低费卡洗入牌库,获得再抽一次的机会。

相比于第一个思路,第二个思路的尝试更多:2.低费卡在高费打出更高的价值。笔者之前说过,卡牌造成伤害的能力大体上是相对恒定的。但是有一些卡牌,在高费能够打出的价值要高于低费。低费发现卡,可以根据剩余费用和当前对局形势选择更加合理的牌。还有回响和双生法术这样可以一牌多用的卡,在高费可以填补费用。而各式各样的升级卡,也可以在后期打出远超前期的效果。此外,新版本即将上线的法力渴求也是类似的效果。

4.小结

这个系列写到现在算是完成了一半了。

笔者从对战的目标:伤害出现,引申出了卡组伤害曲线这个概念。在这个概念下牵引,进一步探究了卡牌的类型、属性值等概念,以及卡牌费用、抽牌等设定。本文对持续型伤害卡组(也就是节奏类卡组)的特点和构筑在费用层面进行了分析。笔者之后会再尝试分析下爆发型伤害卡组的构筑,然后进入卡牌间组合/单卡层面。

可惜的是,这个系列看来在关服之前不能写完了。

我是真的,真的,真的很爱这个游戏啊……

希望各位看官能和我一样,在接下来的时间里尽情享受炉石带给我们的快乐吧。

2022年11月30日 发布于北京
全部评论 33条
按时间排序

还没有评论

262 33