【行動順バグ】

Last-modified: 2017-08-22 (火) 23:59:40

DQ5(SFC版)

戦闘時に素早さを無視して異常な順番で行動してしまうバグ。
SFC版のDQ5は、キャラクターの素早さに、0.75~1の26通りの乱数を掛けて(小数点以下は切り捨て)その値を比較して行動順を決定している。
通常は[各キャラの素早さ×乱数]の値を味方の先頭キャラから順番に比較した後、
先頭(左側)の敵からも順番に比較していき、その数値が大きいキャラから順番に行動する。
また、数値が同じ場合は先頭に近いキャラが優先される。
 
しかし、比較中に暫定トップの[素早さ×乱数]のキャラと比較対象のキャラの[素早さ×乱数]が同値だった場合、まだ素早さを比較していないキャラがいたとしても一旦比較を終了してしまう。
例えば、左から順に[素早さ×乱数]の値が A:70、B:70、C:255 だとする。
本来は C⇒A⇒B の順番で行動しなければならないのだが、AとBの素早さが同じため、
AとBを比較した時点で比較を一旦終了して、Aを行動順トップとして扱ってしまう。
その後BとCを比較して、Cが二番手、Bが三番手として扱われ、A⇒C⇒Bの順番で行動してしまうのである。
 
大抵は主人公が先頭にいるため、同じくらいの素早さのキャラが仲間にいれば真っ先に行動開始する主人公がたまに見られる。
はぐれメタルに先制行動したり、ブーメランで敵全部を攻撃できたりと普通にプレイするぶんにも結構有用なバグである。
ただし、同じ素早さのキャラを2人用意したとしても、後述の場合を除けば発生率は1/26とかなり低い。
 
一見すると意図的に起こしにくいように見えるこのバグだが、【まじんのよろい】と組み合わせると有効に活用できる。
パーティの先頭に魔神の鎧を装備したキャラを置き、二番目に死んでいるキャラを置くと、
魔神の鎧を装備したキャラクターが100%先制することができるのだ。
 
これは、死んでいるキャラが味方の先頭キャラの素早さを取得している謎の仕様のためである。
先頭キャラの素早さは魔神の鎧の効果で0。そして二番目のキャラの素早さも0になる。
先頭と二番目のキャラの[素早さ×乱数]の値は常に同値(0)になり、バグの条件を必ず満たすからだ。
では、まじんのよろいを2着手に入れればいい!と思ったアナタ、あいにくDQ5ではまじんのよろいは1着しか手に入らない。
そこまで世の中、便利にはできていない。
 
死亡キャラにはモンスターも含まれており、姿こそ見えないが全て味方の先頭キャラと同じ素早さを参照する。
そのため、魔神の鎧装備のキャラが1人だけ外に出ている場合は一番左の敵を倒すことで、
上記の100%先制の状況が発生することになる。

また、モンスター格闘場でスライム3匹の試合にはこのバグが強く影響する。
スライムの素早さが3のため、乱数が1以外だと素早さが2で計算される。
このため、ほぼ確実にスライムAが先行し、スライムCは3匹生存時は絶対に先手が取れない状態になっている。