ドラクエ9「ぬすむ」はレア入手判定が先であろう

ドラクエ9の「ぬすむ」については、レア判定が先で、失敗の時にノーマル判定がされる、と思われる。その根拠をデータから示したい。なお、これはレアの入手確率の上限が 1/4 であることの検証にもなっている。

 

関連記事

* ドラクエ9の「宝箱ドロップ」の確率

前書き

「ぬすむ」は、ノーマルとレアについて、確率pの求め方が提唱されている。その式がほぼ正しい事は別記事にて検証した。しかし、ノーマルとレアのどちらの判定が先か迄は、判明しなかった。

これについて、「ノーマルが先である」との説がここに与えられているが、根拠は示されていない。(そもそもこの投稿で、初めて p が与えられた模様である。)

ところが、実際はレアが先ではないか思った。そこで、ウォルロ村北でデータを集めてみた。ここで出現するスライムベスバブルスライムホイミスライムは、ノーマルもレアも z (たぶんドロップ確率) = 1/8 であるため、検証に都合が良い。

なぜ検証ができるか、と言うと、z = 1/8 という事は、レアでは全キャラクターが「ぬすむ」確率 p = 1/4 である、という事になる。よって、仮にノーマルで p = 1/2 であったとき(「きようさ」512以上)、全「ぬすむ」回数に対する入手数の割合の期待値は次のようになる:

  ノーマル → レア レア → ノーマル
ノーマル 1/2 3/8
レア 1/8 1/4 = 2/8

もしもノーマル判定が先ならば、レアの入手数はノーマルの1/4と、随分少ない。しかしレア判定が先ならば、ノーマル 3/8、レア 1/4 = 2/8 だから、それ程違わない。しかも 1/4 くらいならば、標準偏差も期待値と同じくらいとすると、100回も盗めば違いが見えてきそうである。

データ

スライムベスバブルスライムホイミスライム相手に、「ぬすむ」を実行した結果。各キャラクターの「きようさ」は、上の行から順に 179、351、271、366 である。いずれも「とうぞくの証」はナシ。最初のキャラクターの試行回数が少ないのは、モンスターを倒すことで、ドロップのデータを集める、という別目的があったため。(この記事を参照)
なお、途中でレベルが上がっているため、「きようさ」は数%上がっている。そこで平均値を用いたが、確率への影響は1%程度であり、検出不可能な差に過ぎない。

ノーマル判定 → レア判定を仮定
ノーマル レア
試行回数 実ドロップ数 D 期待値 n 標準偏差 σ (D - n)/σ (D - n)²/σ² 実ドロップ数 D 期待値 n 標準偏差 σ (D - n)/σ (D - n)²/σ²
9 2 3.04 1.42 -0.73 0.53 3 1.75 1.15 1.09 1.19
30 7 12.64 2.70 -2.09 4.35 6 5.75 2.08 0.12 0.01
24 5 9.18 2.38 -1.75 3.08 7 4.75 1.89 1.19 1.42
28 9 12.00 2.62 -1.15 1.32 7 4.75 1.89 1.19 1.42

χ²: 13.3 (下側90%)

レア判定 → ノーマル判定
ノーマル レア
試行回数 実ドロップ数 D 期待値 n 標準偏差 σ (D - n)/σ (D - n)²/σ² 実ドロップ数 D 期待値 n 標準偏差 σ (D - n)/σ (D - n)²/σ²
9 2 2.02 1.16 -0.02 0.00 3 2.25 1.30 0.58 0.33
30 7 10.11 2.42 -1.29 1.66 6 7.50 2.37 -0.63 0.40
24 5 6.50 2.00 -0.75 0.56 7 6.00 2.12 0.47 0.22
28 9 9.00 2.27 -0.00 0.00 7 7.00 2.29 0.00 0.00

χ²: 3.2 (下側 8%)

結論

レア判定が先の可能性が高い。

もしもノーマルが先とすると、ノーマルの入手数は、全キャラクターで期待値よりも小さく、レアは全キャラクターで多い。こうなる確率は1/256であるから、ノーマル判定が先の可能性は、ほぼ否定される。

χ²は...(先日梶田さんのノーベル賞のニュースを見ていたら、OHPでχ²が示されていて、「ニュートリノ振動がなければ有り得ない観測結果」などと書いてあった。χ²は便利である。) 実はノーマル判定が先でも、このような結果を得る事は10%くらいある、という事だから、χ²だけでは、否定にはほど遠い。一方、レア判定が先の可能性は、下側8%だから、とりあえず否定はされない。
(注: Pearsonのχ²は期待度数で割るが、それは「便利なニセモノ」であって、分散で割るのが正しいχ²である。)

なお、この数値は、レアで p = 1/4 が上限であることを仮定しているが、この結果から、この上限値については、正しい事が証明されたと言って差し支えない。

より正確には、他のアルゴリズムを排除した訳ではないが、実際問題としては、「この記事で書いた p を用いて、レア → ノーマルの順に判定する」という方法で、大体の計算ができる、というのが結論である。

備考

実は、もしもノーマル判定が先であるとすると、「きようさ」が上がる事で、逆にレアの入手数は減る。(ノーマル z が 1/8 かつ「きようさ」が512以上で、更にレア z が 1/32 以下の場合を除く。) よってノーマル判定が先というのは、かなりマズい設計となる。