HY8BIT.GITHUB ↗

DIABLO II: RESURRECTED

D2R
MOBILE.

A CLASSIC, WITH YOU.

Diablo II: Resurrected, on iPhone, iPad and Mac.

A familiar world, a different screen. D2R Mobile is a community compatibility layer for running your own Switch edition on Apple devices.

Original fantasy illustration of a lone adventurer approaching an orange portal in a ruined forest archway
Original HY8BIT illustration · not gameplay footage

Before you download

What is it?
A community project for local, offline Diablo II: Resurrected on Apple devices.
What do I need?
Your own matching Switch game files, a preparation computer and a supported device.
What am I downloading?
Source or a shell build input. You still need to generate and install the app.
ARM64
Native game code
Metal
Apple graphics
Offline
Single-player

Checked against upstream documentation on October 16, 2026. Performance claims belong to the developers; HY8BIT has not tested the game.

DOWNLOAD & VERSION

D2R Mobile download: start with the right files.

The upstream project distributes source and empty build shells. Choose your route below, then add your own required Switch game files. A downloaded shell is not a ready-to-play game.

Your routeWhat to getWhat to check
iOS 26+ · no XcodeD2RMobile-shell-build-input.zipUse source from the same release.
iOS 18–25 · no XcodeD2RMobile-shell-ios18-build-input.zipOlder chips may also need the Legacy Device Pack.
Mac + Xcode / native MacMatching source code and build documentationFollow the iOS or Mac instructions for your OS.
Open upstream releases ↗

Looking for a D2R Mobile APK?

The linked D2R Mobile project targets Apple platforms and does not provide an Android APK. Search results also include item trackers, guides and remote-play tools. Check the project identity before treating any of those as this native offline port.

FIND YOUR BUILD

Check your device first

Which build fits your device?

Select the platform, system and hardware. The result summarizes upstream requirements; it is not a device test.

Recommended path

Older operating systems ↗
Compatibility is more than a chip name.
HardwareWhat the documentation says
A17 Pro+ / M-series iPadMain upstream iOS device class; choose the build by OS.
A15–A16 · 6 GB+Legacy Device Pack required; upstream reports exist for some devices.
A14 · 6 GB+Hardware minimum, but no device reports in the upstream table.
4 GB devices / A13 and earlierCurrently unsupported.
Apple silicon MacNative Mac app; human testing of some controls remains incomplete.
Apple TV / Intel MacApple TV is a limited developer preview; Intel Mac is unsupported.
README ↗

GETTING STARTED

One destination. Three setup paths.

01

Mac + Xcode → iPhone / iPad

Full source build

Prepare the game files and run setup, configure your Apple signing details, then build the iOS app. A free Apple ID has a 7-day signing cycle; do not assume public self-signed builds include iCloud save sync.

Read the iOS build instructions ↗
02

Windows / Linux → iPhone / iPad

Shell + packaging tool

Combine the matching upstream shell with your own game files, then sign and install the resulting package. The shell alone cannot launch the game. Third-party sideload signing and Linux packaging remain unverified in the documentation checked here.

Read the experimental packaging guide ↗
03

Apple silicon Mac → Mac

Native macOS app

Finish the common setup first, then build the Mac app. The first launch selects the resource folder. Local ad-hoc signing needs no developer account. Some input behavior has only automated verification, not hands-on testing.

Read the Mac guide ↗

BRING YOUR OWN GAME

Get the files right before you build.

The tools expect the Switch release with Reign of the Warlock, updated to 1.0.34.0. The workspace calls the corresponding version 3.3.94012. The PC release is not a substitute for the Switch files.

ExeFS

main · sdk · subsdk0

Program files used by the build tools.

RomFS / data

build_manifest.psv + .data files

Game resources; first launch on iOS expects 18 resource archives, about 5.6 GB.

Keep the original game files, build output and save backups separate. The full checklist explains workspace layout, version matching and resource transfer.

Game-file checklist ↗

From an install package to the first game.

  1. A computer is part of the process

    Use the full Mac/Xcode build or the documented shell-packaging route. The upstream instructions do not establish a phone-only installation path.

  2. Copy the game resources separately

    The iOS app needs 18 resource archives, about 5.6 GB, outside the install package. If the import screen lists missing files, complete the copy and retry.

  3. Allow time for the first shader build

    A package made without Apple’s shader compiler compiles shaders on the phone on first launch; upstream reports about 7 minutes. This one-time step is absent from the Xcode build route.

  4. Keep signing and saves in mind

    Free Apple ID signing has a 7-day cycle. Back up saves before reinstalling. Public self-signed packages do not include the test builds’ iCloud save-sync entitlement.

No-Xcode packaging ↗ · Game-file checklist ↗

Useful commands, with their prerequisites.

Run these from your local checkout after following the upstream prerequisites. These are documentation examples; HY8BIT has not run a game build.

Check the workspace

Reports missing tools, game files and signing configuration without modifying the workspace.

./setup.sh check

Build for older iOS

After setup, signing configuration and Python environment activation, run in dm/ios.

DM_IOS_M3=1 ./run.sh build

Build for older macOS

After common setup and Python environment activation, run from the repository root.

DM_MAC_M3=1 dm/tools/mac_app.sh

When something does not start.

“One More Step for This Device”

For older iOS chips, check whether the Legacy Device Pack was included when packaging. Creating the pack and rebuilding are separate from choosing an older-OS build.

“This Package Is Not Ready”

The shell is build input. Generate the actual install package with matching source and your own game files before installing.

“No game resources yet”

Copy all 18 required resource archives into the app’s resource folder, then retry. The install package does not include them.

Still stuck?

Record your exact device, OS, source revision and error. Use Share Diagnostics in the pause menu when available and attach the log to an upstream issue. Back up saves before reinstalling.

GitHub Issues ↗

Before you begin

Can I play in my browser?

No. This project installs on supported Apple devices. HY8BIT provides a guide, not a browser game.

Where are the game downloads?

Bring your own game files. Use the upstream file checklist and installation documentation; HY8BIT hosts no game packages.

Does it support online multiplayer?

The upstream project describes offline single-player only.

Is Android supported?

The linked project targets Apple platforms. This guide does not claim Android support.

Why do I see two different version numbers?

Switch 1.0.34.0 corresponds to 3.3.94012 in the project’s workspace naming. The upstream tools require the matching Switch files with the expansion.

Will an older iOS build fix a 4 GB device?

No. OS compatibility and memory requirements are separate. The upstream device table currently marks 4 GB devices as unsupported.

Can I install the shell ZIP directly?

No. The shell is input to the packaging tool and contains no game content. Generate the install package first.

Can I copy the Mac app to another computer?

The upstream Mac build records locations in the local workspace. It is intended for the Mac that built it; keep the referenced workspace available.

Is D2R Mobile an official Blizzard mobile release?

No. This guide covers an independent community compatibility-layer project, not an official Blizzard mobile product.

Can I install it with only my iPhone?

The documented routes require a preparation computer for building or packaging, plus a signing and installation method. A phone-only route is not established.

Does “download” mean a complete IPA with the game?

No. The upstream release provides build inputs without game content. Current shells are ZIP build inputs; use matching source and your own files to generate the install package.

What should match when updating D2R Mobile?

Keep the source and shell on the same release. Regenerate the package for that release and follow its notes. Keep save backups before reinstalling; do not mix a newer source checkout with an older shell.

Explore the project

Want to understand the experience before building? These sections cover the features, execution model and reported performance.

THE EXPERIENCE

Made for another kind of adventure.

What changes when a console classic moves to a phone? The upstream project focuses on input, inventory and the endgame. These are developer-described features, not HY8BIT playtest results.

Touch & controller

Built around your hands.

A virtual stick handles movement; skill buttons support holding and drag-to-aim. Connect a controller to switch input layouts.

Inventory & farming

Less time in the backpack.

The project adds collection storage and a Runeword helper alongside its touch inventory controls. Availability follows the upstream build.

Beyond the campaign

A reason to return.

The authors describe a Greater Rift and Boss Rush as additional endgame modes. These are project additions to its offline experience.

README ↗

UNDER THE HOOD

From your Switch copy to Apple silicon.

The Switch edition supplies ARM64 code. The compatibility layer adapts platform services and graphics for Apple hardware; it does not use a browser runtime.

  1. 01

    Your game files

    ExeFS + RomFS

  2. 02

    Prepare on computer

    Code rewriting + shaders

  3. 03

    Compatibility layer

    Host services + Metal

  4. 04

    Your Apple device

    Local game execution

Read the implementation notes in the upstream README. For the Mac build, the resulting app still depends on files in the workspace that built it.

README ↗

UPSTREAM REPORTS

Read the numbers in context.

60 fps

Reported on tested iOS devices

~1 sec

Main menu → game, author measurement

30 fps

Optional power-saving mode

The README’s timing and power measurements use an iPhone 17 Pro Max. They do not establish performance on every supported device. HY8BIT has not reproduced them.

README ↗

Go straight to the source.

Requirements and experimental paths change. Check these maintained documents before following a build guide.