
2026/09/17: WIP
Prerequisites
Install
Initial Prefix
mkdir -p ~/'.wine' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' WINEARCH='win32' wine wineboot --init && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' winecfg /v 'win98' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\DllOverrides' /v 'winemenubuilder.exe' /t 'REG_SZ' /d '' /f
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\Drivers' /v 'Graphics' /t 'REG_SZ' /d 'x11' /f
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG ADD 'HKEY_CURRENT_USER\Software\Wine\Direct3D' /v 'renderer' /t 'REG_SZ' /d 'gl' /f
Reign of Chaos
Disc Mount
udisksctl loop-setup --file ~/'Downloads/Warcraft III/Warcraft 3 Reign of Chaos.iso'
udisksctl mount --block-device '/dev/loop0'
ln -s -f '/run/media/'$USER'/WoW-1.0.1.3989-eNUS' ~/'.wine/World of Warcraft 3.3.5/dosdevices/y:'
Install
Default install directory
1)
WINEPREFIX=~/'.wine/World of Warcraft 3.3.5' wine 'Y:\Installer.exe'
Disc Unmount
umount '/run/media/'$USER'/WoW-1.0.1.3989-eNUS'
udisksctl loop-delete --block-device '/dev/loop0'
rm -f ~/'.wine/World of Warcraft 3.3.5/dosdevices/y:'
The Frozen Throne
Disc Mount
udisksctl loop-setup --file ~/'Downloads/WoW (localhost)/TBC 2.4.3.8606/WoW-2.0.0.6080-enUS-expansion.iso'
udisksctl mount --block-device '/dev/loop0'
ln -s -f '/run/media/'$USER'/WoW-2.0.0.6080-eNUS-EXPANSION' ~/'.wine/World of Warcraft 3.3.5/dosdevices/x:'
Install
WINEPREFIX=~/'.wine/World of Warcraft 3.3.5' winecfg /v 'win2k' && WINEPREFIX=~/'.wine/World of Warcraft 3.3.5' wine 'X:\Installer.exe'
Disc Unmount
umount '/run/media/'$USER'/WoW-2.0.0.6080-eNUS-EXPANSION'
udisksctl loop-delete --block-device '/dev/loop0'
rm -f ~/'.wine/World of Warcraft 3.3.5/dosdevices/x:'
Patch
WINEPREFIX=~/'.wine/World of Warcraft 3.3.5' wine ~/'Downloads/WoW (localhost)/TBC 2.4.3.8606/wow-2.4.0-enus-patch.exe'
Clean-up
rm -f ~/'Downloads/D2Patch_106b.exe' ~/'Downloads/prepatch.log'
Scripts
Save Data Back-up
mkdir -p ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/scripts' && nano ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/scripts/save-backup.sh' && chmod +x ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/scripts/save-backup.sh'
#!/bin/bash
cd '/tmp'
tar -czf ~/'Downloads/'$(date +%Y-%m-%d-%s)'-Diablo-2-Classic-Saves.tar.gz' -C ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II' 'save'
zenity --title 'Diablo II Save Backup' --text 'Save Data Backed-up to Downloads' --icon ~/'.wine/Icons/D2-32.ico' --timeout '1' --info
# End
~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/scripts/save-backup.sh'
Settings
Registry
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG ADD 'HKEY_CURRENT_USER\SOFTWARE\Blizzard Entertainment\Warcraft III\Video' /v 'lockfb' /t 'REG_DWORD' /d '0' /f
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG ADD 'HKEY_CURRENT_USER\SOFTWARE\Blizzard Entertainment\Warcraft III\Video' /v 'refreshrate' /t 'REG_DWORD' /d '79' /f
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG ADD 'HKEY_CURRENT_USER\SOFTWARE\Blizzard Entertainment\Warcraft III\Video' /v 'cinematicrefresh' /t 'REG_DWORD' /d '79' /f
Glide Wrapper
nGlide
Video backend: DirectX
Screen resolution: By desktop
Aspect ratio: Aspect correction
Refresh rate: By desktop
Vertical synchronization: Off
Gamma correction: 1.0 (Default)
3Dfx logo splash screen: Off
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/windows/syswow64/nglide_config.exe'
Reset Settings
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine REG DELETE 'HKEY_CURRENT_USER\Software\Zeus Software\nGlide2' /f
Diablo II
cd ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/Game.exe' -w
Desktop Launcher
Warcraft III (1.26a)
mkdir -p ~/'.local/share/applications/wine/Programs/Diablo II' && nano ~/'.local/share/applications/wine/Programs/Diablo II/Warcraft III (1.26a).desktop' && sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/wine/Programs/Diablo II/Warcraft III (1.26a).desktop' && update-desktop-database --quiet ~/'.local/share/applications'
[Desktop Entry]
Name=Warcraft III (1.26a)
Categories=Game;
Exec='/bin/bash' -c "cd ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/Game.exe' -3dfx"
Type=Application
StartupNotify=false
Icon=/home/CHANGEME/.wine/Icons/D2-32.ico
StartupWMClass=game.exe
Actions=Screenshots;Window;Saves;Kill;Glide;Root;Notes;
[Desktop Action Screenshots]
Exec='/bin/bash' -c "loupe ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/Screenshot'*'.jpg'"
Name=Screenshots
[Desktop Action Window]
Exec='/bin/bash' -c "cd ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/Game.exe' -w"
Name=Diablo II (Windowed)
[Desktop Action Saves]
Exec='/bin/bash' -c "~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/scripts/save-backup.sh'"
Name=Save Data Back-up
[Desktop Action Kill]
Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wineserver -k"
Name=Force-close Diablo II
[Desktop Action Glide]
Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/windows/syswow64/nglide_config.exe'"
Name=nGlide Configuration
[Desktop Action Root]
Exec='/bin/bash' -c "gio open ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II'"
Name=Root Folder
[Desktop Action Notes]
Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/games:linux:wine:diablo_2_classic_1.06b'"
Name=Install Notes
# End
Icon
mkdir -p ~/'.wine/Icons' && wrestool --output=$HOME/'.wine/Icons/D2-32.ico' --extract --type='14' ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/Game.exe'
Quick Commands
Winecfg
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' winecfg
Winetricks
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' winetricks
Registry Editor
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' regedit
Kill
WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wineserver --kill
killall -9 'Game.exe'
Execute
TFT
cd ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files/Warcraft III' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files/Warcraft III/war3.exe' -opengl
Windowed
cd ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files/Warcraft III' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files/Warcraft III/war3.exe' -opengl -window
Video Test
cd ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II' && WINEPREFIX=~/'.wine/Warcraft III (1.26a)' wine ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/D2VidTst.exe'
Save Data
Backup
tar -czvf ~/'Downloads/'$(date +%Y-%m-%d-%s)'-Diablo-2-Classic-Saves.tar.gz' -C ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II' 'save'
Restore
save/Espionage.d2s
save/Espionage.key
save/Espionage.ma0
save/Espionage.ma1
save/Espionage.ma2
save/Espionage.ma3
save/Espionage.map
mkdir -p ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/save' && gio open ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II/save'
Root Folder
gio open ~/'.wine/Warcraft III (1.26a)/drive_c/Program Files (x86)/Diablo II'