kigold-recomp
kigold-recomp is a native Windows port of Killer Instinct Gold for the Nintendo 64 that runs the game's code directly on a PC.
- Type: PC port
- Game: Killer Instinct Gold
- Runs on Windows
- By geno55
- Latest release v0.3.3, 2026-11-13
- Source: https://github.com/geno55/kigold-recomp
README
Killer Instinct Gold: Recompiled
Play Killer Instinct Gold, the 1996 Nintendo 64 fighting game, as a native Windows program, with no emulator needed. The game's original code has been translated into a form that runs directly on a PC, using N64Recomp and the RT64 renderer.
You need your own copy of the game. No part of the game is included here.
What works
- The intro and title screen
- Character select
- Full fights, with graphics, sound and controller input
- The Continue screen
Still to be checked: saving, every character and stage, and a side-by-side comparison with the original hardware.
Getting the game file
You need the US version of the cartridge, Rev 2 (v1.2), dumped to a .z64, .v64 or .n64 file. To
check that you have the right one, its SHA-1 fingerprint should be
aaeb492b1e538af65a3544a97240675ef438a04f.
Playing
Run kig.exe. The first time, it asks you to pick your game file. You can also drag the file onto
kig.exe.
Your settings and save data are kept in %APPDATA%\KIGRecomp.
The settings menu (Esc, or a controller's Back/View button) has a Cheats tab: infinite health for player 1, Gargos playable and all Options tiers unlocked. They are all off by default. The Options unlock isn't written to your save, so turning it off brings back the tiers you had earned.
Press F5 to save a state at the current moment and F7 to load it again (one quick-save slot, kept
in %APPDATA%\KIGRecomp\states). This is meant for testing and reproducing bugs: a state belongs to the
build that made it and may not load in other versions.
Building it yourself
You'll need Visual Studio 2022 Build Tools (with clang-cl and the Windows SDK), CMake 3.20 or newer, Ninja,
and Python 3.12 with the rabbitizer, xxhash, splat64[mips] and spimdisasm packages. Put your game
file in this folder as baserom.us.z64, then run these commands from PowerShell or Command Prompt (not
Git Bash):
git submodule update --init --recursive
git -C lib/N64Recomp apply ../../patches/n64recomp/0001-handwritten-code.patch
git -C lib/N64Recomp apply ../../patches/n64recomp/0002-resumable-calls.patch
cmake -S lib/N64Recomp -B lib/N64Recomp/build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build lib/N64Recomp/build --target N64RecompCLI RSPRecomp
tools\regen_syms.ps1
tools\cmake_build.bat kig
The finished game is at build/cmake/kig.exe. The last two steps need the Visual Studio build
environment; tools\cmake_build.bat sets it up for you.
Building on Linux (CachyOS / Arch Linux)
New to compiling Linux software? Start with the step-by-step beginner's build guide, which explains setup, ROM verification, Fish/Bash activation, compilation, and troubleshooting.
A native Linux build requires Clang, CMake, Ninja, SDL2 development headers, Vulkan development
headers and loader, GTK 3 development files (for the native file dialog), Python and Git. The tested
CachyOS system used Clang 23.1.4, CMake 4.4.5, Python 3.14.8, and
sdl2-compat 2.32.74-1.1 on KDE Wayland. Equivalent libraries may also work on other distributions.
Install the Arch packages (package names can vary on other distributions):
sudo pacman -S --needed base-devel clang cmake ninja python git sdl2-compat vulkan-headers vulkan-icd-loader gtk3 pkgconf
Clone the repository and its submodules. You must supply your own US Rev 2 game ROM as
baserom.us.z64; its SHA-1 is listed above. Do not commit the ROM or generated files.
git clone --recurse-submodules https://github.com/geno55/kigold-recomp.git
cd kigold-recomp
python -m venv .venv
. .venv/bin/activate
python -m pip install rabbitizer xxhash 'splat64[mips]' spimdisasm
git -C lib/N64Recomp apply ../../patches/n64recomp/0001-handwritten-code.patch
git -C lib/N64Recomp apply ../../patches/n64recomp/0002-resumable-calls.patch
cmake -S lib/N64Recomp -B lib/N64Recomp/build -G Ninja \
-DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
cmake --build lib/N64Recomp/build --target N64RecompCLI RSPRecomp --parallel
python tools/regen_syms_linux.py
cmake -S . -B build/cmake-linux -G Ninja \
-DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
-DPython3_EXECUTABLE="$PWD/.venv/bin/python"
cmake --build build/cmake-linux --target kig --parallel
./build/cmake-linux/kig
For Fish, activate the environment with source .venv/bin/activate.fish instead.
The generator uses native N64Recomp and RSPRecomp binaries from lib/N64Recomp/build by default;
you can override their paths with CMake's N64RECOMP_EXE and RSPRECOMP_EXE cache entries.
The Linux symbol workflow uses tools/regen_syms_linux.py in place of the PowerShell-only
tools/regen_syms.ps1.
Linux troubleshooting and known issues
Other limitations: Other Linux distributions have not been tested in this PR, and AppImage packaging is not automated.
For developers
How the port works, the fixes it needed, the build pipeline and the testing tools are described in docs/technical.md and docs/rom_map.md.
License
GPL-3.0 (see LICENSE). Some code is adapted from Quest64-Recomp and W.G. 3D Hockey: Recompiled. The game itself belongs to its owners.