8逃げとは、FC版ドラゴンクエストIVに存在するバグ技である。
戦闘において、「逃げる」コマンドを選択した回数が8回以上になると、それ以降の味方の攻撃が全て会心の一撃になるというもの。
1回の戦闘で「逃げる」を2回以上使うためには「逃げる」に失敗する事が必要だが、通常の雑魚戦では「逃げる」に失敗するのは最大3回であり、4回目には必ず成功するようになっているため、何度やっても確実に失敗するボス戦でのみ使う事が出来るバグ技である。
この技を使うと打撃力が桁違いに強化され、ラスボスであるデスピサロをも簡単に撃破出来るようになるため、クリアに困った当時の小学生にはこの技のお世話になった子も少なくない(はず)。
カジノコイン838861枚の技と並んで最も有名なDQ4のバグと言える。
このバグ技は、「逃げる」回数のカウントとパルプンテなどで生じる特殊効果の有無を管理が同一のアドレスで行われている事に起因する。
先述の通り4回目までに必ず逃げられる仕組みであるため、「何回逃げるを選択したか」をカウントするようになっている。しかし4回目以降のカウントをする必要が無いため、このアドレスの数字のうち下位2ビットを逃げる回数のカウントに、3ビット目以降を特殊効果の管理に割り当てていたのである。
かくして同じアドレスで2種類の数値が管理されていた訳だが、どうやら開発陣は「逃げるが必ず失敗し逃げるカウントが4以上溜まる場合がある」事を見落としていたようで、ボス戦の逃げられない仕様を利用して逃げるカウントを溜め続けると、特殊効果の管理に使われている桁まで逃げるカウントの数値がはみ出してしまう事態が発生。
ふ し ぎ な き り |
ま も の の む れ |
不 明 |
敵 を 倒 し た |
ち か ら が み な ぎ っ て き た |
時 の 砂 使 用 済 み |
逃 げ る カ ウ ン ト |
|||
逃げる 試行 回数 |
|||||||||
0 | 0 | 0 | 0 | 0 | 0 | 0 | 00 | ||
1 | 0 | 0 | 0 | 0 | 0 | 0 | 01 | ||
2 | 0 | 0 | 0 | 0 | 0 | 0 | 10 | ||
3 | 0 | 0 | 0 | 0 | 0 | 0 | 11 | ||
4 | 0 | 0 | 0 | 0 | 0 | 1 | 00 | ここから開発陣考慮外 | |
5 | 0 | 0 | 0 | 0 | 0 | 1 | 01 | ||
6 | 0 | 0 | 0 | 0 | 0 | 1 | 10 | ||
7 | 0 | 0 | 0 | 0 | 0 | 1 | 11 | ||
8 | 0 | 0 | 0 | 0 | 1 | 0 | 00 | 8逃げ |
そして、「アドレスの(2進数での)4桁目が1であるか0であるか」で管理されていたのが「パルプンテの『ちからがみなぎってきた』状態であるかどうか」であったため、逃げるカウントの溢れで4桁目を強制的に1にしてしまうと、パルプンテを使ってもいないのに『ちからがみなぎってきた』状態になってしまうのである。
同様の理屈で、128回逃げると「ふしぎなきりがあたりをつつむ」状態になる。(呪文が全てかき消される)
ちなみに、8回を超えても逃げるを繰り返しカウントを増やし続けて行くと、16回逃げたところでアドレスの4桁目がまた0になるため、会心の一撃が出なくなる。(パルプンテで実際に『ちからがみなぎってきた』状態になっていたとしても、みなぎっていない状態になってしまう)
なおこの技は初回出荷分のROMでしか出来ない。第2版以降のROMでは修正されている。
…が、存在するDQ4のソフトは殆どが初回出荷分であり、バグが修正されているDQ4のソフトはごく僅かであるため、「初回出荷分でなくても出来る」と言う間違いが稀にある。どっちでも大差無いが…。
掲示板
47 ななしのよっしん
2023/05/21(日) 10:51:34 ID: vTMdP0FbMi
>>46
ファミコンの実装は知らんが、普通であれば0b11111111から+1加算をすると(前後のメモリの値は変わらずに)キャリーフラグが立って0b00000000に戻る。
これは逃げる回数と力がみなぎってきたフラグを同じ1byte内に押し込めらてたからこそ可能だった技なんだと思う。
48 ななしのよっしん
2024/03/05(火) 11:52:03 ID: BtJN1XRmzM
1byteをビット単位でフラグとして管理してたのが
「メモリ不足でやらざるを得なかったリスクの高いやり方」みたいに書かれてるけど、
当時のプログラミングはむしろこのやり方が普通。
もちろんメモリが少なかったせいというのはその通りなんだけど、1byte=8bitは単に8個分のON/OFFスイッチでしか無いし
1bitで済むフラグのために1byte丸々使う(残り7bitを捨てる)なんて無駄だし無意味。
ソフトだけじゃなくてハードウェアI/Oもこういう8bitが色んなスイッチになってるやり方なので、別に特別な手法でも何でもない。
49 ななしのよっしん
2024/03/08(金) 10:21:25 ID: 5fxiL7m419
思えば敵のMPが255の場合に無限扱いになってたのも、元々は節約の一環だったんだろうな
急上昇ワード改
最終更新:2024/10/07(月) 02:00
最終更新:2024/10/07(月) 02:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。