« <ドラクエ10> ハロウインとスコルパイド | トップページ | <ドラクエ10> メタル招待券/ペア招待券の使い時を考える »

2018年11月 2日 (金)

ドラクエの謎考察 その185

こんばんは。

ドラクエの裏、歴史、都市伝説、その他の謎に触れるお話し 第185回

・ドラクエにおけるコンピュータと数字の仕様が起こす不思議な現象

ドラクエはコンピュータゲームであるので、あらゆるデータは数値として扱われている。
強さのパラメータに経験値やお金、所持品、その他もろもろが数字として表示される。

そんな中で、ドラクエに登場する数字で意味深なもの、中にはコンピュータゲームで仕様上避けられない数値のルールなどが垣間見れる。

■255

これは、ほとんどの人がご存じかと思うが、コンピュータでは0か1を扱うビットという単位で、内部的な数字を格納している。ドラクエ5以前は、ちからやすばやさといったステータスは最大値が255となる。これは、8bitで表せる数値が0~255であることからで、ドラクエ以外のゲームでも、255が最大値になっているパラメータをもつのは普通にある。

にたようなものに65535という数字があるが、これも16bitで表せる数字の最大値。
ドラクエでは初代1の経験値や、お金の最大所持金額でもある。

ステータス値として、FC版3では、体力が255の時にスタミナの種を与えると桁落ちをおこして0になってしまうという仕様があります。これを利用すると本来の体力値に戻ろうとレベルアップ時に体力の値が大きく上昇し、それに引っ張られてHPが大きく増えるという裏ワザがあります。(FC版3以外では桁あふれしない処置がされているのでできません)

■838861

ファミコン版のドラクエ4で5章でコインを838861枚をたった4Gで買えてしまうという、バグ。これも実はコンピュータで扱う数値の桁落ちに原因がある。

ドラクエ4の5章のコインを買うレートは1枚20G。すると、838861枚を購入すると、本来なら16777220Gになるはずである。
ここで、コンピュータのbitの話が出てくる。すると、2の24乗、すなわち24bitで計算できる最大値が16777216である。これにより、16777216+4=16777220という関係がわかる。

そう、ドラクエ4のカジノコインの代金を計算する数値の変数枠は24bit=3byteがわりあてられていているためで、838861枚購入すると、桁あふれしてたったの4Gになってしまうのである。

■MP1000

ドラクエ6では、ちょうどMP1000になるとMPが減らない状態になり、毎ターンマダンテを撃ちまくったり、強力なMP消費技をつかっても全く減らない。

これ、本来はプレイヤー側は職業補正でMPが4ケタになる場合は999に抑えられる処理がされるのだが、なぜか1000ぴったりになったときだけ999にならず1000になるようになっている。そして、このMP1000という値は、敵が無制限にMPを持つ設定として使われており、その結果、MPを全く減らない状態になるのだ

■HP2047

こちらはSFC版ドラクエ5における、イベント戦闘(いわゆる負けバトル)用に設定されたと思われる。HPが2047になるとHPが一切減らない(どんなに大きなダメージを与えても)状態になる。
しかし、現実には、負けバトルとなる幼年期のゲマなど、HPが無限に設定されておらず、やろうと思えば倒すことも可能である。無敵化の設定だけが残っており、敵のHPが丁度2047になると、一切倒せなくなってしまう。

ちなみに、HPが2047になるためには当然、2047以上のHPをもつボスしかありえない話で、問題となるSFC版5の敵は5種類いる。さらに、ラスボスのミルドラースについては、めいそうでHPが増えるためHP2047のままとどまることはない。
この仕様は、SFC版がリリースされた当時からあったものだが、実際に明確に発覚したのは、10年以上たってからのことだった。

■8逃げ技

FC版ドラクエ4で1回の戦闘で8回逃走したあとに、必ず会心の一撃がでるモードになってしまう裏ワザがある。これも、FC版における戦闘中の状態を制御するフラグが原因となる。

この戦闘中状態を制御するフラグは8bitであり、これらのフラグの中にパルプンテで発動する会心モードフラグや、不思議な霧フラグがある。
戦闘から逃走した回数をカウントするのは最初の2bitである。会心モードフラグは4bit目。
本来、3回逃げるのに失敗した場合、4回目で必ず逃走が成功して戦闘が終わるが、ボス戦など逃走不可の場合は4回目以降のカウントをしてしまうことになり、3bit目や4bit目が更新されてしまう。

4bit目が会心モードフラグなので8回逃走することにより4bit目が更新されフラグが立つことにより起きる現象である。
なお、8bit目が不思議な霧フラグ。そのため、逃げ続けて8bit目まで更新されると呪文が全く使えなくなってしまう。
ちなみに、他のフラグには敵が複数グループいるかどうか(7bit目)、敵を1体でも倒したかどうか(5bit目)、時の砂を使ったかどうか(3bit目)などもある。
そのため、3回逃げて時の砂を使い、さらに1回逃げると(時の砂を使ったことにより3bit目が更新されるため)4回逃げで8逃げと同じ状態になる。

不思議な霧は他のフラグが立っていることも多々あるため、律儀に128回逃げなくても成立させることができる。

今日はここまで。では、またー

« <ドラクエ10> ハロウインとスコルパイド | トップページ | <ドラクエ10> メタル招待券/ペア招待券の使い時を考える »

ドラクエの謎考察」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/574511/67337058

この記事へのトラックバック一覧です: ドラクエの謎考察 その185:

« <ドラクエ10> ハロウインとスコルパイド | トップページ | <ドラクエ10> メタル招待券/ペア招待券の使い時を考える »