なお、この空間では台本形式を採用しています。
ご了承願います。
ミカヤ「さぁ、ついに私の出番がやってきたわね!」
アイク「な、何だこの空間は一体!?」
ミカヤ「ここはうp主が作り上げた『乱数調整シーンをグダグダと流す為の空間』
……の予定だったけどあまりにもつまらない映像が続くのでせっかくだから色々な講義を行う為の空間になったわ」
アイク「講義……?」
ミカヤ「まぁ、細かい事はやってみれば分かるわ。
ひとまずは私たちのフリートークコーナーだと思っていれば良いわ」
アイク「よく分からんが……そもそもあんたが何者なのかすら分からないんだが」
ミカヤ「よくぞ聞いてくれたわ。
私はミカヤ。FEシリーズの次回作である『暁の女神』の主人公よ!」
アイク「主人公……? 何か嘘っぽいな」
ミカヤ「パッケージの真ん中に堂々と君臨していて、ゲーム中で死ぬとゲームオーバー。どう考えても主人公でしょう!
決して途中から理不尽な展開に振り回されたり幼女に身体を乗っ取られたり凡人に護られるような事は無いわ!」
アイク「……そっか。そういう事にしておこう」
うp主注
今更ですがキャラ崩壊注意です。
あと、動画じゃないから乱数調整シーンはバッサリカットです。序章に関しては割と楽だったとだけ言っておきます。
キャラがおかしいこの2人の講義をお楽しみ下さい。
ミカヤ「それじゃあ講義を始めるわ。
初回のお題はこれよ!」
【乱数調整】
アイク「強くなるためにうp主が頑張ったっていうヤツの事だな
一体何をやっているんだ?」
ミカヤ「それじゃあ一つ一つ説明していくわ。
まず、『乱数』って何? っていう所から。
これはいわゆる『ランダムな数字』の事ね。ゲーム中における運が絡む要素は全てこの『乱数』を使って進行するわ。
TRPGで言う『サイコロを振る行為』と言えば伝わるかしら?」
アイク「その例えで伝わるならそもそも乱数くらい知ってそうなものだが……」
ミカヤ「……それもそうね。じゃあ具体的に例を挙げてみましょうか。
例えば敵に攻撃する時、『攻撃が命中するかしないか』という判定が内部で行われるわ。
で、ランダムに生成した乱数が良い数字だった場合は命中、悪い数字だった場合は当たらない。
そんな感じで運次第で分岐するの」
アイク「良い数字とは一体……素数なら良いのか?」
ミカヤ「本作では『低い数字』の方が良い数字ね。
本作では乱数は0から99の数字が現れるようになっているわ」
アイク「と言う事はルート3とか25πとか……」
ミカヤ「0から99の
で、例えば命中率が70%だった場合、現れた乱数が70未満であれば攻撃が当たるという判定ね」
アイク「ゼロから69まで……丁度70個なのか」
ミカヤ「本作の確率判定はほぼ全て『何%』という基準で行われているの。
今の話は命中率だったけど、それ以外でも指定された確率未満の数字だと『成功』。それ以上だと『失敗』っていう判定になるわ。
うp主注
例え話なので分かりやすく命中率で話しましたが、厳密には『命中率70%』は有り得ません。
この辺の話は込み入った話になるので後の講義で語る予定です。
アイク「なるほど。乱数に関しては一応分かった。
じゃあ、一体全体どうやって操作するんだ?」
ミカヤ「確率判定が発生する度に乱数を作り出す。
これって凄く面倒よね?」
アイク「よく分からんが……あんたがそう言うならそうなんだろう」
ミカヤ「本当に面倒だからなのか、それとも技術的な問題なのかは分からないけど……
本作では予めランダムな数字を並べた『乱数表』が作られているの。
ある程度ランダムな特定の位置からスタートして、1個ずつ順番に使われていくわ。
この乱数表の中身は全てのCDに共通で刻まれていて、ハッキングでもしない限りは絶対に変化しないわ」
アイク「……つまり、どういう事だ?」
ミカヤ「乱数を適当にサンプリングして……例えば 15・28・55 って感じに3つ数字が並んでいる場所は乱数表の中にいくつあると思う?」
アイク「えっと……100回に1回っていうのが3連続で良いのか? 100万回に1回の確率だな」
ミカヤ「そういう事。ここまで正確に調べられるなら『今現在、乱数表のどの位置に居るか』という事が簡単に分かるのよ」
アイク「言うほど簡単か? 目視で探そうとしたら1日掛かりでも終わらないと思うが」
ミカヤ「流石にそこは検索ツールを使うわ」
アイク「……そりゃそうか」
ミカヤ「理論上可能な事なんだから細かい単純作業はツールに任せておけば良い話よ」
アイク「分かった。で、その乱数は一体どうやって特定するんだ?
99%当たる攻撃が外れるとか、1%でしか当たらない攻撃が当たるとかくらいしか思いつかないんだが」
ミカヤ「例え話だからここまで細かい乱数が特定できたと仮定したけど、実際には不可能よ。
それこそさっきあなたが言ったみたいな奇跡でも起きない限りは」
アイク「おいおい」
ミカヤ「でも、『50未満』か『50以上か』であれば簡単に特定する方法があるわ」
アイク「要するに1/2の特定か。そんな雑な特定で役に立つのか?」
ミカヤ「勿論よ。10個特定できれば1/1024まで絞り込めるわ。倍やれば約1/10万まで。
乱数の開始位置も電源入れた時やソフトリセット直後はある程度決まってるから余裕で絞り込めるわ」
アイク「繰り返しが重要って事か。そんなに簡単なのか?」
ミカヤ「ええ。具体的には今背景でやっている『移動限界の隅っこでカーソルをグリグリと動かす作業』ね。
これを見て何か気付かない?」
アイク「小説版だと背景なんて無いし、あったとしても俺が何かに気付けると思うか?」
ミカヤ「……移動経路を示す矢印の軌跡。これも乱数が使用されているのよ。
アイクの移動力は6マス。この時に右に5マス下に1マスの位置に進みたいとき、道中の経路は6パターンあるわ。
下右右右右右 ・ 右下右右右右 ・ 右右下右右右
右右右下右右 ・ 右右右右下右 ・ 右右右右右下
以上ね。
カーソルを移動限界の外から中に戻した時にこの6パターンからランダムで描画されるわ」
アイク「……こんなカクカクと移動してたんだな俺って。
しかしこれで乱数が分かるのか? 1/6で分かるとかじゃなくて1/2で?」
ミカヤ「この6パターンの移動は『アイク本人から移動先』を見た表記だけど、『移動先からアイク本人』に置き換えるわ。
左左左左左上 ・ 左左左左上左 ・ 左左左上左左
左左上左左左 ・ 左上左左左左 ・ 上左左左左左」
アイク「完全に逆になったな」
ミカヤ「この時の初手の動きに注目。
初手が『上』であれば50~99、『左』であれば0~49よ」
アイク「そういう1/2なのか。なるほど」
ミカヤ「今は右下の方で説明したから『上』と『左』だったけど、正確には『縦』と『横』よ。
左上の方とか、右下、左下でも同じように特定できるわ。
この1/2の特定は本作における乱数調整の骨子となるわ。
いちいち50~99とか言ってると文字数が嵩むから、50以上は"X"、50未満は"C"と呼ぶ事にするわ」
アイク「何故にXとC?」
ミカヤ「ツールの入力用の文字がそうなっているわ。バツとマルの代わりね。
悪い乱数……大きい数字はX、逆はCよ。
キーボード上でもその2つは近いから凄く入力しやすいわ」
アイク「理に適っている……のか?」
ミカヤ「話を戻すわ。さっきの6パターンが確認できた時、それぞれ乱数は以下のように把握できるわ。
CCCCC ・ CCCCX ・ CCCX
CCX ・ CX ・ X
以上よ」
アイク「? 後半少なくないか?
左に動いているんだからCじゃないのか?」
ミカヤ「左がCなのは『乱数を使って動く時』の話よ。
今回は右5下1……カーソルから見て左5上1の話だから、1回でも上に動くと後は真っすぐ左の動きになるわ。
1直線に動く場合には乱数が介在する余地は無いわね」
アイク「そうか、これってランダムな数の話だったな」
ミカヤ「この『最短経路』って概念はかなり重要よ。
序章だと障害物が殆ど無い平地だけど、章によっては入り組んだ地形だったり、移動抵抗がある『茂み』が多くあったりするわ。
表示される経路が乱数によるものなのか否か、それをしっかり見極めて特定することね」
アイク「分かった。善処する」
ミカヤ「とりあえず乱数調整……乱数の特定に関する基礎はこんな感じね。
一気に乱数を動かすコツとか、語れる事はまだまだありそうだけど結構長くなっちゃったんでこんなもんにしておくわ。
それじゃ、次の講義でまた会いましょう!」
乱数調整は本プレイの基礎なのでややこしいけどどうしても解説したかったです。
分かりやすく解説できていると良いのですが……
ストックが切れるまではこんな感じの週刊投稿で進めていきます。
それでは、また来週お会いしましょう。