Case study
RSDKv3 Decompilation: Sonic CD (2011) on a reconstructed Retro Engine v3
Reconstructs Retro Engine v3, the engine behind the 2011 Sonic CD remaster, as a native C++ source port for Windows, Linux, macOS and Android. The engine runs the game's own scripts and assets from an official release, which the repository does not ship, and adds a mod loader, a settings file with remappable controls, support for the mobile versions' updated scripts and extra developer-menu debug keys. Its license describes the code as mostly functionally the same as the original rather than byte-matching; the same team's RSDKv5 decompilation is listed as a separate case.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
Requirements & limits
- The README calls it a complete decompilation of Retro Engine v3; its license says the repository also contains original code and that most code is meant to be functionally the same as the specified RSDK version. The RETRO_ORIGINAL_CODE option strips the custom code but, per the README and CMake file, cannot build a playable game. The reviewed commit is 19 commits after release 1.3.3 (2025-11-02), which attaches prebuilt Windows x86 and x64, Linux, macOS and Android builds of the engine.
- It does not run without assets from an official Sonic CD release: the original Steam release, Sonic Origins on Steam, Epic or Switch, or the delisted iOS and Android versions. The engine loads the game's Data.rsdk datapack, and full-motion video works only with the original Steam release's video files. The FAQ notes that the Sonic Origins datafile uses the RSDKv5 datapack format and contains no music or sound effects, and that the Origins-only playable characters are blocked in release builds. The repository commits no game data or game scripts; the separate script decompilation is its own repository.
- Clone recursively, because GitHub's source ZIPs omit the tinyxml2 and flatpak shared-modules submodules. CMake builds use Visual Studio with vcpkg (GLEW, SDL2, libogg, libtheora, libvorbis) on Windows, distribution packages on Linux and separate guides for macOS and Android; the tree also carries iOS, UWP and PS Vita project files that the README does not document, and the Switch and New 3DS ports are unofficial forks the project does not support.
- CI builds Windows x86 and x64, Linux, macOS and Android binaries with RETRO_DISABLE_PLUS on. The project publishes no comparison with the original engine binaries; the FAQ says bugs present in official releases will mostly not be fixed and that menu buttons such as leaderboards and achievements stay unimplemented.
- The custom RSDKv3/v4 Decompilation Source Code License v2 requires every prebuilt executable given to anyone to have DLC disabled by default, forbids commercial use and distributing game assets other than unique modded ones, requires crediting the original and decompilation developers, and binds forks to the same terms. It names Christian Whitehead as the original RSDK author and Rubberduckycooly and st×tic as the decompilation authors. Sega's game and assets keep their own rights.
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- LICENSE.md GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- FAQ.md GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- CMakeLists.txt#L7-L17 GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- .gitmodules GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- .github/workflows/build.yml GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- RSDKv3 GitHub · RSDKModding/RSDKv3-Decompilation · Revision c01fc0c
- https://github.com/RSDKModding/RSDKv3-Decompilation/releases/tag/1.3.3
More in Games
- RSDKv4 Decompilation: Retro Engine v4 and the Sonic 1 & 2 (2013) menus · Case study
- RSDKv5 Decompilation: reconstructing Retro Engine v5 and v5U · Case study
- Sonic Mania: a game-code decompilation for the RSDKv5 engine · Case study
- SpaceCadetPinball: decompiled game logic adapted to SDL2 · Case study
- TicTacToe-AI: a bounded REA-fork reconstruction of one game method · Case study
- UltraSunnyMoon: a partial, REA-led Pokémon Ultra Sun reconstruction · Case study