User Tools

Site Tools


games: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

Battle.net Client Broken

  • :!: 2023/12: See notes
  • These notes still mostly work but will require undocumented tricks to navigate the Battle.net client, and it might not be possible to clean-install games in this state

Install

Battle.net App

  • Install to default directory when prompted 6)
  • Log-in
  • Change Battle.net App settings 7)
  • 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 8)
  • 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)
until the notes are re-added to this main page, assume the commands may need refactored in 2024+
6)
C:/Program Files (x86)/Battle.net
7)
don't auto-start, exit on game launch
8)
Locate the game may not work; the install process will detect the existing data files, fail, and install with the Update process
9) , 10)
need to be signed into GitHub, and select the latest master artifacts package
/var/www/wiki/data/pages/games/wine/diablo_2_resurrected.txt · Last modified: 2024/02/08 18:29 by Sean Rhone