Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision |
games:wine:diablo_2 [2023/09/10 16:12] – [Lord of Destruction] Sean Rhone | games:wine:diablo_2 [2024/03/03 19:33] – Sean Rhone |
---|
===== Prerequisites ===== | ===== Prerequisites ===== |
| |
* [[distros:opensuse_tumbleweed_gnome|openSUSE Tumbleweed]] | * [[distros:fedora_workstation_gnome|Fedora Workstation (GNOME)]] |
* [[notes:wine|Wine]] | * [[notes:wine|Wine]] |
| |
| |
* **Lord of Destruction** is not standalone and requires **Diablo II** | * **Lord of Destruction** is not standalone and requires **Diablo II** |
| * This is the original client with CD keys and TCP/IP multiplayer; see [[games:wine:diablo_2_resurrected|Diablo II: Resurrected]] for the modern version |
====== Uninstall ====== | |
| |
**** | |
| |
rm -Rf ~/'.wine/Diablo II' ~/'.local/share/applications/wine/Programs/Diablo II/Diablo II: Lord of Destruction.desktop' ~/'.local/share/icons/hicolor/'*'/apps/CFF8_Diablo II.0.png' && sync | |
| |
====== Install ====== | ====== Install ====== |
**** | **** |
| |
mkdir -p ~/'.wine' && WINEPREFIX=~/'.wine/Diablo II' WINEARCH='win32' wine ~/'Downloads/Diablo II/D2-1.14b-Installer-enUS/Installer.exe' | mkdir -p ~/'.wine' && WINEPREFIX=~/'.wine/Diablo II' WINEARCH='win32' winetricks 'winxp' && sync && PULSE_LATENCY_MSEC='400' WINEDEBUG='' WINEPREFIX=~/'.wine/Diablo II' wine ~/'Downloads/Diablo II/D2-1.14b-Installer-enUS/Installer.exe' |
| |
===== Lord of Destruction ===== | ===== Lord of Destruction ===== |
**** | **** |
| |
sync && WINEPREFIX=~/'.wine/Diablo II' wine ~/'Downloads/Diablo II/D2LOD-1.14b-Installer-enUS/Installer.exe' | sync && PULSE_LATENCY_MSEC='400' WINEDEBUG='' WINEPREFIX=~/'.wine/Diablo II' wine ~/'Downloads/Diablo II/D2LOD-1.14b-Installer-enUS/Installer.exe' |
| |
===== Patch ===== | ===== Patch ===== |
* 1.14d | * 1.14d |
| |
sync && WINEPREFIX=~/'.wine/Diablo II' wine ~/'Downloads/Diablo II/LODPatch_114d.exe' | sync && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' WINEDEBUG='' WINEPREFIX=~/'.wine/Diablo II' wine ~/'Downloads/Diablo II/LODPatch_114d.exe' |
| |
===== Glide Wrapper ===== | ===== Glide Wrapper ===== |
| |
* The following command expects ''gl32ogl14e.zip'' to exist at http://www.svenswrapper.de/gl32ogl14e.zip | * TODO: Local file commands like above |
* Check http://www.svenswrapper.de/english/downloads.html for new versions | |
| ==== Online ==== |
| |
| * The following command expects ''gl32ogl14e.zip'' (1.4e) to exist at http://www.svenswrapper.de/gl32ogl14e.zip |
| |
wget -O '/tmp/gl32ogl14e.zip' 'http://www.svenswrapper.de/gl32ogl14e.zip' && unzip '/tmp/gl32ogl14e.zip' 'glide3x.dll' 'glide-init.exe' -d ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && rm -f '/tmp/gl32ogl14e.zip' && sync | wget -O '/tmp/gl32ogl14e.zip' 'http://www.svenswrapper.de/gl32ogl14e.zip' && unzip '/tmp/gl32ogl14e.zip' 'glide3x.dll' 'glide-init.exe' -d ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && rm -f '/tmp/gl32ogl14e.zip' && sync |
| |
====== Glide Wrapper ====== | ====== Glide Wrapper ====== |
| |
| * 2024/01/02: Intel UHD 630 with Zink required ''WGL_EXT_swap_control'' unchecked to avoid a blackscreen during the test |
| |
* Hauptmenu -> Deutsch/English | * Hauptmenu -> Deutsch/English |
* Quit | * Quit |
| |
cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/glide-init.exe' | cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/glide-init.exe' |
| |
| ===== Zink ===== |
| |
| **** |
| |
| cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' WINEPREFIX=~/'.wine/Diablo II' MESA_LOADER_DRIVER_OVERRIDE='zink' MESA_VK_WSI_PRESENT_MODE='immediate' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/glide-init.exe' |
| |
===== Reset Settings ===== | ===== Reset Settings ===== |
===== Notes ===== | ===== Notes ===== |
| |
* If ''EXAVSync'' is enabled on the radeon Xorg DDX driver, the Test starts out at 60 FPS and then drops to 30 FPS after a few seconds; I don't believe the FPS drop happens in-game however, but it'd be better to leave ''EXAVSync'' disabled (default) unless it's required | * ''WGL_ARB_render_texture'' seems to work ((or at the very least, doesn't outright cause a crash)) but querying OpenGL info causes the extension to not be available. If enabled, it presents a ''X11DRV_wglBindTexImageARB'' partial stub fixme in Terminal, but other than that, it seems to work fine and allows supersampling to be enabled under renderer settings which does make D2 look a little bit sharper |
* ''WGL_ARB_render_texture'' seems to work((or at the very least, doesn't outright cause a crash)) but querying OpenGL info causes the extension to not be available. If enabled, it presents a ''X11DRV_wglBindTexImageARB'' partial stub fixme in Terminal, but other than that, it seems to work fine and allows supersampling to be enabled under renderer settings which does make D2 look a little bit sharper | |
* **captured mouse** enabled is required to prevent the cursor from "going offscreen" on the right-side of the D2 window | * **captured mouse** enabled is required to prevent the cursor from "going offscreen" on the right-side of the D2 window |
* **keep desktop composition** prevents dwmapi-related stub/fixme errors from appearing; I don't believe it has any actual visible effect either way | * **keep desktop composition** prevents dwmapi-related stub/fixme errors from appearing; I don't believe it has any actual visible effect either way |
* When using Intel UHD 630 graphics, using Iris/Gallum driver and disabling Vsync provides the highest and most-consistent FPS above 144 | |
| |
====== Desktop Launcher ====== | ====== Desktop Launcher ====== |
[Desktop Entry] | [Desktop Entry] |
Name=Diablo II: Lord of Destruction | Name=Diablo II: Lord of Destruction |
Comment=Diablo, the Lord of Terror, has fallen to a brave hero beneath the church of Tristram. Now that hero is gone, replaced by a Dark Wanderer who roams the world of Sanctuary leaving death and destruction in his wake. As a hero of humanity, you must face the minions of Diablo’s evil brothers and stop the Dark Wanderer before he fulfills his terrible destiny. The expansion to Diablo II adds a host of new features to the game, including two new playable classes – the shapeshifting Druid and the cunning Assassin. Explore the snowy homeland of the Barbarians, face fiendish new monsters, and arm yourself with thousands of new weapons, armor, and magical items in the fight against Baal, the last of the Prime Evils. | |
Categories=Game;AdventureGame;RolePlaying | Categories=Game;AdventureGame;RolePlaying |
Exec='/bin/bash' -c "cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/Diablo II.exe' -3dfx" | Exec='/bin/bash' -c "cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/Diablo II.exe' -3dfx" |
Type=Application | Type=Application |
StartupNotify=true | StartupNotify=true |
[Desktop Action Kill] | [Desktop Action Kill] |
Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Diablo II' wineserver --kill" | Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Diablo II' wineserver --kill" |
| Exec='/bin/killall' -9 'Game.exe' |
Name=Force-close Diablo II | Name=Force-close Diablo II |
| |
[Desktop Action Glide] | [Desktop Action Glide] |
Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/glide-init.exe'" | Exec='/bin/bash' -c "MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/glide-init.exe'" |
Name=Glide Wrapper Configuration | Name=Glide Wrapper Configuration |
| |
tar -cvzf ~/'Downloads/'$(date +%Y-%m-%d)'-manual-D2-Saves.tar.gz' -C ~/'.wine/Diablo II/drive_c/users/'$USER'/Saved Games' 'Diablo II' | tar -cvzf ~/'Downloads/'$(date +%Y-%m-%d)'-manual-D2-Saves.tar.gz' -C ~/'.wine/Diablo II/drive_c/users/'$USER'/Saved Games' 'Diablo II' |
sync | sync |
notify-send 'Diablo II save data has been successfully archived and placed in the Downloads folder.'</code> | notify-send 'Diablo II save data has been successfully archived and placed in the Downloads folder.' |
| |
| # End</code> |
| |
====== Quick Commands ====== | ====== Quick Commands ====== |
**** | **** |
| |
WINEPREFIX=~/'.wine/Diablo II' wineserver -k | WINEPREFIX=~/'.wine/Diablo II' wineserver --kill && killall -9 'Game.exe' |
| |
===== Execute ===== | ===== Execute ===== |
**** | **** |
| |
cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/Diablo II.exe' -3dfx | cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' WINEDEBUG='' WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/Diablo II.exe' -3dfx |
| |
| ==== Zink ==== |
| |
| **** |
| |
| cd ~/'.wine/Diablo II/drive_c/Program Files/Diablo II' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Diablo II' MESA_LOADER_DRIVER_OVERRIDE='zink' MESA_VK_WSI_PRESENT_MODE='immediate' WINEDEBUG='' WINEPREFIX=~/'.wine/Diablo II' wine ~/'.wine/Diablo II/drive_c/Program Files/Diablo II/Diablo II.exe' -3dfx |
| |
===== File Manager ===== | ===== File Manager ===== |