There was a conflict with per-target compile flags and the PCH. The PCH was causing the game code to be built without the inlining flags actually taking effect (internal `src/dusk` files did not use them), which caused mods to fail to resolve static functions for hooks. Fix: split Dusklight internals (`src/dusk/`) into a separate static library altogether, cleanly allowing us to disable inlining and patching flags only for internal code while also fixing the PCH flags issue. Additionally, this updates symgen to v1.3.4, which includes a fix for GCC function fragments and specializations getting resolved as display name aliases, conflicting with the actual functions. Aurora also updated to include https://github.com/encounter/aurora/pull/244
Overview
Dusklight is a reverse-engineered reimplementation of Twilight Princess.
It aims to be as accurate as possible to the original while also providing new options, enhancements, and tools to customize your experience.
Setup
Important
Dusklight does not provide any copyrighted assets. You must provide your own copy of the original game.
Important
At a minimum, Dusklight requires a GPU with support for D3D12, Vulkan 1.1+, or Metal. For older devices, best-effort support is provided for D3D11 and OpenGL ES (Android), but will not achieve full accuracy or performance. Your experience with specific hardware, operating systems, and drivers may vary.
1. Dump your game
You must dump your own copy of the game. Please see this article for instructions. After dumping, you can use a program like Dolphin or nodtool to convert the .iso to .rvz to save space.
Dusklight currently supports all commercial discs except for Wii's Korean release.
Note
Dusklight is based on the Twilight Princess decompilation, which is currently only matching for GameCube. As a result, even when playing Dusklight with a Wii disc, you will be presented with the GameCube version's HUD and certain other specificities.
2. Install Dusklight
Visit the official installation guide for full instructions.
Building
If you'd like to build Dusklight from source, please read the build instructions.
Pull requests are welcomed! Note that we do not accept contributions that are primarily AI-generated and will close your PR if we suspect as much. Please also see the code conventions.
Credits
Special thanks to the TP decompilation team, the GC/Wii decompilation community, the Aurora developers, the TP speedrunning community, and all contributors.
