Before you install
The documented target is the Switch release of Diablo II: Resurrected at version 1.0.34.0, including Reign of the Warlock. You need your own ExeFS program files for packaging and RomFS resources for gameplay. The internal tool identifier 3.3.94012 refers to this same version. PC game files are not a substitute.
Check ownership and version first
Use your own Switch console and purchased game, update and expansion. The upstream file document explicitly excludes other game versions and says the project has not verified operation without the expansion.
- Console version:
1.0.34.0. - Internal tooling identifier:
3.3.94012. - Dumped update number:
v2228224, another representation of the same update.
The build scripts check the expected version. If verification fails, correct the inputs rather than bypassing the checks. This site does not provide game packages, console keys, prepared game-derived inputs or texture-pack downloads.
Know which files serve which purpose
| Artifact | Purpose | Source documentation |
|---|---|---|
ExeFS main, sdk, subsdk0 |
Program inputs used when preparing the app; about 26 MB | Required for the matching Switch version |
Full update RomFS/data/ |
Extracted archive set, including build_manifest.psv; about 8.4 GB |
Local workspace inputs |
18 selected .data files |
Phone gameplay resources; about 5.6 GB | Imported after installation |
| Legacy Device Pack | Additional converted textures for supported older chips | Must match the built app's metadata |
| Clean shell | Open-source host without a playable game | Packaging input, not a completed IPA |
| Prepared input | Version-sensitive, game-derived build material | Community cloud workflow, not the same as a shell |
Put extracted files in the workspace
The default upstream workspace is:
~/dm-work/data/switch/3.3.94012/Update/
├── ExeFS/
│ ├── main
│ ├── sdk
│ └── subsdk0
└── RomFS/
└── data/
├── build_manifest.psv
└── *.data
Run the documented check from the repository root:
./setup.sh check
It reports missing files and verifies the program version without changing those inputs. The setup.sh route is documented for the local workspace; Windows no-Xcode packaging has its own Python tool and prerequisites in the Windows guide.
If your own dump is still an XCI or NSP
Upstream documents an extraction route using dm/tools/extract_game.sh or the combined setup.sh entrypoint. It needs hactool, built according to its own instructions and placed on PATH or supplied through HACTOOL=<path>.
./setup.sh "/path/to/your-game-package.xci" "/path/to/your/prod.keys"
Use the actual path to your own files. The upstream document says to allow about 20 GB of free disk space for extraction. Console keys are sensitive: keep them local and never upload them to a public repository or paste them into a website.
We have reviewed the extraction instructions, not run this operation on a physical console or a game dump.
What goes onto the phone
The upstream resource importer looks for these 18 archives:
00-00000001.data … 00-00000006.data
01-00000001.data 01-00000002.data
02-00000001.data 02-00000002.data
03-00000001.data 03-00000002.data
04-00000001.data 04-00000002.data
05-00000001.data 05-00000002.data
17-00000001.data 17-00000002.data
For the upstream app, place them together inside its Documents area using Files or Finder. The containing folder can have any name and the importer can search nested folders. The community jiayx package documents a different prepared resource layout named D2R Mobile Resources; follow the instructions for your actual build, not a mixture of the two.
The normal resources are still required when using a Legacy Device Pack. That pack is additional, not a replacement.
Tools depend on your chosen route
Check the device table, then choose iOS with Xcode, Windows packaging, native Mac or the advanced cloud workflow. A blanket “install Python and download an IPA” checklist is not sufficient for all four.
Back up any existing game progress before changing packages. Refreshing a signature is different from deleting an app; the latter can remove its local resources and saves.
Frequently Asked Questions
Can I use my Battle.net PC installation instead?
No. This project targets the Switch program and its resource formats. A PC installation does not provide the matching ARM64 executables or the required Switch texture, interface and audio formats.
Why do different pages mention 8.4 GB and 5.6 GB?
The full extracted update data directory is about 8.4 GB. The specific 18 resource archives used on the phone total about 5.6 GB. A prepared-input archive and an IPA are different artifacts again.
Does the MIT license cover finished game-containing packages?
No. The license for the project's own code does not grant permission to distribute Blizzard's game program, resource archives, converted texture packs or other game-derived content.