図面番号 HS-2011-04 // 手順 1–4 説明シート
手順 1–4 // 検証済み v2.0.11必須 DUMP: 0400486024DEC000 v131072(e0f3ccfa)

Hookshot 導入手順・Switch 2 ダンプ検証・設定一覧

Windows 10/11 x64 または Linux x86_64(Steam Deck を含む)で Hookshot v2.0.11 をセットアップするには、この4段階のエンジニアリング手順に従ってください。NotRexed/Hookshot はクリーンルーム方式の静的リコンパイルであるため、まず『ゼルダの伝説 Ocarina of Time』の復号済み Nintendo Switch 2 ダンプ(Title ID 0400486024DEC000、パッチ v131072 適用済み、ExeFS main NSO SHA-1 プレフィックス e0f3ccfa)を verify し、HookshotBuilder を実行して RomFS アセットの抽出とネイティブ実行ファイルのコンパイルを行い、お使いの GPU VRAM 容量に合わせてゲーム内 Insert / F1 グラフィックスオーバーレイを調整した上で、scripts/oot_saves.py 経由でセーブデータを管理・移行する必要があります。

FIG 4.0 // SETUP & VRAM PRESETSNotRexed/Hookshot · v2.0.14
Switch 2 Title ID 0400486024DEC000 v131072 の検証、HookshotBuilder アセット抽出、Insert/F1 VRAM プリセット、および oot_saves.py 移行を示す Hookshot v2.0.11 セットアップガイドの図解面。
図 4.0 — Hookshot v2.0.11 ダンプ検証パイプライン、Insert/F1 グラフィックスオーバーレイ、および VRAM ティア割り当て(4 GB から 10+ GB)
手順 1〜4 // 必須のインストールおよび設定順序必要ディスク容量: 展開済み RomFS 約 26.2 GB · ビルド時間: 10〜45 分

4ステップ Build &設定レール(手順 1〜4)

手順 01 // DUMP の検証SHA-1: e0f3ccfa…

Switch 2 ダンプの検証(Title ID 0400486024DEC000 v131072)

正規にダンプした Switch 2 リメイク版 Ocarina of Time を、単一のマージ済み .nup バンドル、または romfs/ と exefs/ を含む展開済みディレクトリとして用意します。Hookshot は7つのダンプシグナルを検査し、アップデート v131072 適用済み・ExeFS main NSO ビルド ID e0f3ccfa56256410941279ef0b2501356be2222c の Title ID 0400486024DEC000 を要求します。

TitleID 0400486024DEC000 / v131072
Build ID e0f3ccfa56256410941279ef0b2501356be2222c
手順 02 // ビルダーの実行初回のみ 10–45分のビルド処理

HookshotBuilder.exe (Windows) または AppImage (Linux) の実行

Windows では、HookshotBuilder.exe をASCII/UTF-8書き込み可能なフォルダ(v2.0.11 で非ASCIIパス問題#1176修正済み)に配置してダンプを選択すると、自動的に builder-parts を取得してhookshot.exeをコンパイルします。Linux/Steam Deck では、chmod +x Hookshot-v2.0.11-x86_64.AppImage を実行して起動し、work/dump/の展開とバイナリのリンクを行います。

HookshotBuilder.exe / AppImage --extract
Hookshot バイナリ+assets/フォルダを生成
手順 03 // INSERT / F1 オーバーレイホットキー: INSERT または F1

グラフィックプリセット、アップスケーラー(DLSS / FSR 3.1)、操作設定

ゲーム内で Insert または F1 を押して Dear ImGui 設定オーバーレイを開きます。お使いの物理 VRAM に合わせて graphics_preset を設定し(Low = 4 GB、Medium = 6 GB、High = 8 GB、Max = 10+ GB)、Native TAA、NVIDIA DLSS、AMD FSR 3.1、または Intel XeSS を選択し、目標フレームレートを 60/120 FPS に設定して、SDL3 コントローラーのボタン表示とジャイロ照準を設定します。

graphics_preset / upscaler_mode / fps_limit
Medium プリセット · 60 FPS · Native TAA / FSR 3.1
手順 04 // セーブデータ移行save_00.sav – save_02.sav

scripts/oot_saves.py によるセーブデータのバックアップ&変換

Hookshot は3つの64 KB手動セーブスロット(save_00.sav ~ save_02.sav)と autosave.sav を %APPDATA%/Hookshot/saves(Windows)または ~/.local/share/Hookshot/saves(Linux)に保存します。python scripts/oot_saves.py を実行することで、自動バックアップを取りながら Hookshot と Switch 2 エミュレータ(Lichii、Eglantine、Orchid、NX2navi)間でセーブデータを双方向に移行できます。

scripts/oot_saves.py (export-json / import-json / verify)
%APPDATA%/Hookshot/saves または ~/.local/share/Hookshot/saves
KPI-SET-01 // TITLE IDENTITY
0400486024DEC000
必要な Switch 2 Title ID
マージ済みパッチ v131072(v1.0.2アップデート)が必須
KPI-SET-02 // NSO BUILD ID
e0f3ccfa
ExeFS main NSO SHA-1 プレフィックス
フルハッシュ: e0f3ccfa56256410941279ef0b2501356be2222c
KPI-SET-03 // IN-GAME OVERLAY
Insert / F1
リアルタイムグラフィック&入力メニュー
Low〜Max VRAM プリセット、DLSS/FSR 3.1/XeSS、および 60〜120 FPS の調整
KPI-SET-04 // SAVE CONVERTER
oot_saves.py
双方向セーブ変換ツール
Hookshot と Switch 2 エミュレータ間で64 KBの save_00.sav ファイルを相互移行
設定&操作台帳 // 検証済み10項目

ゲーム内全設定項目(Insert / F1)、ダンプキー&セーブパラメータ

全10件の設定項目をセットアップ段階またはメニュータブ(1. アセット抽出、2. グラフィックタブ (Insert / F1)、3. 操作&カメラタブ、4. セーブ管理)ごとに絞り込めます。各行には対応する hookshot_options.ini / CLIキー、設定可能値、初期値、VRAM への影響を記載しています。

設定項目 / 処理ステップSection設定キー / コマンド設定可能値初期設定値VRAM / ディスク負荷および関連情報
Switch 2 正規ダンプ検証(0400486024DEC000)HookshotBuilder は RomFS アセットを抽出する前に、パッチ v131072(v1.0.2)適用済みの Title ID 0400486024DEC000 を検証し、main NSO ビルド ID e0f3ccfa56256410941279ef0b2501356be2222c をチェックします。
1. アセット展開TitleID 0400486024DEC000 / v131072NSP、XCI、または展開済み RomFS + ExeFS フォルダBuild ID e0f3ccfa56256410941279ef0b2501356be2222c
なし(ディスク上の検証処理のみ)
HookshotBuilder GUI および CLI アセット生成Windows では HookshotBuilder.exe、Linux では chmod +x AppImage を実行し、ネイティブ Hookshot 実行ファイルと同じ階層のassets/フォルダへ RomFS アーカイブを展開します。
1. アセット展開HookshotBuilder.exe / AppImage --extractGUI ウィザードまたは CLI --romfs <dir> --out assetsHookshot バイナリ+assets/フォルダを生成
再パック中に約 14 GB の空きディスク容量が必要
グラフィックス Quality & VRAM ティア別プリセット4 GB から 10+ GB の GPU 向けに、内部レンダリング解像度、シャドウマップ解像度、および ASTC テクスチャプール割り当てを調整する Insert / F1 オーバーレイ内のマスタープリセット。
2. グラフィック設定 (Insert / F1)graphics_preset (hookshot_options.ini)低(4 GB)、中(6 GB)、高(8 GB)、最高(10+ GB)Medium(1.0x 1080p、2048px シャドウ、2.5 GB プール)
1.5 GB(Low)から最大 5.0 GB(Max)のテクスチャプール
テンポラルアップスケーラー&アンチエイリアスモードネイティブの一時的アンチエイリアシング(TAA)、または NVIDIA DLSS Super Resolution、AMD FidelityFX Super Resolution 3.1.3、Intel XeSS 1.3 などのハードウェア/コンピュートアップスケーラーを選択します。
2. グラフィック設定 (Insert / F1)upscaler_mode / upscaler_qualityNative TAA, DLSS, FSR 3.1, XeSS (Quality/Balanced/Perf/Ultra Perf)Native TAA(100% スケール)
描画ターゲットの VRAM 負荷を25%~55%削減
目標フレームレート(30 / 60 / 120 / 無制限)エンジンのデルタタイムペースとスワップチェーンの表示レートを制御します。30 FPS を超える設定ではサブフレームアクター補間が適用されます。
2. グラフィック設定 (Insert / F1)fps_limit / vsync_mode30 FPS、60 FPS、120 FPS、制限なし (V-Sync On/オフ/Mailbox)60 FPS + V-Sync On
トリプルバッファリングにより 1440p で約 90 MB 増加
カスケードシャドウ解像度&フィルタリングハイラル平原やダンジョン内のライティングに使用されるディレクショナルカスケードシャドウマップの解像度を調整します。
2. グラフィック設定 (Insert / F1)shadow_resolution1024px(低)、2048px(中/高)、4096px(最高)2048px
4096px カスケードには約 380 MB の追加 VRAM が必要
アスペクト比&ウルトラワイド HUD ピラーボックスネイティブ16:9、16:10(Steam Deck 1280x800)、21:9、32:9のビューポートに対応しつつ、ハートやボタンなどの 2D HUD 表示を16:9セーフフレーム内に正確に収めます。
2. グラフィック設定 (Insert / F1)aspect_ratio / hud_safe_frameAuto、16:9、16:10、21:9、32:9(HUD センター固定または画面端)Autoビューポート + 16:9センター固定 HUD
21:9設定時はフレームバッファメモリが約34%増加
フリーカメラ感度&ジャイロモーション照準右スティックカメラの X/Y軸反転、デッドゾーン、視野角(FOV)倍率(0.8x~1.3x)、弓・パチンコ・フックショット照準時の SDL3 ジャイロ操作を設定します。
3. 操作とカメラ設定camera_fov / gyro_enabled / gyro_sensitivityFOV 0.8x〜1.3x、ジャイロ オフ/エイム時のみ/Always OnFOV 1.0x、ジャイロ エイム時のみ (Switch Pro / DualSense)
なし
SDL3 Controller ホットプラグ、ボタン表示&キーボード割り当てXbox、DualShock/DualSense、Switch Pro、Steam Deck、WASD +マウスごとのボタンリマップ機能に加え、F11 全画面表示やCtrl+Rクイックリロードのショートカットを提供します。
3. 操作とカメラ設定button_glyphs / keybindings自動、Nintendo(A/B/X/Y)、Xbox、PlayStation ボタン表示Insert/F1 オーバーレイ、F11 全画面表示、WASD + マウス
なし
セーブファイルの保存場所& scripts/oot_saves.py 変換ツールユーザーデータディレクトリ内に3つのセーブスロット(save_00.sav ~ save_02.sav)と autosave.sav を保存し、scripts/oot_saves.py を介して Switch 2 バイナリセーブとJSONの双方向変換を行います。
4. セーブデータ管理scripts/oot_saves.py (export-json / import-json / verify)save_00.sav、save_01.sav、save_02.sav、autosave.sav(各64 KB)%APPDATA%/Hookshot/saves または ~/.local/share/Hookshot/saves
なし
技術仕様 // ダンプ検証・VRAM プリセット・セーブ変換

HookshotBuilder による Switch 2 ダンプ 0400486024DEC000 v131072 の検証仕様

1つの C シャードをコンパイルする前に、nx2/dump.py と HookshotBuilder は入力ダンプに対して7つの暗号および構造シグナルを検証します。ゲームはアップデート v131072(v1.0.2)が統合された Title ID 0400486024DEC000 を持つ『ゼルダの伝説 Ocarina of Time』の Nintendo Switch 2 リメイク版である必要があります。具体的には、ExeFS main NSO バイナリが Build ID プレフィックス e0f3ccfa(完全な SHA-1 e0f3ccfa56256410941279ef0b2501356be2222c、非圧縮時 51.0 MB)を保持していなければなりません。パッチ未適用の v0 ベースダンプ、N64/GameCube ROM、または 3DS CIA を指定した場合、HookshotBuilder は Unsupported ExeFS Build ID メッセージ(#1176 / #990)を出力して即座に処理を中断します。

初回起動時、ビルダーは26.2 GBのRomFSアーカイブをwork/dump/romfsに展開し、work/sa/gen/内に57個のC変換チャンクを生成します。最新の8コアデスクトップCPUなら、初回のClang/LLDコンパイルは10〜25分で完了します(携帯型APUでは最大45分)。v2.0.8以降(#860)、コンパイル済みゲームを起動すると即座にSDL3ウィンドウが開き、リアルタイムのシェーダーパイプラインコンパイルバーが表示されるため(パイプライン予測の上限は90秒)、画面に何も表示されないバックグラウンド処理の完了を待つ必要がなくなりました。

Insert/F1 VRAM プリセット、DLSS/FSR 3.1 アップスケーリングの調整&セーブデータ移行

プレイ中いつでも Insert または F1 を押すと、Hookshot のネイティブ Dear ImGui 設定メニューが開き(設定は hookshot_options.ini に保存)、安定性において最も重要な設定項目は graphics_preset です。4 GB の GPU(GTX 1650 や共有 APU プールなど)では Low(1.5 GB テクスチャプール、1024px シャドウ)を、6 GB の GPU では Medium(2.5 GB プール、2048px シャドウ)を、8 GB の GPU では High を選択し、10+ GB の GPU では Max(4096px シャドウカスケード)を選択可能です。全 GPU で内蔵の AMD FSR 3.1.3(FidelityFX SDK 1.1.4)を利用できるほか、NVIDIA RTX ユーザーは実行ファイルと同じ階層に nvngx_dlss.dll を配置することで DLSS Super Resolution(NGX SDK 310.9.16、Transformer プリセット K/M/L)を有効化できます。

Hookshot と Switch 2 エミュレータ(Lichii、Eglantine、Orchid、NX2navi)の間で既存の進行状況を移行するには、リポジトリのルートからpython scripts/oot_saves.py を実行します。ツールが自動的に save_00.sav から save_02.sav、および autosave.sav を検出し、ファイルを変更する前にoot-save-backups/内へタイムスタンプ付きバックアップを作成した上で、プラットフォーム間のセーブヘッダーを安全に変換します。

技術 FAQ // 検証済み回答

Setup、設定およびセーブツール FAQ

Hookshot の hookshot_options.ini とセーブファイルの保存場所は?

Windows の場合、セーブデータは %APPDATA%/Hookshot/saves に保存され、hookshot_options.ini は Hookshot.exe と同じフォルダに置かれます。Linux および Steam Deck の場合、セーブデータは ~/.local/share/Hookshot/saves に保存されます(環境変数 RX_SAVE_PATH で変更可能)。

Insert/F1 メニューで AMD FSR 3.1 の代わりに NVIDIA DLSS を有効化するには?

AMD FSR 3.1 は Hookshot に直接組み込まれており、すべての GPU で追加設定なしで動作します。RTX GPU で NVIDIA DLSS Super Resolution を有効にするには、hookshot.exe と同じフォルダーに nvngx_dlss.dll(NGX SDK 310.9.16 以降)をコピーし、Insert または F1 を押して upscaler_mode を DLSS に切り替えてください。

アクセント記号やCJK文字(日中韓)を含む Windows フォルダで HookshotBuilder が失敗した原因は?

v2.0.10 より前のバージョンでは、非ASCII文字が含まれる Windows ディレクトリでllvm-mingwを呼び出す際にUTF-8パス処理の不具合(#1176)が存在していました。Hookshot v2.0.11 にアップデートすることで完全に解決します。

公式 SETUP およびセーブ仕様の根拠

公式 Setup・設定・セーブ仕様ドキュメントソース