Are you wondering which class is the most interesting to play? The answer is… Mage! And 2nd and 3rd places are occupied with… Hunter and Warrior! And what is the least interesting class? Drum-roll… Shaman!
Wanna see the whole picture with dynamics of Interest Rating from MC+Ony to Naxx? Here it is!
http://i.imgur.com/LPjgmxB.png
For those who want to examine the graph closer:
So, do you wanna know how it works?
So, what kind of incredible program counted it all? Just run it on your Chrome and see all results in the console!
Note: if you’re not using Chrome, you may try to perform some space and/or comments deletions, because script seems to be too long for another browser URL-line.
For those who don’t want to run it him/herself - here’s the program output and the summary of the results (with described manual update mentioned above).
P.S. A little senseless quiz for you:
P.P.S. I never intended to offend any class. Coincidences are coincidental.
P.P.P.S. Argh, polished every word, but... Of course, I've meant "Most interesting class..." x)
Thanks for reading!
Wanna see the whole picture with dynamics of Interest Rating from MC+Ony to Naxx? Here it is!
http://i.imgur.com/LPjgmxB.png
For those who want to examine the graph closer:
You can see several groups of Interest Rating:
Mage is the absolute winner;
Hunter, Warrior, Priest and Warlock are on places 2-5;
Druid, Rogue and Paladin are far behind;
Shaman is absolute loser.
Note that Priest Rating started to raise a lot after ZG, while Warrior and Warlock got many points after AQ. Playing a Mage is very interesting in ZG and of moderate interest in AQ. Warlock is almost boring in Naxx… And so on
Mage is the absolute winner;
Hunter, Warrior, Priest and Warlock are on places 2-5;
Druid, Rogue and Paladin are far behind;
Shaman is absolute loser.
Note that Priest Rating started to raise a lot after ZG, while Warrior and Warlock got many points after AQ. Playing a Mage is very interesting in ZG and of moderate interest in AQ. Warlock is almost boring in Naxx… And so on
The whole system is very simple (thus inaccurate, of course) and based on class names mentions on WoWWiki pages about tactics for the Vanilla boss encounters. For example, the word “Druid” is mentioned 20 times on the MC bosses pages and on the Onyxia page (see the table above - 20 for Druid before BWL).
The number - Interest Rating - counted automatically (see the next Spoiler) with a little manual intervention. Why intervene? Because the word “Priest” mentioned unwarrantably many times on ZG Priest bosses.
The number - Interest Rating - counted automatically (see the next Spoiler) with a little manual intervention. Why intervene? Because the word “Priest” mentioned unwarrantably many times on ZG Priest bosses.
Follow the instructions on the first line please.
It's kinda bookmarklet.
Sorry, no insane-clever recognition, just a list of boss pages right inside the script
It's kinda bookmarklet.
Sorry, no insane-clever recognition, just a list of boss pages right inside the script
Code:
j avascript: /* add the whole script to your browser URL-line, remove the space after "j" and press Enter */
function regexIndexOf (str, regex, startpos) { /*indexOf version to be used with regular expressions*/
var res = str.substring(startpos || 0).search(regex);
return (res > -1) ? (res + (startpos || 0)) : res;
}
function countStr (str, win) /* count str mentions in win window */
{
var nowpos = 0;
var counter = -1;
while (nowpos > -1)
{
var doctext = (win.document.body.innerText || win.document.body.textContent);
nowpos = regexIndexOf(doctext, str, nowpos+1);
counter++;
}
console.log (win.location.href, str, counter);
return counter;
}
function logAllClasses (additionalStr)
{
console.log ("Total mages", additionalStr, mages);
console.log ("Total warlocks", additionalStr, warlocks);
console.log ("Total priests", additionalStr, priests);
console.log ("Total rogues", additionalStr, rogues);
console.log ("Total druids", additionalStr, druids);
console.log ("Total hunters", additionalStr, hunters);
console.log ("Total shamans", additionalStr, shamans);
console.log ("Total warriors", additionalStr, warriors);
console.log ("Total paladins", additionalStr, paladins);
}
/* bosses URLs list */
var pages = [ "http://www.wowwiki.com/Ragnaros_(tactics)",
"http://www.wowwiki.com/Majordomo_Executus",
"http://www.wowwiki.com/Golemagg_the_Incinerator",
"http://www.wowwiki.com/Sulfuron_Harbinger",
"http://www.wowwiki.com/Shazzrah",
"http://www.wowwiki.com/Baron_Geddon",
"http://www.wowwiki.com/Garr",
"http://www.wowwiki.com/Gehennas",
"http://www.wowwiki.com/Magmadar",
"http://www.wowwiki.com/Lucifron",
"http://www.wowwiki.com/Onyxia_(original)",
"http://www.wowwiki.com/Nefarian_(tactics)",
"http://www.wowwiki.com/Chromaggus",
"http://www.wowwiki.com/Master_Elemental_Shaper_Krixix",
"http://www.wowwiki.com/Flamegor",
"http://www.wowwiki.com/Ebonroc",
"http://www.wowwiki.com/Firemaw",
"http://www.wowwiki.com/Broodlord_Lashlayer",
"http://www.wowwiki.com/Vaelastrasz_the_Corrupt",
"http://www.wowwiki.com/Razorgore_the_Untamed",
"http://www.wowwiki.com/Hakkar_the_Soulflayer_(tactics)",
"http://www.wowwiki.com/Edge_of_Madness",
"http://www.wowwiki.com/Gahz%27ranka",
"http://www.wowwiki.com/Jin%27do_the_Hexxer",
"http://www.wowwiki.com/Bloodlord_Mandokir_(original)",
"http://www.wowwiki.com/High_Priestess_Arlokk",
"http://www.wowwiki.com/High_Priest_Thekal",
"http://www.wowwiki.com/High_Priestess_Mar%27li",
"http://www.wowwiki.com/High_Priest_Venoxis_(original)",
"http://www.wowwiki.com/High_Priestess_Jeklik",
"http://www.wowwiki.com/Ossirian_the_Unscarred",
"http://www.wowwiki.com/Ayamiss_the_Hunter",
"http://www.wowwiki.com/Buru_the_Gorger",
"http://www.wowwiki.com/Moam",
"http://www.wowwiki.com/General_Rajaxx",
"http://www.wowwiki.com/Kurinnaxx",
"http://www.wowwiki.com/C%27Thun_(tactics)",
"http://www.wowwiki.com/Ouro",
"http://www.wowwiki.com/Twin_Emperors",
"http://www.wowwiki.com/Princess_Huhuran",
"http://www.wowwiki.com/Viscidus",
"http://www.wowwiki.com/Fankriss_the_Unyielding",
"http://www.wowwiki.com/Battleguard_Sartura",
"http://www.wowwiki.com/Three_Bugs",
"http://www.wowwiki.com/The_Prophet_Skeram",
"http://www.wowwiki.com/Kel%27Thuzad_(original)",
"http://www.wowwiki.com/Sapphiron_(original)",
"http://www.wowwiki.com/Four_Horsemen_(original)",
"http://www.wowwiki.com/Gothik_the_Harvester_(original)",
"http://www.wowwiki.com/Instructor_Razuvious_(original)",
"http://www.wowwiki.com/Maexxna_(original)",
"http://www.wowwiki.com/Grand_Widow_Faerlina_(original)",
"http://www.wowwiki.com/Anub%27Rekhan_(original)",
"http://www.wowwiki.com/Loatheb_(original)",
"http://www.wowwiki.com/Heigan_the_Unclean_(original)",
"http://www.wowwiki.com/Noth_the_Plaguebringer_(original)",
"http://www.wowwiki.com/Thaddius_(original)",
"http://www.wowwiki.com/Gluth_(original)",
"http://www.wowwiki.com/Grobbulus_(original)",
"http://www.wowwiki.com/Patchwerk_(original)"];
var mages = 0;
var warlocks = 0;
var priests = 0;
var rogues = 0;
var druids = 0;
var hunters = 0;
var shamans = 0;
var warriors = 0;
var paladins = 0;
var accessToPageTime = 7000; /* time before the actual count function will be called; make sure you give every page enough time to load */
function countOnPages ()
{
if (pages.length==0)
{
logAllClasses ("");
return;
}
var nowpage = pages.shift();
if (nowpage == "http://www.wowwiki.com/Nefarian_(tactics)") logAllClasses ("before BWL");
if (nowpage == "http://www.wowwiki.com/Hakkar_the_Soulflayer_(tactics)") logAllClasses ("before ZG");
if (nowpage == "http://www.wowwiki.com/Ossirian_the_Unscarred") logAllClasses ("before AQ");
if (nowpage == "http://www.wowwiki.com/Kel%27Thuzad_(original)") logAllClasses ("before Naxx");
var openWindow = window.open(nowpage, "_blank");
setTimeout(function () {
mages += countStr (/[ ,(,.,,,;,-]mage/gi, openWindow);
warlocks += countStr (/[ ,(,.,,,;,-]warlock/gi, openWindow);
priests += countStr (/[ ,(,.,,,;,-]priest/gi, openWindow);
rogues += countStr (/[ ,(,.,,,;,-]rogue/gi, openWindow);
druids += countStr (/[ ,(,.,,,;,-]druid/gi, openWindow);
hunters += countStr (/[ ,(,.,,,;,-]hunter/gi, openWindow);
shamans += countStr (/[ ,(,.,,,;,-]shaman/gi, openWindow);
warriors += countStr (/[ ,(,.,,,;,-]warrior/gi, openWindow);
paladins += countStr (/[ ,(,.,,,;,-]paladin/gi, openWindow);
(openWindow).close();
countOnPages();
}, accessToPageTime);
}
console.log ("WoWWiki examination started..."); /* start note */
countOnPages ();
For those who don’t want to run it him/herself - here’s the program output and the summary of the results (with described manual update mentioned above).
Logs... I pressed "Convert to ANSI" in my Notepad++, but usual Notepad still can't see lines in them. Don't know how to add simple CR+LF everywhere, so just use some cool text editor if you wanna browse my logs without creating your own. Summary file doesn't have this problem.
View attachment search_summary+manual_after_bugfix.txt
View attachment search_log_after_bugfix_packed_part1.txt
View attachment search_log_after_bugfix_packed_part2.txt
View attachment search_summary+manual_after_bugfix.txt
View attachment search_log_after_bugfix_packed_part1.txt
View attachment search_log_after_bugfix_packed_part2.txt
By which rule do you think classes are sorted from Mage to Warrior?
P.P.P.S. Argh, polished every word, but... Of course, I've meant "Most interesting class..." x)
Thanks for reading!
Last edited: