• Stars
    star
    596
  • Rank 74,433 (Top 2 %)
  • Language
    C
  • License
    Other
  • Created over 4 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A complete decompilation of Sonic Mania (2017)

SUPPORT THE OFFICIAL RELEASE OF SONIC MANIA (PLUS)

Even if your platform isn't supported by the official releases, you must buy or officially download it for the assets.

DO NOT USE THIS DECOMPILATION PROJECT AS A MEANS TO PIRATE SONIC MANIA.

We do not condone using this project as a means for piracy in any form. This project was made with love and care for the source material and was created for purely educational purposes, and would not exist without the work of Sega, Headcannon, and Evening Star.

If you want to transfer your save from the official PC versions, you can just copy your savedata into the folder containing the decompilation!

Additional Tweaks

  • Added a built-in mod loader and API calls to enable a much smoother modding experience.
  • Added support for targeting RSDKv5U rather than standalone RSDKv5
  • Added all content from all released versions of the game. Including: 1.00 (Console initial release), 1.03 (PC initial release) & 1.06 (Plus update)

How to Build

Most platforms will heavily encourage you to build it in conjunction with RSDKv5. However, there are some options available for some platforms if you wish to build separately.

Windows

Open SonicMania.sln and build the project you wish to build.

  • Projects ending with All use the generated All.c file in-place of compiling each object seperately. Use for faster compilation speed.
    • Adversely, projects without All compile each object using their separate source files. Use for JIT-compiling.
  • The version you choose must match up with the RSDKv5 version you run. A v5U executable cannot run a v5 Mania, etc.

Linux/Make-like systems

The makefile is a trimmed down version of the RSDKv5 makefile that only supports game compilation. By default, unlike the RSDK makefile, this will look for the default game name of SonicMania and use it as source and compile as such. Pass GAME_NAME to the makefile to change it/

Other platforms

The only directly supported platforms are those listed above. Since Mania is very easy to build, requiring no dependencies, virtually any platform that can run RSDKv5 can compile Mania easily.

However, there are a multitude of ports listed in the RSDKv5 repository.

FAQ

Q: I found a bug/I have a feature request!

A: Submit an issue in the issues tab and we might fix it in the main branch. Don't expect any major future releases, however.

Q: Will you do a decompilation for Sonic CD (2011) and/or Sonic 1/2 (2013)?

A: I already have! You can find Sonic CD here and Sonic 1/2 here.

Q: Are there anymore decompilation projects in the works, such as Sonic Origins/Sonic 3?

A: Absolutely not. This project took about 1 and a half years to do, and doing Sonic 3 would take equally as long, if not longer, as Sonic 3 is not only larger in scope, but Origins' hybrid codebase makes it harder to read. Between our other decompilation projects and this one, we're done with decompiling, at least for the time being. We would also like to expand our horizons beyond Sonic going forward, and we don't wish to spend forever just playing catchup with Sega's official releases. Please do not expect any more decompilations from us, Sonic or otherwise!

Special Thanks

  • Chuli for general decompilation assistance, helping me fix bugs, tweaking up my sometimes sloppy code and generally being really helpful and fun to work with on this project
  • The Weigman for creating the header you see up here along with similar assets
  • Everyone in the Retro Engine Modding Server for being supportive of me and for giving me a place to show off these things that I've found

Contact:

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

More Repositories

1

Sonic-1-2-2013-Decompilation

A complete decompilation of Sonic 1 & Sonic 2 (2013) & Retro Engine (v4)
C++
913
star
2

Sonic-CD-11-Decompilation

A Full Decompilation of Sonic CD (2011) & Retro Engine (v3)
C++
579
star
3

RSDKv5-Decompilation

A complete decompilation of Retro Engine (v5)
C++
379
star
4

Sonic-1-Sonic-2-2013-Script-Decompilation

122
star
5

Sonic-CD-2011-Script-Decompilation

117
star
6

RSDK-Reverse

A collection of libraries for the RSDK (Retro Engine Software Development Kit) file formats
C#
50
star
7

Sonic-Nexus-Decompilation

a Decompilation of the 2008 Retro-Sonic Engine Demo of Sonic Nexus
C++
33
star
8

RSDKv5-Example-Mods

A set of example mods using RSDKv5
C
30
star
9

GameAPI

Sonic Mania Modding API
C++
25
star
10

RetroED

a general purpose editor for all RSDK versions below RSDKv5
C#
20
star
11

Retro-Engine-Animation-Editor

a tool to edit the animation files for every Retro Engine/Retro Sonic Engine game!
C#
17
star
12

Sonic-1-2-Save-Editor

A save file editor for the Retro Engine Sonic 1 & 2 Remasters
C#
16
star
13

Sonic-Mania-Shader-Decompilation

a decompilation of each of mania's shaders back into HLSL 3.0
GLSL
10
star
14

SonicCD-SaveEditor

A Save file Editor for Sonic CD (2011)
C#
9
star
15

ConfigManiac

an editor for RSDKv5 Config files
C#
8
star
16

ModelManiac

Importer and exporter for RSDK model formats
C#
8
star
17

LinkAPI

a simple-to-use api for developing DLL mods for sonic mania
C
7
star
18

Tile-Maniac

RSDKv5 Collision Editor
C#
7
star
19

PDN-RSDK-GFX-Plugin

A Paint.net plugin that allows direct editing of the RSDK's .gfx files
C#
6
star
20

ObjectTypeFixer

A simple tool to `re-align` Object Types for incase gameconfig object count was changed
C#
4
star