【考察】ゲームで望ましい乱数の活用

<注意事項>

・ウディタ脳寄り(個人で楽しむゲーム制作)の話になってる可能性
・内容はザックリ&雑&ニュアンス
・統計をかじったような忘れたような人間の戯言


<前置き>

予想外なゲーム展開は乱数によって引き起こされる。
その乱数をゲーム制作する側に立って、モヤモヤしたので書いた記事。


<先に結論>

①乱数は刺激。確率だけでなく演出にも概念を応用できる
②うまく調整してゲームを面白くしよう、したい
③ただし、胡散臭い確率操作はしないようにしよう


<概念的なこと>

①ゲームの乱数

乱数というのは、要するに確率に使われる。
RPGやSRPGで言うところの
命中率だったり、アイテムドロップ率だったり
ガチャの確率だったりと……低確率ほど驚きが発生する。

②確率は収束する

確率というのは回数を重ねるほど
必ず理論値の誤差内に収束する性質がある。
仮に「1%が連続で当たった!」などの段階で
回数をストップすると、ズレが生じたりはする。

③乱数は期待値の範囲内か外である

乱数は、予想できる結果と予想できない結果のどちらかが出る。
それは期待値におさまるかもしれないし、ならないかもしれない。


<気にしておくこと>

①乱数の仕様は平等である

例えば、0~99の数字が書かれた100個のボールが箱の中にあるとする。
このボールをランダムに1個取る。

出たボールの数字を商の余り計算で
%5した場合(数字を5で割った余りの数)を結果の値とするなら
どの数字が出る確率も同じため、平等と思えるだろう。

ただし、%3や%6などの100を割り切れない数は、微妙に低い数字に偏り
不均一な比率=不平等(=バレづらいインチキ)になってしまう。

例えの出現比率表

プログラミングでサイコロの1~6を出すことを考えると
プログラム側では100個の乱数ボールというレベルではなく
もっととてつもなく大きい数の範囲から
それっぽく見える乱数(疑似乱数)を作った値を作る。
その値を%6した数値に+1したものを出していると考えられる。

このとてつもなく大きい数字も
正確には平等かどうかは実際には分からない。
だが、無視できる誤差=平等という扱いになる。

②乱数の結果は不平等である

確率や比率が理論的には平等であっても
運が……悪い人、良い人の偏りは必ず出てくる。
ある程度の年齢の人ならば経験的にわかるはず。

ゲーム内では個人が確率収束するまで
回すことはほとんどないと思われます。

仮に、1/100が差異±10%内になる回数は……
正規分布で考えると
約40000回の試行で約95%の確率で収まる
=>平等(理論値)に近い結果になるようです。
※あくまで確率に収まる確率

(ガチャなら、そんなに回してられるかっ!!状態ですよね…)

③この確率はおかしい?

とあるゲームでの出来事。
命中率98%で2連続で外れた。

「これは変……おかしいんじゃ?」
・数字的にはおかしくない(理論派)
・数字的におかしいでしょ(感覚派)

これはどちらも、結果を受信した側の
状況によって変化した感想であって
ここだけで判断できる内容ではないです。

まあ、状況を左右する一撃だったなら
「おかしい!」という心情にはなりますね。

<結局、何が言いたいか?>

①ゲームを面白くするのが重要

乱数が絡む要素として、
ゲームが面白くなるのは下記と思う。

・思った通りの出来事が起きる(高確率、予想内、通常)
・予想外の出来事が起きる(低確率、予想外、イベント)

この2つの出来事=乱数による相互作用は
ターゲットやジャンルによって比率を変えて生きている。

大まかなジャンル分けによって例を上げてみた。

・JRPG戦闘:通常にすることを目指しつつ、イベントをこなす
・SRPG戦闘:通常ありきで戦う、イベントは大体悪いこと
・周回型ローグライク:通常とイベント両方
・アクション:通常を目指してイベントに慣れる
・ホラー:イベントを歓迎(人生経験外の演出による乱数)
・ノベル:イベントを歓迎(人生経験外の文章による乱数)
・ガチャゲ:イベントを歓迎(レア排出)
・落ち物パズル:通常を目指してイベントに慣れる

ニュアンスで書いてるので、雑な内容なのはご容赦を。

ゲーム外での乱数も登場してメチャクチャですが
数字的な乱数だけで考えるのではなく
ゲームを遊ぶ流れで
ランダムな経験を与える、乗り越える
またはランダム要素を抑制してバンバン遊べることが
面白い乱数ということではないか?との結論に至りました。

②乱数をうまく使う

前記の<気にしておくこと>で触れた内容に戻る。

乱数の仕様は平等だが、結果は不平等にもなる。
結局は受信側の気持ち次第である。
=>なら乱数をうまく使って、面白くしよう!

<乱数を回避させる>
通常時は確率で判定させてスパイスに
イベント時はスキルや装備などの選択肢も与える。
例:確率命中を必中にするスキルや装備
例:クリティカルを喰らわないスキルや装備

<理論値を上昇させる>
通常時は確率で判定させて仕様把握させ
イベント時はスキルや装備などで確率調整させる
例:命中率を上昇させるスキルや装備

<乱数での失敗/成功を制限する>
20回中、1回だけの失敗/成功の確率に抑える
例:クジ引きのようにDBにアタリ/ハズレを入れておく

一時的に連続で失敗しないようにする。
例:2発目は外さないスキル
例:4連続失敗は防ぐ内部処理
例:クリティカルは1ターンに1回の制限

<乱数を使ってるように見せかける>
実際に乱数は使ってないが、期待値を煽る
例:ここでオバケが出てくる雰囲気→出てきたり出てこなかったりする
例:救助ヘリに乗ってる→不運にも墜落した
例:遭難して誰も来ない場所→幸運にも人が居た、クマに助けられた


いずれも状況によって使うかどうかよく考える必要がある。
あまりにもあからさまで白けたり
逆に他人の不幸……低確率で失敗する様を見て
面白いという場合もあったりとケースバイケース。

何にしろ、どれも文章説明でフォローしたり
ゲームシステムとして特徴説明したりするのが良いと思う。
(結局、普通のゲーム制作の話に戻った気がする)

<気をつけたいこと>

①ガチャを始めとする景品の確率・印象操作

景品表示法に近いような話だが、
確率は正確に表示し、その確率を偽ってはいけない。
また、その確率が正しいか必ず検証すること。
無料・有料に関わらず心がけたい部分だと思う。

課金要素のないゲーム、例えば
SFCのDQ5にあったようなカジノをモチーフにしても
ユーザーに不利な確率は作らないほうが賢明だろう。

ただ、有利すぎる確率も白ける原因になりそうなので
バランスを取った誠実なシステムが無難なのかもしれない。

②過度な確率操作をしない

前記の『②乱数をうまく使う』部分でも書いたが
違和感のある説明のない確率操作はしないほうが良い。

もし特殊な乱数や確率操作をしたいなら
そういうシステムとして組み込むか
オプションとしてON/OFFできるようしたりして
必ず説明を付け加えるのが肝要だと思う。

③確率がボトルネックのゲームを作らない

これは個人的な経験や感想に近いかもしれないけど
運ゲーで突破できるかどうかなゲームは面白くない。

そこだけに焦点を当てれば面白くなる要素はあるので
一概には勿論言えないが、要約すると
「5%のドロップ率の素材が5個あればシナリオ進行する」
「突破率0.01%(ほぼ突破できない構成のランダムダンジョン)」
とかのゲームは勘弁して欲しいということだけ。

④現実は乱数で動いていない

これも個人的な経験や感想に近いかもしれないけど
自然や現実は、確率論や乱数で動いてるものではなく
確定的に動いた相互作用の結果である。

乱数はその動きを説明/観測できないものの証明や
あるいは意識なき数字として扱われるだけ。
ゲームで得られる乱数は、現実の過程を省略した
シミュレーション体験のようなもの。
その辺を念頭に入れておきたい。

この記事が気に入ったらサポートをしてみませんか?