数学オタクの語るスペルウィッチで打てる信念の加速の枚数
はじめに
はじめましての方ははじめまして.もとと申します.Shadowverseをしている理系大学院生です.
突然ですが以下の画像をご覧ください.
なんともと選手,ここからリーサルを逃しました.本当に情けない.
という事件があり,手札の加速の枚数から打てる加速の最大枚数を計算していた所,おもしろい事実があったので記事にしました.
最後まで読んでいただきたいですが,面倒な方は結論まで飛ばしていただいて結構です.
皆さんの良き加速ライフの一助になれば幸いです.
加速のおさらい
まずは「信念の加速」(以下加速と呼びます)の効果をおさらいします.
マイザーから加わるトークンスペルで,自身のスペルブーストが5回以上なら手札に戻ってきます.
また,ゲーム中4回目以降なら相手リーダーに2点バーンを飛ばします.
この性質を用いてゲーム中に13回 (最初の3回+2×10回で20点),アマリリス付与下なら10回(3回+7×3回で21点)の加速を打つことが目標になります.
最適な加速の打ち方
これはすでに知っている方が多いと思いますが念のため復習です.
以下の画像をご覧ください.
ブースト済み加速を4枚抱えている状態です.ここから加速は何枚打てるでしょうか.(マイザー3枚目を抱えていますが,これはいったん無視してください)
4枚回収してから4枚打ち直すので8枚かと思いますが違います.
4枚加速を打った後の手札は
加速4枚 (スペブ数はそれぞれ3-2-1-0)
となります.ここから右の加速 (スペブ数1と0の加速) を打つことで
加速2枚 (スペブ数5-4)
となり,この2枚の加速は回収が可能です.
よって打てる加速の枚数は
4+4+2=10枚
となります.
加速を回収するために新しい加速から打つのはスペルウィッチの基礎中の基礎なので覚えておきましょう.
加速計算に必要な要素は何か
本記事ではppの要素は割愛します.
打てる最大枚数が把握できれば,抱えているor進化で下げれる0コス加速の枚数と,加速以外でのスペルブーストに必要なppがわかり次第ppの計算は容易だからです.
そうすると加速計算に必要な要素は以下の2つだけであることが分かります.
加速の枚数
0コススペルブーストの枚数
加速の枚数
当然です.加速の打つ枚数を考えているのにこれが大事でないわけがありません.
0コススペルブーストの枚数
運命の導き,ローズパレスメイジ,コールメロディから抱えるマジカルリスやウィズダムオウルのことです.これはしっかり変数に入れてあげた方がいいでしょう.
頻出する例で考えましょう.ブースト済みの加速4枚と,0コスのウィズダムオウル (以下オウル)を抱えているとします.
加速×4枚(ブースト済み) オウル
ここから加速を4回打つと
加速4枚 (スペブ数3-2-1-0) オウル
となります.通常はここでストップですが,0コスオウルを抱えているとオウル進化をすることで2スペブ稼ぐことができ,
加速4枚(スペブ数5-4-3-2)
となり,また加速を4枚回収しながら打つことができます.
加速のループの仕方に大きく影響するので変数として考慮するのが妥当でしょう.
加速のブースト数は考えないのか
勘のいい方ならお気づきでしょうが,先頭の加速のブースト数も必要な変数のように見えます.
しかし,これは先頭の加速をブースト済みにするまで加速以外のブーストによって補えばいいので省略可能です.
もしくは,加速を捨てながら打つことによってブースト済み加速を作り,計算後に足し合わせることで補間できます.
簡単な例としては
加速4枚 (スペブ数は4-3-2-1)
があげられます.これは一番右の加速を打つことで
加速3枚 (スペブ数5-4-3)
となり,加速3枚のパターンに合流します.3枚パターンの枚数に最後に1を足せば打てる加速の枚数が求められるわけです.
以上より,(回収可能な状態の)加速の枚数と0コススペブの枚数さえわかれば,打てる加速の枚数は計算可能であることが分かります.
加速を打てる枚数の定式化
本記事のメインパートです.少々数学チックかもしれませんが,やっていることはそこまで難しくないので,お付き合いしていただけると幸いです.
持っている(スペブ済み)加速の枚数を$${n}$$枚,0コススペブの枚数を$${k}$$枚として,加速の打てる最大枚数を$${a_{n,k}}$$と表します.
当然ですが,加速を持ってないときは1枚も打てません.
$$
a_{0,k}=0
$$
が成立します.
加速を持っている時の計算に入ります.最初に加速を順に$${n}$$枚打ちます.手札に$${n}$$枚の加速が戻ってきて,それらのブースト数は$${n-1,n-2…,0}$$となっています.
ここからブースト数$${n-1}$$の加速を回収可能な5回ブーストまでもっていきます.必要なブースト数は$${5-(n-1)=6-n}$$ブーストです. (ここから,加速を6枚抱えている時は無限にループすることが分かります)
$${6-n}$$ブーストが賄えないときはループできません.手札でできる最大ブーストは1枚の加速を残して$${n-1}$$枚の加速をすべて打ち,$${k}$$枚の0コススペブを消化したときなので,
$$
6-n>n-1+k \\
\Leftrightarrow 2n+k>7
$$
より,$${2n+k>7}$$である時は加速はループしないことが分かります.この時は手札の加速をすべて捨て打ちすることになります.
加速がループできる時はループのために捨てられる加速の枚数を考えます.
ループのためには$${6-n}$$ブーストが必要ですが,そのうち$${k}$$ブーストを0コススペブで補い,残りを加速の捨て打ちで補います.
このことから,加速を捨てる枚数$${b_{n,k}}$$は$${\max (6-n-k,0)}$$であることが分かります.($${6-n-k}$$が負の時は加速を捨てないため,0とのmaxを取ります.)
この時,0コススペブは$${6-n-b_{n,k}}$$枚消費します.
ここまでおこなったとき,手札には$${n_{new}=6-b_{n,k}}$$枚のブースト済み加速と,$${k_{new}=k-(6-n-b_{n,k})=k+n+b_{n,k}-6}$$枚の0コススペブがあります.ここから打てる加速の最大枚数は$${a_{n_{\text{new}},k_{\text{new}}}}$$枚となります.
以上により,$${a_{n,k}}$$を漸化式によってあらわすことが可能になります!
式がゴチャゴチャするのでまずは日本語を用いて簡潔にまとめましょう.
$$
a_{n,k}=n+(\text{捨てる加速の枚数})+a_{n_{\text{new}},k_{\text{new}}}\\
n_{\text{new}}=n-(\text{捨てる加速の枚数})\\
k_{\text{new}}=k-(\text{使う0コススペブの枚数})
$$
これを数式を用いて厳密に表現します!
$$
a_{n,k}=n+b_{n,k}+a_{n_{\text{new}},k_{\text{new}}}\\
b_{n,k}=\max (6-n-k,0)\\
n_{\text{new}}=n-b_{n,k}\\
k_{\text{new}}=k+n+b_{n,k}-6
$$
これで打てる加速の最大枚数がわかりました!!👏👏
……
そうなんです.この式,とってもわかりづらいんです.
ということで次章では実際に計算をして打てる加速の枚数を求め,考察をしていきたいと思います.
打てる加速の枚数を実際に計算しよう!
幸いなことにこの計算式は簡単なコードで計算することができます.
実際に計算してみたコードのリンクを置いておきます. (競プロガチ勢的にはDPをテーブルを使って計算してないのでご不満かもしれませんがご容赦を…)
閲覧のみなので,実際に動かしてみたい人はコピーしてください.
実際の計算結果を表にすると以下の通りになります
この表からいくつか言えることがありますね.順に書き連ねていきましょう
加速2枚ではほぼリーサルが不可能
マイザー1枚(=加速2枚)の時は,どれだけループをしても枚数が伸びません.
それゆえにスペルウィッチはマイザーの2枚目をどれだけ早く引けるかが勝負のカギであるといえます.
1枚捨て打ちから3枚パターンへ合流で7枚打てる
4枚加速を持っていてスペブ数が4-3-2-1の状況を考えましょう.これは一番右の加速を捨て打ちすることで3枚パターンへ合流できます.3枚パターンは6回打てるので最初の捨て打ちと合わせて7回打てます.7回打てるということはアマリリス進化と合わせることで21点のOTKを達成することができます!
僕はスペルウィッチエアプなこともあってこれを計算して初めて知りました.スペッチ奥が深い.
4枚による10回ループが超王道
これが最も再現性のある勝ち方であることは間違いないでしょう.3回加速を打ってバーンが出る状態にしてからの加速10枚打ちによる20点が基本的な勝利手段になります.
ちなみに,2枚目のマイザーが遅れると事前準備として2回しか加速を打てないことがあります.この時は0コススペブを1枚抱えておくことで,11回ループをすることができます.事前準備で2回加速を打っているので無事20点が出ますね.思ったより再現性があるかも?
加速4枚と2スペブで何でもできる
加速4枚に0コススペブ2枚抱えると加速が14枚打てます.14枚には2つの大事な要素を含んでいます
1つ目は加速0枚からリーサルが取れる点です.加速は事前準備3枚とバーン10枚の計13枚を打つ必要があるので,14枚打ちは事前準備0からの突然のリーサルになります.
2つ目は機械ネクロの貫通です.機械ネクロのよくある受けの形は25点バリア付きです.14枚打つことでバリアを貫通しながら25点を出すことができます.
しかし,ここまでくるとppの問題が付きまとってきそうです.14枚打つには当然14pp必要なので,マイザー進化によるコスト詐欺が必須です.2枚目のマイザーに進化を切って加速4枚を0コスにして待機してたところに,3枚目のマイザーを上からドローしてきてループした加速を再度0枚にするなどが現実的な範囲でしょうか.
手法の問題点
上の計算方法では2つ考慮していないことがあります.
1つ目はマイザー遅刻により加速のブースト数がずれるパターンです.
下の画像がその例です.
2-4枚目の加速のブースト数が足りなくて気持ちよくループできない形をしています.
このような時はループが止まる直前まで加速を打ち,足りないループの箇所を他のスペルブーストで埋めるイメージを持って計算しましょう.
実はこの場面はアマリリスに行かなくてもリーサルです.
加速左端を回収打ち→2コススペル→加速右端を捨て打ち→3枚ループwith0コススペブ(メイジ)なので7回打てる
これで加速が9枚打てるので18点,マイザー3点を合わせてリーサルです.(ppは9枚打ち+2コススペルで11ppから0コス4枚分の4ppを引いて7ppで足りてます)
2つ目は0コススペブカードたちのコストが下がり切るか判断できない点です.
加速ループをしたいターンにトップから運命の導きを引いてきたとき,この導きは0コストでループに組み込めるのでしょうか.
これに関しては練習をこなして判断できるようになるしかないと思いますが,1つ事実としてあるのは2回目のループに入る直然までに0コスになっていればいいということです.
画像はありませんが,簡単な例として以下のものがあげられます.
加速4枚 (スペブ済み) 導き5コス
これはループに組み込めるパターンです.4枚with0スペブ1枚のループは
4枚回収打ち→右端1枚捨て打ち→0コススペブ→3枚によるループ
というルートを取ります.
なので,右端1枚打ちまでやると全部でスペブ数が5になってちょうど導きが0コスになって打てるようになります.
これは簡単な例ですが,実戦ではもっと複雑な例が出てくるでしょう.ループの直前までに下がればいいを意識して計算を頑張りましょう.
結論
今までの議論をまとめます.
スペブ済み加速の枚数を$${n}$$,0コススペブの枚数を$${k}$$として,打てる加速の最大枚数$${a_{n,k}}$$は以下の式で計算が可能です.
$$
a_{n,k}=n+(\text{捨てる加速の枚数})+a_{n_{\text{new}},k_{\text{new}}}\\
n_{\text{new}}=n-(\text{捨てる加速の枚数})\\
k_{\text{new}}=k-(\text{使う0コススペブの枚数})
$$
しかし,これで毎回計算することは現実的ではないです.
表の$${k=0,1}$$辺りを覚えちゃって適宜思い出すのがよいでしょう.
特に頻出であろう
4枚ループによる10枚20点バーン
1枚捨て打ち→3枚ループによるアマリリス込みOTK
4枚2スペブによるほぼすべて貫通パターン
辺りは覚えておくのがいいかもしれませんね.
最後になりますが,スペルウィッチは加速計算だけが大事なデッキではありません.マイザーの引き方や手札,盤面の管理などの重要なポイントがたくさんあります.
その中で,この記事がみなさんの加速計算のスキルアップにつながれば筆者としてはこの上ない喜びです.
この記事がいいなと思ったら,本記事の拡散,Xのフォロー(@okuhumi0923),投げ銭などをしていただけたら幸いです.
(投げ銭してくれた方へのほんの少しのお礼として,本記事の冒頭の画像の解答を有料エリアに残しておきます.)
ここまで読んでいただきありがとうございました.
冒頭問題の解答
ここから先は
¥ 300
この記事が気に入ったらサポートをしてみませんか?