用MATLAB计算黑白双翼中,高潮联动的斩杀概率
用MATLAB计算黑白双翼中,高潮联动的斩杀概率
在黑白双翼这一卡牌游戏中,一套高潮联动斩杀2.4血量对手的概率,是评价该高潮联动强度的重要指标之一。然而,在实战中,由于对局次数的限制,通过实战准确地得到这一概率是几乎不可能的。因此,开发一种计算斩杀概率的计算器,以更为科学的方法评估高潮联动的强度,显得尤为重要。
计算器简介
近日,一位用户开发了一个简单的WS斩杀概率计算器,该计算器使用R2023a版本的MATLAB程序编写。在该计算器对应的程序中,将各区域看作数组,数组大小代表对应区域的卡牌数量;数组中的数代表不同类型的卡片,0代表角色卡或事件卡,即俗称的“肉”;1代表高潮卡。
若需使用该计算器计算斩杀概率,可按以下步骤操作:
初始化斩杀相关的区域(卡组,控制室,费用区,时计区,等级区):
输入各区域的高潮卡数量和总卡片数量,通过自定义的form函数,生成计算斩杀概率的初始状态;编辑斩杀所用终端:
本计算器中,内置了洗牌,升级,卡组更新,伤害判定等功能,并编写了描述常见伤害类型与逆压缩手段的自定义函数,例如:
- 造成x点伤害y次;
- 将卡组底x张牌置入控制室,若有潮则烧y点伤害z次;
- 将卡组底x张牌置入控制室,每有1张潮烧y点伤害1次;
- 展示卡组顶x张牌,洗牌,每展示1张潮,将卡组顶1张牌置入时计区;
- 摇匀,洗费。
使用者可根据自身需求,组合这些自定义函数,描述所需计算的终端。
- 蒙特卡洛法估算斩杀概率:
编辑好斩杀所用的终端后,即可使用蒙特卡洛法进行模拟。本程序内置了判断斩杀成功与否的函数,借此,可实现对斩杀成功次数的统计,并计算斩杀成功的概率。
计算器应用实例与结果
接下来,以常见的推底/推顶联动为例,展示这一计算器的实用价值。选取了5种常见的推底/推顶联动:
僕らはいける。無限の彼方へ ウッディ&バズ(PXR/S94-002),下文记作“胡迪”:
【永】你的角色全部是《PIXAR》的角色的话,这张卡的战斗力+3000。
【自】这张卡从手牌放置到舞台时,你可以将自己时计区顶1张卡放置到休息室。
【自】【CX联动】[(1) 手牌中1张《PIXAR》的角色卡放置到休息室] 这张卡的攻击结束时,高潮区有「別れと出発」,你其他《PIXAR》的角色有2个以上的话,你可以支付费用。支付了的话,对手公开自己卡组顶6张卡,卡组洗切,将自己卡组顶X张卡放置到时计区。X是那些卡中高潮卡的数量。したいこと 中野 三玖(5HY/W101-079),下文记作“三玖”:
【自】这张卡从手牌放置到舞台时或通过「抱えた気持ち 中野 三玖」的【起】效果放置到舞台时,你可以将自己时计区顶1张卡放置到休息室。
【自】【CX联动】[(1)] 这张卡攻击时,高潮区有「遠慮はしない」,你其他《五つ子》的角色有2个以上的话,你可以支付费用。支付了的话,执行以下行动。『你将对手卡组底4张卡放置到休息室。那些卡中有高潮卡的话,给对手造成X次1点伤害。你的角色下方的指示物的数量合计在2张以下的话X是1,合计在3张以上的话X是2。』(发生伤害取消)君と過ごした一年間 桜島 麻衣(SBY/W114-049),下文记作“麻衣”:
【自】这张卡从手牌放置到舞台时,你可以将自己时计区顶1张卡放置到休息室。
【自】【CX联动】记忆 [(1) 手牌中1张《思春期》的角色卡放置到休息室] 这张卡攻击时,高潮区有「ふたりだけのキス」,你的手牌在5张以下,你其他的角色有3个以上的话,你可以支付费用。支付了的话,执行以下行动X次。『你将对手卡组底2张卡放置到休息室。那些卡中有高潮卡的话,给对手造成2点伤害。』你的思出区卡名不同的卡在3张以下的话X是2,4张以上的话X是3。(发生伤害取消)夢見るステージ 近江 彼方(LNJ/W97-071),下文记作“彼方”:
【自】这张卡从手牌放置到舞台时,你看自己卡组顶至多X张卡,选择至多1张卡加入手牌,其余的卡放置到休息室。X是你《音楽》的角色的数量。
【自】【CX联动】[2张手牌放置到休息室,这张卡横置] 你的「ハルカカナタ」放置到高潮区时,前列有这张卡的话,你可以支付费用。支付了的话,你将对手卡组底7张卡放置到休息室,给对手造成X次3点伤害。X是那些卡中高潮卡的数量。(发生伤害取消)アウトドアクッキング! 青柳冬弥(PJS/S109-060),下文记作“野餐秋”:
【永】这张卡的战斗中,对手不能从手牌中使用『助太刀』。
【自】这张卡从手牌放置到舞台时,你可以将自己时计区顶1张卡放置到休息室。
【自】【CX联动】[(1)] 这张卡攻击时,高潮区有「お腹は正直」,你其他《音楽》的角色有4个以上的话,你可以支付费用。支付了的话,你将对手卡组底6张卡放置到休息室,给对手造成X次1点伤害。X是那些卡中高潮卡的数量。(发生伤害取消)
此外,作为对照,考虑另外两种常见的非推顶联动:
貫きたい音楽 山田リョウ(BTR/W107-038),下文记作“山田凉”:
【自】[你舞台其他1个《音楽》的角色放置到休息室] 这张卡从手牌放置到舞台时,你可以支付费用。支付了的话,你看自己卡组顶至多3张卡,选择至多1张卡加入手牌,选择至多1张卡放置到费用区,其余的卡放置到休息室。
【自】【CX联动】[(1) 手牌中1张《音楽》的角色卡放置到休息室] 这张卡的攻击结束时,高潮区有「自分の色」,你有其他《音楽》的角色的话,你可以支付费用。支付了的话,给对手造成3点伤害。(发生伤害取消)最強のチームワーク マックィーン&メーター(PXR/S94-050),下文记作“小车”:
【自】这张卡从手牌放置到舞台时,你从自己的手牌中选择至多1张自己等级以下的角色卡,放置到舞台任意位置,那个回合中,这张卡的战斗力+2000。
【自】【CX联动】[(1) 2张手牌放置到休息室] 这张卡攻击时,高潮区有「ラジエーター・スプリングスの仲間たち」的话,你可以支付费用。支付了的话,给对手造成3点伤害,你从对手的休息室选择至多1张卡放置到卡组顶。(发生伤害取消)
其中,除[夢見るステージ 近江 彼方(LNJ/W97-071)]外,其余联动均包含攻击步骤,需考虑触发阶段触发到魂点的影响;
为简化体系,作出了以下近似:
- 仅考虑对方满场,血量为2.4,时计区与等级区均无高潮卡,刚完成卡组更新(即控制室的卡牌数量为0)的情况;
- 以卡组中魂点数量与卡组总数的比值估算触发魂点的概率;根据网站https://www.tcgtool.cn中收录的卡组,取联动[したいこと 中野 三玖(5HY/W101-079)]与[貫きたい音楽 山田リョウ(BTR/W107-038)]触发魂点的概率为19/50,其余三种联动触发魂点的概率为13/50。
在这种情况下,对方卡组中,角色卡与事件卡合计至多有36张,高潮卡合计至多有8张;因此,考虑了总卡片数量为[20,36]间的整数,高潮卡数量为[0,8]间整数的情况,以描述不同的高潮卡密度,即压缩情况。
利用蒙特卡洛法进行模拟,对每种联动模拟50000次,以计算斩杀概率;为更清晰的对比高潮卡密度不同时的斩杀概率,将所得结果利用MATLAB自带的pcolor函数绘制成伪彩图,汇总如下:
待研究的推顶/推底联动,计算结果如下:
胡迪联动:
麻衣联动:
三玖联动:
野餐秋联动:
彼方联动:
作为对照的两类联动,计算结果如下:
山田凉联动:
小车联动:
结果分析与讨论
整体来说,斩杀2.4的概率,麻衣>三玖>野餐秋>胡迪>彼方;
本文所研究的4类推底联动,均在高潮卡密度中等(中压缩,以下同理)时,有着最好的表现;在高压缩与低压缩时表现相对较差。相比常规的给予x点伤害y次的联动,推底联动在低压缩时表现较差,而在高压缩时表现较好。这一结果与大多数牌手的实战经验一致。
胡迪联动,作为推顶联动,有着完全相反的表现:在高压缩与低压缩时表现较好,而在中等压缩时表现较差。相比5门3y皮克斯所用的另一组联动,即小车联动,高压缩时胡迪联动>小车联动,低压缩时则相反。
这一计算结果从理论上印证了5门3y皮克斯的公认思路:用胡迪针对高压缩的牌组,而用小车针对低压缩的牌组。在黑白双翼这一TCG的实战中,有着许多其他的公认思路,这些思路长期停留在经验层面,缺乏相应的理论证明。若能将本文的思路进一步扩展,应用于解释其他的公认思路中,将能显著提升牌手对本游戏的理解,在科学WS的道路上更进一步。