User Tools

Site Tools


games:linux:wine:diablo_2_resurrected

Information

Prerequisites

Notes

  • This is the modern client that has enhanced graphics and requires the Battle.net client; see Diablo II for the original version
  • 2023/09/14: Resurrected graphics has too-low of FPS on Intel UHD 630; switch to Legacy graphics in-game 3) by pressing G
  • :!: Using a game controller requires the hardware specs to run Resurrected graphics at reasonable framerates, even if switched to Legacy graphics 4)
  • :!: When directly-launching D2R.exe with -username and -password, if the Battle.net account or the system flags you for captchas, log-in isn't possible

Install

Battle.net App

  • Install to default directory when prompted 5)
  • Log-in
  • Change Battle.net App settings 6)
  • Close
mkdir -p ~/'.wine' && wget 'https://us.battle.net/download/getInstaller?os=win&installer=Battle.net-Setup.exe&id=undefined' -O ~/'Downloads/Battle.net-Setup.exe' && WINEPREFIX=~/'.wine/Diablo II Resurrected' WINEARCH='win64' wine ~/'Downloads/Battle.net-Setup.exe'

Restore Data

mv ~/'Downloads/Diablo II Resurrected' ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)' && sync

Diablo II Resurrected

  • Install Diablo II Resurrected 7)
  • TODO: Test if Locate game works; this seems to have been improved on Windows
cd ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net' && WINEPREFIX=~/'.wine/Diablo II Resurrected' wine ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe'

Clean Up

rm -f ~/'Downloads/Battle.net-Setup.exe' ~/'Desktop/Battle.net.desktop' ~/'Desktop/Diablo II Resurrected.desktop' && cd ~ && sync

Libraries

DXVK

  • Provides DXGI for vkd3d-proton
  • Since D2R can only use D3D12 and thus vkd3d-proton, there's no need for DXVK's cache folder
  • TODO: Add DXVK's cache folder as the Battle.net client probably uses it anyway
ls ~/'Downloads/dxvk-master-'*'.zip' && rm -Rf '/tmp/dxvk-master' && mkdir -p '/tmp/dxvk-master' && unzip ~/'Downloads/dxvk-master-'*'.zip' -d '/tmp/dxvk-master/' && cp --backup '/tmp/dxvk-master/x64/'*'.dll' ~/'.wine/Diablo II Resurrected/drive_c/windows/system32/' && cp --backup '/tmp/dxvk-master/x32/'*'.dll' ~/'.wine/Diablo II Resurrected/drive_c/windows/syswow64/' && WINEPREFIX=~/'.wine/Diablo II Resurrected' winetricks 'd3d9=native' 'd3d10core=native' 'd3d11=native' 'dxgi=native' && sync

vkd3d-proton

ls ~/'Downloads/vkd3d-proton-master-'*'.zip' && rm -Rf '/tmp/vkd3d-proton-master' && mkdir -p '/tmp/vkd3d-proton-master' && unzip ~/'Downloads/vkd3d-proton-master-'*'.zip' -d '/tmp/vkd3d-proton-master/' && cp --backup '/tmp/vkd3d-proton-master/x64/'*'.dll' ~/'.wine/Diablo II Resurrected/drive_c/windows/system32/' && cp --backup '/tmp/vkd3d-proton-master/x86/'*'.dll' ~/'.wine/Diablo II Resurrected/drive_c/windows/syswow64/' && WINEPREFIX=~/'.wine/Diablo II Resurrected' winetricks 'd3d12=native' 'd3d12core=native' && mkdir -p ~/'.wine/Diablo II Resurrected/vkd3d_shader_cache' && sync

Desktop Launcher

Initial

rm -Rf ~/'.local/share/applications/wine/Programs/Battle.net' ~/'.local/share/applications/wine/Programs/Diablo II Resurrected' && mkdir -p ~/'.local/share/applications/wine/Programs/Diablo II Resurrected'

Diablo II Resurrected (Battle.net App)

  • :!: The direct-launch option requires modifying and specifying a Battle.net account email and password
  • TODO: Check for offline flag(s) and add separate direct launch option (source 1, source 2)
nano ~/'.local/share/applications/wine/Programs/Diablo II Resurrected/Diablo II Resurrected.desktop'
[Desktop Entry]
Name=Diablo II: Resurrected
Categories=Game;AdventureGame;RolePlaying
Exec='/bin/bash' -c "cd ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II Resurrected' VKD3D_SHADER_CACHE_PATH=~/'.wine/Diablo II Resurrected/vkd3d_shader_cache' WINEPREFIX=~/'.wine/Diablo II Resurrected' wine ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/Diablo II Resurrected Launcher.exe'"
Type=Application
StartupNotify=true
Icon=B271_Diablo II Resurrected Launcher.0
StartupWMClass=d2r.exe
Actions=Cache;Kill;Notes;Direct;

[Desktop Action Cache]
Exec='/bin/bash' -c "rm -Rf ~/'.wine/Diablo II Resurrected/mesa_shader_cache/'* ~/'.wine/Diablo II Resurrected/vkd3d_shader_cache/'* && sync && notify-send 'The Diablo II Resurrected cache has been cleaned.'"
Name=Cache Cleanup

[Desktop Action Kill]
Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Diablo II Resurrected' wineserver --kill"
Name=Force-close

[Desktop Action Notes]
StartupNotify=false
Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/games:wine:diablo_2_resurrected'"
Name=Installation Notes

[Desktop Action Direct]
StartupNotify=false
Exec='/bin/bash' -c "cd ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II Resurrected' VKD3D_SHADER_CACHE_PATH=~/'.wine/Diablo II Resurrected/vkd3d_shader_cache' WINEPREFIX=~/'.wine/Diablo II Resurrected' wine ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/D2R.exe' -username espionage724@x -password x"
Name=Launch D2R without Battle.net

# End

Quick Commands

Winecfg

WINEPREFIX=~/'.wine/Diablo II Resurrected' winecfg

Winetricks

WINEPREFIX=~/'.wine/Diablo II Resurrected' winetricks

Registry Editor

WINEPREFIX=~/'.wine/Diablo II Resurrected' regedit

Kill

WINEPREFIX=~/'.wine/Diablo II Resurrected' wineserver --kill

Execute

Battle.net App

  • Battle.net Launcher.exe
cd ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II Resurrected' VKD3D_SHADER_CACHE_PATH=~/'.wine/Diablo II Resurrected/vkd3d_shader_cache' WINEPREFIX=~/'.wine/Diablo II Resurrected' WINEDEBUG='' wine ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe'

Diablo II Resurrected (Battle.net App)

  • Diablo II Resurrected Launcher.exe
cd ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II Resurrected' VKD3D_SHADER_CACHE_PATH=~/'.wine/Diablo II Resurrected/vkd3d_shader_cache' WINEPREFIX=~/'.wine/Diablo II Resurrected' WINEDEBUG='' wine ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/Diablo II Resurrected Launcher.exe'

Diablo II Resurrected

  • D2R.exe
  • Useful for quick graphical testing as this bypasses Battle.net launcher and boots D2R directly
  • :!: This may fail to load online characters occasionally
  • TODO: -username, -password, and other options (source 1, source 2)
cd ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II Resurrected' VKD3D_SHADER_CACHE_PATH=~/'.wine/Diablo II Resurrected/vkd3d_shader_cache' WINEPREFIX=~/'.wine/Diablo II Resurrected' WINEDEBUG='' wine ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/D2R.exe'

File Manager

Root

gio open ~/'.wine/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected'

Saves

gio open ~/'.wine/Diablo II Resurrected/drive_c/users/'$USER'/Saved Games/Diablo II Resurrected'
3)
actual in-game and not main menu
4)
presumably Resurrected assets need to be running for the controller mappings and UI being done by the game engine
5)
C:/Program Files (x86)/Battle.net
6)
don't auto-start, exit on game launch
7)
Locate the game may not work; the install process will detect the existing data files, fail, and install with the Update process
8) , 9)
need to be signed into GitHub, and select the latest master artifacts package
/var/www/wiki/data/pages/games/linux/wine/diablo_2_resurrected.txt · Last modified: by 127.0.0.1