HOOKSHOT GITHUB

Native build

Build Hookshot from source

A source build is the path for people who want the compiler on their own machine. The finished binary is the game itself, not the launcher that ships in releases.

Hookshot window in a public comparison video
Switch 2 Ocarina of Time Hookshot render from Zelda Wiki

Windows toolchain

Install Python 3 from python.org, not the Microsoft Store build, then pip install -r requirements.txt. The readme's preferred compiler is llvm-mingw, the ucrt-x86_64 package. The older route is a C:\emsdk tree plus the Visual C++ tools and a Windows SDK, forced with HOOKSHOT_MSVC=1. Copy cpm, wgpu-native, third_party, and work out of a Builder tools directory and point RX_CPM and WGPU_NATIVE at them. The command is python -I nx2/make_game.py --nup followed by your file, --out for the folder, and --language en-US or another code.

Changing Builder itself is a different job: Visual Studio 2022 and .NET 8. Playing the game does not need that pair. I keep the two toolchains apart so a person who only wants hookshot.exe does not install a full IDE.

From a local checkout with the dependencies above installed, run python -m pip install -r requirements.txt. The official Windows game-build command is python -I nx2/make_game.py --nup "C:/path/your-game.nup" --out "C:/Games/Hookshot" --language en-US. Replace the paths with files you supply; this site does not provide game files.

Linux toolchain

Linux wants clang and lld. The readme says LLVM 23 or newer is required to read the play profile. You also need Python 3 with the requirements file, FFmpeg development files including dav1d, and SDL3. scripts/linux/deps.sh pulls those dependencies. scripts/linux/appimage.sh packs an AppImage. From Linux you can target Windows with RX_TARGET=windows and HOOKSHOT_MINGW.

A source build has no separate launcher. The hookshot binary is the game. Time varies enough that the project does not publish one duration, so this page does not invent minutes. The safety page lists a source build as one of three ways to decide what you are running, next to the checksum file and your own hash.

From the repository root, the dependency helper is bash scripts/linux/deps.sh. After dependency setup, the equivalent game-build command is python -I nx2/make_game.py --nup ~/your-game.nup --out ~/Games/Hookshot --language en-US. A later checkout can rebuild an existing game folder with python -I nx2/make_game.py --update ~/Games/Hookshot. Follow the README for the environment variables needed by your compiler and graphics libraries.

Questions

Is a source build the same file as the release?

It is the same project. The release AppImage and Builder add a launcher and an update path that a raw source binary does not have.

Where do cpm and wgpu-native come from?

The readme says to take them from Builder's tools directory, or to let deps.sh fetch the Linux set.

Sources

Public references and check dates
SourceEvidence statusChecked
Readme 1 reference · shared publishers and mirrors count together 2026-11-11
Tested configurations 1 reference · shared publishers and mirrors count together 2026-11-11

How we check pages

Related