User:トレモロン/運についての数学
まずは、主能力にあるように、運の値が100上昇するたびにダイスリロールが発生します。(なお、3dや4dのときは、すべてのダイスをすべて一斉に振りなおしているようで、運の効能が弱まってしまいます。)
このとき、複数回リロールされたうちの最大の数値が抜擢され、ダメージ計算に用いられます。
これを定式化して運がどれくらいダメージ増加に貢献するかをここで述べます。
(なお、運による効果は計算を終えた感想として、非常に微々たるものであると言わざるを得ません)。
まず、1dM(ダイス数1つ、面は1~Mまであるもの)の場合において、抜擢される数がnである確率をan、ダイスロール回数をL(=基本値1+[運/100を小数点切り捨てたもの])とします。
L回振って、出た面すべてが1~nに収まる確率は( n/M )Lです。このとき、抜擢される数は当然1~nですから、a1+a2+...+an= ( n/M )L となります。
つまり、抜擢される数が1になる確率からnになる確率までをすべて足したものこそ、この範囲に収まる確率に他ならないという意味の式です。
n-1で、同じ議論をすると、出た面すべてが1~n-1に収まる確率はa1+a2+...+an-1= ( (n-1)/M )Lです。
二式の両辺の差をとると、an= ( n/M )L - ( (n-1)/M )L = [nL -(n-1)L] / ML を得ます。
次に、出た面の数字と、それに対応するanをかけてn=1からMまで足し合わせると攻撃の期待値になります。(期待値は平均と似た概念の数値で、Elinのダメージの期待値であれば、長期戦で100回相手に攻撃を加えたときは、与えた累計のダメージはほとんどその攻撃の期待値×100と同じになるという目安として使えます。)
出た数字×an=nan=[ nL+1 - n*(n-1)L ] / ML
シアン色を前の部分、赤色を後ろの部分と呼ぶとします。
n-1では、(n-1)an-1=[ (n-1)L+1 - (n-1)*(n-2)L ] / MLです。
見比べると、nanの後ろの部分は、(n-1)an-1の前の部分とよく似ていて、それらを引き算すると、-(n-1)Lになります。これをカップリングと呼ぼうと思います。
よってnanをn=1からMまで足すと、n=1の後ろの部分と、n=Mの前の部分を除いて、全てがカップリングします。n=1の後ろの部分は計算すると0、n=Mの前の部分は計算するとML+1になり、カップリングで生じるものは、-[1L + 2L + ... + (M-1)L]となります。
ここで、1L + 2L + ... + (M-1)Lのようなものをべき乗和とよび、計算結果がよく研究されています。ここではMが大きい時高精度になる近似値である、1L + 2L + ... + (M-1)L≒ ML+1 / (L+1) を用います。
(ちなみに3のときまでは近似しない値も比較的簡単です。幸いなことに、ElinでLが3を超えるときというのは運が300以上のときですので、あまり考えなくてもよいでしょう。)
だから、攻撃のおおよその期待値は、[ ML+1 - ML+1 / (L+1) ] / ML = [L/(L+1)]*Mとなります。
L=1のときは運が0の時ですから、ちゃんとM/2[1]です。この値を元に、運によってダイスの期待値が何倍になっているかを計算すると、
L=1で、1倍。
L=2で、1.33倍。
L=3で、1.5倍。
あまりにもしょっぱいと言わざるを得ません。
以上です。
- ↑ 近似のせいで真の値(M+1)/2より少し小さい