最終更新:2011/06/28
敵味方共に、spd × (75+[0〜25]) /100 (*1)
つまり、75〜100% (整数未満切り捨て)
基本的には、 高spd×75% > 低spd×100% の時に確定先制/後攻
補正後の素早さが同値の場合は、「味方優先」となる。
(味方:先頭から⇒敵:先頭から)
・・・のだが、バグによって特殊な動作をする。(後述)
*1:[0〜25] = 乱数 [0〜255(0xFF)] × 26 / 256
10288A | LDX #$00 | |
10288C | STZ $71 | ;$71=0にする(“暫定トップ”の素早さの値) |
10288E | STZ $72 | ;$72=0にする(“暫定トップ”の先頭キャラからの位置) |
102890 | LDA $10D8 "X" | ;Aに$(10D8+"X")をロード(素早さの値) |
102893 | BEQ #$0A ? -> $10289F | |
102895 | CMP $71 | ;取り出した素早さ(A)と“暫定トップ”の素早さ($71)の比較 |
102897 | BEQ #$0C ? -> $1028A5 | ;A=$71の時、1028A5に飛ぶ |
102899 | BCC #$04 ? -> $10289F | |
10289B | STA $71 | |
10289D | STX $72 | |
10289F | INX | |
1028A0 | CPX $1011 | |
1028A3 | BCC #$EB ? -> $102890 | |
1028A5 | RTS | ;このサブルーチンを終了する ⇒現“暫定トップ”者を「行動順リスト」に追加しに行く |
上記が2.で述べた処理の実際だが、
“暫定トップ”と比較対象の素早さが等しかった場合、このサブルーチンを終了してしまう、
つまり、等しいspd値が存在する際に、最高spdを誤認識してしまうバグが存在している。
3番目にいる『星降る腕輪』装備キャラが先制しないことがあるのも、これが原因とみられる。
補正後の素早さ(75〜100%を反映した素早さ)を以上のものとして話を進める。
本来なら、
としたいところが、
となってしまっているのである。
死亡キャラクターが存在した場合、敵味方問わず
(補正前の)元々の素早さを該当キャラの物ではなく、味方先頭キャラの素早さを取得している。
仮に、
となっていた場合は、
となる。
実際はこの後に75〜100%の補正がかかるため、例えば、
という風になったりしている。
PTを【生者、死者(、死者or生者)】にすると先制率に影響を与える、という技が存在する。
(参考:3.5 技 - 死者関連技 / ドラゴンクエスト5 極限低レベル攻略ガイド - 極限攻略研究会)
これは死亡キャラの扱いと行動順の決定におけるバグが合わさった結果、起こりうる現象である。
つまり、死亡=先頭キャラと同じ素早さ(補正前)になってかつ補正後も偶然同じ素早さになった場合に
バグが発生し、先制判定が誤認識するのである。
更に言えば、上記サイトは低レベル攻略における戦術を載せており、
キャラのレベルは当然低い=素早さも低いので、
75〜100%補正時のブレ幅が通常攻略に比べ少なくなり、同じ値になりやすい。
それゆえ、なおさら先制率に影響を与え易くなっていると考えられる。
上記サイトで挙げられている素早さ20を例にとると、
このようになり、同じ値になりやすいことが分かる。
また、死者であれば敵味方は関係なく、味方先頭キャラの素早さを取得するため、
[味方] A(・B・C) [敵] 死者・生者・生者・・・ という場合、
キャラAが“敵よりも”先制行動をとりやすくなる。
先述のサイトにも記載のとおり、
PTを【生者、死者(、死者or生者)】の順に並べてかつ
先頭キャラに『魔神の鎧』を装備させると、先頭キャラが確定先制するという技がある。
これは死亡キャラの扱いと行動順の決定におけるバグ、
そしてさらに素早さが0になるという魔神の鎧の効果が合わさった結果起こるものである。
0に何を掛け合わせても当然0である。
つまり、先頭キャラ(魔神鎧装備)と棺桶キャラは絶対に素早さ(補正後)が等しくなるので
100%バグが発生する=確定先制する、という仕組みである。