this post was submitted on 15 Jun 2025
48 points (98.0% liked)

RetroGaming

23313 readers
56 users here now

Vintage gaming community.

Rules:

  1. Be kind.
  2. No spam or soliciting for money.
  3. No racism or other bigotry allowed.
  4. Obviously nothing illegal.

If you see these please report them.

founded 2 years ago
MODERATORS
 

Hello all,

I am curious if there is a viable option to play Diablo 2 on Linux. I have a RetroPie setup for my kid and was wondering if I could show him diablo 2.

top 31 comments
sorted by: hot top controversial new old
[–] Peasley@lemmy.world 13 points 1 day ago (1 children)

You install battlenet as a third party app through steam/proton (lots of guides online) then you launch it, install D2, and you are done.

I've finished act 5 on the regular difficulty both in D2 and D2R using this setup. I never tried multiplayer in D2 but i can confirm it works in D2R.

This was on an x86 pc though. I found this post on Reddit that might help:

"There is a locked thread in this sub from about 7 months ago referencing a YouTube video from ETA Prime. The video discusses how to install Diablo 2 on a pi4. I'm posting this because I had some challenges when following the instructions, which I figured out how to work around. Hopefully this will help someone. Here's how I was able to get it to work:

On a Windows PC:

You will need version 1.13c of Diablo 2 (and expansion if desired). I can't tell you how to get that installer. You can't download it from Blizzard because their version comes pre-loaded at a newer version number. Note -- You absolutely must find v1.13c. I tried several other versions without success. There's an installer that I found for 1.13c which doesn't require a CD which is important.

You will also need a product key for the base game (and a product key for the expansion if desired). You can purchase these from Blizzard's website.

Run the installer for the base game. Don't start the game after completion.

Run the installer for the expansion pack. Don't start the game after completion.

Go to the folder where you installed it (e.g., C:\Program Files (x86)\Diablo II)

Copy all files and subfolders to a folder on your pi (e.g., /home/pi/diablo2)

Download the modified MESA package from the site referenced on the screen at 1:16 in ETA Prime's video https://www.youtube.com/watch?v=3PhMCxywP7g

Extract the MESA package and copy the extracted files to your pi in /home/pi/mesa

Download libd2game_sa_arm.exe.so.xz from the site referenced on the screen at 1:16 in the same youtube video from ETA Prime (https://www.youtube.com/watch?v=3PhMCxywP7g)

Extract libd2game_sa_arm.exe.so from the .xz file and copy to the pi's Diablo 2 directory (e.g., /home/pi/diablo2). Google how to do this if you aren't sure. I can't remember the exact syntax. I extracted it using a standard command from the Linux command line but there might be a windows tool to do this too.

Then, on your Pi4:

Boot to the Raspbian GUI

Open the terminal and enter these commands (lines starting with $ are commands to be entered):

$ sudo apt-get update && sudo apt-get upgrade

$ sudo apt install wine

$ winecfg

The configuration tool will open. Set resolution to 800 x 600.

Open terminal and use these commands

$ cd /home/pi/mesa/lib/arm-linux/gnueabihf

This is where I needed to go off-script to get the installation to work. The MESA package libGL.so.1 and libglapi.so.0 files did not work for me; I had to replace them with other versions contained in the MESA package.

$ cp libGL.so.1 libGL.so.1.bk

$ rm libGL.so.1

$ cp libGL.so.1.2.0 libGL.so.1

$ cp libglapi.so.0 libglapi.so.0.bk

$ rm libglapi.so.0

$ cp libglapi.so.0.0.0 libglapi.so.0

Go to the diablo2 directory (e.g., $ cd /home/pi/diablo2)

$ nano script.sh

This will load the nano text editor. Enter the following into the editor (without the bullet number "1.") This script will be used to start the modified libd2game_sa_arm.exe.so executable with Wine using the MESA drivers.

LD_LIBRARY_PATH=/home/pi/mesa/lib/arm-linux-gnueabihf LIBGL_DRIVERS_PATH=/home/pi/mesa/lib/arm-linux-gnueabihf/dri/ GBM_DRIVERS_PATH=/home/pi/mesa/lib setarch linux32 -L wine libd2game_sa_arm.exe.so

CTRL+O to save. CTRL+X to exit the editor.Run the following command to execute the script (note the period! )

$ . script.sh

Diablo 2 should load and run. Works great on my pi4B with 4GB RAM."

Formatting got messed up, sorry

[–] Peasley@lemmy.world 2 points 1 day ago (1 children)

ooo this is so detailed! thank you so much! I will give this a go! I should have stated in my post that retropie is installed on a rpi 4b with 8gb ram. I would expect it to be sufficient for diablo 2 no?

[–] woelkchen@lemmy.world 15 points 2 days ago* (last edited 2 days ago) (2 children)

https://github.com/AbyssEngine/AbyssEngine

Abyss Engine clean-room reimplementation of Diablo 2, written in C. The goal is to recreate the original game engine, but on a portable platform that can also easily be modded and extended.

[–] DacoTaco@lemmy.world 1 points 1 day ago

Wait, that works now? Ive seen the project few years ago but it wasnt good enough then. Awesome! I have to build that at home ^^

[–] Toes@ani.social 5 points 2 days ago (1 children)

Oh that's really cool. I didn't know people were doing that for non-console games.

[–] emb@lemmy.world 3 points 1 day ago

Not sure about current options, but I came across a physical copy some time ago. Wine was able to install it and run it without much fuss. Iirc I didn't even have to put the disc back in to play.

I didn't get around to sticking with it though, so there might have been more issues down the line, past the first bit of gameplay.

[–] TheEntity@lemmy.world 7 points 2 days ago (1 children)

If you're running RetroPie on a Raspberry Pi, it won't work there. Running it on a regular x86_64 PC shouldn't be a problem. Just install it through Wine (I can recommend managing it with Bottles) and launch it through Wine or Proton.

[–] Toes@ani.social 3 points 2 days ago (1 children)

You can run x86 and x64 games on the pi using this project.

https://box86.org/

[–] BlackLaZoR@fedia.io 5 points 2 days ago (1 children)

Problem is the performance is awful - and RaspberryPi CPU isn't that fast in the first place

[–] Toes@ani.social 2 points 2 days ago

The reports suggest it's working fine. Some slow spots but overall not bad

[–] kalpol@lemm.ee 4 points 1 day ago (1 children)

Do you have the original disc? As I recall Wine runs it just fine.

I don't have the original dial but I wanted to get the digital version from blizzard. Do I need the physical disk? I don't even have a DVD player anymore

[–] lornosaj@lemmy.world 3 points 2 days ago* (last edited 2 days ago) (1 children)

Maybe not your case but theres D2 on the web (ie in your browser). You just load some game data to it, otherwise it is a demo until the first boss or so.

Link: diabloweb

Edit: yikes, made a mistake - its D1 not D2.

[–] DacoTaco@lemmy.world 1 points 1 day ago

And diablo 1 has devilution ( or whatever the name was ), which is cross platform and works fiiiine

[–] whostosay@lemmy.world 2 points 2 days ago (1 children)

You may be able to force it through steam/proton

[–] whostosay@lemmy.world 2 points 2 days ago

You can also use battlenet through lutris, I've never done d2, but I've played all kinds of versions of wow through it.

[–] Toes@ani.social 1 points 2 days ago
[–] Lembot_0003@lemmy.zip 1 points 2 days ago (2 children)

Diablo, if I remember correctly, always worked as shit through wine. Mostly resolution problems.

[–] massive_bereavement@fedia.io 4 points 1 day ago (1 children)

I finished D2 and Diablo with mods, installed via Lutris and they played perfectly. The future is now old man.

[–] lordnikon@lemmy.world 3 points 1 day ago

This i played D2 and D2R on debian no issues on Linux. On Amd64 arch. The pie seems a little underpowered to emulate I386

[–] TheEntity@lemmy.world 2 points 2 days ago (1 children)

I had no problems at all when I played it a few years ago.

[–] Lembot_0003@lemmy.zip 0 points 2 days ago (1 children)
[–] TheEntity@lemmy.world 1 points 1 day ago (1 children)

I think so, but at this point I'm not 100% sure.

[–] Lembot_0003@lemmy.zip 0 points 1 day ago (1 children)

I am asking because all problems I remember were resolution-fullscreen-related. Playing 800x600 in window was possible for some time... But it was some time since I checked the situation the last time. It might be better now.

[–] TheEntity@lemmy.world 1 points 22 hours ago

I just tried naively installing Diablo II from scratch inside Bottles and sadly I couldn't get it to work at all this time, at least not without further tinkering but I couldn't spare more time at this moment. I presume installing it like this and then adding it to Steam to use Proton could work. I know it worked for Warcraft III a few months ago. And then Proton usually handles fullscreen completely seamlessly.