Skip to content

OpenSA2 0.1.0-alpha.6

Pre-release
Pre-release

Choose a tag to compare

@kittycache9 kittycache9 released this 22 Oct 14:55

OpenSA2 0.1.0-alpha.6 is a Chao release. It adds a Chao World button to the Android app, a tweak that starts the game in Chao World, a fix for the crash after a Chao race, and four more optional tweaks, for 67 in all. Dry Lagoon also runs a little cheaper.

You must supply your own unmodified PC game installation: the version Steam sells and installs today. These downloads include recompiled game logic and the port's runtime. They contain no original game executable or assets.

What's new

Chao World, faster. Android has a Chao World button under Play on the setup screen. It starts the game with the logos skipped; after you pick your file in File Select, it takes you straight to the Chao World lobby. It turns on Skip intro and Start in Chao World for that one launch only, and your settings stay as they are. Your save must have opened Chao World already, or you get the main menu. The same behaviour is a tweak, Start in Chao World, for Windows and Linux (start-in-chao-world in SA2_TWEAKS) and in the Android Tweaks card.

Chao race crash fixed. Finishing a Chao race ended the game on Linux and Android with a function table miss at 0x00538160, the routine the race camera uses to clean up. It was never translated. It is now, and so is 0x00401000, std::bad_alloc's destructor, which the same sweep admitted and nothing had translated.

The Android app no longer starts the game by itself. It opens to its own screen and you tap Play. Start the game when the app opens in Game settings brings the old behaviour back. If you update from an earlier alpha, this is the change you will notice first.

Safer Chao tweaks. Back up saves now in the Saves card makes a backup on request, and skips it when the newest backup already holds exactly your current saves. In the Chao group of the Tweaks card, Turn on the Chao boosts turns on Chao stats x5 and Rings over time in Chao World together, after offering a backup, because both write to your save.

Four more tweaks, each off until you turn it on:

  • Start in Chao World: after you pick your file, the game goes to the Chao World lobby instead of the main menu, once each time the game starts.
  • Pick the character in Stage Select: press Y on a stage to choose who plays it. You can pick only a character of the stage's own kind: Sonic or Shadow in speed stages, Knuckles or Rouge in treasure hunts, Tails or Eggman in walker stages.
  • Somersaults keep speed: Sonic's and Shadow's somersault keeps your running speed.
  • Level glide: Knuckles' and Rouge's glide holds its height for as long as you hold the button.

Bug reports can carry more. From @heyjoeway: a session recorder (off by default), a Debug Export that zips a play session's logs and saves for a bug report, and a replay tool for developers. In Game settings, the Debug section has both. An export holds your saves and settings but no game files and no pictures, and personal paths are replaced with placeholders. Read its MANIFEST.txt before you share it.

Setup screen links. Check for updates opens this releases page and Get the game on Steam opens the game's Steam page. The app still asks for no internet permission; both open your browser.

Dry Lagoon. The game's most-called math routines (njSin, njCos, njTranslate_ and the three rotations) now run natively, and the memory helpers every translated function calls cost less. In a desktop measurement, Dry Lagoon's main thread does about 9% less work. Phones were not measured separately.

Downloads

Platform Asset Start here
Windows x86-64 OpenSA2-v0.1.0-alpha.6-windows-x86_64.zip Extract the entire ZIP and run OpenSA2.cmd.
Android arm64 OpenSA2-v0.1.0-alpha.6-android-arm64.apk Install the APK over the earlier one; your imported game, saves and settings stay.
Linux x86-64 OpenSA2-v0.1.0-alpha.6-linux-x86_64.deb Install with sudo apt install './OpenSA2-v0.1.0-alpha.6-linux-x86_64.deb', then launch OpenSA2.

Setup instructions and requirements

Windows requires Windows 10 or later and a Vulkan or Direct3D 12 graphics driver. Android requires Android 10 or later, a 64-bit ARM device, and a Vulkan 1.1 or later driver. The Linux package requires Ubuntu 24.04, Debian 13, or a compatible newer distribution with Vulkan graphics.

Known problems

  • The Chao World button and Start in Chao World need a save that has already opened Chao World. Otherwise they show the main menu.
  • The tweaks that patch the game's code (no music, no voices, faster spin dash, every stage in Stage Select, and powerups on the victory screen) are on Linux and Android only for now.
  • Heavy stages such as Dry Lagoon can still run below 60 fps on phones. The game's own CPU work is the limit there, and making the game cheaper to run is still the main piece of work. Video cutscenes can drop in frame rate and break up the audio on some phones (#26).
  • Most tweaks were checked on Linux and in an Android emulator, not on every platform or phone. Some change your save; each tweak's description says so.
  • Broad stage, boss, story-event and game-mode coverage is unfinished. Widescreen menus and overlays still need work.

Tested scope

With every tweak off, the Linux and Windows builds (Windows under Wine) match the boot recording frame for frame, and the Linux build matches the Metal Harbor recording. Start in Chao World was checked on Linux with a made-up save that had opened Chao World: it reached the lobby, left the main save file unchanged until the game's own exit save, showed the main menu on a save that had not opened Chao World, and with the tweak off the run matched the previous build tick for tick. The race crash fix was checked by the build, which now contains the missing function on all three platforms; a finished Chao race has not been played on this build. The Android changes (the Chao World button, auto launch off, Back up saves now, the Chao boosts button, Debug Export) have unit tests and were installed on a Galaxy S25; the Chao World button has not yet been run end to end there. The Windows ZIP, Linux DEB and Android APK passed their package checks. These checks cover the exercised paths only.

Thanks

Thanks to @heyjoeway for Debug Export and session replay (#23), the Chao race crash fix (#24), the save size check (#22) and the save tools (#17). Thanks to @ImMrMiss for reporting the Chao race crash (#26), to @sonicclashrbx-droid for asking for the Steam link (#20), and to @mymes1 for the mod request (#19): the first person camera is on the list of tweaks to build. Thanks also to everyone sending crash reports from the app.

Many tweaks follow fixes the SA2 modding community found first: the SA2 Mod Loader's codes and defaults, and SA2 Render Fix (Shaddatic).

Source, licenses, and checksums

SHA256SUMS records the downloadable files. The project source for all three packages is at this release tag. The public source-build bootstrap remains incomplete and still needs locally generated game inputs.

Original project code is GPL-3.0-only. Packages preserve the licenses and notices for their bundled components. Original game rights remain with their respective holders. OpenSA2 is independent of SEGA and Sonic Team.

Report a problem. On Android, use the app's Report on GitHub button. Keep game files and recordings containing game data out of reports.