github SapphireRhodonite/melonDS-android 0.6.0
melonDS-android v0.6.0

4 hours ago

RetroAchievements Offline (Softcore) + Hardcore Reliability

Version 0.6.0 introduces full RetroAchievements offline support for Softcore, plus a much more reliable submission / retry flow for Hardcore unlocks online.

This is implemented entirely client-side and has been aproved by RA Team:
warm-start cache + tamper-evident ledger + smart sync replay.

2

4


Feature in this fork (by @SapphireRhodonite):

Offline Achievements: Softcore

You can now unlock achievements while offline in Softcore mode.

Requirement (first-time online)

To use Softcore offline, you must open the game at least once with internet so melonDS can fetch and cache the achievement set + conditions.
After that, you can go offline and achievements will still be evaluated and queued.

What you’ll see in the UI

  • If you launch a game without internet, melonDS runs as Softcore Offline (Hardcore is disabled if there’s no internet at start).
  • If you have pending Softcore unlocks, the game launch flow can show a prompt asking if you want to sync.
  • Achievements that are queued offline are marked “In ledger” in the achievement UI (ROM details + in-game list).

Syncing offline unlocks (Softcore)

You can sync pending Softcore unlocks in two ways:

  1. Per-game settingsRetroAchievements tab → Sync now
  2. On game launch, melonDS will show a message if it detects pending sync work

Hardcore: Improved Online Retry Logic

Better online Hardcore retries

Hardcore submission now behaves much better under real-world conditions (temporary drops, flaky networks, transient errors). Unlocks are retried more intelligently instead of failing silently.

Hardcore offline (status)

Hardcore offline-from-start is not enabled yet.
It will be evaluated depending on how stability/testing goes with Softcore offline first and other conditions on the RA Team side.

Exit / crash behavior (Hardcore)

  • If you try to exit a game with pending Hardcore unlocks, melonDS can warn you (continue playing or exit anyway and loss them).
  • If the app closes unexpectedly with pending Hardcore unlocks, they are discarded on next launch and you’ll get a notification about the loss for that game.

Smart Sync

When syncing, melonDS does this:

  • ordered replay (relative timing preserved)
  • validates against the current RA set (skips achievements that changed or no longer exist)

Additional Improvements (by @rafaelvcaetano)

  • Allow achievement progress to be visualized in the achievements list while emulator is running
  • Add availability check to DSiCameraSource
  • Fix RetroAchievements not working for 7z compressed ROMs
  • Add RetroAchievements multi-set support
  • Fix occasional crash when RetroAchievements progress updates are submitted very frequently

Support & Early Access
If you'd like early access to upcoming builds, help shape development priorities, or participate in feature testing and feedback discussions, consider supporting the project on Patreon:

https://patreon.com/SapphireRhodonite

Early builds and work-in-progress features are released there before public GitHub releases, and community feedback directly influences what gets polished and shipped.
Thanks to everyone testing, reporting issues, and contributing.

Don't miss a new melonDS-android release

NewReleases is sending notifications on new releases.