Warcraft III in Gentoo

From Elvanör's Technical Wiki
Jump to navigation Jump to search

This is a tutorial to get Warcraft III: The Frozen Throne working almost perfectly in Gentoo (or other Linux based systems). Battle.net works, speed is excellent, graphics are fine, sound is OK - the only thing missing is support for the in-game movies.

Installing and Updating

  • Install Wine. I recommend a really recent version - 0.9.45 or later. Wine support for Warcraft has improved tremendously over the monthes - using an old version of Wine is likely to get you into trouble.
  • Install Warcraft III and The Frozen Throne from the original CDs or from ISO images. Do not copy an existing Windows installation - this may seem to work, but in my case I had problems later while playing the game (it actually *froze* my whole Linux system which is the first time such a thing happened to me! I am not 100% sure this is because of the copying of an Warcraft 3 Windows installation - but better not to take chance).
  • Download manually from Blizzard site the latest update patch. You cannot run the automatic update from Battle.net. Then run it from Wine - it will update your installation without any problems.

Wine Configuration

  • I recommend using OpenGL and ALSA while playing Warcraft III, however be sure to get a recent version of Wine as older versions did not support ALSA well enough.
  • With recent Wine versions (1.1.35 and later), make sure you build Wine with the gnutls USE flag, else Warcraft 3 Battle.net won't work.

Warcraft Configuration

No-CD Crack

  • A no-cd crack is no longer needed since with recent Blizzard patches the CD is no longer needed.

Old information

  • First notice that you can play with the original CD: Wine supports the CD protection mechanism used.
  • However, since having the official CD in the drive all the time is such a pain, the use of a no-cd crack is recommended. You need to find and download a Windows crack (easy), then copy the cracked .exe to the Warcraft III directory, renaming it to "war3_cracked.exe". Rename the original (updated) .exe to "war3_orig.exe".
  • Then install the following file somewhere and chmod +x it. It requires that Python is installed on your Linux system which is most probably the case already. In case you are wondering, this is a script to switch between the cracked and original versions of the war3.exe, in order to fool the stupid protection test that Blizzard added to their Battle.net servers.
#! /usr/bin/python

warcraft3_dir = "/path/to/war3/directory/Program Files/Warcraft III/"

import os
import time

os.chdir(warcraft3_dir)

os.remove("war3.exe")
os.symlink("war3_cracked.exe", "war3.exe")

os.spawnl(os.P_NOWAIT, "/usr/bin/wine", "War3", "Frozen Throne.exe", "-opengl")

time.sleep(4)

os.remove("war3.exe")
os.symlink("war3_orig.exe", "war3.exe")