The weight of numbers behind WoW
I saw this picture on verydemotivational.com, and it made me chuckle. It also got me thinking about how massively number driven WoW is, and indeed any computer program. When we see the World of Warcraft, surrounding our character in its awesomeness, every single tree, critter and square of pavement are coded to be precisely there, to do a certain thing, and to look a certain way based on files buried deep in the WoW data files.
Quite apart from all the many strings of numbers that keep the game itself ticking over, making sure you use Conjure food V instead of Blink when you click your action bar, and stop bank alts from entering ICC 25 (quite a problem these days), there’s all the server side business that goes on with every action we do. Every time a spell is cast, there’s a certain chance it will crit – based on your crit numbers, the targets stats that mitigate crit. There can be hundreds of influencing factors later on in the game, and working each of them out would be an absolute headache for any organic based life-form. Consider – Zalduun Casts Judgement of Wisdom on Risen Zombie for 4500 (Critical Strike). Now JoW will crit based on what Zal’s crit chance is – 33.83%. Now, that’s obviously worked, since it was a crit hit. But it might not of, because the Risen Zombie might have an inbuilt crit resistance of 10%, which I wouldn’t know about. It would obviously affect my chance to crit the mob. All this is calculated in a tiny amount of time, the mob takes according damage, and I carry on facerolling my rotation. In a 25 man raid, there must be an inconceivable amount of calculations going on. I can cast a Holy light, which because of my Avenging Wrath, popped trinket, and 2 part t10 bonus crits for 34k, which in turn splashes everyone in range of the tank for 3400 because of my glyphs, and that in turn could heal one of them for 3700 because he has a talent increasing his % of healing taken, and in turn that might trigger a talent he has that every time he’s healed he regains a certain amount of mana back, which he then gets, and spends on his next spell which causes – You get the idea. And that’s just one spell. Most players in a raid are cranking out a spell or two a second, with debuffs and buffs on different people, all needed to be calculated within a microsecond of the player clicking the button, because if it isn’t then things don’t happen ‘as they should.’
On my server, about 13-15 different guilds raid ICC 10/25 each evening, and about 30 guilds on Friday – Sunday. Calculations have to be done for everyone raiding, all at the same time. There’s got to be more numbers flying through their ports than there are insects in a Rain-forest. (I worked hard on that analogy, don’t laugh.) There’s calculations as complex as that example all the way down to /roll going on every second. I’m prepared to allow Blizz a little Lag sometimes!