Back to the main site

Diablo 2: Resurrected black screen and crash at launch on 11-10-2021

Upon launching the game, the black screen is drawn as though the starting cinematic will play but then the WINE/Linux error is displayed. When the app. crashes, the black screen goes away and the Blizzard crash/error collection dialog is displayed. Blizzard is doing some wonky stuff with the game. I checked the program files\D2:R folder in Windows 10, and there is a d3d12.dll (direct X v12 runtime) file.

Wonky thing #1: D2:R requires Windows 10, does not have Windows 7 support, but when inspecting the properties of the dll file it shows that it is a DXv12 runtime for Windows 7.

Wonky thing #2: If one removes or replaces Window 7 runtime file with the Windows 10 runtime, the Blizz launcher will detect this and re-download the DXv12 for Windows 7 runtime file before attempting to launch the game.

Here is a link to all of the log files and the submit issue json file:

Background Info:
Blizzard has pushed several D2:R PC patches over the last 3 weeks. I had a clean install of Lutris and Wine with the v6.19-GE runner that worked, on Manjaro KDE, but the successive patches broke the installation. The v6.20-GE runner does not fix the problem, nor does the HansKristian work around. I tested the v6.19-GE and v6.20-GE runners with the v5.13.19-2 and v5.14.10-1 kernels without success. The Lutris System v6.16 Staging runner does not work either.

Any advice, suggestions, workarounds would be greatly appreciated.

A user on reddit suggested that the issue is with a Nvidia driver bug. He suggested I run this before starting the game:
sudo nvidia-modprobe -u -c=0

This works. I went on to test D2R on Lutris on Pop_OS v21.04, Linux Mint v20.2, and Manjaro Cinnamon v21.1.6. My current setup where the problem was first encountered is Manjaro KDE 21.1.6. Manjaro KDE and Cinnamon currently use a v470.63 Nvidia driver. Pop_OS and Linux Mint use a v470.82 driver. Pop_OS and Linux Mint work without needing the command string above. Both Manjaro versions require the command string to work.

Reddit thread link: