Difference between revisions of "Sonic the Hedgehog (Mobile Decompilation)"
m (Averygoodperson moved page Sonic the Hedgehog (Mobile Decompilation) to Sonic the Hedgehog: Absolute: These ports have names now.) |
|||
(29 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{disambig|the decompiled port of the 2013 mobile port|the 2010 emulated release|[[Sonic the Hedgehog]]}} |
{{Infobox game | {{Infobox game | ||
|cover = Sonic the Hedgehog 1 mobile cover.png | |cover = Sonic the Hedgehog 1 mobile cover.png | ||
Line 7: | Line 7: | ||
{{Infobox game/row/developer|Headcannon|Remaster}} | {{Infobox game/row/developer|Headcannon|Remaster}} | ||
{{Infobox game/row/porter|Rubberduckycooly|Windows}} | {{Infobox game/row/porter|Rubberduckycooly|Windows}} | ||
+ | {{Infobox game/row/porter|Sappharad|OS X}} | ||
|publishers = | |publishers = | ||
{{Infobox game/row/publisher|Sega|Original}} | {{Infobox game/row/publisher|Sega|Original}} | ||
Line 14: | Line 15: | ||
|release dates= | |release dates= | ||
{{Infobox game/row/date|Windows|January 17, 2021}} | {{Infobox game/row/date|Windows|January 17, 2021}} | ||
− | {{Infobox game/row/date|OS X| | + | {{Infobox game/row/date|OS X|January 17, 2021|ref=<ref>{{Refurl|url=https://github.com/Sappharad/Sonic-1-2-2013-Decompilation/releases/tag/1.0.0mac|title=1.0.0 Mac Build - Sappharad/Sonic-1-2-2013-Decompilation|date=2022-05-31}}</ref>}} |
{{Infobox game/row/date|Linux|TBA}} | {{Infobox game/row/date|Linux|TBA}} | ||
|reception = | |reception = | ||
Line 21: | Line 22: | ||
{{Infobox game/row/reception|IGDB|link|rating}} | {{Infobox game/row/reception|IGDB|link|rating}} | ||
|taxonomy = | |taxonomy = | ||
− | {{Infobox game/row/taxonomy/monetization | }} | + | {{Infobox game/row/taxonomy/monetization | Free-to-play }} |
{{Infobox game/row/taxonomy/microtransactions | }} | {{Infobox game/row/taxonomy/microtransactions | }} | ||
{{Infobox game/row/taxonomy/modes | Singleplayer }} | {{Infobox game/row/taxonomy/modes | Singleplayer }} | ||
− | {{Infobox game/row/taxonomy/pacing | }} | + | {{Infobox game/row/taxonomy/pacing | Real-time }} |
− | {{Infobox game/row/taxonomy/perspectives | }} | + | {{Infobox game/row/taxonomy/perspectives | Scrolling, Side view }} |
− | {{Infobox game/row/taxonomy/controls | }} | + | {{Infobox game/row/taxonomy/controls | Direct control }} |
− | {{Infobox game/row/taxonomy/genres | }} | + | {{Infobox game/row/taxonomy/genres | Platform }} |
{{Infobox game/row/taxonomy/sports | }} | {{Infobox game/row/taxonomy/sports | }} | ||
{{Infobox game/row/taxonomy/vehicles | }} | {{Infobox game/row/taxonomy/vehicles | }} | ||
− | {{Infobox game/row/taxonomy/art styles | Cartoon }} | + | {{Infobox game/row/taxonomy/art styles | Cartoon, Pixel art }} |
{{Infobox game/row/taxonomy/themes | }} | {{Infobox game/row/taxonomy/themes | }} | ||
{{Infobox game/row/taxonomy/series | Sonic the Hedgehog }} | {{Infobox game/row/taxonomy/series | Sonic the Hedgehog }} | ||
Line 43: | Line 44: | ||
|wikipedia = Sonic the Hedgehog (1991 video game) | |wikipedia = Sonic the Hedgehog (1991 video game) | ||
|winehq = | |winehq = | ||
− | |license = | + | |license = free-to-play |
}} | }} | ||
{{Introduction | {{Introduction | ||
− | |introduction = | + | |introduction = '''''Sonic the Hedgehog (Mobile Decompilation)''''' is a {{Glossary:Cartoon}} {{Glossary:Side view}} {{Glossary:Platform}} game in the ''[[Series:Sonic the Hedgehog|Sonic the Hedgehog]]'' series. It is an open-source decompilation of the 2013 [[Engine:Retro Engine|Retro Engine]] remaster of ''[[Sonic the Hedgehog]]'' originally developed by [[Company:Christian Whitehead|Christian Whitehead]] and [[Company:Headcannon|Headcannon]] and published by [[Company:Sega|Sega]] for Android and iOS devices. It has been ported to various platforms by Rubberduckycooly and other contributors. |
− | |release history = | + | |release history = The 2013 Retro Engine remasters of ''Sonic the Hedgehog'' and ''[[Sonic the Hedgehog 2 (Mobile Decompilation)|Sonic the Hedgehog 2]]'' were initially developed for Android and iOS devices. They became {{Glossary:Ad-supported}} and {{Glossary:Free-to-play}} in 2017 with other Sega Forever branded apps, but unlike the 2012 Retro Engine remaster of ''[[Sonic CD (2012)|Sonic CD]]'', it remained exclusive to mobile platforms for many years. Rubberduckycool, along with assistance from RMGRich, have developed this open-source decompilation port to allow the game to be played natively on other platforms but requires the Data.rsdk file extracted from the mobile version's APK to run. The initial Windows release of the decompilation port was released on January 17, 2021 and a fork for macOS was also released by Sappharad. The decompilation port initially only featured a basic developer interface to navigate through the game's menus and settings and it also introduced various issues not seen in previous releases of the game such as the bumpers in Spring Yard Zone causing players to get stuck in certain places, crashes during the credits, or the game freezing when attempting to access the developer menu. Many of these issues has been addressed in later updates of the decompilation port. |
− | |current state = | + | |current state = The decompilation port currently features the ability to toggle screen filters, configurable settings through its configuration file similarly to ''[[Sonic Mania]]'', and features a built-in mod loader. An official port of the 2013 Retro Engine remaster is featured in ''[[Sonic Origins]]''. |
}} | }} | ||
− | ''' | + | |
− | {{ | + | '''General information''' |
− | + | {{mm}} [https://www.sonicretro.org/ Sonic Retro] - A huge fan site for everything Sonic the Hedgehog. Mods for all the series can also be found here. | |
==Availability== | ==Availability== | ||
{{Availability| | {{Availability| | ||
− | {{Availability/row| Developer | https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation/releases | DRM-free | | + | {{Availability/row| Developer | https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation/releases | DRM-free | [https://github.com/Sappharad/Sonic-1-2-2013-Decompilation/releases macOS fork] by Sappharad. | | Windows, OS X }} |
}} | }} | ||
− | {{ii}} | + | {{ii}} Linux version requires building from the source code. |
+ | {{--}} As of v1.3.2, pre-compiled builds only support the mobile data files; partial support for [[Sonic Origins]] data files (and enabling Plus content) requires compiling from source code, as well as extracting the data files its {{file|Sonic1u.rsdk}}, hex editing its {{file|GameData.bin}} found in the extracted {{folder|Data\Game}} folder, and extracting audio files from the mobile version's {{file|Data.rsdk}} or from Sonic Origins Plus. Instructions for compiling the decompilation port can be found [https://gamebanana.com/tuts/16684 here], extracting the audio files from Sonic Origins Plus can be found [https://gamebanana.com/tuts/16834 here], and how to use the Sonic Origins data files can be found [https://gamebanana.com/tuts/16686 here] from GameBanana. | ||
==Game data== | ==Game data== | ||
===Configuration file(s) location=== | ===Configuration file(s) location=== | ||
{{Game data| | {{Game data| | ||
− | {{Game data/config|Windows|{{p|game}}\settings.ini}} | + | {{Game data/config|Windows|{{p|game}}\settings.ini|{{p|game}}\mods\modconfig.ini}} |
+ | {{Game data/config|Linux|{{p|xdgconfighome}}/RSDKv4/settings.ini}} | ||
}} | }} | ||
Line 72: | Line 75: | ||
{{Game data| | {{Game data| | ||
{{Game data/saves|Windows|{{p|game}}\SData.bin|{{p|game}}\UData.bin}} | {{Game data/saves|Windows|{{p|game}}\SData.bin|{{p|game}}\UData.bin}} | ||
− | + | {{Game data/saves|Linux|{{p|xdgconfighome}}/RSDKv4/SData.bin|{{p|xdgconfighome}}/RSDKv4/UData.bin}} | |
− | |||
− | |||
− | {{ | ||
− | | | ||
− | | | ||
− | | | ||
− | | | ||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
==Video== | ==Video== | ||
+ | {{Image|Sonic 1 (2013) Decompilation - General settings.png|General settings.}} | ||
{{Video | {{Video | ||
|wsgf link = | |wsgf link = | ||
Line 100: | Line 87: | ||
|4k ultra hd wsgf award = | |4k ultra hd wsgf award = | ||
|widescreen resolution = true | |widescreen resolution = true | ||
− | |widescreen resolution notes= 424x240; see [[#Widescreen resolution|Widescreen resolution]]. | + | |widescreen resolution notes= Scaled from 424x240; see [[#Widescreen resolution|Widescreen resolution]]. |
|multimonitor = false | |multimonitor = false | ||
− | |multimonitor notes = | + | |multimonitor notes = Impossible due to various script issues.<ref name="Ultra Widescreen">[https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation/issues/164 1.1.0 - Various issues with ultrawide resolutions. · Issue #164 · Rubberduckycooly/Sonic-1-2-2013-Decompilation]</ref> |
|ultrawidescreen = false | |ultrawidescreen = false | ||
− | |ultrawidescreen notes = | + | |ultrawidescreen notes = Impossible due to various script issues.<ref name="Ultra Widescreen"/> |
− | |4k ultra hd = | + | |4k ultra hd = true |
− | |4k ultra hd notes = | + | |4k ultra hd notes = Scaled from 424x240 to desktop resolution in Fullscreen mode. Menus scale with screen width.<ref name="4K Ultra HD">{{Refcheck|user=AmethystViper|date=2022-05-31|comment=}}</ref> |
|fov = n/a | |fov = n/a | ||
|fov notes = | |fov notes = | ||
|windowed = hackable | |windowed = hackable | ||
− | |windowed notes = | + | |windowed notes = Displayed in Windowed mode by default. Can be toggled by pressing {{key|F4}}. See [[#Windowed|Windowed]] to enable Fullscreen mode when launching the game. |
|borderless windowed = false | |borderless windowed = false | ||
− | |borderless windowed notes = | + | |borderless windowed notes = Only window borders can be disabled. |
|anisotropic = n/a | |anisotropic = n/a | ||
|anisotropic notes = | |anisotropic notes = | ||
|antialiasing = n/a | |antialiasing = n/a | ||
− | |antialiasing notes = Screen rotation is not | + | |antialiasing notes = Screen rotation is not anti-aliased. |
|vsync = hackable | |vsync = hackable | ||
− | |vsync notes = See [[#Vertical sync (Vsync)|Vertical sync (Vsync)]]. | + | |vsync notes = Disabled by default. See [[#Vertical sync (Vsync)|Vertical sync (Vsync)]]. |
|60 fps = true | |60 fps = true | ||
|60 fps notes = | |60 fps notes = | ||
Line 125: | Line 112: | ||
|hdr = false | |hdr = false | ||
|hdr notes = | |hdr notes = | ||
− | |ray tracing = | + | |ray tracing = |
|ray tracing notes = | |ray tracing notes = | ||
− | |color blind = | + | |color blind = false |
|color blind notes = | |color blind notes = | ||
}} | }} | ||
===[[Glossary:Widescreen resolution|Widescreen resolution]]=== | ===[[Glossary:Widescreen resolution|Widescreen resolution]]=== | ||
− | {{Fixbox|description= | + | {{ii}} This decompilation port is designed for a definition of 424x240, however, unlike [[Sonic Mania]], only the screen width can be adjusted. |
+ | {{Fixbox|description=Set custom screen width in settings.ini|ref=<ref name="Keith">{{Refcheck|user=Keith|date=2022-02-12|comment=}}</ref>|fix= | ||
# Open {{file|{{p|game}}\settings.ini}}. | # Open {{file|{{p|game}}\settings.ini}}. | ||
# Adjust <code>ScreenWidth=</code> as needed. | # Adjust <code>ScreenWidth=</code> as needed. | ||
Line 139: | Line 127: | ||
===[[Glossary:Windowed|Windowed]]=== | ===[[Glossary:Windowed|Windowed]]=== | ||
{{ii}} Fullscreen may not work properly on integrated graphics. | {{ii}} Fullscreen may not work properly on integrated graphics. | ||
− | + | {{Fixbox|description=Set fullscreen on launch in settings.ini|ref=<ref name="Keith"/>|fix= | |
− | {{Fixbox|description= | ||
# Open {{file|{{p|game}}\settings.ini}}. | # Open {{file|{{p|game}}\settings.ini}}. | ||
# Change <code>FullScreen=false</code> to <code>FullScreen=true</code>. | # Change <code>FullScreen=false</code> to <code>FullScreen=true</code>. | ||
− | #* If set to | + | #* If set to {{code|false}}, the window size can be multiplied with <code>WindowScale=</code>. The window decorations and desktop can be hidden by using [https://tanalin.com/en/projects/integer-scaler/ IntegerScaler]. |
}} | }} | ||
===[[Glossary:Vertical sync (Vsync)|Vertical sync (Vsync)]]=== | ===[[Glossary:Vertical sync (Vsync)|Vertical sync (Vsync)]]=== | ||
− | {{Fixbox|description= | + | {{Fixbox|description=Enabling Vsync in settings.ini|ref=<ref name="Keith"/>|fix= |
# Open {{file|{{p|game}}\settings.ini}}. | # Open {{file|{{p|game}}\settings.ini}}. | ||
# Change <code>VSync=false</code> to <code>VSync=true</code>. | # Change <code>VSync=false</code> to <code>VSync=true</code>. | ||
Line 153: | Line 140: | ||
==Input== | ==Input== | ||
+ | {{Image|Sonic 1 (2013) Decompilation - Gamepad layout.png|Controller layout.}} | ||
{{Input | {{Input | ||
− | |key remap = | + | |key remap = true |
− | |key remap notes = | + | |key remap notes = Key bindings must be configured manually by editing {{file|settings.ini}}. Keycode bindings are based on [https://github.com/libsdl-org/sdlwiki/blob/main/SDLScancodeLookup.mediawiki SDL Scancode Lookup] codes. Developer functions such as accessing the developer menu or visualizing touchscreen elements cannot be rebound. |
− | |acceleration option = | + | |acceleration option = n/a |
− | |acceleration option notes = | + | |acceleration option notes = Mouse is not used in-game |
− | |mouse sensitivity = | + | |mouse sensitivity = n/a |
|mouse sensitivity notes = | |mouse sensitivity notes = | ||
− | |mouse menu = | + | |mouse menu = limited |
− | |mouse menu notes = | + | |mouse menu notes = Only main menu and some parts of the game can be interacted with the mouse.<ref name="Mouse in Menu">{{Refcheck|user=AmethystViper|date=2022-05-31|comment=}}</ref> |
− | |invert mouse y-axis = | + | |invert mouse y-axis = n/a |
|invert mouse y-axis notes = | |invert mouse y-axis notes = | ||
|touchscreen = unknown | |touchscreen = unknown | ||
Line 168: | Line 156: | ||
|controller support = true | |controller support = true | ||
|controller support notes = | |controller support notes = | ||
− | |full controller = | + | |full controller = true |
|full controller notes = | |full controller notes = | ||
− | |controller remap = | + | |controller remap = true |
− | |controller remap notes = | + | |controller remap notes = Controller mapping must be configured manually by editing {{file|settings.ini}}. Controller inputs are based on [https://github.com/libsdl-org/sdlwiki/blob/main/SDL_GameControllerButton.mediawiki SDL Game Controller Button] codes. |
− | |controller sensitivity = | + | |controller sensitivity = n/a |
− | |controller sensitivity notes= | + | |controller sensitivity notes= Digital movement. |
− | |invert controller y-axis = | + | |invert controller y-axis = n/a |
|invert controller y-axis notes= | |invert controller y-axis notes= | ||
− | |xinput controllers = | + | |xinput controllers = true |
|xinput controllers notes = | |xinput controllers notes = | ||
− | |xbox prompts = | + | |xbox prompts = false |
|xbox prompts notes = | |xbox prompts notes = | ||
− | |impulse triggers = | + | |impulse triggers = false |
|impulse triggers notes = | |impulse triggers notes = | ||
− | |dualshock 4 = | + | |dualshock 4 = true |
|dualshock 4 notes = | |dualshock 4 notes = | ||
− | |dualshock prompts = | + | |dualshock prompts = false |
|dualshock prompts notes = | |dualshock prompts notes = | ||
− | |light bar support = | + | |light bar support = false |
|light bar support notes = | |light bar support notes = | ||
− | |dualshock 4 modes = | + | |dualshock 4 modes = USB, Bluetooth, V1 |
− | |dualshock 4 modes notes = | + | |dualshock 4 modes notes = <ref name="DualShock 4">{{Refcheck|user=AmethystViper|date=2022-05-31|comment=Tested with a V1 controller,}}</ref> |
− | |tracked motion controllers= | + | |tracked motion controllers= false |
|tracked motion controllers notes = | |tracked motion controllers notes = | ||
− | |tracked motion prompts = | + | |tracked motion prompts = false |
|tracked motion prompts notes = | |tracked motion prompts notes = | ||
− | |other controllers = | + | |other controllers = true |
− | |other controllers notes = | + | |other controllers notes = <ref name="Other controllers">{{Refcheck|user=AmethystViper|date=2022-05-31|comment=Tested with a Logitech F310 in DirectInput mode.}}</ref> |
− | |other button prompts = | + | |other button prompts = false |
|other button prompts notes= | |other button prompts notes= | ||
− | |controller hotplug = | + | |controller hotplug = true |
|controller hotplug notes = | |controller hotplug notes = | ||
− | |haptic feedback = | + | |haptic feedback = false |
|haptic feedback notes = | |haptic feedback notes = | ||
− | |simultaneous input = | + | |simultaneous input = true |
|simultaneous input notes = | |simultaneous input notes = | ||
|steam input api = unknown | |steam input api = unknown | ||
Line 219: | Line 207: | ||
{{Audio | {{Audio | ||
|separate volume = true | |separate volume = true | ||
− | |separate volume notes = | + | |separate volume notes = Music, Sound FX. |
|surround sound = false | |surround sound = false | ||
|surround sound notes = | |surround sound notes = | ||
Line 238: | Line 226: | ||
===Mute on focus lost=== | ===Mute on focus lost=== | ||
{{ii}} If set to true, disables the game pausing when focus is lost. | {{ii}} If set to true, disables the game pausing when focus is lost. | ||
− | |||
{{Fixbox|description=Toggle focus pause|ref=<ref name="Keith"/>|fix= | {{Fixbox|description=Toggle focus pause|ref=<ref name="Keith"/>|fix= | ||
# Open {{file|{{p|game}}\settings.ini}}. | # Open {{file|{{p|game}}\settings.ini}}. | ||
Line 250: | Line 237: | ||
|audio = n/a | |audio = n/a | ||
|subtitles = n/a | |subtitles = n/a | ||
− | |notes = | + | |notes = Set <code>Language=</code> to {{code|0}} in {{file|settings.ini}}. |
+ | |fan = | ||
+ | }} | ||
+ | {{L10n/switch | ||
+ | |language = Simplified Chinese | ||
+ | |interface = true | ||
+ | |audio = n/a | ||
+ | |subtitles = n/a | ||
+ | |notes = Set <code>Language=</code> to {{code|9}} in {{file|settings.ini}}. | ||
+ | |fan = | ||
+ | }} | ||
+ | {{L10n/switch | ||
+ | |language = Traditional Chinese | ||
+ | |interface = true | ||
+ | |audio = n/a | ||
+ | |subtitles = n/a | ||
+ | |notes = Set <code>Language=</code> to {{code|10}} in {{file|settings.ini}}. | ||
|fan = | |fan = | ||
}} | }} | ||
Line 258: | Line 261: | ||
|audio = n/a | |audio = n/a | ||
|subtitles = n/a | |subtitles = n/a | ||
− | |notes = | + | |notes = Set <code>Language=</code> to {{code|1}} in {{file|settings.ini}}. |
+ | |fan = | ||
+ | }} | ||
+ | {{L10n/switch | ||
+ | |language = German | ||
+ | |interface = true | ||
+ | |audio = n/a | ||
+ | |subtitles = n/a | ||
+ | |notes = Set <code>Language=</code> to {{code|3}} in {{file|settings.ini}}. | ||
|fan = | |fan = | ||
}} | }} | ||
Line 266: | Line 277: | ||
|audio = n/a | |audio = n/a | ||
|subtitles = n/a | |subtitles = n/a | ||
− | |notes = | + | |notes = Set <code>Language=</code> to {{code|2}} in {{file|settings.ini}}. |
|fan = | |fan = | ||
}} | }} | ||
Line 274: | Line 285: | ||
|audio = n/a | |audio = n/a | ||
|subtitles = n/a | |subtitles = n/a | ||
− | |notes = | + | |notes = Set <code>Language=</code> to {{code|5}} in {{file|settings.ini}}. |
+ | |fan = | ||
+ | }} | ||
+ | {{L10n/switch | ||
+ | |language = Korean | ||
+ | |interface = true | ||
+ | |audio = n/a | ||
+ | |subtitles = n/a | ||
+ | |notes = Set <code>Language=</code> to {{code|8}} in {{file|settings.ini}}. | ||
+ | |fan = | ||
+ | }} | ||
+ | {{L10n/switch | ||
+ | |language = Portuguese | ||
+ | |interface = true | ||
+ | |audio = n/a | ||
+ | |subtitles = n/a | ||
+ | |notes = Set <code>Language=</code> to {{code|6}} in {{file|settings.ini}}. | ||
|fan = | |fan = | ||
}} | }} | ||
Line 282: | Line 309: | ||
|audio = n/a | |audio = n/a | ||
|subtitles = n/a | |subtitles = n/a | ||
− | |notes = | + | |notes = Set <code>Language=</code> to {{code|7}} in {{file|settings.ini}}. |
|fan = | |fan = | ||
}} | }} | ||
{{L10n/switch | {{L10n/switch | ||
− | |language = | + | |language = Spanish |
|interface = true | |interface = true | ||
|audio = n/a | |audio = n/a | ||
|subtitles = n/a | |subtitles = n/a | ||
− | |notes = | + | |notes = Set <code>Language=</code> to {{code|4}} in {{file|settings.ini}}. |
|fan = | |fan = | ||
}} | }} | ||
+ | }} | ||
+ | |||
+ | ==Issues fixed== | ||
+ | ===B button input opens the pause menu=== | ||
+ | {{--}} This issue was introduced when the Sega Forever team attempted to remove the debug mode and level select feature in newer updates of the game.<ref>{{Refurl|url=https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation/issues/8|title=S1,2&CD: Pressing B while in-game makes Sonic jump and pauses the game - Rubberduckycooly/Sonic-1-2-2013-Decompilation|date=2022-05-31}}</ref> | ||
+ | {{Fixbox|description=Install and enable Script Decompilation|ref=<ref>{{Refurl|url=https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation/issues/8#issuecomment-1142881424|title=S1,2&CD: Pressing B while in-game makes Sonic jump and pauses the game, reply from MegAmi24 - Rubberduckycooly/Sonic-1-2-2013-Decompilation|date=2022-06-01}}</ref><ref>{{Refcheck|user=AmethystViper|date=2022-06-01|comment=Tested without any mods installed.}}</ref>|fix= | ||
+ | # Download the [https://github.com/Rubberduckycooly/Sonic-1-Sonic-2-2013-Script-Decompilation Sonic 1/2 2013 Script Decompilation]. | ||
+ | # Extract its contents to its own folder in a convenient location on the computer. | ||
+ | # Go into the {{file|Sonic 1}} folder, then copy the {{file|Scripts}} folder and paste it into <code>{{p|game}}</code>. | ||
+ | # Open {{file|settings.ini}} with a text editor, then change the value of <code>TxtScripts=</code> to {{code|true}}, and save the changes. | ||
}} | }} | ||
Line 320: | Line 357: | ||
|shader model versions = | |shader model versions = | ||
|shader model notes = | |shader model notes = | ||
− | |windows 32-bit exe = | + | |windows 32-bit exe = hackable |
− | |windows 64-bit exe = | + | |windows 64-bit exe = hackable |
− | |windows arm app = | + | |windows arm app = hackable |
− | |windows exe notes = | + | |windows exe notes = The main project's files are 32- and 64-bit. The GitHub page's UWP build guide seem to result in an architecture-neutral (with ARM) app.<ref>{{Refurl|url=https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation/blob/34bb2137bcf63bb9994f49524ea2a1a4dbf7433a/RSDKv4.UWP.sln|title=RSDKv4.UWP.sln|date=21 July 2022}}</ref> |
|mac os x powerpc app = | |mac os x powerpc app = | ||
|macos intel 32-bit app = unknown | |macos intel 32-bit app = unknown | ||
− | |macos intel 64-bit app = | + | |macos intel 64-bit app = hackable |
|macos arm app = unknown | |macos arm app = unknown | ||
− | |macos app notes = | + | |macos app notes = The macOS release pages mention it was "Tested on both Intel and Apple Silicon Macs", without elaborating further on if it supports ARM.<ref>{{Refurl|url=https://github.com/Sappharad/Sonic-1-2-2013-Decompilation/releases|title=Releases • Sappharad/Sonic-1-2-2013-Decompilation|date=21 July 2022}}</ref> |
|linux powerpc app = | |linux powerpc app = | ||
|linux 32-bit executable= unknown | |linux 32-bit executable= unknown | ||
− | |linux 64-bit executable= | + | |linux 64-bit executable= hackable |
|linux arm app = unknown | |linux arm app = unknown | ||
− | |linux executable notes = | + | |linux executable notes = <ref>{{Refurl|url=https://aur.archlinux.org/packages/sonic-1|title=Package Details: sonic-1 1.1.2.1-1|date=21 July 2022}}</ref> |
}} | }} | ||
Line 344: | Line 381: | ||
|interface = | |interface = | ||
|interface notes = | |interface notes = | ||
− | |input = | + | |input = SDL2 |
− | |input notes = | + | |input notes = 2.0.14. |
|cutscenes = | |cutscenes = | ||
|cutscenes notes = | |cutscenes notes = | ||
Line 353: | Line 390: | ||
|anticheat notes = | |anticheat notes = | ||
}} | }} | ||
+ | |||
+ | ===Modifications=== | ||
+ | {{mm}} As of v1.1.2, the mobile decompilation features a built-in mod loader, however, toggling activation and rearranging the load order of each mod either requires enabling developer mode in {{file|settings.ini}} or manually editing <code>{{p|game}}\modconfig.ini</code> (see [https://gamebanana.com/tuts/14066 this tutorial] for more details). Some mods may not have been updated to newer versions of the mobile decompilation or its scripts, while many older mods may lack the necessary files and folder structure to use the mobile decompilation's mod loader feature. Other mods may not be compatible with each other unless stated otherwise. The mobile decompilation port's load order priority is bottom to top. | ||
+ | {{++}} [https://gamebanana.com/tools/10457 RSDK Mod Loader] eases the installation and management of mods without replacing core data files. Decompilation ports of [[Sonic CD (2012)|Sonic CD]] (RSDKv3), [[Sonic the Hedgehog 2 (Mobile Decompilation)|Sonic the Hedgehog 2]] (RSDKv4), and [[Sonic Mania]] (RSDKv5/U) are also supported. | ||
+ | |||
+ | ====Featured mods==== | ||
+ | '''Bugfixes/improvements''' | ||
+ | * [https://gamebanana.com/mods/38 Press Start Fix] - Fixes the "Press Button" text on each character's title screen leftover from the mobile version by replacing the game's title screen graphics. | ||
+ | * [https://gamebanana.com/mods/36 Fixed "Press Start Button" Text] - A mod that is similar to the above but it fixes the "Press Button" text through script editing instead. | ||
+ | |||
+ | '''Audio/visual enhancements''' | ||
+ | * [https://gamebanana.com/mods/288730 Hardware Accurate Colors] - Restores the original color palette of the Sega Genesis version based on the video output from the BlastEm emulator. | ||
+ | * [https://gamebanana.com/sounds/51343 Original Genesis Music] - Replaces the remastered soundtrack with the original music from the Sega Genesis version. | ||
+ | |||
+ | ====[https://teamforeveronline.wixsite.com/home/sonic-1-forever Sonic the Hedgehog Forever]==== | ||
+ | Sonic the Hedgehog Forever is a modified port of the mobile decompilation that uses a new menu system, adds options for abilities from Sonic CD and Sonic Mania, features visual and sound enhancements, a built-in Achievements system, restores elements from the Sega Genesis version, and other quality-of-life improvements. Due to the changes made to this port, mods and save data for the original mobile decompilation are not compatible with Sonic the Hedgehog Forever. It is available as a standalone port or a mod for the original mobile decompilation. | ||
==System requirements== | ==System requirements== |
Latest revision as of 00:03, 17 November 2023
This page is for the decompiled port of the 2013 mobile port. For the 2010 emulated release, see Sonic the Hedgehog.
Developers | |
---|---|
Original | Sonic Team |
Remaster | Christian Whitehead |
Remaster | Headcannon |
Windows | Rubberduckycooly |
macOS (OS X) | Sappharad |
Publishers | |
Original | Sega |
Rubberduckycooly | |
Engines | |
Retro Engine | |
Release dates | |
Windows | January 17, 2021 |
macOS (OS X) | January 17, 2021[1] |
Linux | TBA |
Taxonomy | |
Monetization | Free-to-play |
Modes | Singleplayer |
Pacing | Real-time |
Perspectives | Scrolling, Side view |
Controls | Direct control |
Genres | Platform |
Art styles | Cartoon, Pixel art |
Series | Sonic the Hedgehog |
⤏ Go to series page | |
Sonic the Hedgehog fangames (series) | |
Sonic CD | 1995 |
Sonic's Schoolhouse | 1996 |
Sonic 3D Blast (series) | |
Sonic & Knuckles Collection | 1997 |
Sonic R (series) | |
Sonic Adventure (series) | |
Sonic Heroes | 2004 |
Sonic Mega Collection Plus | 2006 |
Sonic Riders | 2006 |
Sonic Racing (series) | |
Sonic the Hedgehog | 2010 |
Dr. Robotnik's Mean Bean Machine | 2010 |
Sonic Spinball | 2010 |
Sonic the Hedgehog 2 | 2011 |
Sonic 3 & Knuckles | 2011 |
Sonic Generations | 2011 |
Sonic CD (2012) | 2012 |
Sonic the Hedgehog 4: Episode I | 2012 |
Sonic the Hedgehog 4: Episode II | 2012 |
Sonic Dash | 2014 |
Sonic Lost World | 2015 |
Sonic Mania | 2017 |
Sonic Forces | 2017 |
Sonic the Hedgehog (Mobile Decompilation) | 2021 |
Sonic the Hedgehog 2 (Mobile Decompilation) | 2021 |
Sonic Colors: Ultimate | 2021 |
Sonic Origins | 2022 |
Sonic Frontiers | 2022 |
The Murder of Sonic the Hedgehog | 2023 |
Sonic Superstars | 2023 |
Sonic Dream Team | 2023 |
Sonic X Shadow Generations | 2024 |
Sonic the Hedgehog (Mobile Decompilation) is a cartoon side view platform game in the Sonic the Hedgehog series. It is an open-source decompilation of the 2013 Retro Engine remaster of Sonic the Hedgehog originally developed by Christian Whitehead and Headcannon and published by Sega for Android and iOS devices. It has been ported to various platforms by Rubberduckycooly and other contributors.
The 2013 Retro Engine remasters of Sonic the Hedgehog and Sonic the Hedgehog 2 were initially developed for Android and iOS devices. They became ad-supported and free-to-play in 2017 with other Sega Forever branded apps, but unlike the 2012 Retro Engine remaster of Sonic CD, it remained exclusive to mobile platforms for many years. Rubberduckycool, along with assistance from RMGRich, have developed this open-source decompilation port to allow the game to be played natively on other platforms but requires the Data.rsdk file extracted from the mobile version's APK to run. The initial Windows release of the decompilation port was released on January 17, 2021 and a fork for macOS was also released by Sappharad. The decompilation port initially only featured a basic developer interface to navigate through the game's menus and settings and it also introduced various issues not seen in previous releases of the game such as the bumpers in Spring Yard Zone causing players to get stuck in certain places, crashes during the credits, or the game freezing when attempting to access the developer menu. Many of these issues has been addressed in later updates of the decompilation port.
The decompilation port currently features the ability to toggle screen filters, configurable settings through its configuration file similarly to Sonic Mania, and features a built-in mod loader. An official port of the 2013 Retro Engine remaster is featured in Sonic Origins.
General information
- Sonic Retro - A huge fan site for everything Sonic the Hedgehog. Mods for all the series can also be found here.
Availability
Source | DRM | Notes | Keys | OS |
---|---|---|---|---|
Developer website | macOS fork by Sappharad. |
- Linux version requires building from the source code.
- As of v1.3.2, pre-compiled builds only support the mobile data files; partial support for Sonic Origins data files (and enabling Plus content) requires compiling from source code, as well as extracting the data files its
Sonic1u.rsdk
, hex editing itsGameData.bin
found in the extractedData\Game
folder, and extracting audio files from the mobile version'sData.rsdk
or from Sonic Origins Plus. Instructions for compiling the decompilation port can be found here, extracting the audio files from Sonic Origins Plus can be found here, and how to use the Sonic Origins data files can be found here from GameBanana.
Game data
Configuration file(s) location
System | Location |
---|---|
Windows | <path-to-game>\settings.ini[Note 1] <path-to-game>\mods\modconfig.ini[Note 1] |
Linux | $XDG_CONFIG_HOME/RSDKv4/settings.ini |
Save game data location
System | Location |
---|---|
Windows | <path-to-game>\SData.bin[Note 1] <path-to-game>\UData.bin[Note 1] |
Linux | $XDG_CONFIG_HOME/RSDKv4/SData.bin $XDG_CONFIG_HOME/RSDKv4/UData.bin |
Video
Graphics feature | State | Notes | |
---|---|---|---|
Widescreen resolution | Scaled from 424x240; see Widescreen resolution. | ||
Multi-monitor | Impossible due to various script issues.[2] | ||
Ultra-widescreen | Impossible due to various script issues.[2] | ||
4K Ultra HD | Scaled from 424x240 to desktop resolution in Fullscreen mode. Menus scale with screen width.[3] | ||
Field of view (FOV) | |||
Windowed | Displayed in Windowed mode by default. Can be toggled by pressing F4. See Windowed to enable Fullscreen mode when launching the game. | ||
Borderless fullscreen windowed | Only window borders can be disabled. | ||
Anisotropic filtering (AF) | |||
Anti-aliasing (AA) | Screen rotation is not anti-aliased. | ||
Vertical sync (Vsync) | Disabled by default. See Vertical sync (Vsync). | ||
60 FPS | |||
120+ FPS | Game speed is tied to frame rate. Run at 60 FPS only. | ||
High dynamic range display (HDR) |
Widescreen resolution
- This decompilation port is designed for a definition of 424x240, however, unlike Sonic Mania, only the screen width can be adjusted.
Set custom screen width in settings.ini[4] |
---|
|
Windowed
- Fullscreen may not work properly on integrated graphics.
Set fullscreen on launch in settings.ini[4] |
---|
|
Vertical sync (Vsync)
Enabling Vsync in settings.ini[4] |
---|
|
Input
Keyboard and mouse | State | Notes |
---|---|---|
Remapping | Key bindings must be configured manually by editing settings.ini . Keycode bindings are based on SDL Scancode Lookup codes. Developer functions such as accessing the developer menu or visualizing touchscreen elements cannot be rebound. |
|
Mouse acceleration | Mouse is not used in-game | |
Mouse sensitivity | ||
Mouse input in menus | Only main menu and some parts of the game can be interacted with the mouse.[5] | |
Mouse Y-axis inversion | ||
Controller | ||
Controller support | ||
Full controller support | ||
Controller remapping | Controller mapping must be configured manually by editing settings.ini . Controller inputs are based on SDL Game Controller Button codes. |
|
Controller sensitivity | Digital movement. | |
Controller Y-axis inversion |
Controller types |
---|
XInput-compatible controllers | ||
---|---|---|
Xbox button prompts | ||
Impulse Trigger vibration |
PlayStation controllers | ||
---|---|---|
PlayStation button prompts | ||
Light bar support | ||
Adaptive trigger support | ||
DualSense haptic feedback support | ||
Connection modes | Wired, Wireless (Bluetooth), [6] |
Generic/other controllers | [7] | |
---|---|---|
Button prompts |
Additional information | ||
---|---|---|
Controller hotplugging | ||
Haptic feedback | ||
Digital movement supported | ||
Simultaneous controller+KB/M |
Audio
Audio feature | State | Notes |
---|---|---|
Separate volume controls | Music, Sound FX. | |
Surround sound | ||
Subtitles | ||
Closed captions | ||
Mute on focus lost | See Mute on focus lost. |
Mute on focus lost
- If set to true, disables the game pausing when focus is lost.
Toggle focus pause[4] |
---|
|
Localizations
Language | UI | Audio | Sub | Notes |
---|---|---|---|---|
English | Set Language= to 0 in settings.ini . |
|||
Simplified Chinese | Set Language= to 9 in settings.ini . |
|||
Traditional Chinese | Set Language= to 10 in settings.ini . |
|||
French | Set Language= to 1 in settings.ini . |
|||
German | Set Language= to 3 in settings.ini . |
|||
Italian | Set Language= to 2 in settings.ini . |
|||
Japanese | Set Language= to 5 in settings.ini . |
|||
Korean | Set Language= to 8 in settings.ini . |
|||
Portuguese | Set Language= to 6 in settings.ini . |
|||
Russian | Set Language= to 7 in settings.ini . |
|||
Spanish | Set Language= to 4 in settings.ini . |
Issues fixed
- This issue was introduced when the Sega Forever team attempted to remove the debug mode and level select feature in newer updates of the game.[8]
Install and enable Script Decompilation[9][10] |
---|
|
Other information
API
Executable | 32-bit | 64-bit | ARM | Notes |
---|---|---|---|---|
Windows | The main project's files are 32- and 64-bit. The GitHub page's UWP build guide seem to result in an architecture-neutral (with ARM) app.[11] | |||
macOS (OS X) | The macOS release pages mention it was "Tested on both Intel and Apple Silicon Macs", without elaborating further on if it supports ARM.[12] | |||
Linux | [13] |
Middleware
Middleware | Notes | |
---|---|---|
Input | SDL2 | 2.0.14. |
Modifications
- As of v1.1.2, the mobile decompilation features a built-in mod loader, however, toggling activation and rearranging the load order of each mod either requires enabling developer mode in
settings.ini
or manually editing<path-to-game>\modconfig.ini
(see this tutorial for more details). Some mods may not have been updated to newer versions of the mobile decompilation or its scripts, while many older mods may lack the necessary files and folder structure to use the mobile decompilation's mod loader feature. Other mods may not be compatible with each other unless stated otherwise. The mobile decompilation port's load order priority is bottom to top. - RSDK Mod Loader eases the installation and management of mods without replacing core data files. Decompilation ports of Sonic CD (RSDKv3), Sonic the Hedgehog 2 (RSDKv4), and Sonic Mania (RSDKv5/U) are also supported.
Featured mods
Bugfixes/improvements
- Press Start Fix - Fixes the "Press Button" text on each character's title screen leftover from the mobile version by replacing the game's title screen graphics.
- Fixed "Press Start Button" Text - A mod that is similar to the above but it fixes the "Press Button" text through script editing instead.
Audio/visual enhancements
- Hardware Accurate Colors - Restores the original color palette of the Sega Genesis version based on the video output from the BlastEm emulator.
- Original Genesis Music - Replaces the remastered soundtrack with the original music from the Sega Genesis version.
Sonic the Hedgehog Forever
Sonic the Hedgehog Forever is a modified port of the mobile decompilation that uses a new menu system, adds options for abilities from Sonic CD and Sonic Mania, features visual and sound enhancements, a built-in Achievements system, restores elements from the Sega Genesis version, and other quality-of-life improvements. Due to the changes made to this port, mods and save data for the original mobile decompilation are not compatible with Sonic the Hedgehog Forever. It is available as a standalone port or a mod for the original mobile decompilation.
System requirements
Windows | ||
---|---|---|
Minimum | ||
Operating system (OS) | ||
Processor (CPU) | ||
System memory (RAM) | ||
Hard disk drive (HDD) |
Notes
- ↑ 1.0 1.1 1.2 1.3 When running this game without elevated privileges (Run as administrator option), write operations against a location below
%PROGRAMFILES%
,%PROGRAMDATA%
, or%WINDIR%
might be redirected to%LOCALAPPDATA%\VirtualStore
on Windows Vista and later (more details).
References
- ↑ 1.0.0 Mac Build - Sappharad/Sonic-1-2-2013-Decompilation - last accessed on 2022-05-31
- ↑ 2.0 2.1 1.1.0 - Various issues with ultrawide resolutions. · Issue #164 · Rubberduckycooly/Sonic-1-2-2013-Decompilation
- ↑ Verified by User:AmethystViper on 2022-05-31
- ↑ 4.0 4.1 4.2 4.3 Verified by User:Keith on 2022-02-12
- ↑ Verified by User:AmethystViper on 2022-05-31
- ↑ Verified by User:AmethystViper on 2022-05-31
- Tested with a V1 controller,
- ↑ Verified by User:AmethystViper on 2022-05-31
- Tested with a Logitech F310 in DirectInput mode.
- ↑ S1,2&CD: Pressing B while in-game makes Sonic jump and pauses the game - Rubberduckycooly/Sonic-1-2-2013-Decompilation - last accessed on 2022-05-31
- ↑ S1,2&CD: Pressing B while in-game makes Sonic jump and pauses the game, reply from MegAmi24 - Rubberduckycooly/Sonic-1-2-2013-Decompilation - last accessed on 2022-06-01
- ↑ Verified by User:AmethystViper on 2022-06-01
- Tested without any mods installed.
- ↑ RSDKv4.UWP.sln - last accessed on 21 July 2022
- ↑ Releases • Sappharad/Sonic-1-2-2013-Decompilation - last accessed on 21 July 2022
- ↑ Package Details: sonic-1 1.1.2.1-1 - last accessed on 21 July 2022