Sonic Runners Adventure - Switch Port

  • Thread starter Thread starter besk
  • Start date Start date
  • Views Views 207
  • Replies Replies 3
  • Likes Likes 5

besk

Member
Newcomer
Joined
Jun 25, 2026
Messages
9
Reaction score
57
Trophies
0
Age
26
XP
131
Country
Turkey
Sonic Runners Adventure - Nintendo Switch Port


Hi everyone!

I'm back with another Sonic Android port for the Nintendo Switch. :)

This time it's Sonic Runners Adventure, the Gameloft mobile game originally released for Android and iOS.

This is not an emulation-based port. The Switch wrapper loads and runs the original ARM64 Android libGame.so natively, while providing the Android/JNI, filesystem, audio, input and OpenGL ES compatibility layers that the game expects.

After quite a bit of work on the Android runtime, save system, rendering and input, the game is now fully playable on Nintendo Switch hardware.

Turkish and English have been tested so far. Other languages included with the original game should also be available, but I haven't extensively tested all of them yet.

Required version

You need your own legally obtained copy of:

Code:
Sonic Runners Adventure 1.0.4a
Package: com.gameloft.android.ANMP.GloftICHM
Version Code: 10432
Architecture: ARM64 / arm64-v8a

Other APK versions are currently not supported.

Installation

Download sonic_runners_nx.nro from the GitHub release.

From your original APK, extract:

  • lib/arm64-v8a/libGame.so
  • The entire assets/ folder
  • Keep a second untouched copy of the original APK

Create:

Code:
sdmc:/switch/sonic_runners_nx/

The final folder should look like:

Code:
sdmc:/switch/sonic_runners_nx/
├── sonic_runners_nx.nro
├── libGame.so
├── package/
│   └── libGame.so
└── assets/
    ├── data01.jet
    ├── base_sounds.voxpack
    ├── content.txt
    └── ...

The first libGame.so is the actual ARM64 native library extracted from:

Code:
lib/arm64-v8a/libGame.so

For:

Code:
package/libGame.so

copy the original APK itself into the package folder and rename that APK file to libGame.so.

Yes, that filename is intentional. The game expects access to its original APK/ZIP package during runtime.

Controls

  • Touchscreen - Normal touchscreen controls
  • Left Stick - Move the virtual touch cursor
  • A / ZR / ZL - Touch/hold at the cursor position
  • B - Android Back
  • + - Android Menu

The virtual cursor automatically hides when it isn't needed.

Important

This port requires full title-mode homebrew memory.

Do not launch it through Album/applet mode.

Use Homebrew Menu with title override (hold R while launching a game) or use a compatible forwarder.

Download / Source

GitHub Repository & Releases

The repository does not contain the original APK, game assets or original game binaries. You must provide those files yourself from your own copy of the game.

Credits

Huge thanks to:

  • fgsfdsfgs for the Android .so loader / Nintendo Switch homebrew work this project builds upon
  • NaGaa95 for related Switch Android-wrapper projects and compatibility work
  • TheOfficialFloW for pioneering Android native-library loading techniques in homebrew ports
  • devkitPro / libnx contributors
  • Mesa / nouveau contributors
  • SDL2 contributors

Legal

This is an unofficial fan-made project and is not affiliated with SEGA or Gameloft.

Sonic the Hedgehog, Sonic Runners Adventure and all original game content belong to their respective owners.

No copyrighted game binaries or assets are distributed with this project.

Hope you enjoy playing it on Switch! :)
 
@besk
Thank you!..

Unfortunately, got that kind of error:
Code:
Unexpected libGame APK path getter at +0x1e3328.
error.jpg

Maybe it's 'cause of the 1.0.3b version of the game?.. Couldn't find 1.0.4b anywhere near.. :(
 
Last edited by mathew77,
@besk
Thank you!..

Unfortunately, got that kind of error:
Code:
Unexpected libGame APK path getter at +0x1e3328.
View attachment 586789

Maybe it's 'cause of the 1.0.3b version of the game?.. Can't find 1.0.4b anywhere near.. :(
I can try to add support for other versions with updates, but unfortunately, it might still not work if the versions are very incompatible :/ Version 1.4.0a is currently the latest version available on Google Play; you can purchase it from there and then transfer it to your computer using APK share applications :)
 
  • Like
Reactions: mathew77
@besk
Thank you!..

Unfortunately, got that kind of error:
Code:
Unexpected libGame APK path getter at +0x1e3328.
View attachment 586789

Maybe it's 'cause of the 1.0.3b version of the game?.. Can't find 1.0.4b anywhere near.. :(
All Unity ports have hardcoded offsets to patch stuff so other versions of the game will never work for them unless they don't change the executable which is very unlikely.
 
  • Like
Reactions: mathew77

Site & Scene News

Popular threads in this forum