乱数の仕様・ランダムな行動
乱数の仕様・ランダムな行動 -> 擬似乱数の生成方法
概要
SDXにおける乱数の仕様について。また、乱数が関わる行動の一覧もここに。
乱数の格納先
メモリアドレス | サイズ | 内容 |
---|---|---|
0x003743 | 1u(1h) | 乱数1 |
0x003744 | 1u(1h) | 乱数2 |
乱数として使う値はこの2つのみになります。
取得・処理は必ず2つ同時ですが、独立させた方が分かりやすいので1byteずつ。
初期値(シード値)はどちらとも119(0x77)で、リセット時に初期値に戻りますが、
デモプレイ画面に入る時はどちらとも0(0x00)に変化します。
乱数消費の流れ
1.乱数を取得
主に乱数を利用するサブルーチン(一連の処理)の始めに乱数を取得します。
この取得によって乱数が消費されます。
2.新しく乱数を生成
乱数が消費された後に新しく乱数を生成します。
消費前の2つの乱数の値を使って計算し、その結果を新しい2つの乱数に割り当てます。
ゲームによっては毎F間隔で乱数を生成するものもありますが、
SDXでは基本的に1→2の流れによってのみでしか乱数は変化せず、
乱数を監視できる状況であれば次のランダムな行動を予測することも可能です。
乱数を消費する行動の例
タイトル画面
タイトルが表示されている画面では1F毎に乱数を消費。
表示された瞬間~ボタンを押すまでorデモ画面に移る暗転が終了するまで
格闘王TASでのボスの順番はこの時に決まる。
エフェクト
- 着地星
着地時・天井や壁にぶつかった時に出る星(敵も含む)
何故か乱数を2回消費する
- 砂煙
ダッシュ・スライディング等で出る砂煙
- 攻撃ヒットエフェクト
敵に攻撃が当たった時のエフェクト
- 敵消滅エフェクト
敵が倒された時に出るエフェクト
- 炎エフェクト
炎属性の攻撃を受けた時・ファイアの技等によって出るエフェクト
- 氷エフェクト
氷属性の攻撃を受けた時に出るエフェクト
- 雷エフェクト
雷属性の攻撃を受けた時に出るエフェクト
- 強風エフェクト
マップ全体が強風状態の時のエフェクト
- 風受けエフェクト
カービィが風を受けている時のエフェクト
コピー技
- すいこみ(すっぴん)
すいこみ時の空気の流れ
- 星型弾&星型貫通弾(すっぴん)
星型弾から出るキラキラしたエフェクト
- くないしゅりけん(ニンジャ)
くないの出現位置と壁に刺さった時の挙動それぞれで乱数を消費
- バルカンジャブ(ファイター)
乱数によってジャブの方向が決まる
- ソードひゃくれつぎり(ソード)
ソードビームの出現位置
- 石ころへんしん他(ストーン)
変身する像は乱数によって決まる
- プラズマコピー時(プラズマ)
プラズマコピー中にカービィ(プラズマウィスプ)の周りに走ってる電気
このコピー時は乱数が目まぐるしく動く。
- ダッシュ(ミラー)
ミラー能力のダッシュ中・ミラーぶんしん時の鏡のエフェクト
- ぬったくり(ペイント)
ハケから飛び出す絵の具の色・飛距離
ダメージ処理
- HPを減らす
ダメージを受けた時に減るHPは設定された基準値と乱数によって決まる。
- ガード削り
ガード削りを受けた時に減るHPは乱数によって1~2の範囲で決まる。
- コピーを落とす
乱数によってダメージ時にコピーを落とすかが決まる。
行動分岐
敵の行動がランダムに決まる場合、乱数によって分岐する。
ボス戦でよく見られる。
その他
- 敵のやられモーション
敵がダメージを受けた時のグラフィック・向きは乱数によって変わる。
- ボスの小物出現位置
ウィスピーウッズの落とすリンゴ・ファッティホエールが落とす岩の位置など。
- コックカワサキ
コックカワサキが存在している間は毎F乱数が消費される。
ランダムにコピーするための処理だと思われる。
モード限定
- Enemyの動き(ダイナブレイド)
ダイナブレイドのステージ選択マップでのEnemyの動き。
止まる時間、次に移動する方向は乱数によって決まる。
- STG面でのヘルパー召喚(銀河にねがいを)
通常時と違い何のコピーのヘルパーが出るかはランダム。
- ランダムコピーのもと(格闘王への道)
休憩所に出てくるコピーのもとは乱数によって変わる。
- 最終更新:2017-04-28 00:59:19