Just fixed autobuilds by updating the actions to v4. Unfortunately, it seems GitHub has removed support for downloading autobuild artifacts outside of zip files, so I can't provide a direct QR code to the .cia file; you'll have to download the build manually. To download, visit the Actions page on GitHub, click on the latest commit, then click on the download icon in the corner to download a zip containing the .3dsx and .cia of the latest build.
Given that these are non-release builds, don't expect things to work perfectly, however, if you want to keep up-to-date with recent changes, feel free to check them out.
Hey there, thanks for your contributions, this is really amazing. How difficult is it to enable Mania Plus with this latest updated version (I'm unsure of what the old comment about "compiling it yourself" means when it comes to the DLC content)? I'm not used to doing stuff like this. I only have the extracted data files for my purchased Plus version on Steam.
New release (v1.1.0) is officially out. I was gonna hold off on releasing to see if caching sprites would've resulted in even faster load times, however, at this point there's a ton of improvements to the port, and everyone's been waiting long enough anyhow.
Changelog from the GitHub release:
Game now runs on engine version v5U, however, without v3/v4 Legacy support. This engine version is referred to as v5C internally.
Dev menu now displays extra information regarding memory usage, as well as if the game is running on a N3DS.
Audio thread now runs on core 1, with support for asynchronous file loading, alleviating microloads during gameplay and resulting in speedup in certain sections (start of Studiopolis Act 2, parts of Flying Battery Act 1). Additionally, the game no longer suffers from delayed audio.
Engine now supports loading assets from an external RomFS file.
Loading times improved significantly while using the Data file. Thanks to @davidgf for using setvbuf on Data file accesses. Additionally, all static object files and sprite bin files are cached. Loading times are ~30-40 seconds on initial boot, and ~5-10 seconds on stage load, however, YMMV.
Port now incorporates more or less the latest version of both the RSDKv5 decomp and Mania decomp (thanks @Mefiresu and @c08oprkiua).
Game now boots on O3DS. However, don't expect full-speed frame rates. A Citro2D/3D backend is still planned to get performance up to speed.
Installation process is the same as before. Copy the Data.rsdk or extracted Data folder to /3ds/SonicMania on your 3DS's SD Card.
The port is still a work-in-progress, so anyone feel free to report and bugs or issues you might run into.
Hey there, thanks for your contributions, this is really amazing. How difficult is it to enable Mania Plus with this latest updated version (I'm unsure of what the old comment about "compiling it yourself" means when it comes to the DLC content)? I'm not used to doing stuff like this. I only have the extracted data files for my purchased Plus version on Steam.
"Compiling it yourself" entails having a working 3DS homebrew development environment set up to build homebrew. There is a buildscript in the repo that you can run that automates the process, however, you'll still need to set up the environment yourself. There is no way to enable it through a setting on the release binaries; Plus support is either enabled or disabled via a flag turned on at compile time.
How difficult setting that up depends on how familiar you are with homebrew development, unfortunately. I can, however, point you to some resources towards setting such an environment up. For more info, see here: https://www.3dbrew.org/wiki/Setting_up_Development_Environment
The reason Plus is disabled in pre-built binaries is because the decomp has no way of actually detecting whether or not Plus was purchased or not; the Data file is the same. While it isn't much, the decomp developers have chosen to disable Plus support on pre-compiled builds of the decomp as a way to hinder people from simply pirating Plus, and I've chosen to do the same on the 3DS port.
I appreciate the reply, thanks for the new update! I had just checked my 3DS and Wii U for some homebrew stuff after ages, and what a coincidence that projects like these are still going! Thanks! It's just so fun to see how hard it can be pushed, and cute to see the thing run on a tiny New 3DS, lol. Graphics look super crisp. I know it runs on phones now due to Netflix but this is way cooler. TBH the reasoning is a little silly, given the game is $6 on sale right now (and the DLC is $1, IMO logically, pirating is entirely unnecessary as the game is both very affordable and very accessible).. I understand your reasoning of course, still wish the DLC was enabled by default to make the installation a little less tedious, but it is what it is, I suppose! (It doesn't stop anyone from pirating the more expensive, main game then -- the logic behind their decision makes no sense to me ultimately.. must have to do with protecting the project against legal action or something).
The Wii U version of this project simply allows you to enable the flag yourself. Update: I guess you add -DRETRO_DISABLE_PLUS=off to the buildscript.. I can't get the buildscript to work with the program and have no idea where it'd output the files on the Windows File Manager yet. Oh, you have to drag and drop the script into the MSYS2 program. I think I've done something like this before, but nowhere near as much as some people here. (Not a programmer) I need more experience with terminal programs *sigh*
You're doing absolutely godly work with this port.
I hope you manage to optimize the special stages. Right now they don't really run as much as they "walk".
You're doing absolutely godly work with this port.
I hope you manage to optimize the special stages. Right now they don't really run as much as they "walk".
Thanks. That is definitely planned. Current plan for now is to implement a custom hardware renderer to both increase performance in Special Stages as well as on O3DS, however, depending on how much work it would take to implement, I might also look into offloading all draw calls to a core 2 thread to see how that would speed up performance on N3DS systems in particular, and put that into an intermediary release. That is assuming it won’t take as much work as just writing the hardware renderer, though.
Ok, so I found a bug, in the Sonic 3 orb bonus stages, when converting a blue orbs group into rings, the rings are not visible.
And also, the game freezes the whole console when loading Studiopolis zone from Chemical plant or special/bonus stages, I have to restart my 3ds and load it form the save file each time
Ok, so I found a bug, in the Sonic 3 orb bonus stages, when converting a blue orbs group into rings, the rings are not visible.
And also, the game freezes the whole console when loading Studiopolis zone from Chemical plant or special/bonus stages, I have to restart my 3ds and load it form the save file each time
I've also run into the issue with Blue Spheres; will try to address this in a later release. The bit regarding Studiopolis is unusual, though; by loading Studiopolis from Chemical Plant, do you mean through the regular stage transition, or via the dev menu?
Ah pretty cool! Just noticed you merged my PR with the setvbuf magic.
Awesome! I recall it going from unplayable hell to something reasonably usable.
Keep the awesome work!
I've also run into the issue with Blue Spheres; will try to address this in a later release. The bit regarding Studiopolis is unusual, though; by loading Studiopolis from Chemical Plant, do you mean through the regular stage transition, or via the dev menu?
New release (v1.1.0) is officially out. I was gonna hold off on releasing to see if caching sprites would've resulted in even faster load times, however, at this point there's a ton of improvements to the port, and everyone's been waiting long enough anyhow.
Changelog from the GitHub release:
Game now runs on engine version v5U, however, without v3/v4 Legacy support. This engine version is referred to as v5C internally.
Dev menu now displays extra information regarding memory usage, as well as if the game is running on a N3DS.
Audio thread now runs on core 1, with support for asynchronous file loading, alleviating microloads during gameplay and resulting in speedup in certain sections (start of Studiopolis Act 2, parts of Flying Battery Act 1). Additionally, the game no longer suffers from delayed audio.
Engine now supports loading assets from an external RomFS file.
Loading times improved significantly while using the Data file. Thanks to @davidgf for using setvbuf on Data file accesses. Additionally, all static object files and sprite bin files are cached. Loading times are ~30-40 seconds on initial boot, and ~5-10 seconds on stage load, however, YMMV.
Port now incorporates more or less the latest version of both the RSDKv5 decomp and Mania decomp (thanks @Mefiresu and @c08oprkiua).
Game now boots on O3DS. However, don't expect full-speed frame rates. A Citro2D/3D backend is still planned to get performance up to speed.
Installation process is the same as before. Copy the Data.rsdk or extracted Data folder to /3ds/SonicMania on your 3DS's SD Card.
The port is still a work-in-progress, so anyone feel free to report and bugs or issues you might run into.
"Compiling it yourself" entails having a working 3DS homebrew development environment set up to build homebrew. There is a buildscript in the repo that you can run that automates the process, however, you'll still need to set up the environment yourself. There is no way to enable it through a setting on the release binaries; Plus support is either enabled or disabled via a flag turned on at compile time.
How difficult setting that up depends on how familiar you are with homebrew development, unfortunately. I can, however, point you to some resources towards setting such an environment up. For more info, see here: https://www.3dbrew.org/wiki/Setting_up_Development_Environment
The reason Plus is disabled in pre-built binaries is because the decomp has no way of actually detecting whether or not Plus was purchased or not; the Data file is the same. While it isn't much, the decomp developers have chosen to disable Plus support on pre-compiled builds of the decomp as a way to hinder people from simply pirating Plus, and I've chosen to do the same on the 3DS port.
New release (v1.1.0) is officially out. I was gonna hold off on releasing to see if caching sprites would've resulted in even faster load times, however, at this point there's a ton of improvements to the port, and everyone's been waiting long enough anyhow.
Changelog from the GitHub release:
Game now runs on engine version v5U, however, without v3/v4 Legacy support. This engine version is referred to as v5C internally.
Dev menu now displays extra information regarding memory usage, as well as if the game is running on a N3DS.
Audio thread now runs on core 1, with support for asynchronous file loading, alleviating microloads during gameplay and resulting in speedup in certain sections (start of Studiopolis Act 2, parts of Flying Battery Act 1). Additionally, the game no longer suffers from delayed audio.
Engine now supports loading assets from an external RomFS file.
Loading times improved significantly while using the Data file. Thanks to @davidgf for using setvbuf on Data file accesses. Additionally, all static object files and sprite bin files are cached. Loading times are ~30-40 seconds on initial boot, and ~5-10 seconds on stage load, however, YMMV.
Port now incorporates more or less the latest version of both the RSDKv5 decomp and Mania decomp (thanks @Mefiresu and @c08oprkiua).
Game now boots on O3DS. However, don't expect full-speed frame rates. A Citro2D/3D backend is still planned to get performance up to speed.
Installation process is the same as before. Copy the Data.rsdk or extracted Data folder to /3ds/SonicMania on your 3DS's SD Card.
The port is still a work-in-progress, so anyone feel free to report and bugs or issues you might run into.
"Compiling it yourself" entails having a working 3DS homebrew development environment set up to build homebrew. There is a buildscript in the repo that you can run that automates the process, however, you'll still need to set up the environment yourself. There is no way to enable it through a setting on the release binaries; Plus support is either enabled or disabled via a flag turned on at compile time.
How difficult setting that up depends on how familiar you are with homebrew development, unfortunately. I can, however, point you to some resources towards setting such an environment up. For more info, see here: https://www.3dbrew.org/wiki/Setting_up_Development_Environment
The reason Plus is disabled in pre-built binaries is because the decomp has no way of actually detecting whether or not Plus was purchased or not; the Data file is the same. While it isn't much, the decomp developers have chosen to disable Plus support on pre-compiled builds of the decomp as a way to hinder people from simply pirating Plus, and I've chosen to do the same on the 3DS port.
I tried both the CIA and 3dsx DL from universal updater (v 1.1.0). Put my Data.rdsk from my steam copy into the /3ds/SonicMania folder. However whether I boot via homebrew launcher or the installed cia file I have a black screen, after about a minute I hear the "SEGA" logo sound and the title screen music but nothing else (still with a black screen). Any suggestions? This is on a new 3ds (non xl).
I'm running the latest version on a New 3DS XL. Data file is in the correct folder. The game starts with a black screen, splashes white while the Sega sound plays then goes back to black while the start menu music plays and then nothing else happens.
I've tried searching to see if anyone else has had this issue but no luck
Wanted to bump this to indicate that I am having the same issue as the two fellows above me! On version 1.1 I load for about a minute before getting a white flash and then the audio, but no visuals (regardless of letting this sit for 10+ mins.). I found the .cia for version 1.0 and it booted no problem. (And wonderful work with this project, this is incredible stuff!)
I own Sonic Mania on both Nintendo Switch and Steam. I was considering on using the data.rsdk file from the former, but since I have no plans to softmod my launch model Nintendo Switch, I'll use the datapack file from the PC release.
I do have one question. I'm not skilled at coding or executing commands in a terminal, but... are there ways to compile the port more easily? I know compiling stuff can be difficult. I just want to play with the Encore DLC enabled, that's all I want to ask.
I'm having an issue myself with building the port using the buildscript shell executable. Except I got this error:
What am I doing wrong? Did I miss any steps? I sure hope I followed everything correctly...
EDIT: I'm on Windows 10, and got devkitPro, Visual Studio, CMake, and other related dependencies installed. Maybe I need to reinstall everything from a clean state? Or maybe I need a computer with Linux? Compiling stuff isn't easy, ya know!
EDIT 2: I deleted the error codes and inserted a screenshot of the error. Much more convenient, right? If anyone can help me out of this situation, I'd be much appreciated! I just want to play the latest version of the 3DS port with the Plus DLC enabled.
I was able to build my own port properly with the Plus DLC enabled thanks to the helpful and generous people in the Retro Engine Modding Server on Discord. I'm able to test every zone and act except for Stardust Speedway Act 2, which crashed my 3DS (at least on my 3DSX build).
Have you built your ports? If so, how far did you reach starting from Green Hill Act 1? I got to the end of Press Garden Act 1 after defeating the boss where the game froze, at least the first time. It didn't freeze the second time I defeated the boss.
It wasn't too long ago we saw our first glimpse of Courage Reborn, another Twilight Princess PC port in the works based on last year's decompilation efforts. With...
Seemingly out of nowhere a PC port for Pokemon Platinum has surfaced online, bundled alongside the source code for those interested in building and developing it for...
After much speculation, Nintendo has finally followed their competitors in announcing price increases for their hardware.
You can find a breakdown of what's changing...
Airing last night with very little in the way of warning, a brand new Nintendo Direct was aired. Running for 15 minutes in total, it took a moment to celebrate the...
With very little in the way of announcement, Valve has today increased the price of the Steam Deck but some fairly considerable margins. Both of the available models...
As a part of their Financial Results Briefing for the previous year, Nintendo president Shuntaro Furukawa took to the floor to answer key questions around the Switch...
Earlier this year, Sony announced major price increases for the PS5, PS5 Pro, and PlayStation Portal. Now the company is raising prices again, this time for...
We are once again here to tell you about a game leaking before its release, but for once, it's not one published by Nintendo. The game files for Microsoft's upcoming...
Continuing with the great news of Pokémon Platinum getting a native unofficial PC port just a few days ago, today, yet another classic title from the franchise has...
The latest in a growing number of native PC ports, Paper Mario ReCut got its first pre-release build earlier this week. Based on the N64 recompilation toolchain, the...
With very little in the way of announcement, Valve has today increased the price of the Steam Deck but some fairly considerable margins. Both of the available models...
It wasn't too long ago we saw our first glimpse of Courage Reborn, another Twilight Princess PC port in the works based on last year's decompilation efforts. With...
After much speculation, Nintendo has finally followed their competitors in announcing price increases for their hardware.
You can find a breakdown of what's changing...
Airing last night with very little in the way of warning, a brand new Nintendo Direct was aired. Running for 15 minutes in total, it took a moment to celebrate the...
Seemingly out of nowhere a PC port for Pokemon Platinum has surfaced online, bundled alongside the source code for those interested in building and developing it for...
Earlier this year, Sony announced major price increases for the PS5, PS5 Pro, and PlayStation Portal. Now the company is raising prices again, this time for...
As a part of their Financial Results Briefing for the previous year, Nintendo president Shuntaro Furukawa took to the floor to answer key questions around the Switch...
The latest in a growing number of native PC ports, Paper Mario ReCut got its first pre-release build earlier this week. Based on the N64 recompilation toolchain, the...
A whole hour of PlayStation content is on the way, thanks to the latest State of Play showcase. Headlining the stream will be Marvel's Wolverine, alongside a...
For the first time in 13 years, the Call of Duty series will again return to Nintendo's consoles. Set to launch on the 23rd of October, the latest release, Modern...