Sonic-Mania-Decompilation
Sonic-Mania-Decompilation copied to clipboard
Crash when trying to play on a new encore mode slot game - Cutscene issue Angel Island Encore Mode
On the menu, when we select a slot in Encore Mode, we have the effect of the Ruby, black screen, loading effect with the sonic roll effect, and crash after that.
ManiaModeMenu_Initialize() ManiaModeMenu_Initialize() ManiaModeMenu_Initialize() IntegerGeorge802 Loaded File Data/Music/MainMenu.ogg Encore Mode Loaded File Data/Music/EncoreMenu.ogg Attempting to save user file: SaveData.bin Loading Scene "Cutscenes - Angel Island Zone Encore" with filter 5 Loaded File Data/Stages/AIZ/TileConfig.bin Loaded File Data/Stages/AIZ/StageConfig.bin File not found: Data/Objects/Static/E381DC058108A5ACA91DF2583566136D.bin File not found: Data/Objects/Static/09315626295D9940C6BF49DF7FD1664C.bin File not found: Data/Objects/Static/A0E52DC0A4AC416C03FA533409F51C9B.bin File not found: Data/Objects/Static/9FA409F23B2AD7FDC42D93A6A247EB4A.bin File not found: Data/Objects/Static/63696833C1395DE585471441C3DC4F72.bin File not found: Data/Objects/Static/3BFF99F65E7C670153194138B5FAB983.bin File not found: Data/Objects/Static/AC09A42715F4EE7EE3E32FD51979E83C.bin File not found: Data/Objects/Static/989C43E38CCE42E37D7798B2C63449A6.bin File not found: Data/Objects/Static/69D7534EF0F3591B5F83DB426804FBB3.bin File not found: Data/Objects/Static/2D8DC4F14C2F5D5D1F4CB3BD92CD32F6.bin File not found: Data/Objects/Static/536980065DDFA9C30AA21DA617983E00.bin Loaded File Data/Objects/Static/36D61A3DE508B500AE0ECF8D33F32943.bin File not found: Data/Objects/Static/74CDDB38E46629337DBEA81554E62D71.bin File not found: Data/Objects/Static/EFE2039FDAD48C7F4054D7BF9D7C28DE.bin File not found: Data/Objects/Static/4DBD71C74937B827FBC96EE189A81B1F.bin File not found: Data/Objects/Static/89A6167B9E7976DFD2B67F22B44EC733.bin File not found: Data/Objects/Static/79D05A1F2F3EA2BEE984D80D7161A04B.bin File not found: Data/Objects/Static/4C8B9EC9C186BC01DAACA081C69F011B.bin File not found: Data/Objects/Static/4BE02ABEFD4A3A9057EF467BF84ADA14.bin File not found: Data/Objects/Static/8300D88DC1F2D49758CE6F0EECA81F1D.bin File not found: Data/Objects/Static/7E5F1F9A17E1865B802B86B034A44350.bin File not found: Data/Objects/Static/2042A1C4CBE1023AE91534DF6BDAA5B8.bin File not found: Data/Objects/Static/17E35ADD361E13009DB0227FD5D24A8F.bin File not found: Data/Objects/Static/B8F5DAE23FBA0820344991536004A772.bin File not found: Data/Objects/Static/E7A496B3EF81927826F63214938ACD38.bin File not found: Data/Objects/Static/A8630C6DCCE21399E04ABFD295D79B86.bin File not found: Data/Objects/Static/A0B8DB7E3CE18003954A4AAA27E78969.bin File not found: Data/Objects/Static/ED4339AEE6C71B25C999229E5E10AF8F.bin File not found: Data/Objects/Static/71D82C54214A91906BCAE81696E123DC.bin Loaded File Data/Objects/Static/33B8E672A1DEA5654AF81AEF98BDAA6F.bin File not found: Data/Objects/Static/DBB27E917B3CA46A84F1B069B503B3FF.bin File not found: Data/Objects/Static/2158CF7C8BEFB7209E223B51C1723E5D.bin File not found: Data/Objects/Static/14AEC7EF1E30D0261A7EB50905A02C51.bin File not found: Data/Objects/Static/F843B77CECCB9AAFD6797EC0B62CE93B.bin File not found: Data/Objects/Static/111132C9CE3446FDE9228FDDF84C74FA.bin File not found: Data/Objects/Static/D7324745C74349221A103A01B0D02ACD.bin File not found: Data/Objects/Static/6AAE98F3CDE67017FFD64120A8D6F7E3.bin File not found: Data/Objects/Static/9F08353F8E3BFFFDE5A6D008F0F2807C.bin File not found: Data/Objects/Static/B1EDED8A6CBC66D4D42C8FC02468DDC2.bin File not found: Data/Objects/Static/28ACF2D1F78E89176D8C97048E91A08F.bin File not found: Data/Objects/Static/3E0C08BADFF21084B7C14BD2F3DDB36F.bin File not found: Data/Objects/Static/41ABD15D2DB188CB9D247246CD292B6D.bin File not found: Data/Objects/Static/4A6F56A4772748B21089BBB6EF1C1C5C.bin File not found: Data/Objects/Static/EEBB8C48C1DD7523A1A37B0F27B5E9CD.bin File not found: Data/Objects/Static/609CD2D831928DA7B3EB65A4EDFD32ED.bin File not found: Data/Objects/Static/6BE83DAD65E8CD27CDBBEC55BB12F1E4.bin File not found: Data/Objects/Static/24F1CCDBF3067F6EC99580BB8A6D58B0.bin File not found: Data/Objects/Static/F504BF4EE7CB9A185EB40C08D560CFC6.bin File not found: Data/Objects/Static/42CF24E1426E7B9E23035499E6787CDE.bin Loaded File Data/Objects/Static/E89CBBD08E19C44DD87FB3C4C8D1CCA3.bin File not found: Data/Objects/Static/6B9063BB3B500D179DB074C7825EE62C.bin Loaded File Data/Objects/Static/837851AB76D9F726E97291E6F761921C.bin File not found: Data/Objects/Static/55C4B476C19A5FD272BF1CFADED473F4.bin File not found: Data/Objects/Static/EF829052B2A6B80050F1B4280ECB334D.bin File not found: Data/Objects/Static/99FF5932B54958FB64F5D5676D244D4B.bin File not found: Data/Objects/Static/4263754921E0308B70CADB500C4AD89B.bin File not found: Data/Objects/Static/76BA759C2F741C9CE585B2C6A3DE3044.bin File not found: Data/Objects/Static/B7CC2631C9B2A283835222585D8EEACE.bin File not found: Data/Objects/Static/75ED2B0AA3042ABA0C56EA17E0907C47.bin File not found: Data/Objects/Static/4F4B8155D4A6B711826DA54BABCD996F.bin File not found: Data/Objects/Static/3D3B9876382D8F9C9918EE3548D48218.bin File not found: Data/Objects/Static/8FE17E26725F70CBBA275D66C791BCEF.bin File not found: Data/Objects/Static/14F973246EEDE8E04C2BC2EC00E56703.bin File not found: Data/Objects/Static/F32DD0373AA91D302B6C0F680A42E5A4.bin File not found: Data/Objects/Static/DB149FE10038E8E017B255036C6CF79D.bin Loaded File Data/Objects/Static/F6626BD9DD2ED205493601497475537B.bin File not found: Data/Objects/Static/25A6087E4FA88F7ECF69286228443431.bin File not found: Data/Objects/Static/6AF377115A4EBA73F9810CBC43E0B782.bin File not found: Data/Objects/Static/C0D1672F280CA598C3332EC4AB45C509.bin File not found: Data/Objects/Static/26BBD0F0F4732F16B9AA1B7BAAABF51B.bin File not found: Data/Objects/Static/372DC6A988BA0511BFE654F720C2C345.bin File not found: Data/Objects/Static/8E6F9BA205087C7F0F29D2BED0B5E3E8.bin File not found: Data/Objects/Static/29796238A0B9CF98E6B76A461A306B3C.bin File not found: Data/Objects/Static/CEF7F68D59AE519EA3CF04F1E2878301.bin Loaded File Data/Objects/Static/09F50C61464BCFA45F26511A29FB1145.bin Loaded File Data/Objects/Static/7236F48F00B2217ED5890EC7DC00D581.bin File not found: Data/Objects/Static/E80941DDCF2EB1BEB1C37DAD88C8DBAE.bin File not found: Data/Objects/Static/8F5C766AA4FE83DDE0DF53716A1E19A5.bin File not found: Data/Objects/Static/9D943EDCDDE5AF015467F53091DA33B7.bin File not found: Data/Objects/Static/74798DA69F0D1BBE3FD6B4EF1A75FDC8.bin File not found: Data/Objects/Static/F793DB9A5312977FC9BDA1411DD80621.bin File not found: Data/Objects/Static/D8AB08B268E6E378C106C42851D1109C.bin Loaded File Data/SoundFX/Ruby/RedCube_L.wav Loaded File Data/SoundFX/Ruby/RedCube_R.wav Loaded File Data/SoundFX/Ruby/Attack1_L.wav Loaded File Data/SoundFX/Ruby/Attack1_R.wav Loaded File Data/SoundFX/Ruby/Attack4_L.wav Loaded File Data/SoundFX/Ruby/Attack4_R.wav Loaded File Data/SoundFX/Stage/LedgeBreak3.wav Loaded File Data/SoundFX/LRZ/WalkerLegs.wav Loaded File Data/SoundFX/LRZ/Drill.wav Loaded File Data/SoundFX/Stage/Clack.wav Loaded File Data/SoundFX/Stage/Impact4.wav Loaded File Data/SoundFX/SPZ1/HeliWooshIn.wav Loaded File Data/SoundFX/Stage/Drop.wav Loaded File Data/SoundFX/Stage/Explosion2.wav Loaded File Data/SoundFX/Stage/Explosion3.wav Loaded File Data/SoundFX/Stage/HighFive.wav Loaded File Data/SoundFX/MSZ/MysticPoof.wav Loaded File Data/SoundFX/LRZ/KingCharge.wav Loaded File Data/SoundFX/MSZ/MysticHat.wav Loaded File Data/SoundFX/Stage/Huff.wav Loaded File Data/SoundFX/Stage/Shot.wav Loaded File Data/SoundFX/MSZ/MysticTransform.wav Loaded File Data/SoundFX/Stage/Pon.wav Loaded File Data/SoundFX/Stage/LedgeBreak3.wav Loaded File Data/SoundFX/Stage/Splash.wav Loaded File Data/SoundFX/Stage/Warning.wav Loaded File Data/SoundFX/Stage/Breathe.wav Loaded File Data/SoundFX/Stage/Drown.wav Loaded File Data/SoundFX/Stage/DrownAlert.wav Loaded File Data/Stages/AIZ/16x16Tiles.gif Loaded File Data/Stages/AIZ/Scene2.bin dataPtr: 90AB58F4 optionsPtr->screenShader = 0 optionsPtr->volMusic = 1024 optionsPtr->volSfx = 1024 optionsPtr->language = 0 optionsPtr->overrideLanguage = 1 optionsPtr->vsync = 1 optionsPtr->tripleBuffering = 0 optionsPtr->windowBorder = 0 optionsPtr->windowed = 1 optionsPtr->windowSize = 0 Loading EN strings... Loaded File Data/Strings/StringsEN.txt ./RSDKv5/RSDK/User/Dummy/DummyPresence.cpp: SetPresence() # Set Steam rich presence string to Playing Encore Mode
Loaded File Data/Sprites/Global/TitleCard.bin Loaded File Data/Sprites/Global/Display.gif Loaded File Data/Sprites/Global/HUD.bin Loaded File Data/Sprites/Global/SuperButtons.bin Loaded File Data/Sprites/Global/SuperButtons.gif Loaded File Data/Sprites/Players/Sonic.bin Loaded File Data/Sprites/Players/Sonic1.gif Loaded File Data/Sprites/Players/Sonic2.gif Loaded File Data/Sprites/Players/Sonic3.gif Loaded File Data/Sprites/Players/SuperSonic.bin Loaded File Data/Sprites/Players/Sonic4.gif Loaded File Data/Sprites/Global/Ring.bin Loaded File Data/Sprites/Global/Items.gif Loaded File Data/Sprites/Global/ItemBox.bin Loaded File Data/Sprites/Global/Shields.bin Loaded File Data/Sprites/Global/Shields.gif Loaded File Data/Sprites/Global/Objects3.gif Loaded File Data/Sprites/Global/Invincible.bin Loaded File Data/Sprites/Global/Springs.bin Loaded File Data/Sprites/Global/Objects.gif Loaded File Data/Sprites/Global/StarPost.bin Loaded File Data/Sprites/Global/SpeedGate.bin Loaded File Data/Sprites/Global/Spikes.bin Loaded File Data/Sprites/Global/PlaneSwitch.bin Loaded File Data/Sprites/Global/Explosions.bin Loaded File Data/Sprites/Global/Explosions.gif Loaded File Data/Sprites/Global/ScoreBonus.bin Loaded File Data/Sprites/Global/Dust.bin Loaded File Data/Sprites/Global/Animals.bin Loaded File Data/Sprites/Global/Animals.gif Loaded File Data/Sprites/Global/SignPost.bin Loaded File Data/Sprites/Global/Objects2.gif Loaded File Data/Sprites/Global/EggPrison.bin Loaded File Data/Sprites/Global/SpecialRing.bin Loaded File Data/Meshes/Global/SpecialRing.bin Loaded File Data/Sprites/UI/UIElements.bin Loaded File Data/Sprites/UI/UI.gif Loaded File Data/Sprites/UI/SaveSelect.bin Loaded File Data/Sprites/UI/SaveSelectEN.gif Loaded File Data/Sprites/UI/Zones.gif Loaded File Data/Sprites/UI/SmallFont.bin Loaded File Data/Sprites/UI/SmallFont1.gif Loaded File Data/Sprites/UI/SmallFont2.gif Apply Language 0 Loaded File Data/Sprites/UI/TextEN.bin Loaded File Data/Sprites/UI/TextEN.gif Loaded File Data/Sprites/UI/PauseEN.gif Loaded File Data/Sprites/UI/TextPlusEN.gif Loaded File Data/Sprites/UI/WaitSpinner.bin Loaded File Data/Sprites/Global/SuperSparkle.bin Loaded File Data/Sprites/AIZ/AniTiles.gif Loaded File Data/Sprites/Players/KnuxCutsceneAIZ.bin Loaded File Data/Sprites/Players/Knux1.gif Loaded File Data/Sprites/Players/KnuxCutsceneAIZ.gif
Issue is when the game is trying to load this cutscene ( tried in Debug Mode, other cutscenes seems to work for me ).
How can i get encore update?
You must : -> 1°) buy the game on Steam : https://store.steampowered.com/app/584400/Sonic_Mania/ -> 2°) Compile by yourself the project here : https://github.com/Rubberduckycooly/RSDKv5-Decompilation
Autobuild on Github disable the Encore Mode on your RSDK file
what platform was this on? I'm not getting the issue on windows
Windows 11 - 64 bits .only this cutscene crashes the game. I have the Steam RSDK with DLC bought ( Plus Version ). Tried with RSDKv5 executable that i compiled
Sorry for the late answer. It is 8am for me when I wrote this message.
Compiled with MSYS2 on RSDKv5U now with the latest source code of RSDKv5 Decomp and Sonic Mania Decomp, "Angel Island Encore Mode" cutscene still crashes the game on Windows ( tested on Windows 11 - 64 bits - DX9 )
It is an issue with MSYS2 compilation method (DX11 tested). Compiling with VS works. But why ?
Android (And I Want to play Plus Version)
I'll see what I can find today, visual studio is usually very relaxed when it comes to these kinds of errors so they often show up on non-msvc builds
Okay. I will try to study that too if i can find the reason of the crash
Can confirm there is something bad with Angel Island Encore Mode Cutscene with MSYS2 / Mingw or with VS. When I do temp modification to the GameConfig.bin to load AIZ Normal mode cutscene, the cutscene is loaded. But when I restore the original value ( 2 ) , the cutscene refuses to load.
EDIT: MSYS2 version hang when he tries to load the file Data/Sprites/AIZ/AIZTornado.bin, after he loaded the file Data/Sprites/Players/KnuxCutsceneAIZ.gif
Left is the log under MSYS2, Right is the log with DX11 VS. Why after DummyPresence.cpp, one line is present on MSYS2, and on DX11 VS two lines are present ???


I'm able to reproduce this issue on Linux (Debian Sid, Linux 5.17, glibc 2.33-7). It seems to segfault in Game/Objects/AIZ/AIZSetup.c:183 (in AIZSetup_StageLoad). GDB gives this backtrace:
#0 0x00007fffeefb3430 in AIZSetup_StageLoad ()
at Game/Objects/AIZ/AIZSetup.c:183
#1 0x000055555558aacb in std::__invoke_impl<void, void (*&)()> (
__f=@0x555555b18050: 0x7fffeefb2f2e <AIZSetup_StageLoad>)
at /usr/include/c++/11/bits/invoke.h:61
#2 0x00005555555870f5 in std::__invoke_r<void, void (*&)()> (
__fn=@0x555555b18050: 0x7fffeefb2f2e <AIZSetup_StageLoad>)
at /usr/include/c++/11/bits/invoke.h:111
#3 0x0000555555583620 in std::_Function_handler<void (), void (*)()>::_M_invoke(std::_Any_data const&) (__functor=...)
at /usr/include/c++/11/bits/std_function.h:290
#4 0x00005555555809c6 in std::function<void ()>::operator()() const (
this=0x555555b18050 <RSDK::objectClassList+2800>)
at /usr/include/c++/11/bits/std_function.h:590
#5 0x00005555555dd6b3 in RSDK::InitObjects ()
at RSDKv5/RSDK/Scene/Object.cpp:297
#6 0x000055555556061a in RSDK::ProcessEngine ()
at RSDKv5/RSDK/Core/RetroEngine.cpp:325
#7 0x0000555555560433 in RSDK::RunRetroEngine (argc=1, argv=0x7fffffffdbc8)
at RSDKv5/RSDK/Core/RetroEngine.cpp:239
#8 0x0000555555560132 in RSDK_main (argc=1, argv=0x7fffffffdbc8,
linkLogicPtr=0x555555567b99 <RSDK::LinkGameLogic(void*)>)
at RSDKv5/main.cpp:84
#9 0x0000555555560100 in main (argc=1, argv=0x7fffffffdbc8)
at RSDKv5/main.cpp:71
Couldn't get any issues on mac or anything, so it's not playing nice for sure. This stack trace is very helpful though, thanks! I'm still working on trynna pin it down and fix it for anyone effected!
should be fixed in a61137bd56dad8f426d7f9f8022d78bfd35fbb00, found a case where RSDK didn't match up to Game Logic and would return an correct value. Please close this issue if it fixes it, if not please tag me and I'll search some more!