Jan 2009 30

World of Warcraft, #134 Error -- Fixed

Randomstrings

It's fixed!  The dreaded #134 Error is no more!   And for the most part the Blizzard tech support people are completely worthless.. But I get ahead of myself.

Firstly, what it's not;

The blizzard folks over at their forums, as well as those you get ahold of on the phone.. and via email will try to blame everything on you.  The reason for this will come clear shortly, but in a way they are right and in a way wrong.

The World of Warcraft #134 error is so vague and broad in scope that it is the support equivalent to, "It broke!"...  It could be any number of things, but the thing they just about always tell you it is, is memory.  Read the forums and you'll always see some asshat chiming in that it must be your memory..  The issue I had with that response is that I had run tests against my 4 gigs of memory both in linux, and in windows using multiple tools as well as testing each stick individually..  My memory was flawless every time.. even using the test blizzard suggested I use.

Once I proved that, they suddenly tried to blame some other facet of my hardware..  Long story short, everything they suggested WAS WRONG.  Period..

So I got to looking into why they always insisted it was memory.. And how the MPQ files which should be read-only archives of data were getting corrupted.    Why the hell was blizzard writing back to those files..

(Note: most of this is what I have gleaned while looking into it as well as relying on my own and coworkers programming knowledge.. it's not 100% for sure, but an edjumikated guess.)

The MPQ files that WoW uses contain all the various objects, models, textures and what nots that the game needs to play.   The majority of those things are textures that the system needs to constantly load to display..  The problem is the MPQ's are many gigs in size, and as of yet no graphics card has that much on board memory..  Nor do most systems have enough space to load the entire game into memory..  To get around this blizzard employed a technique called memory mapping.

Without going into too much detail, the addresses for the chunks of the data it needs is mapped directly to the hard drive and stuffed into the graphics card memory.. (Or more likely into main memory, then replicated into the graphics card memory.. but thats not important.)  These functions are controlled by windows entirely and out of the games control.  That's why there is writing going on. For the most part they use this technique to speed things up other wise your computers hard drive and bus would be completely hammered trying to shuffle all the textures around.. And WoW is nothing if not texture packed..

Any time anything changes in memory, it writes those changes directly back to the file -- this is simply due to the nature of memory mapping in windows..  (playing WoW in Linux will not have this problem, it will have a completely different problem if the ultimate issue is the same)

If there are no changes, then nothing gets written back -- this is what's supposed to happen as blizzard knows (or assumes) that the textures wont get changed.  But lets say something did change and blizzard knows that their client didn't make that change.. The only thing that could have happened was something broke.

This is the reason blizzard naturally tells you that your memory is bad, and often why they say virus scanners could play a part too, or even a hard drive.. If the memory went bad then a couple bits would change forcing windows to write back to the MPQ corrupting it.. Or if there is bad sectors on the hard drive where the pagefile is, same problem.. etc..

What it actually was;

What they fail to tell you about is.. what if the memory on your graphics card is bad? That's much harder to test..

My problem ended up being a bug with the EVGA built nVidia 8800GTX graphics card. Apparently the fan on the graphics card wouldn't correctly auto-increase in speed which meant my graphics card over heated at some point.. (You can download the EVGA Precision tool to fix this manually) Which ultimately meant the memory on my graphics card started to corrupt.. It only got worse as time went on because the heat problem continued to be an issue, eventually causing the card to die completely.

The 8800GTX was a great card and it worked for me flawlessly for 2 years before this issue showed up so I can't complain about it at all.. The main issue with it was it routinely operated around 80 degrees Celsius.. With an operational ceiling of 105... that's pretty slim margins and almost begs to overheat..

But, In a weird way, the blizzard folks were right; it was a memory issue. Just not in the way they were insisting it was.. What they didn't realize and probably still don't realize was that it wasn't system memory that was causing the corruption. More over, none of the tests they suggest would have ever revealed any of those issues.

From my perspective, my system was working flawlessly because unless a software package actually tried to use any of the faulty memory on the graphics card, everything appeared to work perfectly. I still have the 8800gtx card and can plug it into a system right now and so long as you don't try to play a game on it, it works perfectly in windows and linux.

For me the fix meant I had to replace my graphics card.. I pop'ed the 8800gtx out and installed a nVidia GTX 285 and everything works peachy.. My system is back up and happy and so am I. For a while there I was dreading playing the game because I knew it would crash any second..

My new card under full load operates at 51ºc (thirty degrees cooler than the 8800 at idle) and all is well...

The thing I really take out of this is how poorly I was treated by the blizzard support folks. I'm actually aghast at how bad their support is. Not because they couldn't come up with a fix, this was a tough one.. but because they were so nonchalant about it and didn't seem to remotely care.

After all, I'm just one of eleven million subscribers.. who gives a crap if I'm happy right?

If you're having #134's, check to make sure your system isn't over heating.. Run the various memory testers, but keep in mind that you have memory on your graphics card that as far as I know, you can't test and it could be the culprit. If you have tried everything else, try swapping in a new graphics card..

Good luck.

Comments