Wowpedia

We have moved to Warcraft Wiki. Click here for information and the new URL.

READ MORE

Wowpedia
(→‎Wine source patches: Removing a long-fixed bug)
(→‎Cannot accept EULA: Removing autoit solution as winetricks is a much preferrable one.)
Line 15: Line 15:
   
 
This can also be a driver issue. If you are still having trouble try running xorg with the VESA driver.
 
This can also be a driver issue. If you are still having trouble try running xorg with the VESA driver.
 
If the problem your having is that the "Accept" button is disabled, try installing [http://www.autoitscript.com/ AutoIt] under wine and issuing the command following this paragraph. AutoIt will search for a window titled 'End User License Agreement' and enable the control with the ID '1004'. If this doesn't work the ID of the button may have changed with your version of the installer. You can find the ID of controls by using the [http://www.autoitscript.com/autoit3/docs/intro/au3spy.htm window information tool] that comes with AutoIt.
 
wine "C:\\Program Files\\AutoIt3\\AutoIt3.exe" /AutoIt3ExecuteLine "ControlEnable('End User License Agreement', '', 1004)"
 
 
====Alternative Solution====
 
Original Source: [http://forums.worldofwarcraft.com/thread.html?topicId=14318867022 WoW Forum Post]
 
   
 
You can download and install the linux application called [http://wiki.winehq.org/winetricks winetricks].
 
You can download and install the linux application called [http://wiki.winehq.org/winetricks winetricks].

Revision as of 12:02, 13 May 2010

Troubleshooting Wine tries to address the common issues people are having with running World of Warcraft using Wine on Linux. Important note: Make ABSOLUTELY SURE you run the latest Wine version, as well as the latest version of your graphic card drivers. If you don't, and encounter errors that have been fixed in newer versions... you're out of luck.

Can't see the installer tomes on the Wrath DVD

Most distros automounter programs don't include the "unhide" option for UDF filesystems. It will most likely be mandatory to remount manually.

The exact command that would need to be run (as root) would be

mount -o remount,unhide /dev/sr0

This will be different based on where your distro places the DVD drive. An easy way to check would be to run the mount command and choose the relevant device (which will typically be sr# or cd#).

Cannot accept EULA

Upgrade to the latest version of wine.

This can also be a driver issue. If you are still having trouble try running xorg with the VESA driver.

You can download and install the linux application called winetricks.

After downloading, simply run the console command:

sh winetricks ie6

This will download and install Microsoft Internet Explorer 6. After completing, re-run the installer and the issue will be resolved.

Launcher errors

This has been fixed in Wine 1.1.35

When running WoW for the first time via the Launcher, clicking the "Play" button will not work. After the first time, the Launcher will then refuse to run at all.

This behavior started with the tools update after 3.2.2a (build 10505). The Launcher now attempts to modify the directory permissions on the "Program Files\World of Warcraft" directory, which exposes a bug in Wine.

To fix it, first set the directory permissions back to what they should be:

chmod 770 "~/.wine/drive_c/Program Files/World of Warcraft"

The mode and path should be correct for all casual users of Wine; if you're an expert, adjust to taste. Don't forget the quote marks!

After the permissions are reset, do not run the game from the Launcher. Always run the WoW.exe command directly to run the game.

When new patches are released, you may have problems getting them without running the Launcher, since it is responsible for launching the patch downloader. The easiest workaround for this is to launch the downloader manually:

wine "C:/Program Files/World of Warcraft/BackgroundDownloader.exe"

For those who are interested, the current status of the bug in Wine can be found in Wine bug 20643.

There is another problem with the Launcher for users with broken wine installations: Wine bug 20585. Launcher gives you the following message: "Launcher could not be executed for some reason." Download windowscodecs.dll file and put it in your WoW directory. windowscodecs.dll

Post-3.3.0 runtime error

WoW changed the underlying C++ library it uses in patch 3.3.0 to msvcr8 (up from v7.1). Wine's built-in isn't quite there yet. Error messages similar to the following will display in console output after logging in if users do not have native msvcr8 installed:

fixme:actctx:parse_assembly_elem wrong version for assembly manifest: 8.0.50727.762 / 8.0.50727.4053
fixme:actctx:parse_manifest_buffer failed to parse manifest L"Z:\\Network\\wow\\World of Warcraft\\Microsoft.VC80.CRT.manifest"
fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.VC80.CRT" (8.0.50727.762)

The incredibly useful WineTricks shell script (right-click, save-as) can be used to install the runtime:

sh winetricks vcrun2005

Post-3.3.5 login issues

As of 1.1.44, the built-in wldap32.dll does not seem to work well enough for battle.net on the PTR. Download a native wldap32.dll and put it in the PTR folder to log in to the PTR.

Config.wtf

Main article: Config.wtf

Sound corruption

If you have problems with sound stuttering you may have to increase or decrease the sound buffer a bit. It's configured by changing the value of the SET SoundBufferSize line in wtf/Config.wtf. Anything from 50 to 250 may cure your problem. Bear in mind that excessive buffer size may create audio sync issues.

You may try the following option as well:

SET SoundOutputSystem "1"

UI corruption

If you experience corrupt icons or interface textures, you then you may need to set the UIFaster parameter in wtf/Config.wtf

Use it like this:

Set UIFaster "x"

Where x equals:

0 – This turns off all UI acceleration
2 – Enables partial UI acceleration only.
3 – Enables all UI acceleration.

Example:

Set UIFaster "2"

The value 2 usually corrects this problem.

Crashes from indoor to outdoor

If WoW crashes each time your character moves from outdoors to indoors, try disabling double buffering. Unchecking Enable desktop double buffering under the Graphics tab in winecfg should work.

Winecfg

Audio driver

If you experience stuttering, bad sound or no sound what so ever, then you must try a few things in winecfg. Just type winecfg in a terminal, press enter, and the winecfg window should appear and you should go to the audio tab. Alsa is preferable.

Also, refer to the Voice chat section for information on getting multiple audio streams working with OSS and ALSA (more than one program using audio at once). It will save you grief should you ever want to listen to music and chat on Ventrilo or Teamspeak while playing, and similar.

You may also try ticking "Driver Emulation". Remove it again if it doesn't help.

If you hear no audio at all and set the Windows emulation to Vista, try setting it to XP (or lower if that does not work. XP should be your safest bet though if sound still does not work and you want to try out other settings).


Utilizing PulseAudio with Wine

Another resolution for the stuttering/choppy sound is to use the PulseAudio OSS wrapper. To do this:

Open a terminal console and type:

padsp winecfg

Go to the Audio tab and deselect all sound drivers and select only OSS, click apply.

Modify any launcher shortcuts you have to: (modify to your Wow.exe file's location!!!)

padsp wine "c:\World of Warcraft\Wow.exe" -opengl

Other tweaks

Glitch every 3-5 sec

If you see a noticeable graphical studder every 3 to 5 seconds or so for this you need to edit /etc/X11/xorg.conf and add something like:

Option "UseFastTLS" "2"

to the Video card "Device" Section. This of course is normally a problem with the proprietary Linux Drivers for ATI cards.

Another possibility is a problem with the default kernel scheduler. I noticed many people have this problem with a NVIDIA card. Readjusting the scheduler will fix these issues:

echo 21 > /proc/sys/kernel/sched_features
echo 25000000 > /proc/sys/kernel/sched_batch_wakeup_granularity_ns
echo 4000000 > /proc/sys/kernel/sched_min_granularity_ns

Installer.exe and RAM type

On certain systems there is a problem with RAM and the WoW Installer. On a Core2 Duo 6400 with DDR2-800, setting the RAM to DDR2-533 in BIOS allowed the installer to work flawlessly the first time. It's easy to confuse this issue with a CD/DVD problem because the installer will complain about a checksum error.

Stuttering every 15sec and flickering line fix for Linux kernels 2.6.24 with CFS scheduler

On some distributions like Arch Linux World of Warcraft stutters exactly every 15 seconds. You will also notice a flickering bar on the top of your screen.

The instructions are taken from shazeal from this thread: http://bbs.archlinux.org/viewtopic.php?id=42779

The best solution to solve this problem is to recompile your kernel with the option CONFIG_SCHED_DEBUG. After booting that kernel, you can tune it via sysctl and the problem is gone. This is an example of doing this on Arch Linux, it will be different on other distributions.

Step 1: Recompiling the kernel

First, fetch the newest source tree via ABS as root

sudo abs

Then copy /var/abs/core/kernel26 to your home directory

cp -R /var/abs/core/kernel26 ~

Now open up the file config, search for the line "# CONFIG_SCHED_DEBUG is not set" and replace it with "CONFIG_SCHED_DEBUG=y". Next open the file PKGBUILD, go to the md5sums and comment out the third one(or replace it with ne new m5dsum of config) so it looks like this:

md5sums=('3f23ad4b69d0a552042d1ed0f4399857'
         '9d435f1a3b56d74265d9eb7c49060ff4'
         #'817294b52dc1f0acb1a8616fe792f29a'
         'ae7370a442115f2c7ee45d0123f617e3'
         '25584700a0a679542929c4bed31433b6')

Open a terminal, cd into the directory and call "makepkg". That will, depending on your machine, take a looong time. After its done, install the new package via pacman -U to your system. I suggest to add the package kernel26 to your HoldPkg or IgnorePkg list.

Step 2: Tune your kernel

Tuning your kernel is much easier. Just add the following lines to your /etc/sysctl.conf:

# World of Warcraft stutter and flickering line fix
kernel.sched_features=21
kernel.sched_batch_wakeup_granularity_ns=25000000
kernel.sched_min_granularity_ns=4000000

Save it, and reboot. World of Warcraft should now run without silly stuttering and flickering.

Wine source patches

Nvidia-specific issues

TwinView

You know that you have this problem if World of Warcraft does not display correctly, and you have TwinView enabled. To fix this, set the in-game video settings to "Windowed Mode", and "Maximized". Unfortunately, you will not be able to set the resolution at the video settings, so: set the appropriate resolution by changing gxResolution in Config.wtf to your liking (this looks just like running in fullscreen). E.g.:

SET gxResolution "1280x1024"

Alternatively, if you by any chance cannot access the in-game video settings you can force these settings by enabling:

SET gxWindow "1"
SET gxMaximize "1"

ATI-Specific issues

ATI no Object Textures/Models

Some ATI user have the problem, that character and object models are hidden. It seems to appear with newer ATI drivers. To solve the problem, add the following line to the Config.wtf

SET M2UseShaders "0"

ATI enter game world crash

For users with an ATI video card: certain cards have trouble rendering games and video in opengl using current flgrx drivers which will cause your computer to hard locks when you attempt to enter a domain. This error will occur just after character creation/selection, as the game environment is loading, or possibly after a short period of play. In order to fix this error, add the following lines of code to your xorg.conf file in the ATI device section:

Option "Capabilities" "0x00000800"
Option "UseFastTLS" "off"
Option "KernelModuleParm" "locked-userpages=0"

This is where you find the file:

/etc/X11/xorg.conf

The section should look something similar to this after editing:

Section "Device"
  Identifier  "aticonfig-Device[Amity wine]]ver      "fglrx"
  Option       "Capabilities" "0x00000800"
  Option       "UseFastTLS" "off"
  Option       "KernelModuleParm" "locked-userpages=0"
EndSection

Note: this has been tested and also works with NVidia cards.


Common errors

Can't eject the CD

If you've got the disk space, the easiest solution would be to rip the entirety of disc 1, and the Installer Tome #.mpq files from the remaining discs to some folder on your computer (like ~/wow/), then run the installer from there.

Waiting for files to close...

This message appears during patching when certain files are open (Launcher.exe, Wow.exe, etc). To make sure you don't have any of those files open, try killall -9 wineserver && killall -9 wine to close all wine applications. If this didn't do anything, open winecfg and change the Windows version to Windows NT 4.0. If it still doesn't work, you may have more luck with other Windows versions.

Failed to find a suitable display device.

This is usually direct3d in cause. You may try to overwrite the d3d9.dll, or use the builtin one if you're already overwriting it. Try switching between gxApi opengl and d3d as well. Also, if using OpenGL, ensure that glx is loaded in the Module section of your xorg.conf file.


Your 3D accelerator card is not supported by World of Warcraft. Please install a 3D accelerator card with dual-TMU support.

There is a 99% chance that this is due to the drivers. If you just got a new graphic card or reinstalled the OS, you might be using outdated drivers. Distribution drivers are usually weeks or even months behind the current ones. It's strongly recommended to use the official ones (nVidia, ATI).

This error can also happen on 64-bit Linux distributions if you're using the proprietary drivers as packaged by the distribution. Some distributions put the 32-bit versions of the libraries in a separate package. Since Wine uses the 32-bit libraries even on 64-bit systems, Wine won't support accelerated OpenGL without them. Look for a package that's named similarly to the driver package, but includes a note about being 32-bit. For example, on 64-bit Debian, if you're using the "nvidia-glx" libraries, you want to also install "nvidia-glx-ia32".

If you have just updated your system's kernel or video drivers, you may simply need to restart your computer.

err:module:import_dll Library OPENGL32.dll

You get the following error on startup:

err:module:import_dll Library OPENGL32.dll (which is needed by L"C:Program Files/World of Warcraft/wow.exe")
not found err:module:LdrInitializeThunk Main exe initialization for L"C:/Program Files/World of Warcraft/wow.exe"
failed, status c0000135

Solution : check that /usr/local/lib/wine/opengl32.dll.so has ownership of root:root and permissions -rwxr-xr-x, if it does not then you may have not been super user when you ran the "make install" command. become superuser and repeat the make install command as shown in the howto. Do not just change the ownership/permissions of opengl32.dll.so as probably all the other files are wrong too, so do a make install.

Error #134 "Unable to associate local address with socket..."

The socket is already bound to an address, or the parameter is a listening socket. You need to make sure your loopback interface is up, by running:

ifconfig lo up

or

sudo ifconfig lo up

"DOS address space" or "DOS memory range" errors

On recent distributions (starting around the time of Fedora 9 or Ubuntu Hardy), these errors may prevent the game from running:

preloader: Warning: failed to reserve range 00000000-60000000
err:dosmem:setup_dos_mem Cannot use first megabyte for DOS address space,
please report

or:

winevdm: unable to exec 'Z:\tmp\CONFIG.EXE': DOS memory range unavailable

This is caused by a security fix in recent Linux kernels. The fix interferes with Wine's ability to emulate some DOS compatibility features. The workaround is to disable the security fix, which can be done via sysctl:

sudo sysctl -w vm.mmap_min_addr=0

This lasts until the next reboot. Alternatively, the fix can be made permanent by adding the part after "-w" to /etc/sysctl.conf or to a file in /etc/sysctl.d. Recent Wine packages usually include the workaround by default, since it affects many other Windows apps besides WoW.

WARNING: Be aware that enabling this fix could expose you to the original security problem! Don't run this way except on a machine behind a firewall, running as few services as possible, and practice safe browsing.

For more information about this problem, see the Wine wiki page on it.