# Linux D2Loader v0.02b (any Diablo version) by hifi (Toni Spets) # additional fixes by Merl # # ChangeLog # v0.02b - Added Merl's fixes for slow computers: # call Game.exe instead Diablo II.exe # wait n seconds before linking back the original Game.exe # # removed that stupid loop when using dualhead # # v0.01 - Initial release # # Howto use: # 0. Install Wine (http://www.winehq.com) # 1. Install Diablo 2 with Wine # 1b. Optional: Update to Lord of Destruction # 2. Patch to v1.11b # 3. Go to your Diablo 2 directory # 3. Rename Game.exe to Game.exe.orig # 4. Download fixed Game.exe from e.g. GameBurnWorld # 5. Rename the fixed Game.exe to Game.exe.crk # 6. Make sure all paths and options below are correct # 7. Run this script and pray # #!/bin/bash GAME="Warcraft 3" # Diablo 2 options D2PATH="$HOME/.wine/drive_c/Program Files/Warcraft III/" D2OPTIONS="-opengl" # uncomment to enable #D2OPTIONS="-skiptobnet" EXE=war3.exe GAME_EXE_ORIG=$EXE.orig GAME_EXE_CRACKED=$EXE.cracked # you can find fixed exe for D2:LoD 1.11b from GameBurnWorld (cracked by DEViANCE) # wine and system options (e.g. wine or cvswine) WINE=wine # if the script fails because you have a slow computer, increase this value to wait up before linking back to the original Game.exe SLEEP_SECONDS=2 # dualhead hack (running windowed mode [see winecfg] with lower resolution) DUALHEAD=0 # ati powerstate switch ATI_POWER=1 # dualhead xrandr options NATIVE_RES=0 GAME_RES=1 ### ### DON'T CHANGE ANYTHING BELOW THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING ### echo echo "Linux $GAME Loader v0.02b by hifi (Toni Spets) hacked by Medha" echo if [ "$DUALHEAD" -eq 1 ]; then echo "Dualhead: Changing to game resolution..." xrandr -s $GAME_RES fi echo -n "Changing directory to $D2PATH..." OLD_DIR="$PWD" if [ ! -d "$D2PATH" ]; then echo " failed!" echo "Check your $GAME path!" exit else cd "$D2PATH" echo " ok" fi echo -n "Checking if user really renamed $EXE..." if [ ! -h "$EXE" ]; then if [ -e "$EXE" ]; then echo " no!" else echo " yes" fi else echo " yes" fi echo -n "Checking if there are original and cracked exe..." if [ -f "$GAME_EXE_ORIG" ]; then echo -n " $GAME_EXE_ORIG" else echo " no!" echo "Can't find original Game.exe: $GAME_EXE_ORIG" exit fi if [ -f "$GAME_EXE_CRACKED" ]; then echo " $GAME_EXE_CRACKED" else echo " no!" echo "Can't find cracked Game.exe: $GAME_EXE_CRACKED" exit fi echo -n "Using cracked exe to start Diablo 2..." rm -f $EXE cp $GAME_EXE_CRACKED $EXE if [ "$ATI_POWER" -eq 1 ]; then aticonfig --set-powerstate 3 fi $WINE $EXE $D2OPTIONS &> game.log.wine & D2PID=$! echo " done" echo -n "Waiting $SLEEP_SECONDS seconds before linking the original $EXE back..." sleep $SLEEP_SECONDS echo " done" echo "Quickly changing back to real Game.exe" rm -f $EXE cp $GAME_EXE_ORIG $EXE echo echo "/////////////////////////////////" echo "You may now connect to Battle.Net" echo "/////////////////////////////////" echo echo -n "Waiting for Diablo 2 to exit..." wait $D2PID echo " done" if [ "$DUALHEAD" -eq 1 ]; then echo "Dualhead: Reseting resolution" xrandr -s $NATIVE_RES fi if [ "$ATI_POWER" -eq 1 ]; then aticonfig --set-powerstate 1 fi cd "$OLD_DIR" # EOF