突然だが、ゼルダの伝説(時オカ)の海外版にはMaster Questバージョンというものが存在するのだがご存知だろうか。 これの動画はYOUTUBEにも数多く見受けられる。(ttp://www.youtube.com/watch?v=0uZYQi4_PNg等) 更にこのROMには、開発者向けのデバッグ機能を標準搭載した、海外で一般に"Debug ROM"と呼ばれるものがある。 このROMには、強力な改造ツールがある。cooliscool氏による「Utility of Time」である。 これにより、マリオ64の改造ツールでも成し得なかった、オブジェクトの変形から地形の改造までもが可能となる。 素晴らしいツールなのにあまり議論されていなかったので、このスレで使用方法のあらすじを説明していく。
2 :
↓必要なものたち↓ 1.Debug ROM (Legend of Zelda - Ocarina of Time - Master Quest (Debug Version) のこと。) →詳細については、ttp://multiftp.free.fr/z64/dbgrom/Ocarina_Of_Time_-_Debug_Version.htmを参照のこと。 例によって、吸い出しで入手。(だが、一部のけしからんサイトでは配布してたりする。違法なので却下。) 2.Utility of Time 一式 →残念なことに、配布元がこの間閉鎖となった。よって補完↓ ttp://www.megaupload.com/?d=6U6MT7NG また、ttp://jp.youtube.com/watch?v=h_2-Lsqi7z0には使い方の紹介もある 3.Zelda Edit 一式 ttp://www.megaupload.com/?d=IHATV5SO →Debug ROMには一部不具合があるため、それを修正する。更に、簡単な改造も出来る。 4.Microsoft .NET Framework 2.0 →Zelda Editの動作に必要。マイクロソフト公式HPからDL可能。 5.「Zファイル」一式 →これは、ROM内のオブジェクト・マップ等のデータを抜き出した、「.zobj」や「.zmap」といった拡張子のファイル。 Utility of TimeまたはZelda Edit内の「Resource Extractor」で抜き出す。 ※後述の配布サイトからDLすれば、Debug ROM無しでも入手可能。 6.Project64 言わずと知れた64エミュ。プラグインの追加で機能アップが可能であり、ビデオプラグインについて後述する。 Utility of Timeと連動し、ワンクリックでDebug ROMを読み込み可能。 7.若干の英語の知識・・・といっても、ゆとりでも辞書さえあれば十分読解可能なレベル。 ツールやテキストのほぼ全てが英語なので。日本語化パッチがあれば便利だが、今のところ無い。誰か作って・・・。
3 :
↓Utility of Timeを使った改造の流れ↓ 1.Utility of Timeを使うために、まずはZファイルを用意しなければならない。 Utility of Timeフォルダ内にも「ZRE.exe (Zelda Resource Extractor)」が用意されているのだが、 Zelda Editフォルダ内の「Resource Extractor.exe」の方が単純で分かりやすいかと。 まず、パスに日本語が入らないように適当なフォルダを作成し、そこにDebug ROMを置く。 次に、Debug ROMをResource Extractor.exeにD&Dし、何かキーを押す。 すると、そのフォルダ内に膨大な量のZファイルが作成されていき、最終的に計115MBくらいになる(汗) …実は、配布サイトも存在する(ttp://multiftp.free.fr/files/zdbg/)。 ※サイトから.zmapファイルをDLする場合、そのファイルの上方に同様の名前の.zsceneファイルというものがあるので 一緒にDLしておくこと。 2.Debug ROMの不具合を修正しておく。 Zelda Editフォルダ内のslimbswap.exeを起動する。Load ROMからDebug ROMを選択し、「Big Endian」にチェックを 入れたら、「Swap ROM」をクリック。これでDefault ROMをビッグエンディアンにスワップ完了。 次に、Zelda Edit.exeを起動したら、「ROM Fixes」をクリック。すると、別窓でROM Fixesツールが立ち上がるので File→Load ROMからDebug ROMを選択する。あとは、「Apply All Fixes」をクリックすれば修正完了。 3.Utility of Timeを起動する。 初回起動時には、Setup画面が出る。ここでは、Project64.exeを指定した後、 Default ROM to write toでDebug ROMを指定しておく。Dump textures toは適当に指定。 OKをクリックしてメイン画面になったらOpenからZファイルがあるフォルダを開く。 ここで、「ファイルの種類」により改造する対象が変わる。 Actors(*zobj) : オブジェクト。例えば、壷やルピーや木なんかの形を弄りたい、とか。 Levels(*zmap) : マップ。地形や、マップ上の物・人・敵等を改造できる。 Miscallaneous Data(*zdata) : ???。以前弄ったが、よく分からなかったorz Levels(*zmap)については、選択するとZelda Scene Files(拡張子.zscene)ファイルの選択画面になるが、 ここでは選択したLevels(*zmap)ファイルと同様の(種類の)名前のZelda Scene Filesファイルを選択する。 Zファイルの名前は省略されているものが多く分かりにくいが、改造したい対象の名前を英語に変換した時の 頭文字やローマ字から連想して探していく。 (例えば、アイアンナックの.zobjファイルを開きたい場合、アイアンナック=Iron Knuckleなので、 頭文字のIKを探していくとik.zobjが見つかる。これがアイアンナックのオブジェクトデータ。) ただし、スタルフォス(⇒sk2.zobj)のようにかなり見つけにくいものも。 4.改造していく。 改造していくには、カメラワークや数値変更等の操作が必要となってくる。基本操作については後述とした。 使っているうちに徐々に慣れていくと思う。 また、.zobjファイルを開くと、下の方に「Select an entry point」というメッセージが赤く点滅する。 これは、一度に.zobjファイル内のデータ全体をレンダリングしてしまうとごちゃごちゃして弄りにくいため、 データを「パーツ」毎に分解して、それをEntry Pointで選択する仕組みである。もちろん、複雑なオブジェクト ほどパーツが多いためEntry Pointもおのずと多くなる。 リンクのオブジェクトデータであるlink_child.zobj(子供)とlink_boy.zobj(大人)については、Entry Pointごとの パーツの部位をまとめたリストをUtility of Timeフォルダ内のData Baseフォルダ内に収録してあるので、 それを参照すると効率的である・・・と思われ。 5.ひととおり改造を終えたらセーブする。 .zobjファイルの場合、Saveを押すと.zobjファイルが上書きされたとのメッセージの後に、変更をDebug ROMに 今すぐ適用するかどうか確認が出る。適用する場合、適用範囲を入力するテキストボックスが現れるが、 ここには「XXXXXXXX(←選択した.zobjファイルのStart Offset) - YYYYYYYY(←選択した.zobjファイルのEnd Offset)」 のように入力する。例えば、object_link_child.zobjを改造した場合、「01014000 - 01040F80」となる。 Start OffsetとEnd Offsetについては、ZObjects Data Baseというものを作成してみたのでそちらを参照。 (Utility of Timeフォルダ内のData Baseフォルダ内に収録) .zmapファイルの場合にはファイルの上書き確認の後ROMへの適用確認が表示されるので「はい」でROMに反映する。
4 :
↓Utility of Timeの基本操作↓ Alt+hで見れるが、とりあえず。 1.カメラワーク 主にW・S・A・Dキー、たまにQ・Eキーを使用する。W=前進、S=後退、A=左移動、D=右移動。 Q・Eキーは画面をXY平面上で原点中心に(?)回転。 2.マウスツール Actor Moverは、.zmapファイル改造時にブラックボックス(Actor)を移動するためのツール。 これにチェックを入れた状態でActorをクリックすると選択できる。習うより慣れよ。 Vertex Editorは、.zmapや.zobjで地形あるいはオブジェクトを弄るツール。こちらも実際に弄ってみるほうが良し。 Camera Onlyはそのまんま。カメラ操作のみ可能となる。 3.Show/Hide Tabs 細かな設定をするタブを呼び出す/隠す。 Actor Options Actors : ここでActorを変更することにより人や敵等を変えることができる。 (Utility of Timeフォルダ内のOoT Actor Data Base参照。) Position : 座標を入力することでActorの位置を細かく調整できる。 Level Options Environment Flags : マップ上の環境設定。 Ambience : マップ上での時間とBGMが変更できるらしい。 Graphics Texture Viewer : 使用されているテクスチャ一覧が表示される。・・・変更可能なんだろか?? Vertices : オブジェクト上の選択されているポインタの座標。これも座標入力で微調整可。 4.PJ64 Setupであらかじめ設定しておくと、クリックするだけでProject64が立ち上がり、Debug ROMの読み込みが開始される。 5.その他 Insert・Deleteキーは、現在レンダリングされているオブジェクト全体のスケールをそれぞれ2倍・1/2倍する。 ・・・Scene TableとVRMLは正直なところ分かりませんorz
5 :
↓その他↓ Debug ROMを修正しても、ステージによってはグラフィックに不具合が生じる(テストマップとか)。 そこで、Project64のビデオプラグインをRice's Video Pluginに変更する。 ※バージョンは6.1番台が良いらしい。↓からRiceVideoSetup.exeをダウンロードし、ウィザードに従ってインストール。 ttps://ricevideo.bountysource.com/downloads Project64の「Plugin」フォルダ内に、インストールしたRiceVideo.dllとRiceVideo6.1.0.iniを置くこと。 Project64のOptions→Settingsを開いて、OptionsタブのHide Advanced Settingsのチェックを外しておく。 すると、Settings内に隠れていたタブが表示されるようになる。 Pluginsタブ→Video(graphics)pluginを、デフォルトのJabo's Direct3DプラグインからMudlord's Rice Videoプラグイン に変更し、OKをクリック。これでRice's Video Pluginが適用された。 しかし、これを導入しただけでは表示されない部分もあるので、適切な設定をしていく。 Options→Configure Graphics Pluginを開き、General Options内のHide Advanced Settingsのチェックを外しOKをクリック すると詳細な設定が可能となる。ここでの設定を以下のように変更する。 Texture Enhancementタブ→Full TMEM Emulation : On Texture Enhancementタブ→Load hi-res textures if available : Off Game Default Optionsタブ→Accurate Texture Mapping : On Game Default Optionsタブ→N64 Frame Buffer Emulation : Basic Framebuffer & With Emulator Game Default Optionsタブ→Rendering to Texture Emulation : Basic Render-to-Texture Game Default Optionsタブ→Try to save VRAM : On 以上の設定変更が完了したらOKをクリック。これで、表示に不具合のあったステージも改善されたはず。 (実は、ハイラル平原の道の表示に不具合が発生する。改善策があれば報告よろ。)