Case study
OpenLW: recreating Sonic Lost World from Ghidra decompilations
OpenLW recreates Sonic Lost World from Ghidra decompilations of its Wii U and PC versions. Its source aims to reproduce the PC game’s structure and records function addresses; the repository also hosts LWAPI bindings for PC DLL mods. The author describes the recreation as a major work in progress.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Stars
- 21
- Last commit
- 2024-04-15
- Language
- C++
GitHub data as of 2026-11-10
Requirements & limits
- Prerequisites: Building currently requires the proprietary Criware SDK and Havok 2012 SDK, plus the Direct3D 9 SDK.
- Limits: The project is a major work in progress with little source documentation so far.
- License: No licence file in the repository.
Cite
BibTeX
@misc{openlw-sonic-lost-world-case,
title = {{OpenLW: recreating Sonic Lost World from Ghidra decompilations}},
howpublished = {\url{https://github.com/Radfordhound/OpenLW}},
url = {https://github.com/Radfordhound/OpenLW},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/openlw-sonic-lost-world-case/}}
}Plain text
OpenLW: recreating Sonic Lost World from Ghidra decompilations. https://github.com/Radfordhound/OpenLW (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/openlw-sonic-lost-world-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · Radfordhound/OpenLW · Revision 73ea9a6
More in Games
- OpenRakis: reverse engineering Cryo’s Dune · Case study
- OpenWINGS: reconstructing Wings flight and terrain behavior · Case study
- OUO: a reconstructed Ultima Online demo server · Case study
- Outlaw: a reverse-engineered Atari 2600 source listing · Case study
- OutRun 2006 Coast 2 Coast: a native port from reconstructed PC code · Case study
- Paleblood: a functional decompilation of Bloodborne with its own runtime · Case study