Monday, January 18, 2010

Running World of Warcraft in Ubuntu Linux

World of Warcraft runs well in Ubuntu.

If you are looking for an operating system that offers the best values, none can compare to Linux.

First of all, it's free. Most Linux distributions can be downloaded gratis from the developers' Web site and you can install it on however many computers you want. Secondly, it comes with a lot of things, such as office tools (word processing, spreadsheet, presentation), audio and video playback, Internet and e-mail, instant messaging, and so on. Basically everything a general user would want to use with a computer is there when the installation is done. For those applications that are not there, chances are you can download them for free.

Wine is more than just an emulator; it makes Windows applications run in Linux much like they do in Wndows.

There's also a Linux application called Wine that allows you to run Windows software within Linux. What is special about Wine, however, is the fact that it's not a traditional virtual environment and therefore runs Windows applications very much the way Windows does, without much overhead. Unfortunately, not all Windows applications work with Wine and even if they do, you might not be able to install or run them the way you do in Windows.

Wine, which was developed in 1993, is a recursive acronym for "Wine Is Not an Emulator," though this doesn't make it true that it is not an emulator. Rather than acting as a full emulator, it implements a compatibility layer, providing alternative implementations of the DLLs that Windows programs call, and processes to substitute for the Windows NT kernel. The Wine project has run into a lot of difficulties, mostly because of the incomplete and incorrect documentation of the Windows API. For this reason, after 15 years of development, the first version of Wine (1.0) was release in mid-2008.

Over my Christmas break, I decided to try out the latest version of Wine with my most frequently used Windows application, which is called World of Warcraft (or WoW). Just so that it's clear that I am not antisocial, this didn't take away much time spending with friends and family, as it actually took me less than an hour to do the whole thing.

I started out with getting an ISO image of the ever-popular Linux distro Ubuntu version 9.10. After that, I burned the image onto a CD and started the installation from it.

If you have ever installed an operating system, such as Windows, the installation of Ubuntu is very similar to that. You just need to insert the CD into the optical drive, boot the computer from it, and follow the instructions. The installer will do everything for you, including configuring the hard drive and setting up dual-boot if you want to use it on the same computer that also has Windows installed. In this case, make sure you pick the amount of hard-drive space you want to use for Linux carefully, as this can't be changed once the new OS is installed.

You need to launch the Windows executable file using Wine Windows Program Loader to run a Windows-based application within Linux.

Note that in case there's no free space on the hard drive, the Linux installer will automatically shrink the partition used by Windows and free some space for Linux. This process, apart from making the Windows partition smaller, doesn't change anything else and your Windows should work like normal. However, a good rule of thumb is to make sure you back up important files prior to installing Linux.

In my case, I installed Ubuntu 9.10 on the same Core 2 Dual machine with 4GB of RAM and a 500GB hard drive that runs Windows 7 into a dual-boot setup and the whole process took less than 30 minutes. After that, at boot up, I have the option of booting in either Windows 7 or Ubuntu.

Once the installation is done, though Ubuntu runs fine, chances are not all the hardware components, such as video or sound, have their optimized drivers installed. You need to manually do this by running the Hardware Driver utility (System -> Administration -> Hardware Drivers); this utility will list the hardware components that require proprietary drivers and you just need to install (or activate) them. In my case, I needed to do that for my video card, which is a budget Geforce 8300GS with 510MB of RAM.

Wine can be installed for free and the process takes just less than a minute via a broadband connection.

The next step is to install Wine. You can do that via Ubuntu Software Center (Applications -> Ubuntu Software Center). Here, you select "Get Free Software" then search for "Wine." In my case, I found two versions of Wine: Wine Microsoft Windows Compatibility Layers and Wine Microsoft Windows Compatibility Layers (Beta Release). I picked the beta release. (Obviously newer is better, right?) The installation of Wine literally took a few seconds with the Internet connection I used, which was really fast. If you use a regular DSL, this might take around a minute.

Now it's time to install WoW. I did it the way I've always done in Windows in the last couple of years: copying the whole "World of Warcraft" folder over from another computer. This is because installing the game from scratch would take hours, considering all the updates and the almost 20GB of storage space that the game requires. With Linux, however, you might not be able to install WoW from scratch anyway. The WoW installer that I tried refused to continue, citing that the computer doesn't meet the game's requirement. This is probably because it could read the computer's hardware via Wine.

Because WoW wasn't installed from scratch, I couldn't launch it from Wine's Start Menu (which resembles that of Windows'). Instead, I need to call the game's executable directly. The trick is that you need to call it via Wine Windows Program Loader by right clicking on the Wow.exe file and choose "Open with Wine Windows Program Loader." It won't work if you just double-click on it.

Proprietary drivers for hardware components need to be installed after the installation of Ubuntu is completed.

And that's it, the game loaded and worked just like in Windows. I could run it in full-screen mode, Windows mode, using the add-ons, etc. The performance was decent. At the recommenced settings, I had consistently 20 frames per second in Daralan, the notoriously slow and laggy area of the game. In other areas, such as dungeons, I was able to get up to 45fps, which was really impressive considering the budget video card.

Overall, it was a really interesting and exciting experience. However, WoW crashed during start-up a couple times; this could be solved by simply restarting the computer or reinstalling Wine. This is probably where the "beta" notion of Wine is to blame.

Other than WoW, I tried a few other Windows applications, such as iTunes and QuickTime, and they worked, too. however they didn't always work the way you expect in Windows.

All in all, Wine will not make an alternative to Windows, but the fact that now I can run my favorite game in Linux makes me believe that Linux is really an ideal operating system for savvy users. So if you think you are one, make a backup of your Windows computer and try it out. It's a lot of fun and doesn't cost anything.


mandoro said...

Hey, I read this and I am curious as to how you moved the 20GB wow folder from Windows to Linux? As far as I know it cant fit on any CD that I know of.

I used to use linux but stopped because I could never get wow to work. If I can get it to work now I would switch back

twickline said...

Hello mandoro,

The easiest way to play WoW on Linux is to buy a copy of CrossOver Games for $39.95 They have good support for WoW and other games as well.

Anonymous said...

Alternatively, you could have a handy external hard drive for about the same price.

An question to Wine reviewer: What was your system's specs? Did you find the gaming experience an improvement over windows? No change? Slight decrease?

twickline said...

The game runs about the same with Wine as it does on Windows, WoW is run in OpenGL mode.

A external hard drive?

Then you have to buy a full copy of Windows and how is that cheaper then $39.95?

Apply coupon code "ComeToTheLight" when you purchase CXGames and you will save 25% :) this will drop CrossOver Games to $29.96 And Crossover Professional to $52.46

Phydough said...

Actually, the first few parts are rather accurate, then ...

Well, I always install from my WotLK DVD. Just have to mount it with the "unhide" option (Google it, people!)

After the mount, I run the installer (Right click, and run with wine). After it's done installing, it will go online for updates. I usually stop this process, because wow's installer/downloader is SLOW. I find the updates/patches on wow mirror sites, and get them first, then install those (Using wine, or the Blizzard updater). I usually have those saved to seperate partition or dvd's anyway.

Some things to remember:

Edit the launcher icon to have "-opengl" (without the quotes) so it uses opengl instead of wines' horrible Direct X implementation.

Always use the proprietary drivers for your video card

And recently, the launcher.exe file has benn messing with permissions for the folders. I always change the command to launch WoW from "Launcher.exe" to Wow.exe"

You can ask me for any help

superman3xp said...

I'm running Ubuntu 9.10 and have installed WOW and played it back in Feb I just started to play again and I had problems with the patch downloading, I that out and I can log into the game and choose my character and when I click enter world it goes to the loading screen and doesn't load or do anything, I can hear the music playing but the loading bar doesn't do anything, and I let it do that for 2 hours and nothing happened. So can anyone tell me what I should do?

Eddie said...

Well what I did was a slow but pretty easy and "free install". I started the digital download from blizzard before bed and let it run over night and while I was at work the next day and everything is working great. You do need a compatibility layer though, and make sure the graphics driver is updated.

Suffer the Bear said...

Just curious.. Does it run faster than it does in windows?

My windows crashed - only use it because I play WoW - and now I'm having ubuntu because I can't install windows right now. Missing WoW very much :P

In windows I have 7 fps (really slow but I'm used to it), and i was wondering if I could improve that in linux... ^^

philby said...

I find it quicker and easier to download the instaler from wow site, let that instal a few mins, then stop it, copy all your wow folder over to where the instaler started it all. then you can just do a quick change on the wtfconfig file and bingo, wow on linux is easier and ill never go back to windows.