There’s a lot of chatter happening on reddit with regards to Diablo Immortal for iOS and no release date in sight. Today I’m going to alleviate the pain of waiting for it with a simple and quick tutorial on how to get and play Diablo 1 on your favorite iOS Device. The guide is extremely easy and simple to follow and doesn’t require a developer account. Let’s get to it and find out How To Play Diablo 1 on your iPad.
In this article we’ll cover how to play Diablo 1 on your iPad in fullscreen. We’ll start by going over a list of requirements (in terms of peripherals) and network connection and then move on towards getting the game running. In the end we’ll look at self-hosted local solutions in order to not have to use a network connection.
Our Diablo Immortal Review is out and we gave it a 4/5 ๐! It’s an amazing (MMO) RPG with incredible production value and a ton of love! Read the review!
Hardware and peripheral requirements for Diablo 1 on the iPad
Accessory/Function | Required |
Keyboard | YES in order to name your character |
Mouse/Touchpad | NO but it makes your life easier |
Network Connection | YES, unless you self host the game |
Diablo The Game | NO if you want to try out the self hosted version |
First thing first I highly recommend is having at least a keyboard accessory for your iPad. If you own a Magic Keyboard for your iPad Air 4 or Pro you’re golden. Any kind of Bluetooth keyboard will do with the caveat being that you’ll get bored of touching and tapping the screen constantly with your hands.
A mouse or touchpad could be an amazing addition for you. Another way is to use a Mac that has Universal Control enabled. This way you can control the iPad from the Mac. This is the setup that I’m using and wrote about in the article titled “5 games to play with Universal Control“.
Now, unless you go the self-hosted route and have the game running locally – you’ll need access to an internet connection in order to access the game.
The last bit is the full game itself if you want to access all of the content. Otherwise, you can play the shareware version. If you want to get access to the full version I recommend getting it from GOG (this is not an affiliate link).
How to play Diablo on the iPad – easy method
In order to play Diablo on your iPad you’ll need to access Diablo Web, a WebAssembly port of the original game inside of an emulated environment. Diablo Web gives you access to the shareware version of the game but also allows you to upload the main .mpq file in order to play the full version.
Note: you can only get the DIABDAT.MPQ by purchasing the full game.
Step 1
You can access this github page in order to load the game in your browser. Once loaded tap or click on the “Play Shareware Version“.

And technically you can now play the shareware (or full) version of the game straight in your web browser. However, as you can see, a ton of screen space is taken by the browser and there’s no button to make the game full screen. Let’s fix that, shall we?
Step 2
In Safari click the share icon next to the address bar, scroll down and select Add To Home Screen. This will add the web page to your iPad’s home screen (or desktop).
This step serves two purposes.
- It adds a convenient icon to access the game without having to open the web browser and type/look for the address
- It launches the website as if it were an app, in fullscreen and with no address bar taking up any space.

Step 3
???
There is no step 3.
Why do I find this funny? It’s a throwback to an old Apple iMac commercial that I invite you to watch.
How to play Diablo on the iPad – custom app wrapper
Having access to Diablo on the iPad is fine and dandy while you’re trying to play the shareware version or while having access to an internet connection. However, what options do you have to play the game while offline?
We can build the game ourselves and spit it out as a build that we can then run from a local iPad webserver.
Head on over to your Mac or PC and open up a terminal to download the source files.
We’re not going to use the main Diablo Web branch as I haven’t managed to get the game to completely build with the main repository.
Instead we’ll use this branch which should work. For testing I used a separate branch but the maintainer emailed me to unlink it for privacy reasons.
Open up a terminal and do:
git clone https://github.com/d07RiV/diabloweb cd diabloweb
Remove the package-lock.json file form the terminal and them test out the version to see if it runs.
NOTE: โ ๏ธ You’ll need NodeJS14 for this work โ ๏ธ. Dave (in the comments) mentioned he couldn’t get it to work on NodeJS 16 (current version).
rm -rf node_modules package-lock.json && npm install && npm start
If everything goes well, node should kick in, start a server and open up the game in your default web browser.
To prepare for deployment all we need to do is:
npm run-script build
When everything is done you should be able to find a new folder called build inside the diabloweb folder.
The content of that build folder can then be uploaded to a web server or packaged with a browser wrapper and turned into an app. The only caveat in this situation is that I am not aware of any publicly available browser wrappers that also serve files as an HTTP server and don’t just display it.
The solution that I am using is a custom solution that I wrote for a client so my XCode/Unity project cannot be shared for this purpose. There are a handful of HTTP servers + built-in browser example code on the internet and quite a few web servers directly on the App Store.
If you’re going the HTTP Server and Browser bundle route, you will need an Apple Developer account in order to build the final app.
If you end up being lucky with a good HTTP Server software from the App Store, then things should be pretty easy and smooth.
Where To Next?
Assuming you liked this article, the setup and youโre thinking of getting an Apple Silicon Mac then my guide on โHow to play iOS Games on a Macโ might be relevant for you. If you have an iPad and want to find some premium quality retro games I have you covered with another article called โCan You Play Retro Games On The iPadโ.
If you like this kind of articles you can either follow us on twitter to stay updated or subscribe to our mailing list, below! We promise to not spam you and you can unsubscribe at any time.
This is freakin awesome! Totally works. However, sound doesnโt seem to work on my iPad (but it does work in my browser on my Mac). Is there something I need to do to get sound working? Problem occurs on both safari and chrome.
Interesting, sound is working fine on my compiled build (method 2 that requires a developer account). Let me investigate for a bit and I’ll update the article if I find a solution.
I remember sound working fine on my Air 4 the first time I tried it so it could be a recent iPad OS update? What OS version are you running?
I think I know what the problem is:
https://youtube.com/shorts/-kQ4lIdJ5z4?feature=share
You probably keep the iPad on Silent! Made a cheeky short about it ๐
Nope, not in silent mode. Iโm running 15.4.1 on a first edition iPad Pro. Just doing solution 1. I actually tried solution 2, but npm install threw tons of errors (Iโm also a web dev). Didnโt look into what they were regarding, but I think one of the first was about node-sass. I was too excited to try to play, so I just abandoned that solution and went to the first one.
Thanks for the quick response btw!
Also, same thing happens on my iPhone 13 max pro running 15.5.
Alright, all my iPads are on iPadOS 16 Beta. Going to downgrade the AIR and see if it’s a 15.x issue (though I had it running with sound on 15).
Ok, I could have sworn audio worked on my Mac as well, but it’s not, at least not on Safari. It does on Chrome though, but Chrome’s performance with the game is horrid – there’s visual “tearing” in the background as I walk my character around. I am on an older Mac though – 2013 Macbook Pro running Catalina.
Check firefox for Mac, I am successfully running it on Firefox on my 2014 dualcore MBPro (mid-2014). I just tested it on my Air 4 with iPadOS 15.5 and sound is working in safari with the first method.
Chrome is a beast and a hog of resources on any device tbh.
Not sure I can download iPadOS 15.4.1 anymore to try and test on that one. Going to try and check my GF’s normal iPad when she gets home, I know she rarely updates ๐
I tried updating my iPad to 15.5, but still no sound ๐
I also tried FF on my Mac, but I get this error after selecting the MPQ file:
ReferenceError: FileReader is not defined
And if I try the shareware version on FF, I get this error instead:
_e.includes is not a function
Oh, and I also tried running the shareware version on Safari on my work mac (a 2021 MacBook Pro – M1 Max – running Monterey), and no sound there either (but Chrome again does have sound, and performance there is fine). Also tried FF there, and it DOES work there – no errors, sound is fine.
So this is a really weird situation I guess. I gotta check the last github build, maybe the dev added something new that isn’t supported across all devices and browsers? Like a new sound format.
I think I wrote this article in february so it’s a few months old. Worst comes to worst, I’ll try and get some time next weekend and do a new web build that I know works and host it somewhere.
I know I was definetly able to play the full version without issues…
So I tried Safari Tech Preview on my work MacBook, and sound does work there. So presumably they broke something in the latest Safari (which is confusingly enough versioned 15.5, same as latest version of iOS).
This is ending up to be a fun exploration session @Dave where we learn more about the underlying system shared across MacOS and iOS/iPadOS.
Ha, right. I sent you a couple messages through your contact form.
Saw them, going to reply later today, or early tomorrow. I need to get next to a computer ๐