RSDKModding / RSDKv4-Decompilation

A complete decompilation of Sonic 1 & Sonic 2 (2013) & Retro Engine (v4)
Other
927 stars 173 forks source link

A complete decompilation of Retro Engine v4 and the menus from Sonic 1 and 2 (2013).

SUPPORT THE OFFICIAL RELEASE OF SONIC 1 & 2

Even if your platform isn't supported by the official releases, you must buy or officially download it for the assets (you don't need to run the official release, you just need the game assets).

If you want to transfer your save(s) from the official mobile version(s), the Android pre-forever file path is Android/data/com.sega.sonic1 or 2/SGame.bin (other versions may have different file paths). Copy that file into the decompilation's folder with the name SData.bin.

Additional Tweaks

How to Build

This project uses CMake, a versatile building system that supports many different compilers and platforms. You can download CMake here. (Make sure to enable the feature to add CMake to the system PATH during the installation!)

Get the source code

In order to clone the repository, you need to install Git, which you can get here.

Clone the repo recursively, using: git clone --recursive https://github.com/RSDKModding/RSDKv4-Decompilation

If you've already cloned the repo, run this command inside of the repository: git submodule update --init --recursive

Follow the build steps

Windows

To handle dependencies, you'll need to install Visual Studio Community (make sure to install the Desktop development with C++ package during the installation) and vcpkg.

After installing those, run the following in Command Prompt (make sure to replace [vcpkg root] with the path to the vcpkg installation!):

Finally, follow the compilation steps below using -DCMAKE_TOOLCHAIN_FILE=[vcpkg root]/scripts/buildsystems/vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_PREFIX_PATH=[vcpkg root]/installed/x64-windows-static/ as arguments for cmake -B build.

Linux

Install the following dependencies: then follow the compilation steps below:

Android

Follow the android build instructions here.

Compiling

Compiling is as simple as typing the following in the root repository directory:

cmake -B build
cmake --build build --config release

The resulting build will be located somewhere in build/ depending on your system.

The following cmake arguments are available when compiling:

RSDKv4 flags

Unofficial Branches

Follow the installation instructions in the readme of each branch.

Because these branches are unofficial, we can't provide support for them and they may not be up-to-date.

Other Platforms

Currently the only supported platforms are the ones listed above, however the backend uses libogg, libvorbis & SDL2 to power it (as well as tinyxml2 for the mod API and asio for networking), so the codebase is very multiplatform. If you're able to, you can clone this repo and port it to a platform not on the list.

Server

The multiplayer server requires Python 3.8 or later. You can download Python here. To use the server, open Command Prompt in the folder Server.py is located in, then run the command py -3 Server.py [local IPv4 address] [port] debug. You can find your local IPv4 address using the command ipconfig. Note that the C++ server found in the Server folder has been deprecated and no longer works. It has been kept in the repo for reference purposes.

FAQ

You can find the FAQ here.

Special Thanks

Contact:

Join the Retro Engine Modding Discord Server for any extra questions you may need to know about the decompilation or modding it.