64 ゼルダエンジン

64 ゼルダエンジンは、時のオカリナとムジュラの仮面両方に使われているメインシステムである。

64 ゼルダエンジンではシーン・ルーム(マップとよばれることもある)・アクターと呼ばれる要素を使用している。この 3 つはスピードランと強い関連がある。

  • シーンは各地域の全体の情報を含んでおり、複数のデータを入れる箱のようなイメージである。
  • ルームはシーンを小さい区画に分割したものを表すデータである(たとえばダンジョンの 1 部屋は 1 区画に相当する)。
  • アクターはゲーム全体を構成する NPC や干渉可能な物をさす。

シーン

シーンは同時に 1 つしか読み込まれない。シーンは 1 個から 32 個までのルームデータを格納することができるが、1 番大きいダンジョン(魂の神殿)でもルームデータ数は 29 個である。

例えば、コキリの森は 3 つのルームに分かれている。

  1. 村エリア
  2. コキリの剣が入手できる迷路エリア
  3. デクの樹がいる広場エリア

シーンは地形を表すポリゴンメッシュを含むデータで、各地域の地形データはシーンが管理している。そのためシーンデータが読み込まれると必ず地域全体の地形情報もロードされる。よって「ロードされていないように見える」部屋に入っても地面の下に落ちることはない。

シーンは各地域の出口データも含んでおり、この出口を表す部分に触れると次のシーンが読み込まれる。出口はシーンの地形ポリゴンメッシュの一部として扱われており、中を通り抜けると出口の機能が呼び出される仕組みになっている。また、出口もシーンに含まれているデータであるため、ルームデータが読み込まれておらず出口が目に見えない状態であっても、出口があるはずの場所を通れば出口を使うことができる。

例えば、現在コキリの森にいるとして、読み込まれているルームが「村エリア」であったとしても、デクの樹の口があるはずの場所まで行けばシーン「デクの樹サマの中」へ移動することができる。

出口は触れることができればいつでも使うことができると考えて良い。出口の機能を使えないようにするには地形かアクターで塞ぐしかない。

一部のシーンではルーム同士を繋げずに切り離すことで、別の場所であるかのように見せている。シーンは全ルームの地形データを含んでおり、また出口は地形データの一部であるため、理論的にはこの仕組みを利用し、入ってきた所とは別のルームで使われている出口から出ることができる。ロングワープ (Wrong Warp) と呼ばれている技だが、後に発見されたロングワープバグ (Wrong Warp Glitch) とは別物である。

以下はルームの切り離しが利用されているシーンの簡易リストである。

時のオカリナ

  • 穴・隠し穴
  • ロンロン牧場の家と貯蔵庫、ただし馬小屋は含まない。

ムジュラの仮面

  • 妖精の泉
  • 穴・隠し穴

たとえばムジュラの仮面には、妖精の泉ロングワープと呼ばれる技がある。これは妖精の泉の「ルーム」間をホバリングで移動することで別の場所へ一気に移動できるという技である。

ルーム

ルームは基本的にはシーンの 1 区画を表すデータである。ルームはグラフィックデータを含んでおり、ルームによってはロードするアクターのリストを含んでいるものもある。ルームは同時に 2 区画分まで読み込めるが、1 度に 2 つのルームが読み込まれるのは、通常ルーム間を移動するときのみである。

「黒色のルーム移行アクター」の中を同じ方向に向かって何度も通り抜けると、アクターを複製することができる。やり方はまずホバリングでルーム移行ゾーンの上を飛び越えて、ロードされていない状態のルームに入る。そしてルーム読み込みが行われるポイントを通ってホバリングを始める前のルームに戻るとアクターが複製される。この方法を使えば一部のハートのかけらや黄金のスタルチュラのコピーを生成することができ、1 箇所から複数のハートのかけら及びスタルチュラが入手できる。

ルームに関する不思議なバグはもう 1 つ発見されている。井戸の底の中央の部屋にて、小さな穴を抜けた後カメラが固定している間にドアを開けると、ウォーキング・ホワイル・トーキング (Walking While Talking Glitch) に似たバグが発生し、これはロードバグ (Actor Glitch) と呼ばれている。このバグが発生すると本来いるはずの奥の部屋が通常通り読み込まれるにもかかわらず、中央の部屋のグラフィックメッシュもロードされたまま残るという状態になる。さらに、リンクは元からいた中央の部屋側にいる状態のままとなる。

アクター

アクターはゲーム全体を構成する NPC や干渉可能な物である。時オカには様々な種類のアクターがあり、アイテムやブロックなどのダンジョン用オブジェクト、敵、キャラクター、効果音や光などの環境エフェクト、そしてダークリンクの部屋にあるような複雑な仕掛けなど、多岐にわたる。

不要な描画処理を省略するため、アクターには描画のオン・オフを切り替えるためのフラグデータが使われている。このフラグは、カメラとアクター間の距離、そしてカメラの向いている方向によって切り替わる。しかし一部のアクターはこのフラグがオフになっていると動作の処理も同時に省略される。これが原因で様々な「見なければ何も起きない」バグが発生する。

これを利用した 1 つ目の例は、ウォーキング・ホワイル・トーキングを使って森を出ることができるというテクニックである。ウォーキング・ホワイル・トーキングをコキリの森で発生させると、カメラが小さな穴の隣にある看板に固定される。カメラが固定されている間は森の出口を塞いでいるコキリの少年の処理が進まなくなり、また出口をふさぐ見えない壁も現れなくなるため、森を出ることができるようになる。

2 つ目の例は 0, 0, 0 バグと呼ばれるもので、上記のアクターの処理が進まなくなる現象によって発生するバグである。新しいエリアに入った時はまだスタルチュラの当たり判定位置が正しく設定されておらず、カメラの視界内に入った時に初めて正しい位置に設定される。エリアに入った時の当たり判定位置は代わりに 0, 0, 0 座標にセットされる。これを利用して、巨大邪神像にいるスタルチュラは 0, 0, 0 座標付近に爆弾を置くことで倒すことができる。

アクターに関係のあるバグは、もう 1 つ「ハイラル平原バグ (Hyrule Field Glitch)」と呼ばれるものがある。ハイラル平原で発生しやすいバグであるためそう呼ばれているが、他の場所でも起こることがあり、iQue 版では特に発生しやすい。このバグはメモリ領域の不足によって新たにアクターを読み込めなくなるのが原因である。以下のような状態に陥るとこのバグが発生する。

  • 単純な領域不足によって新たにアクターを読み込めなくなる。
  • 空き領域は十分にあるが、空き領域の各ブロックのサイズが小さすぎてアクターを読み込めない。
  • ガノン城では、結界のビームアクターは中央の部屋を出ても消去されない。したがって大量にビームのコピーを増やすことが可能であり、これによりメモリ領域不足が発生する。

爆発や矢などのアイテム用のプログラムデータはアイテムを使用する瞬間に初めてメモリに読み込まれるため、メモリ領域不足状態が発生している時はこれらのアイテムが使えなくなることがある。

Last updated 01/16/2017 – izu