Skip to content
IFAI

Open source

d2r-mobile: Run Diablo II natively on mobile at 60 fps

Published Reach 59

Open-source project d2r-mobile just dropped a compatibility layer that lets users run their own Nintendo Switch copy of Diablo II: Resurrected directly on iPhone, iPad, Mac, and Android. It bypasses emulation to execute native code at a locked 60 fps with rebuilt touch controls under an MIT license.

d2r-mobile: Run Diablo II natively on mobile at 60 fps
Image: github.com

d2r-mobile is an open-source compatibility layer that lets you run your own Nintendo Switch copy of Diablo II: Resurrected natively on iPhone, iPad, Mac, Android, and HarmonyOS devices. It is neither cloud streaming nor an emulator; the original game code executes directly on your device's silicon.

The project is available on GitHub under the MIT license. It distributes zero copyrighted assets, code, or data tables; users must dump and convert their own legitimate Switch game files using the provided tooling.

What you can do with it

Once game files are installed, players get the complete offline campaign, including the Reign of the Warlock expansion. Every class, runeword, Terror Zone, and drop rule behaves exactly like the retail build without requiring Blizzard server connections.

The developers completely redesigned mobile ergonomics rather than slapping an on-screen gamepad overlay. Movement uses a tight virtual joystick or point-to-tap pathfinding. Skill icons support tap-to-cast, continuous channeling, directional dragging, and one-tap automated secondary weapon buffs.

Inventory handling tracks double-taps for instant equip, dragging to vendor panels, and long-pressing for auto-sorting. Plugging in a physical controller instantly swaps the UI to the official console button mappings with proper Xbox or PlayStation glyphs.

The project also bolts on custom endgame systems without altering core formulas. Players can run a 100-level Rift dungeon after beating Hell difficulty, tackle a 12-stage Boss Rush, expand stash space, and toggle automated potion drinking and high-tier rune drop haptics.

How it works and hardware specs

Because the Nintendo Switch and modern mobile devices share the same ARM64 family, d2r-mobile executes the game's original machine instructions directly. Only kernel syscalls incompatible with Darwin or Linux are translated on the fly.

The graphics stack is completely rewritten natively: Metal on Apple silicon and Vulkan on Android. All shaders are pre-translated offline, eliminating runtime shader compilation stutter entirely.

On an iPhone 17 Pro Max, loading from the main menu into the world takes roughly 1 second. The game locks at 60 fps with around 3.8 W whole-device power draw, offering nearly 5 hours of continuous gameplay, or under 1.9 W at 30 fps power saver mode.

The installer shell is roughly 100 MB, alongside around 5.6 GB of extracted game data. It runs on iPhones from the iPhone 14 Pro Max up to modern releases, while Android devices need ARM64 with Vulkan 1.1 support, where a Snapdragon 8+ Gen 1 holds a solid 60 fps.

Why it matters

For mobile gamers, this is vastly superior to running a heavyweight Switch emulator. The native compatibility approach delivers PC-grade responsiveness, lower battery draw, and tailored touch controls that actually feel natural during long farming runs.

The obvious friction is setup friction. You need access to a hacked Switch or legitimate title dump tools, and older devices like the A16 require generating a secondary texture pack. If you have the files ready, clone the jhaizhou-ops/d2r-mobile repository on GitHub to build your mobile sanctuary.

Sources (2)

  1. [1]
    github.com(opens in a new tab)Originalgithub.com
  2. [2]

Best of AI, daily