World of Warcraft

From ArchWiki
Revision as of 21:51, 18 April 2006 by Shadowhand (talk | contribs) (Running World of Warcraft)
Jump to: navigation, search


Tango-document-new.pngThis article is a stub.Tango-document-new.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:World of Warcraft#)

World of Warcraft is a Massive Multiplayer Online Role-Playing Game (MMORPG) by Blizzard Entertainment taking place in the fictional world of Azeroth; The world that previous Blizzard titles in the real-time strategy Warcraft game series has presented to the players.

This article will describe how to get it runing on Arch Linux, even though it's a Windows (Win32) game.

This requires an active World of Warcraft account and install CDs or working Windows World of Warcraft installation.

Introduction

As Blizzard so kindly also shipped World of Warcraft with OpenGL support, we don't need Transgaming's Cedega software (which is a implementation of the Microsoft DirectX libraries). Basically, we just need a out-of-the-box wine installation and run WoW with opengl

NOTE: You may experience issues when installing patches if you use the stock wine package. If you have issues, install wine-cvs from Shadowhand's repository, as it has been patched to deal with this specific issue.

Installation

You can copy a working install of World of Warcraft from a windows partition or follow the instructions at this site: http://gentoo-wiki.com/HOWTO_Install_and_update_World_Of_Warcraft_with_wine#Normal_CD_Installation

Please note you will need wine installed in order to run the install program. Refer to the instructions later in this article to install wine, the article linked above describes installing wine in Gentoo, which is different from Archlinux.

Post-Installation Tasks

Updating World of Warcraft

I had WoW already installed and patched on a Windows machine, so I simply copied the WoW folder to my Linux system to save me some time.

No sound

Edit /path to your World of Warcraft folder/WTF/Config.wtf and add or change:

SET SoundOutputSystem "1"
SET SoundBufferSize "100"

OK, I have sound, but it's all crappy

I solved this by running

# winecfg

In the "Audio" tab, selected OSS as the sound driver, using "Standard" hardware acceleration and driver emulation enabled.

Running World of Warcraft

After patching and installing the wine package (see further down on this page) and fixed the sound, run the following command to play WoW:

 # wine "C:\\Program Files\\World of Warcraft\\WoW.exe" -opengl

There was a bug that would prevent targetting circles from appearing below targeted mobs/players/NPCs, this bug was fixed by blizzard in patch 1.9. Any wine patches to correct the "Targeting circle bug" are no longer needed, and may cause graphics to display improperly.

Installing Wine

As said above, you need Wine. There are several ways to install Wine in Archlinux, you can install a precompiled version from Shadowhand's repository, or compile wine manually using makepkg. The standard wine package provided by pacman will not work with World of Warcraft due to graphical issues. There is a specially compiled version of wine provided by Shadowhand. If you choose to compile wine, you will need to patch it manually, this is described later.


Installing from Shadowhand's repository:

In order to install wine from Shadowhands repository, you will need to edit /etc/pacman.conf and add the following line:

[shadowhand]
Server = http://arch.os-zen.net/pkg/shadowhand

As described here.

Once the repository in enabled, run these commands as root:

pacman -Sy
pacman -S wine-cvs

This will replace any existing copies of wine.


Compiling wine from source:

This is an old section, it still needs to be updated. The recent versions of wine will not work with the patch below. If you wish to compile wine manually, use the files provided here.


First, we need the wine package from ArchLinux, which we get by running:

# pacman -Sy cvsup
# abs

Then begin the creation of the new custom wine package.

# cd /var/abs/local
# mkdir wine
# cd wine
# cp ../../extra/x11/wine/PKGBUILD ../../extra/x11/wine/wine.install .

Now we need the patch,

0.9.4 Patch can be found at Wine-0.9.4-wow_fixes.patch

Before we edit the PKGBUILD, get the md5 sums for the Wine 0.9.4 WoW Patch.

# md5sum wine-0.9.4-wow_fixes.patch
# 15bbfc8b6e205406c16d99fa39b05cd4  wine-0.9.4-wow_fixes.patch

What you need to modify in your PKGBUILD (as we copied it from the ArchLinux abs tree) is the source & md5sums variables.

The following edited PKGBUILD is based on the 0.9.4-1 package.

# $Id: PKGBUILD,v 1.4 2005/12/23 18:51:45 dale Exp $
# Maintainer: judd <jvinet@zeroflux.org>
# Contributor: Matt Smith (Majik) <darkknight@helpdesk.zaz.net>
pkgname=wine
pkgver=0.9.4
# ugh, have to use the force switch to work around the version format
# change -- remove the force switch after an upgrade or two
force=y
pkgrel=1
pkgdesc="Emulator of the Windows 3.x and Win32 APIs"
url="http://www.winehq.com"
depends=('x-server' 'libjpeg' 'libungif' 'alsa-lib' 'glut' 'arts' 'openldap' 'libxslt' 'lcms')
makedepends=('alsa-lib')
install=wine.install
source=(http://ibiblio.org/pub/linux/system/emulators/wine/wine-$pkgver.tar.bz2 
wine-0.9.4-wow_fixes.patch)
md5sums=('73205d83a5612a43441a8532683c0434' \ '15bbfc8b6e205406c16d99fa39b05cd4')

build() {
  cd $startdir/src/$pkgname-$pkgver
  ./configure --prefix=/usr --sysconfdir=/etc --enable-opengl --with-x
  make depend
  make || return 1
  make prefix=$startdir/pkg/usr install
  # conflicts with textutils
  rm -f $startdir/pkg/usr/bin/expand
  mkdir -p $startdir/pkg/etc/wine
  mkdir -p $startdir/pkg/etc/profile.d
  #cp -r $startdir/src/$pkgname-$pkgver/documentation/samples $startdir/pkg/etc/wine
}

Now we run:

# makepkg

After the makepkg completes, if you have a previous installation of wine, best to remove it prior to installing the new patched version.

# pacman -R wine

Then to install the new patched version. For the above package build the final patched version of the file is wine-0.9.4-1.pkg.tar.gz. So to install, we use the following command.

# pacman -A wine-0.9.4-1.pkg.tar.gz

After this command completes, you have a 0.9.4-1 Wine patched for World of Warcraft installed!