Cloned Games

Sonic 1 and 2 Decompilation

DecompilationActive

Source code reconstructed from the original game's compiled binary, so the game can be understood, rebuilt and ported.

Links, repository & details

About

A complete decompilation of Retro Engine v4 and the menus from Sonic 1 and 2 (2013). It will not run without assets from the official releases, which the README asks players to buy or officially download.

How it differs from the original

It adds the built-in script compiler from RSDKv5U, a built-in mod loader and API, a settings.ini file for all settings, and a custom menu and networking system for Sonic 2 two-player versus. Egg Gauntlet Zone is playable in Time Attack in Sonic 2 if your version of the game includes it.

Getting started

Get the game assets from an official release such as Sonic Origins on Steam or the Epic Games Store, the Nintendo eShop, or the iOS and Android versions. Then clone the repository recursively and build it with CMake.

Known issues & limitations

  • The multiplayer server is a proof of concept, is very unstable, and may not connect reliably to opponents.
  • The C++ server in the Server folder is deprecated and no longer works.

What you need to run it

Original game files required. The project ships code only; you provide your own copy of the game.

  • The multiplayer server requires Python 3.8 or later.

Features

  • A built-in mod loader and API support mods with save redirection, custom achievements, and XML GameConfig data.
  • Sonic 2 has a custom menu and networking system for hosting and joining 2P VS servers.
  • The game uses a settings.ini file to load settings.
  • The screen can dim after inactivity; you can disable this or set how long it takes to dim.

How to install

  1. Get the required assets from your legally obtained copy of the game using the linked guide.
  2. To transfer a save from the official Android mobile version, copy SGame.bin into the project folder and name it SData.bin.

Controls

  • If enabled in the config, press ESC to open the dev menu from anywhere.
  • In the dev menu, F1 loads the first Presentation scene, usually the title screen.
  • In the dev menu, F2 and F3 load the previous and next scene in the current stage list.

Summarised from the project's README.

Additional notes

Save transfer
To bring over a save from the Android pre-forever version, copy its SGame.bin file into the decompilation's folder as SData.bin.
Multiplayer
The multiplayer server needs Python 3.8 or later and is described as a proof of concept that is known to be very unstable.
Other platforms
Unofficial branches exist for PlayStation Vita, Nintendo Switch, Nintendo 3DS and the web via Wasm; the README says they get no support and may be out of date.
Dev menu
A dev menu can be opened with the ESC key if enabled in the config, with extra debug keys such as F5 to reload the current scene.

FAQ

What is Sonic 1 and 2 Decompilation?
Sonic 1 and 2 Decompilation is an open-source decompilation. Source code reconstructed from the original game's compiled binary, so the game can be understood, rebuilt and ported.
Do I need the original game files to run Sonic 1 and 2 Decompilation?
Yes. The project does not include the original game's assets, so you need your own copy.
Share: