RPGツクール2000/スイッチ・変数【サイトトップへ戻る】 ■擬似乱数の作成 (更新:2020/06/28) 擬似乱数の作成方法を紹介します。 【「乱数」の基本説明のページを開く】
■通常の乱数と擬似乱数との違い 乱数とは、コンピュータがランダムに変数の値を決定する処理の事を言います。 例えば、ニューゲームでゲームを開始した時に…
もう一度ニューゲームからゲームをやり直すと、2回目は…
一方の擬似乱数は、何らかの計算処理で作られた乱数のように見える値の事を言います。 あくまで計算処理で作られた値なので、 同じ条件で計算処理を実行すれば、毎回同じ乱数の値になります。 例えば、ニューゲームでゲームを開始した時に…
もう一度ニューゲームからゲームをやり直すと、2回目は…
▲トップへ戻る▲ ■擬似乱数の使い道 擬似乱数は何度実行しても同じ乱数の値にする必要がある場面で使用します。 例えばリプレイ機能を作る場合、通常の乱数を使用すると、 リプレイの時には異なる乱数の値になってしまうため、 正常なリプレイの再生ができなくなります。 一応リプレイデータに乱数で作成した全ての値を保存すれば、リプレイの再生が可能ですが、 ゲーム内容によっては、膨大な乱数の値を保存する必要があります。 一方の擬似乱数の場合は、 乱数の値を作成する計算方法をゲームプレイとリプレイで同じにすれば、 リプレイデータに全ての乱数の値を保存しなくてもリプレイの再生ができるようになります。 また疑似乱数にする事で、 次に来る乱数の値をプレイヤーが予測する事ができるように設定する事もできます。 例えば「4の次は必ず6になる」などです。 プレイヤーが予測できるようになれば、ゲームの攻略にも使えるでしょう。 ▲トップへ戻る▲ ■擬似乱数の作成:イベントの実行回数で変数の値を決める イベントを実行する度にイベントの実行回数をカウントし、 その実行回数に応じて次の乱数の値を決定します。 乱数のパターンが多いとその分条件分岐の設定も多くなりますが、 処理構造が単純なので、比較的理解しやすい設定方法だと思います。 今回はイベントを実行する度に…
▲トップへ戻る▲ ■擬似乱数の作成:同じ値を加算し、剰余で乱数の値を切り出す 下記の設定例は、同じ値を加算 → 同じ値で剰余して、 変数[0002:擬似乱数]に「0〜9」の値を設定する内容になっています。
上記の設定を実行する度に変数[0002:擬似乱数]には…
変数「0001:元となる値]の値はゲーム開始時に「0」が設定されており、 初めから擬似乱数を作り直す場合は、 変数「0001:元となる値]の値を「0」に戻してください。 擬似乱数の処理を実行する前に…
この加算値や剰余値を変える事で、作られる乱数を変える事ができます。 但し「加算100」「剰余200」みたいな値にすると、常に「0」の値しか作られなくなったり…
加算値や剰余値を変えた時には実際に動かしてみて、 乱数の作成パターンが単調になっていないかどうかを確認してください。 2桁(0〜99)の乱数を作る場合は…
★補足 今回の設定方法では、短い周期で同じ値のパターンがループされています。 設定によっては「0 → 3 → 6 → 0 → 3 → 6 → 0」などと、 3個の値だけがループする場合もあります。 設定例の「加算123」「剰余321」では107個の値でループします。
値の登場回数は以下のとおりです。
▲トップへ戻る▲ ■擬似乱数の作成:プレイヤーの操作から乱数(ランダム)を作る プレイヤーの操作(主人公の行動)で、その後の展開を変える設定方法です。 以下のマップでは、右から行っても左から行っても同じ距離になります。 このようなマップの左右それぞれにスイッチを操作するイベントを設定します。 あとはスイッチのON/OFFによって、その後の展開を変えていきます。 例えば、宝箱の中身を変えたり、次に移動するマップの位置を変えたり。 似たような設定としては、左のイベントを…
また調べても何も無いツボにスイッチONを設定すると、 初めてプレイする時にはツボを調べてスイッチがONになる可能性があり、 2回目にプレイした時にはツボを調べないでスルーする可能性があるので、 このスイッチON/OFFの違いから、 「スイッチOFF→難易度アップ」と言った設定も可能です。 他には歩数をカウントして、それを乱数に転用する方法もあります。 ▼歩数をカウントするイベント【設定の解説を見る】
別のマップへ移動した時には歩数が「0」に戻ります。 同じマップにいる時に歩数カウントを「0」にする時には…
▼歩数の一の位から変数の値(0〜9)を作成
このプレイヤーの操作から乱数(ランダム)を作るの良い点は、 プレイヤーに乱数(ランダム)が変わるタイミングが分かる点です。 つまり「攻略方法」としてこの設定を紹介すれば、 プレイヤーが攻略しやすい環境を作る事ができます。 ▲トップへ戻る▲ ■擬似乱数の作成:特定の数値から乱数を作る 本来は別の目的で用意されている数値を乱数に転用する方法です。 分かり易い例としては、所持金や主人公のHPなどです。 ▼所持金の一の位から変数の値(0〜9)を作成
▼主人公のHPの十の位から変数の値(0〜9)を作成
他にも、主人公のMP・レベル・攻撃力・経験値、パーティー人数、 特定のアイテムの所持数、タイマーの残り秒数、戦闘回数、勝利回数、 乗り物が置かれたX座標・Y座標など、様々な数値を乱数に転用できます。 この方法もプレイヤーとしては分かり易いので、 「攻略方法」として提示すれば、攻略がしやすくなるでしょう。 ▲トップへ戻る▲ ◎関連ページ ●イベントコマンド:変数の操作 ●「変数」って何? ●「乱数」って何? |