欢迎光临散文网 会员登陆 & 注册

【哪门的作业?额,我在玩杀戮尖塔】(1?)

2020-10-27 12:26 作者:吟游机_official  | 我要投稿

本文并不复杂……没有用到较深的概率学知识和进行彻底拆解,稍微比对一下变量意义可以理解大部分的公式的实际含义,了解了大概怎么算的后就很直观了,除了最后的抽牌加费循环分析,但看上去……


卜专业代数写法+无定义名词+逐渐随便的起名警告。



这次是要对杀戮尖塔,超时空方舟,欺诈之地,月圆之夜这样的动作循环牌库卡牌机制的数学模型“简单”建立。尽管游戏中的很多牌让玩家可能有非常大的战术差异,但不同于炉石传说这种资源型的卡牌游戏,前期的小随机性和决策难以滚起大雪球,一部分的卡组是完全可以依赖
“简单”计算就求出其能力,并且也可以草拟出大部分卡的模型。

但建议如果你想做杀戮尖塔2.0,除非有全职的数值策划,不然等测试是一个好选择。因为大部分的公式复杂度基本都体现在项数和设定的已知量数量。

那么我们先看到最基础的这样一个机制:一张攻击卡,可以造成伤害,一张防御卡,可以抵挡对面所造成的伤害。玩家有一个周期性刷新的资源,我们先设定其中较小的一项——手牌资源或者费用,费用几乎永远是较小的一项,因为会需要玩家有一个战术抉择的空间。

 

所以假设每回合的费用为Costturn (CT),抽卡数充足,进攻的伤害/费用比(DamagePerCost,Dc)为常数,防守的格挡/费用比(BlockPerCost ,BC)为常数,格挡回合结束时不会消失,敌人的每回合伤害固定为DE  , (各个数字都拥有非整数时的意义,所以并不限制于整数)

选项充足的情况下,易得每回合在完全格挡掉敌人伤害后,可以打出的理想回合伤害为

且如果敌人的血量为HPE,消灭掉其需要花

我们先看到几个基本扩展:

1, 每回合抽上来的卡牌是随机的攻防比例,且格挡不跨回合:

假设牌库的总卡数为Num@Deck(Nd),攻击费用总费用比为Rate@Attack (RAt),防御费用总费用比为Rate@Defense (RDe),每回合抽取的卡牌费用数CostDrawedPerTurn (Cpt)

假设防御用费用和攻击用费用完全分开,且匀为1费,玩家每回合可能因为手中并没有防御卡牌而不能防御的伤害:

抽到防御用费用的分布:

为超几何分布,期望值即为从牌库均匀抽取,当超几何分布中的N趋向正无穷时(牌库无限大),超几何分布近似为二项分布。计算具体值直接累加,没有化简空间。另外值得一提的是,超几何分布还会在这个游戏模型的很多部分里出现,之后会深入探讨


当有的卡混合了防御费用和攻击费用或者费用不均匀时,该公式不再准确,但依旧可以作为近似公式使用,先做简单的定性分析:

1.1防御费用卡牌费用比分布方差越大,抽到防御用费用的期望不变,方差变大

而方差和不能抵挡的伤害关系为,方差越大,不能抵挡的伤害越多。


2, 玩家不选择完全抵挡掉伤害时,而是想更多进攻时:

设定玩家每回合想用于防御的费用为Cdt,卡牌选项充足。

玩家总共会受到的伤害为

是一个关于Cdt的分式函数,0到Cpt/Bc单调递减,和敌人血量成正比例,和原理想消灭回合相关。


遇到以下几种情况:

2.1敌人会进行几个回合的准备来进行攻击

认为这几个回合的费用会全部用于进攻,敌人的HPE减去回合数与回合费用与进攻能力的乘积即可,但之后算能力牌的时候会有所区别……


2.2敌人间隔进行攻击和防御

即敌人进攻的回合伤害DE*2,并且防御的回合有一个回合防御BE*2,假设是偶数回合结束战斗……


“当一个公式需要的量过于多的时候,它就没有意义了”

如果敌人的防御能力所需要玩家付出的额外费用超过玩家用于针对敌人原来攻击的防御费用,那敌人的输出可以在玩家有同样的防御费用比且均匀攻击时更高,也可以在玩家完全防御时相比均匀攻击支撑更久回合。

*但防御回合是玩家使用能力牌等长期效果牌的好时机

2.3敌人的攻击会逐渐随着时间增强

假设敌人的攻击并非是一直一个强度,而是每隔一个回合增加DEn点(杀戮尖塔一开始的信徒)

那假设玩家一开始的防御能力就低于等于敌人的进攻能力,玩家会受到的伤害为

是一个分式方程,有最大值和最小值,最大值定为Cpt取0或者DE­时的其中一点,但最小值不确定,具体在计算最佳回合的时候可以换一种差值思路,即当玩家因为前面的防御需要多一回合来进攻时,多出的一回合受到的伤害是否大于前面所少受到的伤害。

3, 牌库里的卡能力不均匀

设卡牌有R2的比例的伤害能力为Dc2

由于玩家会优先使用伤害较高的卡,所以抽上来的高伤害费用Cpt*R­2/CT*(Dc2-DE)才是会增加的伤害费用比例。按照这个计算即可。

在有新卡加入卡组的时候需要计算该项。

接下来是几种常见效果的价值,牌库循环式的卡牌,卡牌的质量分布而并非数量更为重要,一次牌库循环便是从其中打出最高质量的一些牌,同时从这个角度触发牌库的紧凑也就很重要,但由于状态牌和对手牌和牌库限制条件的出现,牌库也并非越紧凑越好。

1, 费用相关万物核心

1.1加费牌

相比起过牌,加费牌卡组中优先度更高的要素。

加费牌是一类特殊的牌,其有着拿到就会用的特性,而加费牌的最佳比例是需要考虑到玩家每回合的抽牌能力,在过牌比较稀疏的情况下,可以近似认为角色每回合的过牌能力是固定的。社加费牌的回费能力为Cpc,设套牌中有回费牌的费用比例Rc

易得:

(最佳回费能力为每回合抽上的费用减去每回合能用的费用除以回费牌比例+1)
(最佳回费比例为其他牌的费用数除以牌的回费能力)

而当角色的抽牌能力比较强大时,每回合的多余回费的概率会愈发近似于泊松分布……我们放到讨论抽牌时来考虑。

1.2 0费卡

0费卡是一个需要独立计算于伤害的卡,因为其基本被抽到也就会被使用,是一个算是之前论外的输出项目,同时影响过牌率。

0费卡的最佳分布比例:假设卡组全是攻击卡,0费卡的进攻能力为D0,其他卡的平均费用为Cd10费卡的牌库比例为R0,每回合抽的卡牌数量为Npt

易得,最佳0费比例为

即牌库里剩下的牌刚好能用完费用


补充的额外输出为R0*Npt*D0.也可以很明显看到过牌对于0费卡收益的正比加成。

1.3减费

减费是一类较为特殊的牌,和加费有着近似的关系,但是有两种溢出方式,包括不低于0费的溢出和被减费牌数量不够的问题,这两种问题都并非典型,但是依旧有讨论的空间。只需要知道减费的期望能力也受到过牌能力的加成(减费依赖于平均抽牌数),但大部分减费牌都依赖于一定条件。

 

2.万物核心过牌

2.1综合过牌

过牌是提供玩家以更多选项,和尽快的拿到一些关键牌,

2.1.1 无加费,有层次,过牌战术效益

设过牌费用牌库费用比为Rr,平均每费用过牌的张数Nrc,0费卡比例R0,有R2比例费用的费均输出为Dc2,R1比例的费用费均输出为Dc1,Dc2大于Dc1,玩家优先使用攻击为Dc2的攻击牌,两种牌费用均为1费。

Rr+R1+R2<1,无重合,不会出现被迫使用过牌:

不过牌的情况的情况下,易得平均输出是

其中需要

如果使用Cr费用来过牌,Dc2的牌较少且费用较多的情况下:

作差得

时过牌收益为正,公式看着有点头疼,实际意义只是抽牌所用费用需要去大于抽牌所花掉的费用原本能打出的伤害除以抽牌数和额外输出的积。

如果输出为Dc2的牌较多,会遇见实际减少的费用也是从输出为Dc2的牌里出现的概率,此时是需要对0费输出效益和Dc2输出效益进行权衡,同时也要注意到当输出比较平均且加费较少时过牌效益是偏小的,同时也提醒我们,如果卡牌输出分为多个档次,那么关键就是输出最高的一匹卡的输出。

2.1.2 有加费,过牌效益

理论上:当有更好输出牌的时候,过过来的加费牌能弥补掉更多的缺失的伤害,就有过牌效益,当无更好输出牌的时候,过过来的加费牌能弥补掉过牌用的费用即有过牌效益。

       即Nrc*Rc*Cc>1

过牌加费循环:虽然说只要过牌能期望过到1+张过牌和补充费用就有希望永动机,但是更关键的是断过牌和回费的概率分布,首先是不用其他牌并且手牌数量无限大,设定所有的过牌用牌都是纯过牌用,回费用牌都是纯回费用,并且均为1费。从此开始逐渐超出了用代数计算的意义,抽不动的两种情况,无抽牌的牌和无加费的牌并非是独立事件,要区分的地方过多了的同时质变又相当厉害,于是尝试使用程序模拟计算近似值来得到经验计算方式。这次先进行这一块的分析。

当不放回其他牌,牌库越过质量越高,(第一回合开始)最多过牌的概率分布:

案例1:


上图的牌库分配是6回6抽8其他,从左到右的1~4,4栏分别代表卡牌的能力分别是抽2回2,抽2回3,抽3回2,抽3回3时的抽多少会断牌,抽多少最高的柱子代表已经使用超过了30张抽牌用牌

可以告诉结论:决定是否能抽穿牌库的决定因素有2,

第一是抽牌用牌是否够近乎覆盖整个牌库(抽牌用牌*抽牌数),

第二是抽牌的回费平均效益是否超过1

牌库容量小的情况下几乎会产生质变,当然,设计师在设计过程中应极力避免这样的情况的出现,杀戮尖塔已经在极力避免了,但是很巧的是仍然留下了空间——你甚至能看到几乎无条件1tk的的亮剑战(时光警告)高效益,非捆绑的回费应该被限制。

从x=1~8的8栏分别是在6抽8其他时,加入了4到11张抽牌用牌。可以看到主要的断牌概率还是会在前四五手,并且在发生质变后会逐渐出现一个周期性断牌可能性(x=8时,4,7,10出现了隆起),但依旧偏小。

回费能力
过牌能力

从x=1~11的11栏分别为加入6抽6回,9到19张杂牌时,使用几张抽牌的回费数和抽牌数分布。

依旧可以,看到质变是非常明显的,能发生无限抽牌的情况下才有大幅度回费的机会

 

实际情况下,一来其实有手牌溢出的问题,实际无限连概率要普遍小一些,这种情况又要分一些策略情况,但我们模拟为牌库不会减少。

抽牌能力
回费能力



和上两张图同设置,回费能力的分布呈现两段,

同时断牌的时机上也可以看出有一个隆起的特殊点,可以看做一个分界线,已经做过基本实验,无论是无限与否还是这条分界线主要和过牌费用*能力有关,以下为其他两个实验:

抽牌能力

5~15张过牌,6回费……你看看这个抽牌分布,有什么好列公式的你说。

抽牌能力

6回6过,过牌能力2~12,回费能力依旧为3

在部分游戏里似乎还会有费用溢出的问题,二来在知晓目前抽牌堆和弃牌堆状态的情况下,角色可能会打出更合理的抉择。同时,0费卡也会影响……这种过于离散的就还是具体问题具体分析吧,之后会有具体的卡牌分析环节,大概吧。


【哪门的作业?额,我在玩杀戮尖塔】(1?)的评论 (共 条)

分享到微博请遵守国家法律