見出し画像

原神の会心比率1:2の数学の話

趣旨

 多くの人が知っていると思うが、原神では会心率と会心ダメージは1:2が理想的とされている。これについて、代数学的手法に拘りながら計算してみよう。一応断っておくが、理論値ステータスとかは別の話である。そういうのを知りたいのなら、エクセルとかを使って気張って数値計算してほしい。

とりあえず1:2を導出

期待値を書き下す

 会心の比率に触る前に、使いたいパーツを揃えていく。まずは、期待値の計算方法について。

$$
R\times(1+D)+(1-R)
$$

上の式が、期待値を算出する式になる。Rは会心率(Critical Rate)、Dは会心ダメージ(Critical Damage)である。$${R\times(1+D)}$$という項は、会心発生の割合、即ち会心率と、その時のダメージを示す。$${(1-R)}$$という式は、非会心の発生確率を示す。上の式を変形すると

$$
1+R\times D
$$

となる。これが最大になるのが、期待値最大である。どうすればいいんだろう。

会心率と会心ダメージの条件

 何も条件がなければ、簡単である。会心率を100%、会心ダメージを無限に上げ続ければ良い。だが、そんなのは無理だ。だから、現実に合致するように、以下の条件を課そう。

$$
\begin{array}{ll}
2R+D=C & (C=const.)
\end{array}
$$

Rの2倍とDを足し合わせた値が一定であるとして、会心率と会心ダメージを弄っていく。これは、原神のゲーム内の法則に則っている。
 とりあえず原神を立ち上げてみてほしい。それから、手元にある聖遺物を見てみてほしい。会心率冠と、会心ダメージ冠があれが完璧だ。
 レベル20の会心率冠は、会心率31.1%が付いている。一方、会心ダメージ冠は、会心ダメージ62.2%が付いている。結論を述べる。聖遺物のメインステータス及びサブステータスで得られる会心効果は、会心率1に対して、会心ダメージがその2倍になっている。察しの良い読者は気付く頃と思うが、この関係が1:2という理想の比率を生み出している生成子となっている。

会心ダメージは会心率の2倍になっている

つまり、会心ダメージと同じだけ会心率を稼ぐには、会心ダメージを稼いだときの2倍の労力が必要なのだ。サブオプション1つ分の会心ダメージに対して、同じだけの会心率を稼ぐには、2つ分のサブオプションが必要である。そこで、$${2R+D=C}$$である。会心率の2倍と会心ダメージの和を一定とする。

1:2の導出

 それでは、1:2を導出してみよう。$${2R+D=C}$$より

$$
D=C-2R
$$

となる。これを$${1+R\times D}$$に代入する。

$$
1+R(C-2R)
$$

平方完成すると

$$
-2(R-\frac{C}{4})^2+\frac{C^2}{8}+1
$$

よって、期待値最大のときの会心率Rは$${\frac{C}{4}}$$である。$${2R+D=C}$$より

$$
\begin{align*}
D&=C-2R\\
&=C-2\cdot\frac{C}{4}\\
&=\frac{C}{2}
\end{align*}
$$

のようにして、$${D=\frac{C}{2}}$$となる。

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R = \frac{C}{4} \\
& D= \frac{C}{2}
\end{aligned}
\right.
\end{equation*}
$$

会心ダメージは会心率の2倍の大きさになっている。即ち、会心率:会心ダメージは1:2である。

定数C=会心スコア

 ここまで、$${2R+D=C}$$と仮定した上で計算をしてきた。そして、RとDは$${\frac{C}{4}}$$と$${\frac{C}{2}}$$となった。これらには、定数Cが登場している。このCという奴は、何者なのだろうか。

 結論から言うと、定数Cは、巷で「スコア」なんて呼ばれてるものに対応する。これは原神のユーザーの間で一定の知名度を持つ概念であり、一般的には以下のように算出される。(攻撃力になんらかの係数を掛ける形で「スコア」を定義する派閥もある。その辺は今回は重要でないため、触れないでおく。)

$$
\text{スコア}=2\times\text{会心率}+\text{会心ダメージ}+\text{攻撃力}
$$

今回の定数Cは、この「スコア」から攻撃力部分を差し引いたものである。この定数Cを特に「会心スコア」なんて呼んでいる人も居るかもしれない。ただ、一般にこの「スコア」は、聖遺物のサブステータスにおける会心率、会心ダメージ、攻撃力のみを用いて算出される。スコアが生み出された発想は「俺の聖遺物は、こんなに強いんだぜ!」の指標にしたいところだったろうから、伸び幅、振れた回数などの運の要素が絡む、聖遺物サブステータスのみを見たら彼らとしては満足なのだろう。
 今回は、そういう狭義のスコアとは違い、メインオプション等も含んだ会心率と会心ダメージで算出するため、スコアという呼称は使わず、あくまでも定数Cを使わせてもらう。

 以上のような内容を、動画にしている。再生数を回してもらえると僕が喜ぶ。それ以上の有難みは特にないので、見てもらえなくても良い。動画を見てもらえなくてもいいように、このnoteを用意している。

少し踏み込んだ話

初期ステータスを無視してない?

 原神のキャラは、全キャラ共通で、会心率5%と会心ダメージ50%がある。だから、それら初期ステータスを除いた会心率と会心ダメージが1:2になるべきなのでは?という疑問。これを突き付けられて、僕自身も少し気になった。ところが、(少し検索した程度では)これについて答えを用意してくれているブログなどは見つけられなかった。だから、ここにその疑問に対する回答を用意しておこうと思う。

 5%とか50%とか、いちいち計算するのが面倒なので、計算するにあたって以下のように置いておこう。

$$
\begin{align*}
&r=\text{聖遺物会心率}\\
&d=\text{聖遺物会心ダメージ}\\
&\alpha=初期会心率\\
&\beta=初期会心ダメージ\\
&R=\text{最終会心率}\\
&D=\text{最終会心ダメージ}\\
\end{align*}
$$

以上のものを使って期待値を書くと、以下のようになる。

$$
1+RD=1+(r+\alpha)(d+\beta)
$$

また、聖遺物において会心率と会心ダメージが1:2の伸び方をするから

$$
\begin{array}{ll}
2r+d=C & (C=const.)
\end{array}
$$

である。先ほどと同じように会心率と会心ダメージを導出しよう。

$$
\begin{align*}
2r+d&=C\\
d&=C-2r
\end{align*}
$$

$$
\begin{align*}
&1+(r+\alpha)(d+\beta)\\
=&1+(r+\alpha)(C-2r+\beta)\\
=&-2 (r - \frac{1}{4}(-2 \alpha + \beta + C))^2 + \frac{1}{8} (-2 \alpha + \beta + C)^2 + C \alpha + \alpha\beta + 1
\end{align*}
$$

$$
\begin{align*}
d&=C-2r\\
&=C-2\cdot\frac{1}{4}(-2\alpha+\beta+C)\\
&=\frac{1}{2}(2\alpha-\beta+C)
\end{align*}
$$

聖遺物の会心率と会心ダメージが求められた。

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& r = \frac{1}{4}(-2\alpha+\beta+C) \\
& d= \frac{1}{2}(2\alpha-\beta+C)
\end{aligned}
\right.
\end{equation*}
$$

ここで

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=r+\alpha\\
& D=d+\beta
\end{aligned}
\right.
\end{equation*}
$$

であるから、RとDを求めると

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=\frac{1}{4}(-2\alpha+\beta+C)+\alpha=\frac{1}{4}(2\alpha+\beta+C)\\
& D=\frac{1}{2}(2\alpha-\beta+C)+\beta=\frac{1}{2}(2\alpha+\beta+C)
\end{aligned}
\right.
\end{equation*}
$$

DはRの2倍になっている。つまり、最終の会心率と会心ダメージが1:2になれば良いのだ。
 別のことも読み取れる。今回の結果において、$${\alpha}$$と$${\beta}$$には特段条件を課していない。強いて言えば、今回扱っているのは全て正の数であると暗に仮定しているくらいか。
 つまり、$${\alpha}$$は5%とは限らないし、$${\beta}$$も50%でなくて良い。なんらかの効果で30%の会心ダメージを最初から持っているキャラとか、無条件で40%の会心率バフを得られる聖遺物とかがある場合も、最終の会心率と会心ダメージが1:2になるのが理想なのだ。

理想が1:2にならない場合

 前節で、どんな状況でも、最終の会心率と会心ダメージが1:2になると良いと判明した。だが、理想の会心が1:2にならない場合が2パターンほどある。まずは、会心率が100%に達してしまう場合である。

会心率100%

 自明なことである。会心率は100%を超えた分は意味を為さない。
 会心ダメージ180%に対して理想の会心率は90%。会心ダメージ200%に対して理想の会心率は100%。しかし、会心ダメージ240%に対して理想の会心率は120%ではないだろう。どう考えても、100%を超えている20%分の会心率が無駄である。
 会心ダメージ240%に対して、理想の会心率は100%。会心ダメージ300%に対しても、理想の会心率は100%。もし会心ダメージ400%が可能であったとしても、それに対して理想となる会心率は100%なのだ。
 会心率100%に達した場合、理想の会心は1:2にならなくても良い。当然のことである。

条件付き会心バフ

 理想の会心が1:2にならない場合。2つ目が、条件付き会心バフが存在する場合である。まず、以下のように状況を設定しよう。

$$
\begin{align*}
&R=\text{会心率}\\
&D=\text{会心ダメージ}\\
&r_i=\text{会心率バフ}\\
&d_i=\text{会心ダメージバフ}\\
&p_i=\text{状況}i\text{になる確率}
\end{align*}
$$

 ある条件で発動する会心バフを考える。また、別の条件で発動する会心バフがあっても良い。条件Aで発動するバフと条件Bで発動するバフ。条件Aと条件Bが重なったときには、条件AのバフとBのバフを足し合わせただけのバフが作用する。そのときの得られるバフの合計を条件Cのバフとしよう。さらに、別の条件……条件Dでのバフとかがあっても良いだろう。
 そういった調子で、$${n}$$種類の条件で場合分けする。それぞれの場合について、作用するバフの総合計を$${r_i}$$、$${d_i}$$と設定する。添字$${i}$$は、$${i}$$番目の状況で働くバフ$${r_i}$$、$${d_i}$$という意味である。そして、それぞれの状況が出現する確率が$${p_i}$$である。

まず、状況$${i}$$における期待値は以下のようになる。

$$
1+(R+r_i)(D+d_i)
$$

$${n}$$種類の状況は確率$${p_i}$$で現れるので、全状況の合計での期待値は、以下のように書くことができる。

$$
\sum^{n}_{i=1}p_i\big(1+(R+r_i)(D+d_i)\big)
$$

 ここで、会心率2倍と会心ダメージの条件について、気を付けておきたい点がある。使える条件は、あくまでも今まで通りの$${2R+D=C}$$のみだ。
 会心バフ$${r_i}$$、$${d_i}$$は、必ずしも1:2の伸び幅になっている必要はない。実際、ロサリアの固有天賦では、会心率を15%バフするだけだ。対応する会心ダメージ30%のバフは存在しない。また、アルハイゼン完凸効果では、会心率10%と、会心ダメージ70%が上昇する。こちらでも、会心率と会心ダメージは1:2になっていない。
 会心バフの数値は、会心率と会心ダメージが1:2になっている必要はない。

今まで通り、$${D=C-2R}$$を代入して、平方完成しよう。(複雑になってきて正確である自信がない……間違いを見つけたらコメント貰えると嬉しい)

$$
\begin{align*}
&\sum^{n}_{i=1}p_i\big(1+(R+r_i)(D+d_i)\big)\\
=&\sum^{n}_{i=1}p_i\big(1+(R+r_i)(C-2R+d_i)\big)\\
=&\sum^{n}_{i=1}p_i(-2R^2-2Rr_i+Rd_i+CR+Cr_i+r_i d_i+1)\\
=&-2\sum^{n}_{i=1}p_iR^2
+\sum^{n}_{i=1}(-2p_ir_i+p_id_i+p_iC)R
+\sum^{n}_{i=1}(p_ir_iC+p_ir_id_i+p_i)\\
=&-2\sum^{n}_{i=1}p_i\Big(R-\frac{1}{4}
\frac{\sum^{n}_{i=1}(-2p_ir_i+p_id_i+p_iC)}{\sum^{n}_{i=1}p_i}\Big)^2\\
&+\frac{1}{8}\frac{\big(\sum^{n}_{i=1}(-2p_ir_i+p_id_i+p_iC)\big)^2}{\sum^{n}_{i=1}p_i}
+\sum^{n}_{i=1}(p_ir_iC+p_ir_id_i+p_i)
\end{align*}
$$

よって

$$
R=\frac{1}{4}\frac{\sum^{n}_{i=1}(-2p_ir_i+p_id_i+p_iC)}{\sum^{n}_{i=1}p_i}
$$

ここで、$${\sum^{n}_{i=1}p_i=1}$$である。$${p_i}$$は確率であったから、全て足し合わせると、100%になる。即ち、$${\sum^{n}_{i=1}p_i=1}$$なのだ。

$$
\begin{align*}
R&=\frac{1}{4}\frac{\sum^{n}_{i=1}(-2p_ir_i+p_id_i+p_iC)}{\sum^{n}_{i=1}p_i}\\
&=\frac{1}{4}\frac{\sum^{n}_{i=1}(-2p_ir_i+p_id_i)+\sum^{n}_{i=1}p_iC}{\sum^{n}_{i=1}p_i}\\
&=\frac{1}{4}\Big(\sum^{n}_{i=1}(-2p_ir_i+p_id_i)+C\Big)
\end{align*}
$$

これでDを求めやすくなる。

$$
\begin{align*}
D&=C-2R\\
&=C-2\cdot\frac{1}{4}\Big(\sum^{n}_{i=1}(-2p_ir_i+p_id_i)+C\Big)\\
&=\frac{1}{2}\Big(\sum^{n}_{i=1}(2p_ir_i-p_id_i)+C\Big)
\end{align*}
$$

めでたく、RとDが求まった。

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=\frac{1}{4}\Big(\sum^{n}_{i=1}(-2p_ir_i+p_id_i)+C\Big)\\
& D=\frac{1}{2}\Big(\sum^{n}_{i=1}(2p_ir_i-p_id_i)+C\Big)
\end{aligned}
\right.
\end{equation*}
$$

上の表式から分かる通り、RとDは1:2になっていない。

この式の感覚的な理解について少しだけ触れておこう。
まず、1:2からのズレの部分を見てみよう。最初に1:2を導出したときの表式は、以下の通りだ。

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R = \frac{C}{4} \\
& D= \frac{C}{2}
\end{aligned}
\right.
\end{equation*}
$$

これと、先ほど導いた表式との差異は、Rにおける$${\sum^{n}_{i=1}(-2p_ir_i+p_id_i)}$$及び、Dにおける$${\sum^{n}_{i=1}(2p_ir_i-p_id_i)}$$の部分である。この部分の意味を推察しよう。
 まず、$${r_i}$$、$${d_i}$$は、それぞれ会心率バフと会心ダメージバフを示すものだ。Rにおいて$${r_i}$$の項は負の数であり、$${d_i}$$の項は正の数である。即ち、$${r_i}$$が大きいほどRは小さくなる。また、$${d_i}$$が大きいほどRは大きくなる。
 Dについても同様に言える。$${r_i}$$が大きいほど、Dは大きくなる。$${d_i}$$が大きいほど、Dは小さくなる。

会心率・ダメージバフに対する、理想の会心率・ダメージの変化

実際どうなんだ

 実際には、とりあえず1:2を信じていれば宜しい。会心率100%なんて多くのキャラにとっては不可能に近い数値だし、会心バフを得られる手段も、現在の原神においてはあまり一般的でない。最もポピュラーな会心バフというと、ファントムハンター4セット効果あたりだろうか。一応、ファントムハンターの例だけ見ておこうか。

ファントムハンター4セットの例

 聖遺物「ファントムハンター」の4セット効果では、HPが増減するとき、会心率が12%ずつ上昇する。最大36%である。これを、条件付き会心バフの節で導いた表式に従って書いてみよう。

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=\frac{1}{4}\Big((-0.24p_1-0.48p_2-0.72p_3)+C\Big)\\
& D=\frac{1}{2}\Big((0.24p_1+0.48p_2+0.72p_3)+C\Big)
\end{aligned}
\right.
\end{equation*}
$$

$${p_1}$$、$${p_2}$$、$${p_3}$$は、ファントムハンター4セット効果の層数が1層、2層、3層の状態でダメージを出せる確率である。
ファントムハンター4セットと相性が良いアタッカーとして、まずはヌヴィレットを考えてみよう。彼は、高速でHPが増減するのが特徴のアタッカーである。(勿論他にも特徴があるが、ここで重要なのはこれだけだ。)だから、ファントムハンターの効果が最大まで溜まる、即ち3回のHP増減を達成するのは、戦闘を開始してからかなり早い段階になる。よって、以下のように仮定してみよう。

$$
\begin{align*}
&p_1=p_2=0\\
&p_3=1
\end{align*}
$$

ファントムハンター1層および2層のときのダメージを無視し、常にファントムハンター3層状態で戦えるとするのだ。このとき、理想の会心――RとDは、以下のようになる。

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=\frac{1}{4}\Big(-0.72+C\Big)\\
& D=\frac{1}{2}\Big(0.72+C\Big)
\end{aligned}
\right.
\end{equation*}
$$

初期会心率5%、会心ダメージ50%。ヌヴィレットの突破ボーナスは会心ダメージであり、38.4%ある。会心ダメージ冠62.2%、サブステの会心スコアは120くらいを仮定しよう。この条件で定数Cを算出すると

$$
C=0.05\times2+0.5+0.384+0.622+1.20=2.806
$$

このCのときのRとDは

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=\frac{1}{4}\Big(-0.72+2.806\Big)=0.5215\\
& D=\frac{1}{2}\Big(0.72+2.806\Big)=1.763
\end{aligned}
\right.
\end{equation*}
$$

Rが52%、Dが176%程度になる。ここで、Rにファントムハンターの3層効果、会心率36%を足してみよう。すると、$${52+36=88}$$であり、これはDの二分の一に一致する。つまり、ファントムハンターの効果込みの会心率は、会心ダメージと1:2になる。
 最初に設定した条件で、常に会心率36%が作用するとした。これはつまり、初期ステータスの節で触れたものの延長になっているのだ。条件なしの会心上昇効果であれば、ヌヴィレットのファントムハンターに限らずこの議論を適用でき、その効果込みでの会心率と会心ダメージが1:2になるのが理想という形になる。

 続いて、リネとファントムハンターの場合について考えてみよう。こちらは、少し様相が異なる
 リネは、重撃を撃つたびにHPが減る。そして、一定以上HPが減ると、それ以上減らなくなる。それまでの過程でHPが減少する過程は、外部からの回復とか被ダメージがなければ、2回のみ。そして、リネが退場する直前に元素スキルを1回だけ使うという運用が一般的だと思う。この元素スキルで回復できる。このときのRとDを考察していく。

 一回の動きで、リネは重撃を4回撃つものとしよう。そして、最後に元素スキルを一回だけ使う。このとき、HP増減が発生するタイミングの問題で、重撃のダメージ発生はHPが減少した後のタイミングになる。元素スキルで発生する回復効果も、ダメージ発生より1フレームほど先になる。
 リネの重撃は特殊な形式だが、無凸で天賦レベル8の場合、1回の重撃で、合計615.7%である。(多少でも計算の簡略のため、倍率の低い霊息の棘は無視する。)
天賦レベル8の元素スキルでは、今回の場合は、437.7%である。よって、$${p_1}$$、$${p_2}$$、$${p_3}$$は以下のようになる。

$$
\begin{align*}
&p_1=\frac{615.7}{615.7\times4+437.7}\simeq0.21\\
&p_2=\frac{615.7\times3}{615.7\times4+437.7}\simeq0.64\\
&p_3=\frac{437.7}{615.7\times4+437.7}\simeq0.15
\end{align*}
$$

 これと、先ほどと同様に初期会心率5%、会心ダメージ50%、突破ボーナス38.4、会心ダメージ冠62.2%、サブステの会心スコア120を課してRとDを求める。(リネの突破ボーナスは会心率19.2%だが、これを2倍すると会心ダメージの38.4に一致する。定数Cの算出において、会心率自体は重要でなく、会心率の2倍だけ分かれば良い。)

$$
\begin{equation*}
\left\{ \,
 \begin{aligned}
& R=\frac{1}{4}\Big((-0.24\cdot0.21-0.48\cdot0.64-0.72\times0.15)+2.806\Big)
\simeq0.5851\\
& D=\frac{1}{2}\Big((0.24\cdot0.21+0.48\cdot0.64+0.72\times0.15)+2.806\Big)
\simeq1.6358
\end{aligned}
\right.
\end{equation*}
$$

Rがおよそ59%、Dがおよそ164%となる。$${59+36=95}$$としても、Dの二分の一より16%ほど大きくなる。1:2には一致しない。
 これは、ファントムハンター4セットの効果が恒常効果でないことに起因している。会心バフ量が増減するときは、ヌヴィレットの例のように初期ステータスの延長上として扱うことができない。そのため、条件付き会心バフがある場合は、会心率と会心ダメージの比率は1:2にならない場合がある。

結局のところ

 リネは理想が1:2からズレる例として挙げたが、それでも、1:2からのズレは16%程度である。これより激しく1:2からズレるのは、ファントムハンターに加えて、会心率100%条件も加味しなければならない場合とかになる。要は、大抵の場合はおおよそ1:2の範疇に収まるものだと言える。
 だし、会心1:2の導出をしている他の皆さんも再三触れていることと思うが、1:2に拘る必要もない。RやDを変えたときの期待値の変化は、以下のようになる。

横軸会心率、縦軸期待値のグラフ

 頂点付近では、期待値の変化は緩やかになっている。つまり、多少理想の比率からズレても、期待値は然程変化しないのだ。

 当初の目的を思い出してほしい。本来の目的は1:2ではない。期待値を高くしたいときに、一番効率が良い方法が何か知りたかったのではなかろうか?
 つまり、期待値が高くなるのであれば、比率は重要でないのだ。これとは別に、原神サービス終了とのレースをしながら理論値聖遺物を追い求めているような人は、気張って理論値ステータスを追い求めると良い。たぶん、そういう人は多くない。とりあえず深境螺旋12層とか、幻想シアター10幕をクリアできるだけの聖遺物を集めたいだけなのではないか?そういう場合は、1:2を考えるのは二の次である。とりあえず期待値を計算してみたら、自ずとどうしたら良いかの答えは出るだろう。最後に、期待値の計算式を載せて終わりとしよう。

$${1+RD}$$


いいなと思ったら応援しよう!