Current version of the game
Application Details:
Version: | Current |
License: | Retail |
URL: | https://diablo3.blizzard.com |
Votes: | 34 |
Latest Rating: | Platinum |
Latest Wine Version Tested: | 7.17 |
Maintainers: About Maintainership
What works
Installs, runs. settings.
What does not
Gameplay, loading screen stays on forever.
Workarounds
Used 32-bit version.
What was not tested
Gameplay
Hardware tested
Graphics:
Additional Comments
Operating system | Test date | Wine version | Installs? | Runs? | Used Workaround? | Rating | Submitter | ||
Show | Ubuntu 20.04 "Focal" (+ variants like Kubuntu) | Sep 24 2022 | 7.17 | Yes | Yes | No | Platinum | Acridwax | |
Show | Ubuntu 20.04 "Focal" (+ variants like Kubuntu) | Aug 30 2022 | 7.16 | Yes | Yes | No | Platinum | Acridwax | |
Show | Ubuntu 20.04 "Focal" (+ variants like Kubuntu) | Aug 29 2022 | 7.15 | Yes | Yes | No | Platinum | Acridwax | |
Show | Debian GNU/Linux 11.x "Bullseye" x86_64 | Aug 03 2022 | 7.14 | Yes | Yes | No | Platinum | Acridwax | |
Show | Ubuntu 20.04 "Focal" (+ variants like Kubuntu) | Jul 03 2022 | 7.12 | Yes | Yes | No | Platinum | Acridwax |
Bug # | Description | Status | Resolution | Other apps affected |
11674 | Dual-core unsupported in WoW and SC2 | STAGED | View | |
30967 | Diablo III: Resolution problems without virtual desktop | UNCONFIRMED | View | |
30993 | diablo 3 d3d device error | UNCONFIRMED | View | |
31262 | Diablo III in game mouse cursor Out of sync, hangs in place. | UNCONFIRMED | View | |
32083 | Diablo III: Missing logo on startup | NEW | View | |
32084 | Diablo III: Crash on changing from fullscreen mode to window mode | UNCONFIRMED | View | |
32179 | Diablo III: changing keyboard layout to nonlatin makes all letters to be questionmarks | UNCONFIRMED | View | |
33111 | Graphical Artifacts in Diablo 3 on AMD Graphics | RESOLVED | NOTOURBUG | View |
35990 | keyboard becomes unresponsive in blizzard games | UNCONFIRMED | View |
Please note that due to syscall thunks requirements described in bug #45349, 64-bit Diablo III client will work only in Wine built with PE support.
Below workarounds should not be needed anymore to run the game. If you find that they are still required, please post it in the comments.
1. Extremely low performance with 64-bit game client
This should be fixed as of Wine 6.19 (commit link).
32-bit game client uses DirectX 9, while 64-bit client uses DirectX 11. For some reason the 64-bit client has abysmal performance (around 1-2 fps).
In order to get around this and have a usable fps, either 1) use the 32-bit client, or 2) use DXVK (not directly supported on AppDB).
(To use the 32-bit client, go to Battle.net App -> Settings -> Game Settings -> Diablo III -> "Launch 32-bit client (instead of 64-bit)".)
2. How to run the game on 64-bit systems
On systems with more than 4 GB of memory Diablo III sees an unusual amount of memory (from its perspective) due to differences in the memory layout on Windows and Linux. As a result of this, many aspects of the application will fail to function properly (including chatting, authenticating, and closing the game). To resolve this problem you need to run the game in particular way to tell Linux to use a Windows-like memory address space:
setarch i386 -3 wine '<path to Diablo III.exe or Battle.net Launcher.exe>'
3. How to fix audio with PulseAudio
Edit /etc/pulse/daemon.conf and add
default-fragment-size-msec = 5
After that the volume was really low and it appears that pulse volumes bars per application. so just clicking on the sound Icon, tools icon and going to Applications tab allowed me to adjust the volume of the game.
Tested on Alllen and Heath Zed 10FX USB sound card.
The following comments are owned by whoever posted them. WineHQ is not responsible for what they say.
by Archttila on Wednesday January 5th 2022, 1:42
Running in terminal directly in Wine the following error message is generated at crashing:
076c:fixme:d3d_shader:shader_glsl_input_pack Unhandled sysval semantic 0x2.
076c:fixme:d3d_shader:shader_glsl_input_pack Unhandled sysval semantic 0x2.
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
06d4:err:seh:dispatch_exception unknown exception (code=c0000420) raised
amdgpu: amdgpu_cs_query_fence_status failed.
amdgpu: The CS has been cancelled because the context is lost.
amdgpu: The CS has been cancelled because the context is lost.
amdgpu: The CS has been cancelled because the context is lost.
amdgpu: The CS has been cancelled because the context is lost.
amdgpu: The CS has been cancelled because the context is lost.
amdgpu: amdgpu_cs_query_fence_status failed.
amdgpu: The CS has been cancelled because the context is lost.
amdgpu: The CS has been cancelled because the context is lost.
- DeskMini X300, Ryzen 5700G
- Arch Linux 5.15.12-arch1-1
- Sway WM
- Latest (stable) Mesa driver
by ferroso on Tuesday October 19th 2021, 13:26
I am adding a comment in case anyone else experiences similar issues. I am running Diablo 3 on an AMD RX5700 but was experiencing awful lag and frame pacing issues. After much troubleshooting I recalled I "maxed out" my settings like I did in Windows so I reset the video settings but issues persisted. I then recalled I changed the audio settings, sound channels to be specific, to max as well, so I set them to default. This fixed my frame pacing and lag issues immediately! Make sure that if you changed sound channels to High (128) and experience issues to go back to Low (32). Now the game runs at max video settings and with sounds at default settings perfectly.
by Jen on Sunday September 6th 2020, 12:47
by Jen on Sunday September 6th 2020, 12:47
by Maciej Stanczew on Sunday September 6th 2020, 13:13
Regarding regression, what's the last Wine version that is working for you?
The error message suggests you're probably hitting this bug:
bugs.winehq.org/show_bug.cgi?id=45349
You need Wine compiled with PE support for 64-bit Blizzard games to work.
by Jen on Sunday September 6th 2020, 13:35
by Maciej Stanczew on Sunday September 6th 2020, 14:49
by Jen on Sunday September 6th 2020, 15:03
Tried proton-ge with it, but get a black screen more often than not. It does actually load...sometimes.
by Steven Linn on Sunday January 26th 2020, 18:10
Switched Battle.Net to use 32bit loader. Launches, transparent screen followed by crash.
Tried disabling dx11 but that prevents Battle.Net from loading so I can't do that. Installed VC++ 2015.
I get a bunch of this which seems like it could be related.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0x11.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0x12.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0xe.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0xd.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0x6.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0xf.
013b:fixme:d3d:wined3d_query_gl_create Unhandled query type 0x5.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x34324644 (as fourcc: DF24) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x34324644) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x34324644 (as fourcc: DF24) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x34324644) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x34324644 (as fourcc: DF24) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x34324644) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x36314644 (as fourcc: DF16) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x36314644) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x36314644 (as fourcc: DF16) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x36314644) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x36314644 (as fourcc: DF16) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x36314644) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x5a574152 (as fourcc: RAWZ) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x5a574152) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x5a574152 (as fourcc: RAWZ) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x5a574152) in the format lookup table.
013b:fixme:d3d:debug_d3dformat Unrecognized 0x5a574152 (as fourcc: RAWZ) WINED3DFORMAT!
013b:fixme:d3d:wined3d_get_format Can't find format unrecognized (0x5a574152) in the format lookup table.
by Maciej Stanczew on Monday January 27th 2020, 13:50
by Chris on Thursday June 13th 2019, 4:27
I recently upgraded from Wine Staging 4.8.1 -> 4.9.1 and it seems the update causes Diablo 3 to freeze with a grey screen at launch. Fiddled with it for a couple of hours and gave up, downgrading back to 4.8.1.
My staging settings are all unchecked and my only library override is d3d11 set to native. I wasn't sure if anyone else was having any luck using a larger patch suite, will give it another try later on and follow up.
Kernel: 5.1.8-arch1-1-ARCH
Nvidia: 430.26
DXVK: 1.2.1
Wine Staging: 4.8.1
vulkan-icd-loader: 1.1.108-1
lib32-vulkan-icd-loader 1.1.107-1
Hope this is helpful, let me know if I can add any additional info.
by Maciej Stanczew on Saturday June 15th 2019, 5:21
Also, where did you get versions 4.8.1 and 4.9.1? Official releases are only at 4.8 and 4.9, there are no .1 versions.
[1] bugs.winehq.org/show_bug.cgi?id=47265
by Han Prower on Saturday January 19th 2019, 17:55
Using a patch pack like github.com/Tk-Glitch/PKGBUILDS/blob/master/wine-tkg-git/README.md with DXVK, esync (and Plasma tray fix) the Diablo 3 64bit client runs pretty much flawlessly for me in a prefix set to Win10 with esync enabled.
Doesn't even have that weird issue I used to get where inventory items may take ~30 seconds to load properly.
Just some FYI for those interested.
by Han Prower on Saturday January 19th 2019, 18:26
by Acridwax on Friday February 8th 2019, 13:11
64 bit versions of:
d3d10_1.dll
d3d11.dll
dxgi.dll
d3d10.dll
d3d10core.dll
into the game prefix /Windows/System32 path, overwriting existing DLLs and
32 bit versions of the same above DLL files into the game prefix /Windows/syswow64 path, overwriting existing DLLs there as well.
Subsequently, adding these DLLs as overrides to the WINE configuration for the prefix allows for flawless play of the game using the 64 bit client.
I do experience some weird quirks with the Battlenet App, but turning off the option for "Allow the window manager to control the windows" in WINE seems to fix the Battlenet App problems for me (also using Windows 10 as the Windows version is a must).
by Acridwax on Tuesday April 2nd 2019, 22:13
by Acridwax on Saturday April 20th 2019, 21:07
by Acridwax on Friday May 3rd 2019, 10:01
by meppl on Friday December 28th 2018, 10:29
deactivate winecfg --> tab "staging" --> option "Enable CSMT for better graphic performance (deprecated)"
by Josh R Raymond on Sunday November 4th 2018, 9:58
by Mordekay on Thursday October 18th 2018, 6:20
Now i tried it simply with the latest wine-staging (3.18)
I was able to install the Battle.net client without problems. By running this command: sudo apt-get install p11-kit-modules:i386 p11-kit:i386 i also had no problems with the login-screen. It worked without problems (no missing graphics, no ugly buttons/login-fields).
But then, when you hit the "Install" button it stops working. The window for the installation pops up, the waiting animation starts, but then nothing more. The animation keeps running forever.
die-lappenbude.de/images/ssdiainstall.png
by Mordekay on Thursday October 18th 2018, 6:34
for whatever reason sometimes at first start of the BN app i get the install sconfig window shown, but hitting the "install now" button simply does nothing.
die-lappenbude.de/images/ssdiainstall2.png
by Mordekay on Thursday October 18th 2018, 10:51
Solved for now.
by Maciej Stanczew on Thursday October 18th 2018, 11:42
You will almost certainly encounter this issue in the future when updating games / the app. Unfortunately there doesn't seem to be any permanent way to fix it, you have to delete product.db file every time this happens.
by Brian Stewart on Saturday April 14th 2018, 21:58
This is currently working for me. I've logged in a few times to play. The success is repeatable.
by Maciej Stanczew on Sunday April 15th 2018, 7:28
If you still need the workaround, you can do it in a simpler way: go to the game's directory and run
$ wine 'Diablo III.exe' -launch
This will launch D3 directly, completely skipping BN App.
by Dox on Thursday April 5th 2018, 11:21
DX11 however is 1 fps max atm, is there any fix for that?
by Jen on Monday March 5th 2018, 9:13
by Maciej Stanczew on Monday March 5th 2018, 15:02
by Paul Cornett on Wednesday December 27th 2017, 15:28
by Paul Cornett on Wednesday December 27th 2017, 15:29
by J on Sunday March 4th 2018, 3:12
by Steve Soule on Tuesday November 28th 2017, 15:51
Step 1: Compile (build) wine. Instructions are here: wiki.winehq.org/Building_Wine. Make sure you build wine 2.21 and not some development version. You can get wine 2.21 source with git, or you can get it here: ftp.winehq.org/pub/wine/source/2.x/wine-2.21.tar.xz
Step 2: Download wine-staging 2.21 source. You can get it with git, or you can get it here: github.com/wine-compholio/wine-staging/archive/v2.21.tar.gz
Step 3: Apply the patch "kernel32-SetFileCompletionNotificationModes" from wine-staging using patchinstall.sh:
./patchinstall.sh DESTDIR=../../wine-source kernel32-SetFileCompletionNotificationModes
replacing "../../wine-source" with the path to your wine-2.21 source. Note that you have to be in the wine-staging "patches" directory when executing patchinstall.sh.
Step 4: Rebuild wine (both configure and make).
Of the four above steps, the most difficult and painful, by far, is the first step, because you need to install lots of development stuff on your computer in order for wine to compile. But you ought to be able to complete all four of the above steps in half an hour or so, assuming you don't get lost.
Hopefully, the patch "kernel32-SetFileCompletionNotificationModes" will start being included in non-staging wine soon so that we don't have to do all this in order to play Diablo 3.
by Steve Soule on Saturday March 3rd 2018, 22:12
In my four-step procedure above, replace the command line in step 3 with:
./patchinstall.sh DESTDIR=../../wine-source --all -W server-send_hardware_message
This command line will, instead of adding the single patch "kernel32-SetFileCompletionNotificationModes", add all patches except "server-send_hardware_message".
There's probably some minimal set of patches that will make it work, but I don't have the patience right now to figure out which ones. I hope this helps.
by Maciej Stanczew on Sunday March 4th 2018, 4:18
The reason was announced here [1]. Fortunately new maintainers took the project [2] an it has just been bumped to version 3.3 [3].
You might want to check this new version to see what works and what doesn't. I am using it all the time, but I can't reproduce the mouse-down issue, so I don't know if it was fixed or just doesn't appear for me.
[1] wine-staging.com/news/2018-02-17-future-wine-staging.html
[2] www.winehq.org/pipermail/wine-devel/2018-February/123080.html
[3] github.com/wine-staging/wine-staging/commits/master
by Steve Soule on Sunday March 4th 2018, 15:26
by Matthias on Saturday November 25th 2017, 9:29
I used the unlimeted backgroudn and foreground FPS and the single Core command.
It seems to work so far.
Single click problems did not solve this way. In Addition I closed the battl.net app. Did not work neither.
Thanks for the hints
by Paul Cornett on Friday November 10th 2017, 15:16
by Paul Cornett on Friday November 10th 2017, 15:19
by Maciej Stanczew on Saturday November 11th 2017, 7:40
Maybe your issue is somehow related to display settings – what is your video configuration in D3?
by Paul Cornett on Saturday November 11th 2017, 8:11
by Paul Cornett on Saturday November 11th 2017, 8:17
by H-J. Stumm on Saturday November 11th 2017, 13:39
by Steve Soule on Monday November 13th 2017, 17:11
by Paul Cornett on Monday November 13th 2017, 17:13
by Steve Soule on Monday November 13th 2017, 17:24
by Steve Soule on Tuesday November 21st 2017, 3:09
by Rob Walker on Wednesday November 1st 2017, 23:14
in the D3 Forums i found a workaround with a Program (UnparkCPU) that forces windows to use all cores but this doesnt work in wine(or at least i dont know how)
tried to install it on 64, but launcher doenst start after installation.
tried wine 2.20 and 2.18 but the launcher crashes after 1 second (debug shows some wierd stack overflow)
by Jen on Wednesday August 16th 2017, 17:30
Has anyone tried the PTR? Any changes we need to make?
by Caine on Wednesday August 23rd 2017, 7:07
by Jen on Wednesday August 23rd 2017, 8:44
by Serenity Moral on Thursday October 26th 2017, 9:39
a) winecfg set to WinXP/2003 : Error msg at start is "Winvers not supported anymore" use at least win7
b) winecfg set to Win7 and above ... the game does nothing, not even the logo on startup.
c) 64bit game still doesn't run smooth. it is VERY slow but it is starting.
by Jen on Thursday October 26th 2017, 9:56
by Jen on Thursday October 26th 2017, 10:21
by Serenity Moral on Friday October 27th 2017, 13:54
i habe a 64bit prefix too and use 2.19 staging, tried 2.17 before, the game was running perfectly until i got the patch.
I tried win7 - win10. When i start the game (from bnet or directly) the game seems to start, i'll get a process running (can seet is in the ps-list) but on the monitor it does nothing (not even the logo)
by Maciej Stanczew on Friday October 27th 2017, 15:16
If it still doesn't work, is there maybe something interesting in the logs when you start the game directly? Or, do you have any dll overrides set (none should be needed for Diablo III)?
by Serenity Moral on Saturday October 28th 2017, 9:42
As i could find out - the problem itself was hosted by the nvidia driver from the debian sid tree, as i updated this driver the last time i got also some bad performance in worldofwarcraft too. so i removed every sid package depending the nvidia driver and downloaded the latest original one from the nvidia website. after the install everything is running fine now as before the patch.
:-)
thx 4 help
S.
by Rob Walker on Wednesday November 1st 2017, 23:02
im trying it but it wont work.
by Caine on Tuesday July 4th 2017, 10:54
But was getting weird errors with winetricks. Found out, the version I had of winetricks was too old.
I am using Ubuntu , so I replaced the winetricks in /usr/bin with the one from :
raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
then I did a : winetricks --force ie8 , and it worked.
took me awhile to figure that one out :)
by Nelson on Monday July 3rd 2017, 14:30
also I'm not able to log into battle.net at all through the Blizzard App client... is this normal?
by HeroRobb on Monday July 3rd 2017, 2:36
Linux Mint 18.1
Diablo has been working fine for me, but I've never been able to see much of the stuff on the battle.net app which didn't bother me. Now that the necromancer is out, there is a promotional splash page on diablo 3's section of battle.net, which covers the play button. The problem is that the X in the top right corner used to close the promotion does not appear. I've tried clicking where it should be, messing with some settings, but I really don't know what to do here.
by Nelson on Sunday July 2nd 2017, 12:56
by Nelson on Monday July 3rd 2017, 10:42
err:d3d:wined3d_debug_callback 0xa8cae60: "GL_INVALID_OPERATION error generated. Source and destination dimensions must be identical with the current filtering modes.".
any suggestions??
by Martin Ruso on Saturday July 1st 2017, 14:14
After resolving all, mainly vcruntime140 and installing lib32-libldap, lib32-gnutls, everything works like charm :) great gameplay and performance. Enjoy.