I tried seeking help on Reddit and even on the Lutris Discord, but I still have a problem and can’t play this game. I attempted to install the game using the Lutris script, but it’s simply not working, and Lutris doesn’t recognize the diabdat.mpq file. I also tried installing it manually based on some suggestions from Reddit, but when I launch the game, I only see a black screen and hear the music. I experimented with various Wine versions, but I haven’t had any luck so far.
I managed to launch the game and see something with Proton 7.0 but its unplayable. I started to see something with DXVK off
I’ve spent quite a lot of time trying to get The Hell mods running on Linux. Finally today I managed it. I wrote up some instructions (below) and provided the special Wine prefix were required to get the game running. Please let me know if you have any issues or have suggestions for improvement!
How to Install Diablo: The Hell 2 or 3 with Lutris
It was very difficult to find a way to run this on Linux - so I wrote this guide to help others who I know have also beat their heads against the table. The trick which finally allowed me to run it was I lucked into building a Wine prefix which is apparently crucially important to running the game. I have no idea what makes this Wine prefix special, but I’ve tested it on four computers (Ubuntu 20.04, 22.04, & Pop!OS) and it works on them all.
Downloads
You need the following four files
- The mod:
TH3_vx.xxxx.zip
, and music pack:TH3_music_vx.x.zip
- Download pages: The Hell 2, The Hell 3
- The Wine prefix:
diablo-the-hell-wine-prefix.tar.xz
- Diablo base game data:
diabdat.mpq
- Available on the game CD-ROM, a copy from GOG, etc.
Wine setup and install
We’ll create the Wine prefix, install The Hell into that prefix, and then set up Lutris to point to it. This guide will create the prefix at
~/Games/diablo-the-hell
, but you can put it elsewhere if you like.- Unpack the wine prefix file
diablo-the-hell-wine-prefix.tar.xz
to~/Games/diablo-the-hell
- Create a Windows folder for the game. You can use the UI or the terminal:
mkdir ~/Games/diablo-the-hell/drive_c/Program\ Files/diablo-the-hell/
- Unzip the mod file
TH3_vx.xxxx.zip
to~/Games/diablo-the-hell/drive_c/Program Files/diablo-the-hell/
- Unzip the music file
TH3_music_vx.x.zip
to~/Games/diablo-the-hell/drive_c/Program Files/diablo-the-hell/
- Copy
diabdat.mpq
to~/Games/diablo-the-hell/drive_c/Program Files/diablo-the-hell/
- Open
~/Games/diablo-the-hell/drive_c/Program Files/diablo-the-hell/config.ini
and make the following changes:
set DDraw on
Very important!!set fps 60
Limits frames per second (optional)set startvideo off
Skips opening cinematic on startup (optional)set screenwidth 1920
Sets resolution width (optional)set screenheight 1080
Sets resolution height (optional)
Lutris config
- Press
+
to add a new game, and set the following:
- Name: “Diablo - The Hell”
- Runner: Wine
- Click
Game Options
, set the following:
- Executable:
~/Games/diablo-the-hell/drive_c/Program Files/diablo-the-hell/TH2.exe
(for The Hell 2), or~/Games/diablo-the-hell/drive_c/Program Files/diablo-the-hell/TH3.exe
(for The Hell 3) - Wine prefix:
~/Games/diablo-the-hell/
- Click
Save
- Optional, if the game art doesn’t auto-populate:
Right Click
on “Diablo - The Hell” ->Configure
- Next to “Identifier” click
Change
- Change text to “diablo”
- Click
Apply
->Save
- Click
Lutris
under “Sources” on the left ->Community Installers
- Search for “diablo”, and wait for results to populate (the search downloads the art)
- Exit the community installer section
Final thoughts
- Important note on running the game: the opening UI menu has a visual bug But with the mouse & arrow keys (& some patience) you can navigate the menus to create a character. Once through the initial screens the game runs perfectly fine.
- The special Wine prefix was built using Bottles, however Bottles is not required to run the game (these instructions use Lutris). If anyone can learn what is special about this prefix which makes the game work please let me know!
- Despite what I’ve read online this mod works fine with DXVK. I don’t recommend disabling DXVK in Lutris when running the mod (contrary to what others have).
- In case anyone asks: the specific Wine version doesn’t seem to matter. I had success with: lutris-GE-Proton8-8, lutris-7.2-2, and soda-7.0-4
I believe I may have been able to mostly reproduce your setup directly in Bottles, or at least found another way to achieve the same.
I made a completely fresh bottle, went to dependencies and then installed
cnc-ddraw
. Then I installed the game, and it works. The intro videos play fine, but then the menu doesn’t draw properly as you said, but the whole menu is drawn at least which makes it just janky but totally fine to navigate. Then once in-game it runs just fine.
- The mod:
In my experiemce The Hell 2 has a visual glitch in Linux during the opening menus where they are all black. Judging from your screenshot and report of hearing audio you might be seeing the same thing - but in that case you mighy already be to the point where the game is playable.
Despite the black screen try interacting with the buttons with the mouse? Does the screen redraw itself in the vicinity of the mouse as you move it? If so, try to navigate the menu to start a new game.
Lol! I managed to start the game, and it seems that everything works fine. However, the screen does not redraw itself, unfortunately. I was only able to start a new game by pressing the arrow keys and enter. But, of course, I can’t create a proper character like this…
Could you post a link to the Lutris script you mentioned? I tried an internet search but couldn’t find it.
I really want to get this to work! I tried to install The Hell 2 myself in Lutris and I see a result similar to yours: I can hear music and see a blank screen and a crash follows soon after. Different Wine versions & settings seem to make little/no difference.
I closed Lutris and reran from the terminal with
lutris &
. From there I could see that when I run The Hell 2 I was getting the following error:ERROR: ld.so: object ‘libgamemodeauto.so.0’ from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored
Internet searching for that error lead me to people with similar issues: unable to start games with this error appearing in the background. I found multiple pages which suggested that the reason for the error is that the game requires a 32-bit version of libgamemodeauto.so.0, and that doesn’t come preinstalled on some distros. There are instructions explaining how to uninstall/reinstall to get the 32-bit version. I’ve followed those instructions and when I run The Hell 2 I no longer get the libgamemodeauto.so.0 error but I still see the blank screen + music followed by a crash.
I’ll keep thinking about this. In the meantime you can check whether you have the 32-bit version of libgamemodeauto.so.0 by running
ls /usr/lib/*/libgamemodeauto.so.0
. If you see an entry mentioning i386 then you’ve got them - otherwise not.Thank you so much, good man! I already ruined my character by opening the Butcher’s chamber and was unable to kill him :D
When you say manually, you mean you just issued “wine [install file].exe” right?
Well, what I mean is when I set the executable, Wine prefix, and Wine version.