スーパーマリオ256ワールドの原理について




●はじめに...



 マリオの最大の謎とも言える、256Wの存在...。この256Wに関しては、当時様々な議論が有りました。ひとつには、マリオ256ワールドがバグかどうかという話がありますが、これはバグではありません。通常のプレーでは行けないのですから...では、256ワールドは作者が前もって用意した物か?...というのも違います。256ワールドはマリオのシステムが生み出した、別次元の世界のような物です。以後、何故256ワールドが存在するのか、について書きますが、(なるべく解りやすく書くつもりですが..)きっと理解しにくい文章になるとは思います。でも、辛抱して付き合って下さいネ...。



●わかりやすく言うと...



 intelのCPUである、Celeron 300Aが、内部クロックを上げて、450MHzで動いたとしましょう。これはメーカー保証外ですが、動けば儲け物。元々Celeron 300Aは450MHzで動く潜在能力を持っていた訳です。しかし、メーカーがPentium2との兼ね合いで、わざと能力を制限して出荷したのです。これと同じ事がスーパーマリオ1にも言えます。元々ワールドには256個(8ビット処理)の入れ物が有りますが、出荷時には8個の入れ物しか使用できない様に制限を加えました。しかし、この制限をなんらかの方法でかいくぐると、256ワールドに行ってしまうのです。



●制限を越えて、新しい禁断の世界が広がり...



 その制限は、「ワールド8をクリアしたらワールド1に戻る」というわずか2バイトの命令です。通常はワールド1からしかゲームは始められないのですから、これで完璧な筈なのですが...実際にこの命令をエディターで取り除くと、自由に256ワールドに旅立つ事が出来ます。そこはまさしく禁断の世界。全く作者の意図していない面が繰り広げられます。時には、ワールド1から8には出現しないキャラクターまで出てきたりします。(スーパーマリオブラザーズオリジナルマップ作成講座のコマンドの説明参照)



●これらの世界の生い立ちは...



 ではこれらのマップはどの部分をデータとして読みに行き、表示されているのでしょうか?オリジナルマップ作成講座の面データの開始位置の指定方法にある通り、面データの指定は、パラメーターで3重指定方式になっています。面を作った後で、面のつながりや順番を容易に変更出来る様にするためです。(実際はここを変更しただけでは、ワールドの変更は上手く行かないのだが...) ここの8つ分の正規のワールドとして割り当てられた、8バイトのパラメータの後に続く別の領域が、9〜256ワールドとして認識されています。つまり、ワールド9はその次の1バイトに割り当てられますから、実際には1番目のエリアデータ(原本ではワールド1のエリア1の始まりのルームNo指定領域)が有る部分が認識されている訳です。つまり、全く別の部分がワールドの始まり部分の指定に使われている訳ですから、デタラメな面が出来て当然なのです。



● −1面で説明すると...



 カセット版−1面は7−2面の水中ステージと同じですが、何故同じ内容になっているのでしょうか?−1面はマイナス1面と呼ばれていますが、実際にはスペース(空白)−1面で、このスペースというのは、マリオ1の場合、36番目(10進数)に割り当てられたコードです。ファミコンの場合、いわゆるパソコンのようにアスキーコードでは無く、任天堂コードという独自のコード体系が使われています。これは、最初の10個は0からから9までの数字が使われており、以下はゲームによってグラフイックに使うパターンなどが割り当てられています。マリオ1では、0から9の次はA〜Zのアルファベットが使われており、その次のパターンが空白になっています。即ち、−1面は36−1面の事です。スーパーマリオブラザーズオリジナルマップ作成講座の面データの場所指定方法の項にある、(1)の各ワールドが何番目のエリアから始まるかを指定する部分には、8ワールド分しか領域を取っていませんが、9ワ−ルド以降は、順次その下位の番地を参照してゆきます。即ち。ワールド36の指定部分は、(1)の領域の始まり部分を1バイト目とすると、36バイト目に有るという事になります。36バイト目は33(16進数)となっていますので、「ワールド36は33番目(16進数)のエリアから始まる」という意味になります。次に(2)の各エリアがどのルームNo.から始まるかを指定する部分の33バイト(16進数・エリア番号は00から数える)目は、01となっています。即ちこれは、「33番目(16進数)のエリアはルームNo.01から始まる」という意味になります。ところで、ルームNo.01はこの33番目のエリア以前にも2回使われており、丁度07番目のエリア(2−2の指定部分)と1D番目のエリア(7−2の指定部分)に使われています。なお、−1面の敵データが、7−2の方になる理由は、マリオ工作員さん達のページのスーパーマリオブラザーズ解析結果報告を参照して下さい。


カセット版マリオ1の面データ開始位置指定部分
(1)の領域9CB4番地00050A0E13171B20
(2)の領域9CBC番地2529C02660282901
2762243520632229
412C612A3126622E
232D603329012764
303221651F061C00
7097B0DF0A1F597E
9BA9D0011F3C517B
ワールド1の各エリアがどのルームNo.から始まるか指定している領域
ワールド2の各エリアがどのルームNo.から始まるか指定している領域
ワールド3の各エリアがどのルームNo.から始まるか指定している領域
ワールド4の各エリアがどのルームNo.から始まるか指定している領域
ワールド5の各エリアがどのルームNo.から始まるか指定している領域
ワールド6の各エリアがどのルームNo.から始まるか指定している領域
ワールド7の各エリアがどのルームNo.から始まるか指定している領域
ワールド8の各エリアがどのルームNo.から始まるか指定している領域

●カセット版 −1面は何故クリア出来ないか?



 では、2−2面や7−2面は、水中部分の土管に入ると、地上に出てゴールする事が出来ますが、カセット版−1面ではゴール出来ません。これは、土管などでの各ルームの移動命令にワールド指定が含まれているからです。(スーパーマリオブラザーズオリジナルマップ作成講座の第1バイト下位がEの場合の敵キャラコマンドの項参照)何故このような処理を入れているかというと、情報量を節約するため同じ敵データを違うワールドで使ったとしても、ワールド2ではこのルームに移動し、ワールド3では別のルームに移動させる...というような事が出来るようにするためです。(特にボーナスステージを各ワールドで共有するために、この処理は絶対必要だった)ルームNo.01の敵データの移動命令をファミコンカセット版で探すと、A173番地より、
2E 25 2B
2E 25 4B
4E 25 CB
と3つの命令が見つかります。
これは上から、
ワ−ルド2において、(当ページの横位置2が画面右端から2キャラ先にスクロールアウトした以降は) 土管等に入ると、ルームNo.25の0Bページ目に移動させる
ワールド3において、(当ページの横位置2が画面右端から2キャラ先にスクロールアウトした以降は) 土管等に入ると、ルームNo.25の0Bページ目に移動させる
ワールド7において、(当ページの横位置4が画面右端から2キャラ先にスクロールアウトした以降は) 土管等に入ると、ルームNo.25の0Bページ目に移動させる
という意味です。(ワールド3の命令が残っているのは、かつてワールド3に水中面が有ったのかも知れない) 即ち、−1面では移動命令が無いため、同じルームの0ページ目に戻されるので、マリオはその場をさまよう事になるのです。



●256ワールド分、楽しく遊べるマリオは作れるか?



 256ワールド全てに対し、各4エリア作ったとして、合計約1,000エリア作らなければなりません。しかし使えるルーム数は、トンカチマリオでも64部屋×4種類ですので、(1の原本ではせいぜい36部屋程度)256ワールドすべて違う面を作るのは難しいでしょう。9ワールド以降の一部の面を作り、ワープゾーンでワープさせるなどして、エキストラステージ的に使うのが良いと思います。



●マリオ1(カセット版・ディスクシステム版)256ワールドのデータ集



ルームNo. 面の種類 画面写真 内容
カセット版
9−1面
No.06 水中面 運よくフリーズしなければ、
9−2まで遊べる
(多分)
ディスク版
マイナス1面
(36−1面)
No.09 水中面 ピーチ姫が2回登場、半クッパも、
このサービス精神の旺盛さは、
意図して作ったものかも?
−2、−3もプレイ出来る。




●まとめ...



 マリオ1は、バグ?が多いという一面が有り、開発者はそれを嫌う傾向にあります。そこで、マリオ2ではそのうちの幾つかのバグ?が起こらないように改造されています。しかし、マリオ1のバグは裏技とも言える楽しい物ばかりで、単にゲームをクリアするにとどまらず、無限の楽しみを私たちに与えてくれます。また、あまり知られていない裏技がまだ沢山隠されており、これらを「スーパー真理ブラザーズ」で明らかにする事が、私のライフワークのひとつになっています。このマリオ1の不完全さが、このゲームの大きな魅力のひとつで有り、私を含めた多数の人々がその魅力に取り付かれています。この様な色々な面での楽しさを与えてくれるゲームを私は他には知りません。改造を初めて10年以上経つ今でも、新しい発見をする度に、このゲームの奥の深さを実感し、感動させてくれます。これからもマリオ1は私たちを不思議の世界に導き続けてくれる事でしょう...この256ワールドの様に...


 I LOVE MARIO 1

これからも新たなる発見を目指し...


「スーパーマリオブラザーズのページトップ」



本文中の会社名または商品名は各社の商標または登録商標です。


ホームページ