WineHQ

Diablo II

Latest version (currently, patch 1.14b)

Installed either from CD media or Digital Download.

Application Details:

Version: 1.xx
License: Retail
URL: http://us.blizzard.com/en-us/g...
Votes: 11
Latest Rating: Platinum
Latest Wine Version Tested: 5.13-staging

Maintainers: About Maintainership

Free Download Diablo II Latest patch

Test Results

Old test results
The test results you have selected are very old and may not represent the current state of Wine.
Selected Test Results

What works

Single Player mode works, despite the game giving a crash warning upon load.


What does not

Connecting to Battle.net causes the game to crash a second time and the game exits.

Workarounds

What was not tested

N/A

Hardware tested

Graphics:

  • GPU: Nvidia
  • Driver: proprietary

Additional Comments

selected in Test Results table below
Operating systemTest dateWine versionInstalls?Runs?Used
Workaround?
RatingSubmitter
ShowDebian GNU/Linux 10.x "Buster"Aug 21 20205.13-stagingYes Yes NoPlatinum????? ?????????? 
ShowUbuntu 16.04 "Xenial" amd64 (+ variants like Kubuntu)Mar 15 20194.3-stagingYes Yes NoPlatinumjan kortis 
CurrentUbuntu 16.04 "Xenial" amd64 (+ variants like Kubuntu)Jan 12 20193.21N/A Yes NoGarbageRiCK 
ShowUbuntu 16.04 "Xenial" amd64 (+ variants like Kubuntu)Apr 01 20183.5Yes Yes NoGarbagecoder 
ShowArch LinuxDec 28 20173.0-rc3Yes Yes NoBronzeLTN 

Known Bugs

Bug # Description Status Resolution Other apps affected
14456 Diablo II hangs when it loses focus REOPENED View
20362 Diablo II: X11 mouse pointer shows over fullscreen window NEW View
44178 Diablo 2 locks up when connecting to battle.net UNCONFIRMED View
44249 Diablo 2 crashes UNCONFIRMED View
44360 Can't play Diablo 2 LOD via Battle.net UNCONFIRMED View

Show all bugs

HowTo / Notes

I am here to help.
If you have any questions you can E-Mail me at [email protected].
How-to fix sound stops working

Initially on loading Diablo II the sound works just fine, but once you get in game it mysteriously stops.  Here are some steps to try and fix this:

  1. Open the Wine Configuration Application( winecfg )
  2. Go to the Audio tab (it can take a while to load)
  3. Under the Direct Sound - Hardware Acceleration field switch from Full to Emulation
WARNING

ALT-KEY COMBO WARNING

Window managers often have the alt key bound to certain features, especially the alt-click. THIS IS NOT A WINE BUG. If you have problems with the alt key in any way DO NOT REPORT IT. Fix your window manager. I'm not going to list steps for every one because there are too many possibilites. Figure out yourself or ask in a help forum (here is okay... but be warned all I use is TWM). If you are desperate, turn off window manager managed windows in winecfg.

KDE

Go into KDE Control Center, expand Desktop, click window behavior, then click window actions tab. You can turn off the alt-combos. If you want to make window specific settings, click on window specific settings under window behavior on the side.

GNOME

The option to change the key binding is in System Menu -> Preferences Menu -> Windows.

WARNING

Copy Protection Final Word

Patch 1.12a from Blizzard disables the CD check.

If you ever get "Please insert disc", this is NOT a problem with detecting the CD. The protection system is probably still built into the game even though the CD check itself is disabled. Make sure you use version 1.12a or later. If you get this problem after having this version installed, you are likely suffering from a buggy video driver as this is the only known (and proven possible) cause at this point.

DO NOT USE NOCD PATCHES - They are pointless, and won't fix the real problem.

Easy installation: digital download

If you own a legitimate copy of Diablo II, you can register it on battle.net with the serial key, and get a link to an installer (about 1.4GB).

This installer has less issues than the CD version, and is the recommended way to install Diablo II.  It works flawlessly (Platinum) from begining to end.

HOWTO

Running Diablo 2 under Wine

by Jesse Allen the3dfxdude at gmail com

minor updates by Jasmine Iwanek 

Last updated 2008-07-11 - wine-1.0.0/1.1.1

Before you get started

This HOWTO only lists information specific to this app. Please keep comments and test reports brief. Please don't post copies of wine logs here! If you have trouble, see other ways of getting help.

Wine+Diablo 2 Status

Generally perfect for Linux users since wine 0.9.12. FreeBSD kernel 6.2 might work, but copy protection will likely be broken.

Minimum Requirements

  • winecfg: A drive letter for your cdrom, and running as Win2k, XP or later.
  • Support for 640x480 and 800x600 video modes.
  • Correct network configuration for online play.
  • A REAL COPY OF THE GAME -- The game probably won't work right if you don't have a real copy.

Recommended Requirements

  • Wine 0.9.20 or later
  • Linux kernel 2.6.17+ OR FreeBSD 6.2
  • Video card and driver that supports hardware based acceleration with OpenGL.

**Bad Versions**

It's recommended to not use these versions of software because they break the game's copy protection:

  • Linux vanilla x86 kernel: 2.6.9, 2.6.10
  • Linux vanilla x86-64 kernel: 2.6.9-2.6.15
  • Linux kernel versions less than 2.6
  • Wine built with GCC 4.0.0-4.0.2
  • Native msvcrt.dll
  • Fedora core 6 modified linux kernel, unless updated to 2.6.18-1.2784.fc6 or later.
  • FreeBSD
  • Incorrectly installed video drivers

Additionally, FreeBSD kernels less than 6.2 might not work with current versions of wine at all.

Installing the Game

Launch winecfg to perform the following tasks:

  • Make sure the Windows version for Diablo 2 is NT 4.0, 2000, XP, or 2003 for correct copy protection support. Diablo 2 supports Win NT 4.0 or later.
  • Create a drive letter for your cdrom if you have not already. For each cdrom drive letter, click advanced, and set the drive type from automatic to cdrom.

It helps to add a device node symlink, so do the following. If your cd-rom drive letter in winecfg is d: and the corresponding device node to your mount point is /dev/hdc then run the following command:
$ ln -s /dev/hdc ~/.wine/dosdevices/d\:\:
Note, you *must* have two colons! You can tell what your device node is in /etc/fstab or viewing your boot-log.

For running the multi-disk install, it helps to run the install using the drive letter and to not switch your shell to the cdrom's path. For example:
~/.wine/drive_c$ wine "D:\setup.exe" (where D: is the assigned letter of your CD drive).
If you run while having a current working directory of /mnt/cdrom, for example, then you will lock the drive and you won't be able to eject the disk.

If during the game's install the progress bar stops, the game is probably prompting you for the next disc, but the dialog is under the installer's window. For full install, the order is Install Disc, Play Disc, then Cinematics Disc. Just swap discs and hit enter when the progress stops.

Running and Playing Diablo 2

Do not use the '-opengl' switch to run the game. Blizzard never completed OpenGL support so they removed it, but left the switch in. All you see when you run it is a badly initialized DDraw mode.

If you use the window option "-w", the game will drop to ddraw mode no matter what.

Do not use virtual desktop with the game! It's not designed to be windowed like that! It still thinks it's full-screen!

If you have missing in-game speech, animation, videos, or crashes between acts, these problems are typically from using a modified executable. Install your game properly.

Multiplayer Setup

Make sure you have the correct ports open. Open outbound and inbound, TCP and UDP, port 6112 and 4000. More on Network Ports

If you are going to play a direct TCP/IP game and the game tells you that it could not detect a valid address, make sure about things:

  1. Have a valid internet addressible IP address for internet play or proper NAT forwarding.
  2. Have a hostname other than localhost.
  3. In /etc/hosts, have a valid hostname of your computer listed with your current IP address you want to use and do not have your hostname listed with 127.0.0.1. Do not have "localhost 127.0.0.1" listed first either.

patching and running without cds

after you install the 1.12a patch copy as needed the files d2music.mpq from the play disk and d2xmusic.mpq from the expansion disk (if using Lord Of Destruction)

ALT+CLICK combination

Window managers often have the alt key bound to certain features, especially the alt-click. This is not a wine bug. If you have problems with the alt key in any way do not report it. Fix your window manager. I'm not going to list steps for every one because there are too many possibilites. Figure out yourself or ask in a help forum (here is okay... but be warned all I use is TWM). If you are desperate, turn off window manager managed windows in winecfg.

KDE

Go into KDE Control Center, expand Desktop, click window behavior, then click window actions tab. You can turn off the alt-combos. If you want to make window specific settings, click on window specific settings under window behavior on the side.

GNOME 2

The option to change the key binding is in System Menu -> Preferences Menu -> Windows.

HOWTO play without mounting a CD

�As of 1.12, it is possible to play without using a CD.


The following is an excerpt from the patch changelog:�

For users that originally performed a "Full Installation" and wish to run without the CD, all ".mpq" files should be copied from the Diablo 2 CDs to the Diablo 2 directory. Most users will only need to copy D2Music.mpq from the Diablo 2 Play CD and/or D2xMusic.mpq from the Lord of Destruction CD.


Anyone who did not perform a "Full Installation" will need to  re-install from CD again to ultimate�ly play without the CD. In this case, a "Full Installation" is required, followed by file copy step noted above.

How-to fix delay in sound

If your game is suffering from a slight delay in sound, then try following these steps:

  1. Open the Wine Configuration Application (Configure Wine)
  2. Click the "Add application..." button
  3. Browse to your Diablo II folder (usually Program Files/Diablo II)
  4. Click Diablo II.exe, and then Open
  5. Select Diablo II.exe from the list: it should turn blue
  6. Go to the Audio tab (it can take a while to load)
  7. Untick ALSA and tick OSS, and you're ready to go!
Installation using the CDs

Running Diablo 2 under Wine

by Jesse Allen the3dfxdude at gmail com

minor updates by Jasmine Iwanek

Last updated 2008-07-11 - wine-1.0.0/1.1.1

Before you get started

This HOWTO only lists information specific to this app. Please keep comments and test reports brief. Please don't post copies of wine logs here! If you have trouble, see other ways of getting help.

Wine+Diablo 2 Status

Generally perfect for Linux users since wine 0.9.12. FreeBSD kernel 6.2 might work, but copy protection will likely be broken.

Minimum Requirements

  • winecfg: A drive letter for your cdrom, and running as Win2k, XP or later.
  • Support for 640x480 and 800x600 video modes.
  • Correct network configuration for online play.
  • A REAL COPY OF THE GAME -- The game probably won't work right if you don't have a real copy.

Recommended Requirements

  • Wine 0.9.20 or later
  • Linux kernel 2.6.17+ OR FreeBSD 6.2
  • Video card and driver that supports hardware based acceleration with OpenGL.

**Bad Versions**

It's recommended to not use these versions of software because they break the game's copy protection:

  • Linux vanilla x86 kernel: 2.6.9, 2.6.10
  • Linux vanilla x86-64 kernel: 2.6.9-2.6.15
  • Linux kernel versions less than 2.6
  • Wine built with GCC 4.0.0-4.0.2
  • Native msvcrt.dll
  • Fedora core 6 modified linux kernel, unless updated to 2.6.18-1.2784.fc6 or later.
  • FreeBSD
  • Incorrectly installed video drivers

Additionally, FreeBSD kernels less than 6.2 might not work with current versions of wine at all.

Installing the Game

Launch winecfg to perform the following tasks:

  • Make sure the Windows version for Diablo 2 is NT 4.0, 2000, XP, or 2003 for correct copy protection support. Diablo 2 supports Win NT 4.0 or later.
  • Create a drive letter for your cdrom if you have not already. For each cdrom drive letter, click advanced, and set the drive type from automatic to cdrom.

It helps to add a device node symlink, so do the following. If your cd-rom drive letter in winecfg is d: and the corresponding device node to your mount point is /dev/hdc then run the following command:
$ ln -s /dev/hdc ~/.wine/dosdevices/d\:\:
Note, you *must* have two colons! You can tell what your device node is in /etc/fstab or viewing your boot-log.

For running the multi-disk install, it helps to run the install using the drive letter and to not switch your shell to the cdrom's path. For example:
~/.wine/drive_c$ wine "D:\setup.exe" (where D: is the assigned letter of your CD drive).
If you run while having a current working directory of /mnt/cdrom, for example, then you will lock the drive and you won't be able to eject the disk.

If during the game's install the progress bar stops, the game is probably prompting you for the next disc, but the dialog is under the installer's window. For full install, the order is Install Disc, Play Disc, then Cinematics Disc. Just swap discs and hit enter when the progress stops.

Running and Playing Diablo 2

Do not use the '-opengl' switch to run the game. Blizzard never completed OpenGL support so they removed it, but left the switch in. All you see when you run it is a badly initialized DDraw mode.

If you use the window option "-w", the game will drop to ddraw mode no matter what.

Do not use virtual desktop with the game! It's not designed to be windowed like that! It still thinks it's full-screen!

If you have missing in-game speech, animation, videos, or crashes between acts, these problems are typically from using a modified executable. Install your game properly.

Multiplayer Setup

Make sure you have the correct ports open. Open outbound and inbound, TCP and UDP, port 6112 and 4000. More on Network Ports

If you are going to play a direct TCP/IP game and the game tells you that it could not detect a valid address, make sure about things:

  1. Have a valid internet addressible IP address for internet play or proper NAT forwarding.
  2. Have a hostname other than localhost.
  3. In /etc/hosts, have a valid hostname of your computer listed with your current IP address you want to use and do not have your hostname listed with 127.0.0.1. Do not have "localhost 127.0.0.1" listed first either.
Window losing focus

When running the game in Windowed mode (-w switch), if the DIablo II window loses focus, the game freezes. To unfreeze the game press Alt+Enter. So far this has been tested in:

  • Ubuntu "Hardy" 8.04.1 with Gnome
HOWTO fix the 'patch archive is corrupt' issue

I order to correct this issue Wine must run Diablo II from inside Diablo's installation directory.  Here is an example:

  1. Run a terminal
  2. Type:  cd ~/.wine/drive_c/Program\ Files/Diablo\ II/
  3. Type:  wine ./Game.exe

Comments

The following comments are owned by whoever posted them. WineHQ is not responsible for what they say.

Multiplayer & Battlenet (1.14d)
by Tom on Tuesday January 2nd 2018, 13:02
The crux of the matter seem to revolve around making Blizzard’s anticheat ExtraWork execute correctly with Wine.
Please see: github.com/pvpgn/ExtraWork

I have opened a thread on Blizzard’s Classic Games forum where you are welcome to chime in.
Maybe fresher and more technically abled minds will assist: us.battle.net/forums/en/bnet/topic/20760475943

Description from ExtraWork’s GitHub page:
"ExtraWork is a module used by classic Battle.net games intended to return system data to the server. It can be utilized for different purposes but most notably, for hack detection. During the connection process, the server sends ExtraWork as a signed MPQ that contains a DLL file which exports a function called ExtraWork."
RE: Multiplayer & Battlenet (1.14d)
by JimB on Thursday April 5th 2018, 11:31
To save others from reading a long thread on the bnet forums the solution is that wine 1.6.2 32 bit allows Diablo 2 to log into bnet. I use PlayOnLinux and so its easy to change the wine version.
RE: Multiplayer & Battlenet (1.14d)
by Priidu Neemre on Sunday April 8th 2018, 5:33
... a solution that doesn't really work. The only difference between running it on WINE 1.6.2 vs a newer version is that instead of crashing/freezing, the game enters a catatonic state (i.e. login hangs forever, game freezes when pressing the "Exit" button to get back to the main menu etc.).

There are several errors in the terminal, with the most prominent one being:

Error: instr on vaddr 0x4494c45 (invlpg_M) is unimplemented in ufx86. Exiting.

The above error is the one that actually kills WINE (or so it seems). The only solution I have found so far is to chmod -r the new anticheat MPQ file (read the Battle.net thread referenced by OP). However, this is most likely setting your CD key/account up for termination.

About PlayOnLinux: I don't use it, but perhaps it accidentally disallows/blocks linking that new *.mpq in a similar way.

In conclusion, there isn't a safe way to run DII: LoD on the official servers for now (on Linux, that is).

P.S: Note that everything described here only applies to the "Battle.net" menu item; all other game modes (TCP/IP, Singleplayer etc.) seem to work perfectly.
RE: Multiplayer & Battlenet (1.14d)
by Quimby on Saturday April 28th 2018, 12:48
I recently came across this and POL 1.6.2 works flawlessly on bnet. No freezing, crashing, hangs. Played around a lot going between menus, going into games, leaving games, etc. Only cleared out Den of Evil so far but ready to start on another hardcore journey.

Gentoo 4.16.5, POL 4.2.12, wine 1.6.2, proprietary nvidia, diablo 2 1.14D

My biggest issues are the 800x600 resolution on a 1440p monitor and that alt+left click was bound to a function by default in openbox that made looting rough until changed. I did notice that when the game first loads the screen flickers to a bright color but then dims normally. I'm pretty sure this is related to a wine/redshift interaction.
Diablo2 + LOD On Manjaro 1.14d
by LTN on Thursday December 28th 2017, 16:05
The latest version of Diablo2 + LOD does not allow for multiplayer without the client crashing instantly or spoardically, I never succesfully entered an online game with the latest 1.14d. I tried workarounds, installing a few libs but nothing seems to have worked succesfully.

The private servers like usabattle.net which use 1.13c, they work 100% flawlessly. It's an alternative if you can't wait to play this game, I heard the offical servers are still full of spam bots and the like anyways. For instruction on how to download 1.13c for private servers see this: usabattle.net/d2/join
Migration from ArchWiki
by Svito on Saturday December 23rd 2017, 19:03
See: wiki.archlinux.org/index.php/Talk:Wine#Windows_application_articles_should_be_on_Wine_AppDB

You can incorporate useful bits from this into HowTo / Notes and delete the comment:

This page explains how to install Diablo II and play it under Arch Linux. This works as of 2016-08-14.

If you already have a Diablo II installation (for example, installed under Windows on another partition), simply update that version to the latest patch (trying to log into Battle.net will start the update automatically), launch it once (to migrate your characters and the CD-Key, should it still be stored in the registry - newer versions store it next to the game's binary). You may now start playing on Arch with Wine - no additional dependencies are required for the game itself.

== Installing ==

Those packages are needed in order to run the Blizzard Downloader:

* {{pkg|lib32-libjpeg-turbo}}
* {{pkg|lib32-libldap}}

If any of those is not installed, downloaders will fail to start. You may download the standalone installers on Windows to avoid installing these.

Set up a working [[Wine]] environment. Download Diablo II and Diablo II Lord of Destruction installation files [eu.battle.net/account/management/download/ from Battle.net] - launch downloaders, pick a directory to download the installers into. Launch the Diablo II installer, enter your key. Then install Lord of Destruction (the directory will be set automatically, you'll need to enter just the key). Launch the game once and try logging into Battle.net to download the latest patch.

If the installers were downloaded from Battle.net, keys are 26-character, generated for you when you've registered games on Battle.net, available on product pages for [eu.battle.net/account/management/classic-games.html?license=20 Diablo 2] and [eu.battle.net/account/management/classic-games.html?license=23 Lord of Destruction] - original keys from the CDs will work only with the installers from the CDs themselves. However, the original versions from the CDs have somewhat serious compatibility issues even with newer Windows versions (by newer, think XP), and as such are not recommended anymore.

In the past, a game CD was required to launch the game (with a rather nasty workaround for non-Windows OSes if you didn't want to use a NoCD crack, which was not exactly Battle.net-safe). They're no longer needed - in recent patches, the protection has been removed completely.

== Playing ==

If you use a desktop, you can create a shortcut. Otherwise just run:

$ wine ~/.wine/drive_c/Program\ Files/Diablo\ II/Game.exe

== Troubleshooting ==

=== Error "ACCESS_VIOLATION" on start===

Try setting {{ic|1=dsoundhw=Emulation}}. This can be done by starting winetricks ''Select the default wineprefix'' and then choose ''Change settings'' and check the box in front of ''dsoundhw=Emulation''.
Another thing to try is to add {{ic|-w}} at the end of the command line. It will launch the game in windowed mode but it should work where fullscreen does not.

=== Sound option is greyed out ===

Fix with: {{ic|pacman -S mpg123 lib32-mpg123}}
NTLM
by PowaBanga on Monday June 19th 2017, 11:30
Hi all,
I have a real lag in game when I play on the blizzard servers.
And I have this error message about ntlm in console :

err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
[2017-06-19T16:12:38Z][..\source\main.cpp:690][INFO]: System Survey 2.3.1.44, Data Version 3, Git Revision v2.3.0.42-20-ge49c7e7, Copyright (C) 2013 Blizzard Entertainment. All rights reserved.
[2017-06-19T16:12:38Z][..\source\main.cpp:764][INFO]: Exit value: 0


Somebody can help me to fix that ?
RE: NTLM
by Priidu Neemre on Sunday April 8th 2018, 5:42
I had this, too, but it shouldn't affect the gameplay in any way (unless it's crashing the game for you?)

You can always just "sudo apt-get install winbind" (e.g do what the error message tells you to do); AFAIK, this should get rid of the first line.
HOWTO get mouse wheel working
by Mikkel Hansen on Friday August 21st 2015, 4:11
The game needs to run in Windows XP mode for mouse wheel to work.

Either set windows version to Windows XP globally or for the Game.exe executable (setting it for 'Diablo II.exe' doesn't work)
Back