[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-75700":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":9,"totalLinesOfCode":9,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":9,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":9,"createdAt":9,"pushedAt":9,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":16,"starSnapshotCount":16,"syncStatus":27,"lastSyncTime":28,"discoverSource":29},75700,"tww","zeldaret\u002Ftww","zeldaret","Decompilation of The Legend of Zelda: The Wind Waker",null,"https:\u002F\u002Fgithub.com\u002Fzeldaret\u002Ftww","C++",785,124,27,151,0,6,11,80,18,10.29,false,"main","2026-06-12 02:03:35","The Legend of Zelda: The Wind Waker  \n[![Build Status]][actions] [![Progress]][progress site] [![DOL Progress]][progress site] [![RELs Progress]][progress site] [![Discord Badge]][discord]\n=============\n\n[Build Status]: https:\u002F\u002Fgithub.com\u002Fzeldaret\u002Ftww\u002Factions\u002Fworkflows\u002Fbuild.yml\u002Fbadge.svg\n[actions]: https:\u002F\u002Fgithub.com\u002Fzeldaret\u002Ftww\u002Factions\u002Fworkflows\u002Fbuild.yml\n[Progress]: https:\u002F\u002Fdecomp.dev\u002Fzeldaret\u002Ftww.svg?mode=shield&measure=code&label=Code&category=all\n[DOL Progress]: https:\u002F\u002Fdecomp.dev\u002Fzeldaret\u002Ftww.svg?mode=shield&measure=code&label=DOL&category=dol\n[RELs Progress]: https:\u002F\u002Fdecomp.dev\u002Fzeldaret\u002Ftww.svg?mode=shield&measure=code&label=RELs&category=modules\n[progress site]: https:\u002F\u002Fzeldaret.github.io\u002Ftww\u002F\n[Discord Badge]: https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F688807550715560050?color=%237289DA&logo=discord&logoColor=%23FFFFFF\n[discord]: https:\u002F\u002Fdiscord.com\u002Finvite\u002FDqwyCBYKqf\u002F\n\nA work-in-progress decompilation of The Legend of Zelda: The Wind Waker for GameCube.\n\nThis repository does **not** contain any game assets or assembly whatsoever. An existing copy of the game is required.\n\nAll GameCube versions are supported:\n\n- `GZLE01`: Rev 0 (USA), Rev 48 (KOR)\n- `GZLP01`: Rev 0 (PAL)\n- `GZLJ01`: Rev 0 (JPN)\n- `D44J01`: Kiosk demo (JPN)\n\nDependencies\n============\n\nWindows:\n--------\n\nOn Windows, it's **highly recommended** to use native tooling. WSL or msys2 are **not** required.  \nWhen running under WSL, [objdiff](#diffing) is unable to get filesystem notifications for automatic rebuilds.\n\n- Install [Python](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002F) and add it to `%PATH%`.\n  - Also available from the [Windows Store](https:\u002F\u002Fapps.microsoft.com\u002Fstore\u002Fdetail\u002Fpython-311\u002F9NRWMJP3717K).\n- Download [ninja](https:\u002F\u002Fgithub.com\u002Fninja-build\u002Fninja\u002Freleases) and add it to `%PATH%`.\n  - Quick install via pip: `pip install ninja`\n\nmacOS:\n------\n- Install [ninja](https:\u002F\u002Fgithub.com\u002Fninja-build\u002Fninja\u002Fwiki\u002FPre-built-Ninja-packages):\n  ```\n  brew install ninja\n  ```\n\n[wibo](https:\u002F\u002Fgithub.com\u002Fdecompals\u002Fwibo), a minimal 32-bit Windows binary wrapper, will be automatically downloaded and used.\n\nLinux:\n------\n- Install [ninja](https:\u002F\u002Fgithub.com\u002Fninja-build\u002Fninja\u002Fwiki\u002FPre-built-Ninja-packages).\n\n[wibo](https:\u002F\u002Fgithub.com\u002Fdecompals\u002Fwibo), a minimal 32-bit Windows binary wrapper, will be automatically downloaded and used.\n\nBuilding\n========\n\n- Clone the repository:\n  ```\n  git clone https:\u002F\u002Fgithub.com\u002Fzeldaret\u002Ftww.git\n  ```\n\n- Copy your game's disc image to `orig\u002FGZLE01`.\n  - Supported formats: ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ, TGC\n  - After the initial build, the disc image can be deleted to save space.\n\n- Configure:\n  ```\n  python configure.py\n  ```\n  To use a version other than `GZLE01` (USA), specify `--version GZLJ01` (JPN) or `--version GZLP01` (PAL).\n\n- Build:\n  ```\n  ninja\n  ```\n\nDiffing\n=======\n\nOnce the initial build succeeds, an `objdiff.json` should exist in the project root. \n\nDownload the latest release from [encounter\u002Fobjdiff](https:\u002F\u002Fgithub.com\u002Fencounter\u002Fobjdiff). Under project settings, set `Project directory`. The configuration should be loaded automatically. \n\nSelect an object from the left sidebar to begin diffing. Changes to the project will rebuild automatically: changes to source files, headers, `configure.py`, `splits.txt` or `symbols.txt`.\n\n![](assets\u002Fobjdiff.png)\n\nSetting up Ghidra\n=================\n\nGhidra is a tool that automatically decompiles code. Although Ghidra's output is not accurate enough to be directly copy-pasted into this decompilation project, it can still be helpful for understanding functions and decompiling them faster.\n\nWe have a shared Ghidra project for TWW already set up. To get access to this server:\n\n* Go to https:\u002F\u002Fghidra.decomp.dev and link your Discord account.\n* Create a Ghidra account by entering a new username and password into the form on the right.\n* Request \"Read\" access to the WindWaker server.\n\nThen wait for an admin to approve your request. Once you have access, you can set up the Ghidra project like so:\n\n* To use Ghidra, you first need to install JDK. You can download OpenJDK 17 from [here](https:\u002F\u002Fadoptium.net\u002Ftemurin\u002Freleases\u002F).\n* Download the RootCubed Ghidra build from [here](https:\u002F\u002Fgithub.com\u002FRootCubed\u002Fghidra-ci\u002Freleases\u002Ftag\u002F2024-10-05).\n* Launch Ghidra with `ghidraRun`.\n* In Ghidra, go to `File -> New Project...`. Select `Shared Project` and input the following information:\n    * Server Name: ghidra.decomp.dev\n    * Port Number: 13100\n    * User ID: (the username that you chose earlier)\n    * Password: (the password that you chose earlier)\n* You should now be able to view the files in the Ghidra project. You should checkout the `main` file.\n\nNow you have Ghidra set up and ready to use.\n\nFor an introduction on how to use Ghidra, you can read [this section of the Twilight Princess decompilation's guide](https:\u002F\u002Fzsrtp.link\u002Fcontribute\u002Fdecompiler-setup#using-ghidra).\n\nOptionally, you may also want to also request \"Read\" access to the TwilightPrincess server on https:\u002F\u002Fghidra.decomp.dev and set that Ghidra project up too, even if you are not interested in working on that game. The reason for this is that a significant amount of engine code is shared between The Wind Waker and Twilight Princess, and the debug version of Twilight Princess (called `shield_chn_debug` in the Ghidra project) is easier to work with because inline functions are not inlined in that version. It can be worth checking if the function you're working on is present in that game as well.\n\nContributing\n=======\n\nIf you've got all the requirements set up and want to learn how to contribute to the decompilation effort, see [this guide](\u002Fdocs\u002Fdecompiling.md) for details.\n","该项目是对任天堂游戏《塞尔达传说：风之杖》进行反编译的工作。它使用C++语言重构了游戏的源代码，但不包含任何游戏素材或汇编代码，用户需要提供游戏的原版镜像来配合使用。支持所有GameCube版本的游戏，包括美国、欧洲、日本以及日版演示版。项目通过Python和ninja等工具构建，并且在Windows、macOS和Linux系统上都能运行。此项目适合对游戏开发有兴趣的研究者、开发者或是想要深入了解《塞尔达传说：风之杖》内部机制的玩家使用。",2,"2026-06-11 03:53:06","trending"]