User Tools

Site Tools


games:wine:diablo_2_resurrected

This is an old revision of the document!


Information

  • Battle.net App 1)
  • Diablo II: Resurrected 2)
  • 64-bit

Prerequisites

Notes

  • 2022: Resurrected mode is unplayable performance-wise on Intel UHD Graphics 630, but it works fine in Legacy mode

Install

Battle.net App

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

Qt Fix

setfattr --remove='user.DOSATTRIB' ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net/Battle.net.'*'/platforms/qwindows.dll'

Restore Data

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

Diablo II Resurrected

  • Install Diablo II Resurrected 4)
cd ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net' && WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' WINEESYNC='0' wine ~/'Wine Prefixes/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

DXVK

Information

  • :!: This is expected to be used to provide DXGI for VKD3D-Proton

Download

Install

  • Since D2R can only use VKD3D, there's no need for DXVK's cache folder 5)
rm -rf '/tmp/dxvk-'* && cd '/tmp' && tar -xvzf ~/'Downloads/dxvk-'*'.tar.gz' && chmod +x '/tmp/dxvk-'*'/setup_dxvk.sh' && cd ~ && WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' '/tmp/dxvk-'*'/setup_dxvk.sh' install && rm -rf '/tmp/dxvk-'* && cd ~ && sync

VKD3D-Proton

Information

Download

Install

rm -Rf '/tmp/vkd3d-proton' && unzip -d '/tmp/vkd3d-proton' ~/'Downloads/vkd3d-proton-'*'.zip' && chmod +x '/tmp/vkd3d-proton/setup_vkd3d_proton.sh' && cd ~ && WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' '/tmp/vkd3d-proton/setup_vkd3d_proton.sh' install && rm -Rf '/tmp/vkd3d-proton' && cd ~ && sync

NVIDIA Libs

Information

  • This provides DLSS
  • :!: This requires an NVIDIA GPU (TODO: Look into FSR mod)

Download

Install

cd ~ && rm -rf ~/'Wine Prefixes/Diablo II Resurrected/nvidia-libs' && cd ~/'Wine Prefixes/Diablo II Resurrected' && tar --extract --xz --verbose --file ~/'Downloads/nvidia-libs-'*'.tar.xz' && chmod +x ~/'Wine Prefixes/Diablo II Resurrected/nvidia-libs/setup_nvlibs.sh' && cd ~ && WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' ~/'Wine Prefixes/Diablo II Resurrected/nvidia-libs/setup_nvlibs.sh' install && sync

Test

WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' wine ~/'Wine Prefixes/Diablo II Resurrected/nvidia-libs/bin/nvapi64-tests.exe'

NGX

cp --force --context '/usr/lib64/nvidia/wine/nvngx.dll' '/usr/lib64/nvidia/wine/_nvngx.dll' ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && sync

Windows 10

WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' winetricks 'win10'

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)

nano ~/'.local/share/applications/wine/Programs/Diablo II Resurrected/Diablo II Resurrected.desktop'
[Desktop Entry]
Name=Diablo II: Resurrected
Comment=Pursue the mysterious Dark Wanderer and fight the denizens of hell as you uncover the fate of the Prime Evils Diablo, Mephisto, and Baal.
Categories=Game
Exec=env MESA_SHADER_CACHE_DIR='/home/CHANGEME/Wine Prefixes/Diablo II Resurrected' VKD3D_SHADER_CACHE_PATH='/home/CHANGEME/Wine Prefixes/Diablo II Resurrected' __GL_SHADER_DISK_CACHE_PATH='/home/CHANGEME/Wine Prefixes/Diablo II Resurrected' WINEPREFIX='/home/CHANGEME/Wine Prefixes/Diablo II Resurrected' wine '/home/CHANGEME/Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/Diablo II Resurrected Launcher.exe'
Type=Application
StartupNotify=true
Path=/home/CHANGEME/Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected
Icon=B271_Diablo II Resurrected Launcher.0
Actions=Kill;Cache;

[Desktop Action Kill]
Exec=env WINEPREFIX='/home/CHANGEME/Wine Prefixes/Diablo II Resurrected' wineserver -k
Name=Force-close

[Desktop Action Cache]
Exec=bash -c "rm -Rf ~/'Wine Prefixes/Diablo II Resurrected/mesa_shader_cache' ~/'Wine Prefixes/Diablo II Resurrected/vkd3d-proton.cache' ~/'Wine Prefixes/Diablo II Resurrected/GLCache' ~/'Wine Prefixes/Diablo II Resurrected/drive_c/windows/temp/'* ~/'Wine Prefixes/Diablo II Resurrected/drive_c/users/'$USER'/Temp/'* && sync"
Name=Cache Clean-up
sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/wine/Programs/Diablo II Resurrected/Diablo II Resurrected.desktop'

Steam Launcher

  • Diablo II Resurrected (Battle.net App)
Diablo II: Resurrected
nano ~/'Wine Prefixes/Diablo II Resurrected/steam-launcher.sh' && chmod +x ~/'Wine Prefixes/Diablo II Resurrected/steam-launcher.sh'
#!/bin/bash

# Environment Variables
export MESA_SHADER_CACHE_DIR=~/'Wine Prefixes/Diablo II Resurrected'
export VKD3D_SHADER_CACHE_PATH=~/'Wine Prefixes/Diablo II Resurrected'
export __GL_SHADER_DISK_CACHE_PATH=~/'Wine Prefixes/Diablo II Resurrected'
export WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected'

# Working Directory
cd ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected'

# Launch
wine ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/Diablo II Resurrected Launcher.exe'

# End
Wine Prefixes/Diablo II Resurrected/steam-launcher.sh

Quick Commands

Winecfg

WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' winecfg

Winetricks

WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' winetricks

Registry Editor

WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' regedit

Kill

WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' wineserver -k

Test

killall 'Agent.exe' 'winedevice.exe' 'Diablo II Resur' 'start.exe' -signal 'SIGKILL' --wait

Execute

Battle.net App

cd ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net' && 
WINEESYNC='0' 
MANGOHUD='1' MANGOHUD_CONFIG='full,font_scale=2.0'
WINEDEBUG=''
WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' wine ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Battle.net/Battle.net Launcher.exe'

Diablo II Resurrected (Battle.net App)

cd ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && 
WINEESYNC='0' 
MANGOHUD='1' MANGOHUD_CONFIG='full,font_scale=2.0'
WINEDEBUG=''
WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' wine ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/Diablo II Resurrected Launcher.exe'

Diablo II Resurrected

  • Useful for quick graphical testing as this bypasses Battle.net launcher and boots D2R directly
  • :!: Occasionally this will fail to load online characters
cd ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected' && 
MANGOHUD='1' MANGOHUD_CONFIG='full,font_scale=2.0'
WINEDEBUG=''
WINEPREFIX=~/'Wine Prefixes/Diablo II Resurrected' wine ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected/D2R.exe'

File Manager

Root

gio open ~/'Wine Prefixes/Diablo II Resurrected/drive_c/Program Files (x86)/Diablo II Resurrected'

Saves

gio open ~/'Wine Prefixes/Diablo II Resurrected/drive_c/users/'$USER'/Saved Games/Diablo II Resurrected'
3)
C:/Program Files (x86)/Battle.net
4)
Locate the game does not work; the install process will detect the existing data files, fail, and install with the Update process
5)
if adapting for other games, get this syntax from somewhere else
/var/www/wiki/data/attic/games/wine/diablo_2_resurrected.1688917348.txt.gz · Last modified: 2023/07/09 11:42 by Sean Rhone