Crusader Calculator ... live

November 20th, 2009

Just a quick post to say I finally went back and rewrote the method I was extracting data from the armory (I was using libxsl… which isn’t available on my webhost). So it is now live at:

http://gameldar.fdns.net/crusader/

In summary: it will grab your characters reputations and achievements and work out how many more turn-ins you should do for each capital faction before becoming a champion of them in order to hit exalted with all the factions, and become champions with them in the optimal path. It should detect what you have already championed, and the option is available to say what the maximum you can be bothered doing (i.e it says I need to do 43 turn-ins or 9 days of the dailies to complete just one faction).

Not sure how it’ll work for horde - it should be fine, but I don’t have a character to really test this will.

Extracting WoW Achievements from the armory

October 14th, 2009

After playing around with the data formats from the armory (mainly the reputation and achievements sections) - it seems like the achievements are the least well defined.

The achievements are grouped by categories as rendered by the menu on the left - clicking on these makes subsequent calls via ajax to retrieve the actual. To access the subcategories directly you just need append the c parameter with the appropriate ID. For example the category id for World Events is 155 so:

http://www.wowarmory.com/character-achievements.xml?r=$realm&n=$character&c=155

The subcategories however are not so easily accessible - they are all contained within this big xml file without any further classification. Examining the source for the link gives the following

Code:

<a href="javascript:void(0)"
   onclick="Armory.Achievements.openSubcategory(this.parentNode, '10')">
   Argent Tournament
</a>

Clicking on this link renders the Argent Tournament achievements for the World Events top level category. The key here is the number 10 in the call to openSubcategory - it is simply the index of the category definition within the xml - or in other words the contents of the nth <category> element. So for example you can access the appropriate element via the XPath
/achievements/category/category[position()=10]

A full example of the output of the xml for my paladin from http://www.wowarmory.com/character-achievements.xml?r=Saurfang&n=Keluin&c=155
If you go through and count the index of the <category> subelements will show the results for the Argent Tournament


<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/_layout/character/achievements-async.xsl"?><achievements lang="en_us" requestUrl="/character-achievements.xml">
<category>
<achievement categoryId="155" desc="Complete the Lunar Festival achievements listed below." icon="achievement_worldevent_lunar" id="913" points="30" reward="Title Reward: Elder" title="To Honor One's Elders">
<criteria id="1934" name="Elders of Eastern Kingdoms"/>
<criteria id="1935" name="Elders of Kalimdor"/>
<criteria id="1936" name="Elders of the Dungeons"/>
<criteria id="2000" name="Elders of the Horde"/>
<criteria id="2001" name="Elders of the Alliance"/>
<criteria id="5162" name="Elders of Northrend"/>
<criteria id="6286" name="50 Coins of Ancestry"/>
<criteria id="6287" name="Lunar Festival Finery"/>
<criteria id="6288" name="The Rocket's Red Glare"/>
<criteria id="6289" name="Frenzied Firecracker"/>
<criteria id="6290" name="Elune's Blessing"/>
</achievement>
<achievement categoryId="155" desc="Complete the Love is in the Air achievements listed below." icon="achievement_worldevent_valentine" id="1707" points="10" reward="Title Reward: The Love Fool" title="Fool For Love">
<criteria id="6365" name="Heartmender"/>
<criteria id="6366" name="Shafted!"/>
<criteria id="6367" name="Flirt With Disaster"/>
<criteria id="6368" name="Lonely?"/>
<criteria id="6370" name="Nearest and Dearest"/>
<criteria id="6372" name="Nation of Adoration"/>
<criteria id="6371" name="The Rocket's Pink Glare"/>
<criteria id="6373" name="Fistful of Love"/>
<criteria id="6375" name="Sweet Tooth"/>
<criteria id="6376" name="Be Mine!"/>
<criteria id="6377" name="My Love is Like a Red, Red Rose"/>
<criteria id="6378" name="I Pitied The Fool"/>
</achievement>
<achievement categoryId="155" desc="Complete the Noblegarden achievements listed below." icon="inv_egg_09" id="2797" points="10" reward="Title Reward: the Noble" title="Noble Gardener">
<criteria id="9863" name="I Found One!"/>
<criteria id="9864" name="Chocoholic"/>
<criteria id="9865" name="Hard Boiled"/>
<criteria id="9866" name="Spring Fling"/>
<criteria id="9867" name="Noble Garden"/>
<criteria id="9868" name="Shake Your Bunny-Maker"/>
<criteria id="9869" name="Desert Rose"/>
<criteria id="9870" name="Blushing Bride"/>
</achievement>
<achievement categoryId="155" desc="Complete the Children's Week achievements listed below." icon="inv_misc_toy_04" id="1793" points="10" reward="Title Reward: Matron/Patron" title="For The Children">
<criteria id="6674" name="Home Alone"/>
<criteria id="6744" name="Bad Example"/>
<criteria id="6745" name="Daily Chores"/>
<criteria id="6746" name="Aw, Isn't It Cute?"/>
<criteria id="6747" name="School of Hard Knocks"/>
<criteria id="6749" name="Hail To The King, Baby"/>
</achievement>
<achievement categoryId="155" desc="Complete the Midsummer achievements listed below." icon="inv_summerfest_symbol_high" id="1038" points="20" reward="Title Reward: Flame Warden" title="The Flame Warden">
<criteria id="3205" name="The Fires of Azeroth"/>
<criteria id="3206" name="Desecration of the Horde"/>
<criteria date="2009-09-07+10:00" id="6291" name="Ice the Frost Lord"/>
<criteria id="7334" name="Burning Hot Pole Dance"/>
<criteria id="7336" name="King of the Fire Festival"/>
<criteria id="7337" name="Torch Juggler"/>
</achievement>
<achievement categoryId="155" desc="Drink with the Dread Captain Demeza to join her crew during Pirates' Day." icon="inv_helmet_66" id="3457" points="10" title="The Captain's Booty"/>
<achievement categoryId="155" desc="Complete the Brewfest achievements listed below." icon="achievement_worldevent_brewmaster" id="1684" points="10" reward="Title Reward: Brewmaster" title="Brewmaster">
<criteria id="6180" name="Strange Brew"/>
<criteria id="6181" name="The Brewfest Diet"/>
<criteria id="6182" name="Brew of the Month"/>
<criteria id="6183" name="Drunken Stupor"/>
<criteria id="6184" name="Direbrewfest"/>
<criteria id="6185" name="Down With The Dark Iron"/>
<criteria id="6186" name="Disturbing the Peace"/>
<criteria id="7235" name="Does Your Wolpertinger Linger?"/>
<criteria id="8160" name="Have Keg, Will Travel"/>
</achievement>
<achievement categoryId="155" desc="Complete the Hallow's End achievements listed below." icon="achievement_halloween_witch_01" id="1656" points="10" reward="Title Reward: The Hallowed" title="Hallowed Be Thy Name">
<criteria date="2009-09-07+10:00" id="5818" name="Trick or Treat!"/>
<criteria id="5819" name="Out With It"/>
<criteria id="5821" name="Bring Me The Head of... Oh Wait"/>
<criteria id="5822" name="The Savior of Hallow's End"/>
<criteria date="2009-09-07+10:00" id="5824" name="That Sparkling Smile"/>
<criteria id="5825" name="Rotten Hallow"/>
<criteria id="5826" name="G.N.E.R.D. Rage"/>
<criteria id="5827" name="Check Your Head"/>
<criteria id="5828" name="The Masquerade"/>
<criteria id="5829" name="Sinister Calling"/>
<criteria id="5830" name="Tricks and Treats of Azeroth"/>
</achievement>
<achievement categoryId="155" desc="Dance with Catrina to become a skeleton during the Day of the Dead." icon="inv_misc_bone_humanskull_02" id="3456" points="10" title="Dead Man's Party"/>
<achievement categoryId="155" desc="Complete the Pilgrim's Bounty achievements listed below." icon="inv_thanksgiving_turkey" id="3478" points="10" reward="Reward: Pilgrim Title &amp; Plump Turkey Pet" title="Pilgrim">
<criteria id="10940" name="&quot;FOOD FIGHT!&quot;"/>
<criteria id="11258" name="Now We're Cookin'"/>
<criteria id="11259" name="Pilgrim's Paunch"/>
<criteria id="11260" name="Pilgrim's Peril"/>
<criteria id="11261" name="Pilgrim's Progress"/>
<criteria id="11262" name="Sharing is Caring"/>
<criteria id="11263" name="Terokkar Turkey Time"/>
<criteria id="11264" name="The Turkinator"/>
<criteria id="11265" name="Turkey Lurkey"/>
</achievement>
<achievement categoryId="155" desc="Complete the Winter Veil achievements listed below." icon="achievement_worldevent_merrymaker" id="1692" points="10" reward="Title Reward: Merrymaker" title="Merrymaker">
<criteria id="6274" name="On Metzen!"/>
<criteria id="6275" name="With a Little Helper from My Friends"/>
<criteria date="2009-09-07+10:00" id="6276" name="Scrooge"/>
<criteria id="6277" name="Fa-la-la-la-Ogri'la"/>
<criteria id="6278" name="'Tis the Season"/>
<criteria id="6279" name="Crashin' &amp; Thrashin'"/>
<criteria id="6280" name="Simply Abominable"/>
<criteria id="6281" name="Let It Snow"/>
<criteria id="6282" name="Bros. Before Ho Ho Ho's"/>
<criteria id="6283" name="The Winter Veil Gourmet"/>
<criteria date="2009-09-07+10:00" id="6284" name="He Knows If You've Been Naughty"/>
<criteria id="6285" name="A Frosty Shake"/>
</achievement>
<achievement categoryId="155" desc="Complete the world events achievements listed below." icon="achievement_bg_masterofallbgs" id="2144" points="50" reward="Reward: Violet Proto-Drake" title="What A Long, Strange Trip It's Been">
<criteria id="7553" name="To Honor One's Elders"/>
<criteria id="7554" name="Fool For Love"/>
<criteria id="9879" name="Noble Gardener"/>
<criteria id="7555" name="For The Children"/>
<criteria id="7556" name="The Flame Warden"/>
<criteria id="7557" name="Brewmaster"/>
<criteria id="7558" name="Hallowed Be Thy Name"/>
<criteria id="7559" name="Merrymaker"/>
</achievement>
<category>
<achievement categoryId="155" dateCompleted="2009-01-25T12:34:00+11:00" desc="Receive a Coin of Ancestry." icon="inv_misc_elvencoins" id="605" points="10" title="A Coin of Ancestry"/>
<achievement categoryId="155" desc="Receive 5 Coins of Ancestry." icon="inv_misc_elvencoins" id="606" points="20" title="5 Coins of Ancestry">
<criteria id="473" maxQuantity="5" quantity="4"/>
</achievement>
<achievement categoryId="155" desc="Purchase a festive pant suit or festive dress with Coins of Ancestry." icon="inv_chest_cloth_59" id="626" points="10" title="Lunar Festival Finery"/>
<achievement categoryId="155" desc="Shoot off 10 Red Rocket Clusters in 25 seconds or less." icon="inv_misc_missilelarge_red" id="1281" points="10" title="The Rocket's Red Glare">
<criteria id="3932" maxQuantity="10" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Shoot off 10 Festival Firecrackers in 30 seconds or less." icon="inv_misc_bomb_05" id="1552" points="10" title="Frenzied Firecracker">
<criteria id="5755" maxQuantity="10" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Complete the Elune's Blessing quest by defeating Omen." icon="spell_holy_aspiration" id="937" points="10" title="Elune's Blessing"/>
<achievement categoryId="155" desc="Honor the Elders which are located in Eastern Kingdoms" icon="spell_holy_symbolofhope" id="912" points="10" title="Elders of Eastern Kingdoms">
<criteria id="1922" name="Elder Goldwell in Kharanos"/>
<criteria date="2009-01-25+11:00" id="1923" name="Elder Bellowrage in Blasted Lands"/>
<criteria id="1924" name="Elder Stormbrow in Goldshire"/>
<criteria id="1925" name="Elder Meadowrun in Western Plaguelands"/>
<criteria id="1926" name="Elder Starglade in Zul'Gurub"/>
<criteria id="1927" name="Elder Winterhoof in Booty Bay"/>
<criteria id="1937" name="Elder Silvervein in Thelsamar"/>
<criteria id="1938" name="Elder Skychaser in Sentinel Hill"/>
<criteria date="2009-01-25+11:00" id="1939" name="Elder Rumblerock in Burning Steppes"/>
<criteria date="2009-01-25+11:00" id="1940" name="Elder Dawnstrider in Flame Crest"/>
<criteria id="1941" name="Elder Highpeak in The Hinterlands"/>
<criteria date="2009-01-25+11:00" id="1942" name="Elder Ironband in Searing Gorge"/>
<criteria id="1944" name="Elder Graveborn in Brill"/>
<criteria id="1945" name="Elder Obsidian in The Sepulcher"/>
<criteria id="1946" name="Elder Windrun in Eastern Plaguelands"/>
<criteria id="1947" name="Elder Snowcrown in Light's Hope Chapel"/>
<criteria id="1950" name="Elder Moonstrike in Scholomance"/>
</achievement>
<achievement categoryId="155" desc="Honor the Elders which are located in Kalimdor." icon="spell_holy_symbolofhope" id="911" points="10" title="Elders of Kalimdor">
<criteria id="1916" name="Elder Runetotem in Razor Hill"/>
<criteria id="1917" name="Elder Skygleam in Azshara"/>
<criteria id="1918" name="Elder Moonwarden in The Crossroads"/>
<criteria id="1919" name="Elder High Mountain in Camp Taurajo"/>
<criteria id="1920" name="Elder Windtotem in Ratchet"/>
<criteria id="1951" name="Elder Bladeleaf in Dolanaar"/>
<criteria id="1952" name="Elder Starweave in Auberdine"/>
<criteria id="1953" name="Elder Bloodhoof in Bloodhoof Village"/>
<criteria id="1954" name="Elder Riversong in Astranaar"/>
<criteria id="1955" name="Elder Grimtotem in Feralas"/>
<criteria id="1956" name="Elder Mistwalker in Dire Maul"/>
<criteria id="1957" name="Elder Nightwind in Felwood"/>
<criteria id="1958" name="Elder Skyseer in Freewind Post"/>
<criteria id="1959" name="Elder Morningdew in Mirage Raceway"/>
<criteria id="1960" name="Elder Ragetotem in Tanaris"/>
<criteria id="1961" name="Elder Dreamseer in Gadgetzan"/>
<criteria id="1962" name="Elder Thunderhorn in Un'Goro"/>
<criteria id="1963" name="Elder Brightspear in Winterspring"/>
<criteria id="1964" name="Elder Stonespire in Everlook"/>
<criteria id="1965" name="Elder Primestone in Silithus"/>
<criteria id="1966" name="Elder Bladesing in Cenarion Hold"/>
</achievement>
<achievement categoryId="155" desc="Honor the Elders which are located in Northrend." icon="spell_holy_symbolofhope" id="1396" points="10" title="Elders of Northrend">
<criteria id="5141" name="Elder Sardis in Valiance Keep"/>
<criteria id="5142" name="Elder Beldak in Westfall Brigade"/>
<criteria id="5143" name="Elder Morthie in Star's Rest"/>
<criteria id="5144" name="Elder Fargal in Frosthold"/>
<criteria id="5145" name="Elder Arp in D.E.H.T.A"/>
<criteria id="5146" name="Elder Northal in Transitus Shield"/>
<criteria id="5147" name="Elder Sandrene in Lakeside Landing"/>
<criteria id="5148" name="Elder Wanikaya in Rainspeaker Rapids"/>
<criteria id="5149" name="Elder Lunaro in Ruins of Tethys"/>
<criteria id="5150" name="Elder Bluewolf in Wintergrasp"/>
<criteria id="5151" name="Elder Tauros in Zim'Torga"/>
<criteria id="5154" name="Elder Thoim in Moa'ki Harbor"/>
<criteria id="5155" name="Elder Graymane in K3"/>
<criteria id="5156" name="Elder Stonebeard in Bouldercrag's Refuge"/>
<criteria id="5157" name="Elder Pamuya in Warsong Hold"/>
<criteria id="5158" name="Elder Whurain in Camp Oneqwah"/>
<criteria id="5159" name="Elder Skywarden in Agmar's Hammer"/>
<criteria id="5160" name="Elder Muraco in Camp Tunka'lo"/>
<criteria id="5161" name="Elder Bladesing in Cenarion Hold"/>
</achievement>
<achievement categoryId="155" desc="Honor the Elders which are located inside the dungeons." icon="spell_holy_symbolofhope" id="910" points="10" title="Elders of the Dungeons">
<criteria id="1910" name="Elder Wildmane in Zul'Farrak"/>
<criteria id="1911" name="Elder Starsong in the Sunken Temple"/>
<criteria id="1912" name="Elder Splitrock in Maraudon"/>
<criteria id="1913" name="Elder Stonefort in Blackrock Spire"/>
<criteria id="1914" name="Elder Morndeep in Blackrock Depths"/>
<criteria id="1915" name="Elder Farwhisper in Stratholme"/>
<criteria id="5259" name="Elder Jarten in Utgarde Keep"/>
<criteria id="5260" name="Elder Igasho in The Nexus"/>
<criteria id="5261" name="Elder Nurgen in Azjol-Nerub"/>
<criteria id="5262" name="Elder Kilias in Drak'Tharon Keep"/>
<criteria id="5263" name="Elder Ohanzee in Gundrak"/>
<criteria id="5264" name="Elder Yurauk in the Halls of Stone"/>
<criteria id="5265" name="Elder Chogan'gada in Utgarde Pinnacle"/>
</achievement>
<achievement categoryId="155" desc="Honor the Elders which are located in the Horde capital cities." icon="spell_holy_symbolofhope" id="914" points="10" title="Elders of the Horde">
<criteria id="1991" name="Elder Darkhorn in Orgrimmar"/>
<criteria id="1992" name="Elder Wheathoof in Thunder Bluff"/>
<criteria id="1993" name="Elder Darkcore in Undercity"/>
</achievement>
<achievement categoryId="155" desc="Honor the Elders which are located in the Alliance capital cities." icon="spell_holy_symbolofhope" id="915" points="10" title="Elders of the Alliance">
<criteria id="1999" name="Elder Bladeswift in Darnassus"/>
<criteria date="2008-12-08+11:00" id="1997" name="Elder Bronzebeard in Ironforge"/>
<criteria date="2008-12-08+11:00" id="1998" name="Elder Hammershout in Stormwind"/>
</achievement>
</category>
<category>
<achievement categoryId="155" desc="Mend 20 broken hearts with Unbestowed Friendship Bracelets." icon="spell_brokenheart" id="260" points="10" title="Heartmender">
<criteria id="3223" maxQuantity="20" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Shoot 10 players with the Silver Shafted Arrow." icon="inv_ammo_arrow_02" id="1188" points="10" title="Shafted!">
<criteria id="3572" maxQuantity="10" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Get completely smashed, put on your best perfume, throw a handful of rose petals on Sraaz and then kiss him. You'll regret it in the morning." icon="inv_valentineperfumebottle" id="1279" points="10" title="Flirt With Disaster">
<criteria id="3931" name="Kissed Sraaz"/>
<criteria id="4226" name="Handful of Rose Petals on Sraaz"/>
</achievement>
<achievement categoryId="155" desc="Enjoy a Buttermilk Delight with someone in Dalaran at a Romantic Picnic during the Love is in the Air celebration." icon="inv_misc_basket_01" id="1291" points="10" title="Lonely?">
<criteria id="4071" name="Buttermilk Delight at Romantic Picnic"/>
</achievement>
<achievement categoryId="155" desc="Open a Gift of Adoration and receive a Lovely Black Dress." icon="inv_chest_cloth_50" id="1694" points="10" title="Lovely Luck Is On Your Side"/>
<achievement categoryId="155" desc="Complete the Love is in the Air storyline quest beginning with the Dangerous Love quest." icon="inv_misc_cauldron_fire" id="1695" points="10" title="Nearest and Dearest"/>
<achievement categoryId="155" desc="Shoot off 10 Love Rockets in 20 seconds or less." icon="inv_valentinepinkrocket" id="1696" points="10" title="The Rocket's Pink Glare">
<criteria id="6295" maxQuantity="10" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Obtain a Gift of Adoration from each of the cities listed below." icon="inv_valentinesboxofchocolates02" id="1697" points="10" title="Nation of Adoration">
<criteria id="6296" name="Darnassus"/>
<criteria id="6297" name="Ironforge"/>
<criteria id="6298" name="Stormwind"/>
</achievement>
<achievement categoryId="155" desc="Use a Handful of Rose Petals on each of the race/class combinations listed below." icon="inv_misc_dust_04" id="1699" points="10" title="Fistful of Love">
<criteria id="6312" name="Gnome Warlock"/>
<criteria id="6302" name="Orc Death Knight"/>
<criteria id="6313" name="Human Death Knight"/>
<criteria id="6314" name="Night Elf Priest"/>
<criteria id="6315" name="Orc Shaman"/>
<criteria id="6316" name="Tauren Druid"/>
<criteria id="6318" name="Undead Warrior"/>
<criteria id="6317" name="Troll Rogue"/>
<criteria id="6319" name="Blood Elf Mage"/>
<criteria id="6320" name="Draenei Paladin"/>
<criteria id="6321" name="Dwarf Hunter"/>
</achievement>
<achievement categoryId="155" desc="Obtain a permanent Peddlefeet pet by procuring a Truesilver Shafted Arrow." icon="inv_ammo_arrow_02" id="1700" points="10" title="Perma-Peddle"/>
<achievement categoryId="155" desc="Sample the Love is in the Air candies listed below." icon="inv_valentineschocolate02" id="1702" points="10" title="Sweet Tooth">
<criteria id="6332" name="Buttermilk Delight"/>
<criteria id="6333" name="Dark Desire"/>
<criteria id="6334" name="Sweet Surprise"/>
<criteria id="6335" name="Very Berry Cream"/>
</achievement>
<achievement categoryId="155" desc="Use the Bag of Candies to create six of the eight hearts listed below." icon="inv_valentinescandy" id="1701" points="10" title="Be Mine!">
<criteria id="6324" name="Be Mine!"/>
<criteria id="6325" name="I'll follow you all around Azeroth."/>
<criteria id="6326" name="All yours."/>
<criteria id="6327" name="I'm all yours!"/>
<criteria id="6328" name="Hot Lips."/>
<criteria id="6329" name="You're Mine!"/>
<criteria id="6330" name="You're the best!"/>
<criteria id="6331" name="I LOVE YOU"/>
</achievement>
<achievement categoryId="155" desc="Obtain a Bouquet of Red or Ebon Roses during the Love is in the Air celebration." icon="inv_rosebouquet01" id="1703" points="10" title="My Love is Like a Red, Red Rose"/>
<achievement categoryId="155" desc="Pity the Love Fool in the locations specified below." icon="inv_crate_03" id="1704" points="10" title="I Pitied The Fool">
<criteria id="6343" name="Wintergrasp"/>
<criteria id="6344" name="Battle Ring of Gurubashi Arena"/>
<criteria id="6345" name="Arathi Basin Blacksmith"/>
<criteria id="6346" name="The Culling of Stratholme"/>
<criteria id="6347" name="Naxxramas"/>
</achievement>
</category>
<category>
<achievement categoryId="155" desc="Find a Brightly Colored Egg." icon="inv_egg_09" id="2676" points="10" title="I Found One!"/>
<achievement categoryId="155" desc="Eat 25 Noblegarden Chocolates during the Noblegarden celebration." icon="achievement_noblegarden_chocolate_egg" id="2417" points="10" title="Chocolate Lover">
<criteria id="9119" maxQuantity="25" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Discover the White Tuxedo Shirt and Black Tuxedo Pants by opening Brightly Colored Eggs during the Noblegarden celebration." icon="inv_shirt_08" id="248" points="10" title="Sunday's Finest">
<criteria id="3221" name="White Tuxedo Shirt"/>
<criteria id="3222" name="Black Tuxedo Pants"/>
</achievement>
<achievement categoryId="155" desc="Discover an Elegant Dress by opening Brightly Colored Eggs during the Noblegarden celebration." icon="inv_chest_cloth_04" id="249" points="10" title="Dressed for the Occasion"/>
<achievement categoryId="155" desc="Lay an egg in Un'Goro Crater's Golakka Hot Springs as a rabbit during the Noblegarden celebration." icon="inv_egg_07" id="2416" points="10" title="Hard Boiled"/>
<achievement categoryId="155" desc="Find your pet Spring Rabbit another one to love in each of the towns listed below." icon="inv_egg_09" id="2419" points="10" title="Spring Fling">
<criteria id="9121" name="Azure Watch"/>
<criteria id="9199" name="Dolanaar"/>
<criteria id="9200" name="Goldshire"/>
<criteria id="9201" name="Kharanos"/>
</achievement>
<achievement categoryId="155" desc="Hide a Brightly Colored Egg in Stormwind City." icon="inv_egg_06" id="2421" points="10" title="Noble Garden"/>
<achievement categoryId="155" desc="Use Spring Flowers to place rabbit ears upon females of at least 18th level." icon="inv_misc_flower_02" id="2422" points="10" title="Shake Your Bunny-Maker">
<criteria id="9124" name="Blood Elf"/>
<criteria id="9143" name="Draenei"/>
<criteria id="9145" name="Dwarf"/>
<criteria id="9146" name="Gnome"/>
<criteria id="9144" name="Human"/>
<criteria id="9147" name="Night Elf"/>
<criteria id="9148" name="Orc"/>
<criteria id="9149" name="Tauren"/>
<criteria id="9150" name="Troll"/>
<criteria id="9151" name="Undead"/>
</achievement>
<achievement categoryId="155" desc="Use Spring Robes to plant a flower in each of the deserts listed below." icon="spell_shaman_giftearthmother" id="2436" points="10" title="Desert Rose">
<criteria id="9138" name="The Badlands"/>
<criteria id="9139" name="Desolace"/>
<criteria id="9142" name="Silithus"/>
<criteria id="9140" name="Tanaris"/>
<criteria id="9141" name="Thousand Needles"/>
</achievement>
<achievement categoryId="155" desc="Kiss someone wearing an Elegant Dress while wearing a White Tuxedo Shirt and Black Tuxedo Pants." icon="spell_shadow_soothingkiss" id="2576" points="10" title="Blushing Bride"/>
</category>
<category>
<achievement categoryId="155" desc="Use your Hearthstone while your orphan is with you." icon="inv_misc_rune_01" id="1791" points="10" title="Home Alone"/>
<achievement categoryId="155" desc="Eat the sweets listed below while your orphan is watching." icon="inv_misc_food_31" id="1788" points="10" title="Bad Example">
<criteria id="6651" name="Tigule and Foror's Strawberry Ice Cream"/>
<criteria id="6652" name="Tasty Cupcake"/>
<criteria id="6653" name="Red Velvet Cupcake"/>
<criteria id="6654" name="Delicious Chocolate Cake"/>
<criteria id="6655" name="Lovely Cake Slice"/>
<criteria id="6656" name="Dalaran Brownie"/>
<criteria id="6657" name="Dalaran Doughnut"/>
</achievement>
<achievement categoryId="155" desc="Complete five daily quests with your orphan out." icon="ability_repair" id="1789" points="10" title="Daily Chores">
<criteria id="12398" maxQuantity="5" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Obtain one of the Children's Week reward pets." icon="ability_hunter_pet_turtle" id="1792" points="10" title="Aw, Isn't It Cute?"/>
<achievement categoryId="155" desc="Take your orphan into the battlegrounds and complete the feats listed below." icon="ability_hunter_beastcall02" id="1786" points="10" title="School of Hard Knocks">
<criteria id="6641" name="Capture the flag in Eye of the Storm"/>
<criteria id="6642" name="Assault a tower in Alterac Valley"/>
<criteria id="6643" name="Assault a flag in Arathi Basin"/>
<criteria id="6644" name="Return a fallen flag in Warsong Gulch"/>
</achievement>
<achievement categoryId="155" desc="Defeat King Ymiron in Utgarde Pinnacle with your orphan out." icon="achievement_boss_kingymiron_02" id="1790" points="10" title="Hail To The King, Baby"/>
<achievement categoryId="155" desc="Acquire Egbert's Egg, Sleepy Willy, and Elekk Training Collar on one character." icon="inv_misc_toy_01" id="275" points="50" title="Veteran Nanny">
<criteria id="9167" name="Peanut"/>
<criteria id="9168" name="Willy"/>
<criteria id="9169" name="Egbert"/>
</achievement>
</category>
<category>
<achievement categoryId="155" dateCompleted="2009-06-22T15:33:00+10:00" desc="Slay Ahune in the Slave Pens." icon="spell_frost_summonwaterelemental" id="263" points="10" title="Ice the Frost Lord"/>
<achievement categoryId="155" desc="Dance at the ribbon pole for 60 seconds while wearing completed Midsummer set." icon="ability_mage_firestarter" id="271" points="10" title="Burning Hot Pole Dance"/>
<achievement categoryId="155" desc="Complete the quest, &quot;A Thief's Reward&quot;, by stealing the flames from your enemy's capital cities." icon="inv_helmet_08" id="1145" points="10" title="King of the Fire Festival"/>
<achievement categoryId="155" desc="Honor the flames of Eastern Kingdoms." icon="inv_summerfest_firespirit" id="1022" points="10" title="Flame Warden of Eastern Kingdoms">
<criteria id="3063" name="Arathi Highlands"/>
<criteria id="3064" name="Blasted Lands"/>
<criteria id="3065" name="Burning Steppes"/>
<criteria id="3066" name="Dun Morogh"/>
<criteria id="3067" name="Duskwood"/>
<criteria id="3068" name="Elwynn Forest"/>
<criteria id="3069" name="Hillsbrad Foothills"/>
<criteria id="3070" name="Loch Modan"/>
<criteria id="3071" name="Redridge Mountains"/>
<criteria id="3072" name="Stranglethorn Vale"/>
<criteria id="3073" name="The Hinterlands"/>
<criteria id="5078" name="Wetlands"/>
<criteria date="2009-06-28+10:00" id="3074" name="Western Plaguelands"/>
<criteria date="2008-12-08+11:00" id="3075" name="Westfall"/>
</achievement>
<achievement categoryId="155" desc="Honor the flames of Kalimdor." icon="inv_summerfest_firespirit" id="1023" points="10" title="Flame Warden of Kalimdor">
<criteria id="3076" name="Ashenvale"/>
<criteria id="3077" name="Azuremyst Isle"/>
<criteria id="3078" name="Bloodmyst Isle"/>
<criteria id="3079" name="Darkshore"/>
<criteria id="3080" name="Desolace"/>
<criteria date="2009-02-09+11:00" id="3081" name="Dustwallow Marsh"/>
<criteria id="3082" name="Feralas"/>
<criteria id="3083" name="Silithus"/>
<criteria id="3084" name="Tanaris"/>
<criteria id="3085" name="Teldrassil"/>
<criteria id="3087" name="Winterspring"/>
</achievement>
<achievement categoryId="155" desc="Honor the flames of Outland." icon="inv_summerfest_firespirit" id="1024" points="10" title="Flame Warden of Outland">
<criteria id="3089" name="Blade's Edge Mountains"/>
<criteria id="3090" name="Hellfire Peninsula"/>
<criteria id="3091" name="Nagrand"/>
<criteria id="3092" name="Netherstorm"/>
<criteria id="3093" name="Shadowmoon Valley"/>
<criteria id="3094" name="Terokkar Forest"/>
<criteria id="3095" name="Zangarmarsh"/>
</achievement>
<achievement categoryId="155" desc="Complete the Flame Warden of Eastern Kingdoms, Kalimdor and Outland achievements." icon="spell_fire_fireball" id="1034" points="10" title="The Fires of Azeroth">
<criteria id="3193" name="Flame Warden of Eastern Kingdoms"/>
<criteria id="3194" name="Flame Warden of Kalimdor"/>
<criteria id="3195" name="Flame Warden of Outland"/>
</achievement>
<achievement categoryId="155" desc="Desecrate the Horde's bonfires in Eastern Kingdoms." icon="spell_fire_masterofelements" id="1028" points="10" title="Extinguishing Eastern Kingdoms">
<criteria id="3131" name="Arathi Highlands"/>
<criteria id="3132" name="Badlands"/>
<criteria id="3133" name="Burning Steppes"/>
<criteria id="3134" name="Eversong Woods"/>
<criteria id="3135" name="Ghostlands"/>
<criteria id="3136" name="Hillsbrad Foothills"/>
<criteria id="3137" name="Silverpine Forest"/>
<criteria id="3138" name="Stranglethorn Vale"/>
<criteria id="3139" name="Swamp of Sorrows"/>
<criteria id="3140" name="The Hinterlands"/>
<criteria id="3141" name="Tirisfal Glades"/>
</achievement>
<achievement categoryId="155" desc="Desecrate the Horde's bonfires in Kalimdor." icon="spell_fire_masterofelements" id="1029" points="10" title="Extinguishing Kalimdor">
<criteria id="3142" name="Ashenvale"/>
<criteria id="3143" name="Desolace"/>
<criteria id="3144" name="Durotar"/>
<criteria id="3145" name="Dustwallow Marsh"/>
<criteria id="3146" name="Feralas"/>
<criteria id="3147" name="Mulgore"/>
<criteria id="3148" name="Silithus"/>
<criteria id="3149" name="Stonetalon Mountains"/>
<criteria id="3150" name="Tanaris"/>
<criteria id="3151" name="The Barrens"/>
<criteria id="3152" name="Thousand Needles"/>
<criteria id="3153" name="Winterspring"/>
</achievement>
<achievement categoryId="155" desc="Desecrate the Horde's bonfires in Outland." icon="spell_fire_masterofelements" id="1030" points="10" title="Extinguishing Outland">
<criteria id="3154" name="Blade's Edge Mountains"/>
<criteria id="3155" name="Hellfire Peninsula"/>
<criteria id="3156" name="Nagrand"/>
<criteria id="3157" name="Netherstorm"/>
<criteria id="3158" name="Shadowmoon Valley"/>
<criteria id="3159" name="Terokkar Forest"/>
<criteria id="3160" name="Zangarmarsh"/>
</achievement>
<achievement categoryId="155" desc="Complete the Extinguishing Eastern Kingdoms, Kalimdor and Outland achievements." icon="spell_fire_masterofelements" id="1035" points="10" title="Desecration of the Horde">
<criteria id="3196" name="Extinguishing Eastern Kingdoms"/>
<criteria id="3197" name="Extinguishing Kalimdor"/>
<criteria id="3198" name="Extinguishing Outland"/>
</achievement>
<achievement categoryId="155" desc="Juggle 40 torches in 15 seconds in Dalaran." icon="inv_torch_thrown" id="272" points="10" title="Torch Juggler">
<criteria id="6937" maxQuantity="40" quantity="0"/>
</achievement>
</category>
<category>
<achievement categoryId="155" desc="Drink the Brewfest beers listed below." icon="inv_drink_08" id="1184" points="10" title="Strange Brew">
<criteria id="3527" name="Barleybrew Clear"/>
<criteria id="3528" name="Barleybrew Dark"/>
<criteria id="3529" name="Barleybrew Light"/>
<criteria id="3531" name="Gordok Grog"/>
<criteria id="3534" name="Mudder's Milk"/>
<criteria id="3535" name="Ogre Mead"/>
<criteria id="3539" name="Thunder 45"/>
<criteria id="3540" name="Thunderbrew Ale"/>
<criteria id="3541" name="Thunderbrew Stout"/>
</achievement>
<achievement categoryId="155" desc="Obtain a Wolpertinger pet." icon="inv_drink_13" id="1936" points="10" title="Does Your Wolpertinger Linger?"/>
<achievement categoryId="155" desc="Eat 8 of the Brewfest foods listed below." icon="inv_holiday_beerfestpretzel01" id="1185" points="10" title="The Brewfest Diet">
<criteria id="3542" name="Dried Sausage"/>
<criteria id="3543" name="Pickled Sausage"/>
<criteria id="3544" name="Savory Sausage"/>
<criteria id="3545" name="Spiced Onion Cheese"/>
<criteria id="3546" name="Spicy Smoked Sausage"/>
<criteria id="3547" name="Succulent Sausage"/>
<criteria id="3548" name="The Essential Brewfest Pretzel"/>
<criteria id="3549" name="The Golden Link"/>
</achievement>
<achievement categoryId="155" desc="Join the Brew of the Month club." icon="inv_misc_beer_02" id="2796" points="10" title="Brew of the Month"/>
<achievement categoryId="155" desc="Sample 12 beers featured in the Brew of the Month club." icon="inv_holiday_brewfestbuff_01" id="1183" points="10" title="Brew of the Year">
<criteria id="3515" name="Wild Winter Pilsner"/>
<criteria id="3516" name="Stranglethorn Brew"/>
<criteria id="3517" name="Springtime Stout"/>
<criteria id="3518" name="Metok's Bubble Bock"/>
<criteria id="3519" name="Lord of Frost's Private Label"/>
<criteria id="3520" name="Izzard's Ever Flavor"/>
<criteria id="3521" name="Draenic Pale Ale"/>
<criteria id="3522" name="Blackrock Lager"/>
<criteria id="3523" name="Binary Brew"/>
<criteria id="3524" name="Bartlett's Bitter Brew"/>
<criteria id="3525" name="Autumnal Acorn Ale"/>
<criteria id="3526" name="Aromatic Honey Brew"/>
</achievement>
<achievement categoryId="155" desc="Fall 65 yards without dying while completely smashed during the Brewfest Holiday." icon="inv_cask_02" id="1260" points="10" title="Drunken Stupor"/>
<achievement categoryId="155" desc="Kill Coren Direbrew." icon="inv_misc_head_dwarf_01" id="295" points="10" title="Direbrewfest"/>
<achievement categoryId="155" desc="Defend the Brewfest camp from the Dark Iron attack and complete the quest, &quot;This One Time, When I Was Drunk...&quot;" icon="inv_ore_mithril_01" id="1186" points="10" title="Down With The Dark Iron"/>
<achievement categoryId="155" desc="While wearing 3 pieces of Brewfest clothing, get completely smashed and dance in Dalaran." icon="inv_misc_beer_01" id="293" points="10" title="Disturbing the Peace"/>
<achievement categoryId="155" desc="Obtain a Brewfest mount, or transform yours into one using Brewfest Hops." icon="inv_cask_01" id="303" points="10" title="Have Keg, Will Travel"/>
</category>
<category>
<achievement categoryId="155" dateCompleted="2008-10-21T22:52:00+11:00" desc="Show off your sparkling smile by using a Tooth Pick." icon="achievement_halloween_smiley_01" id="981" points="10" title="That Sparkling Smile"/>
<achievement categoryId="155" dateCompleted="2008-10-21T22:51:00+11:00" desc="Receive a handful of a candy from one of the Candy Buckets located in an inn." icon="inv_misc_food_30" id="972" points="10" title="Trick or Treat!"/>
<achievement categoryId="155" desc="Eat so many Tricky Treats that you get an upset tummy." icon="spell_shadow_plaguecloud" id="288" points="10" title="Out With It"/>
<achievement categoryId="155" desc="Kill the Headless Horseman." icon="inv_misc_food_59" id="255" points="10" title="Bring Me The Head of... Oh Wait"/>
<achievement categoryId="155" desc="Complete one of the quests to save a village from the Headless Horseman." icon="achievement_halloween_bat_01" id="289" points="10" title="The Savior of Hallow's End"/>
<achievement categoryId="155" desc="Obtain a Flimsy Mask during Hallow's End." icon="inv_mask_06" id="979" points="10" title="The Mask Task"/>
<achievement categoryId="155" desc="Collect the 20 unique Flimsy Masks listed below." icon="inv_mask_04" id="284" points="20" title="A Mask for All Occasions">
<criteria id="5079" name="Flimsy Female Blood Elf Mask"/>
<criteria id="5080" name="Flimsy Female Draenei Mask"/>
<criteria id="5081" name="Flimsy Female Dwarf Mask"/>
<criteria id="5082" name="Flimsy Female Gnome Mask"/>
<criteria id="5083" name="Flimsy Female Human Mask"/>
<criteria id="5084" name="Flimsy Female Nightelf Mask"/>
<criteria id="5085" name="Flimsy Female Orc Mask"/>
<criteria id="5086" name="Flimsy Female Tauren Mask"/>
<criteria id="5087" name="Flimsy Female Troll Mask"/>
<criteria id="5088" name="Flimsy Female Undead Mask"/>
<criteria id="5089" name="Flimsy Male Blood Elf Mask"/>
<criteria id="5090" name="Flimsy Male Draenei Mask"/>
<criteria id="5091" name="Flimsy Male Dwarf Mask"/>
<criteria id="5092" name="Flimsy Male Gnome Mask"/>
<criteria id="5093" name="Flimsy Male Human Mask"/>
<criteria id="5094" name="Flimsy Male Nightelf Mask"/>
<criteria id="5095" name="Flimsy Male Orc Mask"/>
<criteria id="5096" name="Flimsy Male Tauren Mask"/>
<criteria id="5097" name="Flimsy Male Troll Mask"/>
<criteria id="5098" name="Flimsy Male Undead Mask"/>
</achievement>
<achievement categoryId="155" desc="Ruin Hallow's End for the Horde by completing Sergeant Hartman's quests which involve crashing the wickerman festival and cleaning up the stinkbombs from Southshore." icon="achievement_halloween_rottenegg_01" id="1040" points="10" title="Rotten Hallow">
<criteria id="3216" name="Crashing the Wickerman Festival"/>
<criteria id="3217" name="The Power of Pine"/>
</achievement>
<achievement categoryId="155" desc="Earn 50 honorable kills while under the influence of the G.N.E.R.D. buff. It's a slap in the face!" icon="ability_warrior_rampage" id="1261" points="10" title="G.N.E.R.D. Rage">
<criteria id="3882" maxQuantity="50" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Use Weighted Jack-o'-Lanterns to put pumpkin heads on each of the races listed below." icon="inv_misc_bag_28_halloween" id="291" points="10" title="Check Your Head">
<criteria id="5772" name="Gnome"/>
<criteria id="5774" name="Blood Elf"/>
<criteria id="5775" name="Draenei"/>
<criteria id="5776" name="Dwarf"/>
<criteria id="5777" name="Human"/>
<criteria id="5778" name="Night Elf"/>
<criteria id="5779" name="Orc"/>
<criteria id="5780" name="Tauren"/>
<criteria id="5781" name="Troll"/>
<criteria id="5782" name="Undead"/>
</achievement>
<achievement categoryId="155" desc="Get transformed by the Hallowed Wands listed below." icon="achievement_halloween_ghost_01" id="283" points="10" title="The Masquerade">
<criteria id="3209" name="Transformed by Hallowed Wand - Bat"/>
<criteria id="3210" name="Transformed by Hallowed Wand - Ghost"/>
<criteria id="3211" name="Transformed by Hallowed Wand - Leper Gnome"/>
<criteria id="3212" name="Transformed by Hallowed Wand - Ninja"/>
<criteria id="3213" name="Transformed by Hallowed Wand - Pirate"/>
<criteria id="3214" name="Transformed by Hallowed Wand - Skeleton"/>
<criteria id="3215" name="Transformed by Hallowed Wand - Wisp"/>
</achievement>
<achievement categoryId="155" desc="Obtain a Sinister Squashling pet and Hallowed Helm." icon="achievement_halloween_cat_01" id="292" points="10" title="Sinister Calling">
<criteria id="5783" name="Sinister Squashling"/>
<criteria id="5785" name="Hallowed Helm"/>
</achievement>
<achievement categoryId="155" desc="Visit the Candy Buckets in Kalimdor." icon="achievement_halloween_candy_01" id="963" points="10" title="Tricks and Treats of Kalimdor">
<criteria id="2071" name="Ashenvale, Astranaar"/>
<criteria id="2073" name="Azuremyst Isle, Azure Watch"/>
<criteria id="2074" name="Bloodmyst Isle, Blood Watch"/>
<criteria id="2075" name="Darkshore, Auberdine"/>
<criteria id="2076" name="Darnassus, Craftsmen's Terrace"/>
<criteria id="2077" name="Desolace, Nijel's Point"/>
<criteria date="2008-10-21+11:00" id="2078" name="Dustwallow Marsh, Theramore Isle"/>
<criteria id="2079" name="Exodar, Seat of the Naaru"/>
<criteria id="2080" name="Feralas, Feathermoon Stronghold"/>
<criteria id="2081" name="Stonetalon Mountains, Stonetalon Peak"/>
<criteria id="2082" name="Teldrassil, Dolanaar"/>
<criteria id="2083" name="Barrens, Ratchet"/>
<criteria id="2084" name="Dustwallow Marsh, Mudsprocket"/>
<criteria id="2085" name="Silithus, Cenarion Hold"/>
<criteria id="2086" name="Tanaris, Gadgetzan"/>
<criteria id="2087" name="Winterspring, Everlook"/>
</achievement>
<achievement categoryId="155" desc="Visit the Candy Buckets in Eastern Kingdoms." icon="inv_misc_food_27" id="966" points="10" title="Tricks and Treats of Eastern Kingdoms">
<criteria id="2132" name="Dun Morogh, Kharanos"/>
<criteria id="2133" name="Duskwood, Darkshire"/>
<criteria id="2134" name="Elwynn Forest, Goldshire"/>
<criteria id="2135" name="Hillsbrad Foothills, Southshore"/>
<criteria id="2136" name="Hinterlands, Aerie Peak"/>
<criteria id="2137" name="Ironforge, The Commons"/>
<criteria id="2138" name="Loch Modan, Thelsamar"/>
<criteria id="2139" name="Redridge Mountains, Lakeshire"/>
<criteria id="2140" name="Stormwind, The Trade District"/>
<criteria id="2141" name="Westfall, Sentinel Hill"/>
<criteria date="2008-10-25+11:00" id="2142" name="Wetlands, Menethil Harbor"/>
<criteria id="2143" name="Eastern Plaguelands, Light's Hope Chapel"/>
<criteria id="2144" name="Stranglethorn Vale, Booty Bay"/>
</achievement>
<achievement categoryId="155" desc="Visit the Candy Buckets in Outland." icon="inv_misc_food_29" id="969" points="10" title="Tricks and Treats of Outland">
<criteria id="2195" name="Blade's Edge Mountains, Sylvanaar"/>
<criteria id="2196" name="Blade's Edge Mountains, Toshley's Station"/>
<criteria id="2197" name="Hellfire Peninsula, Honor Hold"/>
<criteria id="2198" name="Hellfire Peninsula, Temple of Telhamat"/>
<criteria id="2199" name="Nagrand, Telaar"/>
<criteria id="2200" name="Shadowmoon Valley, Wildhammer Stronghold"/>
<criteria id="2201" name="Terokkar Forest, Allerian Stronghold"/>
<criteria id="2202" name="Zangarmarsh, Orebor Harborage"/>
<criteria id="2203" name="Zangarmarsh, Telredor"/>
<criteria id="2204" name="Blade's Edge Mountains, Evergrove"/>
<criteria id="2205" name="Netherstorm, Area 52"/>
<criteria id="2206" name="Netherstorm, The Stormspire"/>
<criteria id="2207" name="Shattrath City"/>
<criteria id="2209" name="Zangarmarsh, Cenarion Refuge"/>
<criteria id="2210" name="Shadowmoon Valley, Aldor or Scryer Inn"/>
</achievement>
<achievement categoryId="155" desc="Complete the Kalimdor, Eastern Kingdoms and Outland Tricks and Treats achievements." icon="inv_misc_food_28" id="970" points="20" title="Tricks and Treats of Azeroth">
<criteria id="2228" name="Tricks and Treats of Kalimdor"/>
<criteria id="2229" name="Tricks and Treats of Eastern Kingdoms"/>
<criteria id="2230" name="Tricks and Treats of Outland"/>
</achievement>
</category>
<category>
<achievement categoryId="155" desc="Bounce food off a fellow feaster's head at a Bountiful Table." icon="ability_warrior_battleshout" id="3579" points="10" title="&quot;FOOD FIGHT!&quot;"/>
<achievement categoryId="155" desc="Cook up one of every Pilgrim's Bounty dish." icon="achievement_profession_chefhat" id="3576" points="10" title="Now We're Cookin'">
<criteria id="11119" name="Candied Sweet Potato"/>
<criteria id="11118" name="Cranberry Chutney"/>
<criteria id="11120" name="Pumpkin Pie"/>
<criteria id="11121" name="Slow-Roasted Turkey"/>
<criteria id="11122" name="Spice Bread Stuffing"/>
</achievement>
<achievement categoryId="155" desc="Acquire the Spirit of Sharing from a complete Bountiful Table feast at every Alliance capital." icon="inv_misc_organ_10" id="3556" points="10" title="Pilgrim's Paunch">
<criteria id="11078" name="Darnassus"/>
<criteria id="11080" name="The Exodar"/>
<criteria id="11079" name="Ironforge"/>
<criteria id="11081" name="Stormwind"/>
</achievement>
<achievement categoryId="155" desc="While wearing either a Pilgrim's Dress, Robe, or Attire, take a seat at each enemy capital's Bountiful Table." icon="inv_bannerpvp_01" id="3580" points="10" title="Pilgrim's Peril">
<criteria id="11134" name="Orgrimmar"/>
<criteria id="11135" name="Silvermoon City"/>
<criteria id="11136" name="Thunder Bluff"/>
<criteria id="11137" name="Undercity"/>
</achievement>
<achievement categoryId="155" desc="Complete each of the Pilgrim's Bounty dailies." icon="inv_helmet_65" id="3596" points="10" title="Pilgrim's Progress">
<criteria id="11201" name="Can't Get Enough Turkey"/>
<criteria id="11200" name="Don't Forget The Stuffing!"/>
<criteria id="11202" name="Easy As Pie"/>
<criteria id="11198" name="She Says Potato"/>
<criteria id="11199" name="We're Out of Cranberry Chutney Again?"/>
</achievement>
<achievement categoryId="155" desc="Pass one of every dish at a Bountiful Table." icon="spell_holy_layonhands" id="3558" points="10" title="Sharing is Caring">
<criteria id="11086" name="Candied Sweet Potatoes"/>
<criteria id="11167" name="Cranberry Chutney"/>
<criteria id="11088" name="Pumpkin Pie"/>
<criteria id="11089" name="Slow-Roasted Turkey"/>
<criteria id="11090" name="Spice Bread Stuffing"/>
</achievement>
<achievement categoryId="155" desc="Defeat Talon King Ikiss while wearing a Pilgrim's Hat and either a Pilgrim's Dress, Robe, or Attire." icon="achievement_boss_talonkingikiss" id="3582" points="10" title="Terokkar Turkey Time"/>
<achievement categoryId="155" desc="Hunt enough Wild Turkeys quickly enough to gain Turkey Triumph." icon="ability_hunter_silenthunter" id="3578" points="10" title="The Turkinator"/>
<achievement categoryId="155" desc="Blast those dirty, sneaking Rogues with your Turkey Shooter." icon="inv_torch_unlit" id="3559" points="10" title="Turkey Lurkey">
<criteria id="11163" name="Blood Elf Rogue"/>
<criteria id="11164" name="Dwarf Rogue"/>
<criteria id="11165" name="Gnome Rogue"/>
<criteria id="11158" name="Human Rogue"/>
<criteria id="11159" name="Night Elf Rogue"/>
<criteria id="11160" name="Orc Rogue"/>
<criteria id="11161" name="Troll Rogue"/>
<criteria id="11162" name="Undead Rogue"/>
</achievement>
</category>
<category>
<achievement categoryId="155" dateCompleted="2008-12-26T12:34:00+11:00" desc="Open one of the presents underneath the Winter Veil tree once they are available." icon="inv_holiday_christmas_present_01" id="1689" points="10" title="He Knows If You've Been Naughty"/>
<achievement categoryId="155" dateCompleted="2008-12-18T13:46:00+11:00" desc="Throw a snowball at King Magni Bronzebeard during the Feast of Winter Veil." icon="inv_ammo_snowball" id="1255" points="10" title="Scrooge"/>
<achievement categoryId="155" desc="Save Metzen the Reindeer." icon="achievement_worldevent_reindeer" id="273" points="10" title="On Metzen!"/>
<achievement categoryId="155" desc="Earn 50 honorable kills as a Little Helper from the Winter Wondervolt machine." icon="achievement_worldevent_littlehelper" id="252" points="10" title="With a Little Helper from My Friends">
<criteria id="3829" maxQuantity="50" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Complete the Bomb Them Again! quest while mounted on a flying reindeer during the Feast of Winter Veil." icon="achievement_worldevent_xmasogre" id="1282" points="10" title="Fa-la-la-la-Ogri'la"/>
<achievement categoryId="155" desc="During the Feast of Winter Veil, wear 3 pieces of winter clothing and eat Graccu's Mince Meat Fruitcake." icon="inv_food_christmasfruitcake_01" id="277" points="10" title="'Tis the Season">
<criteria id="4234" name="Graccu's Mince Meat Fruitcake x"/>
</achievement>
<achievement categoryId="155" desc="Gain 25 crashes with your Crashin' Thrashin' Racer during the Feast of Winter Veil." icon="inv_gizmo_goblingtonkcontroller" id="1295" points="10" title="Crashin' &amp; Thrashin'">
<criteria id="4090" maxQuantity="25" quantity="0"/>
</achievement>
<achievement categoryId="155" desc="Complete the quest to retrieve Smokywood Pastures' stolen treats and receive a Smokywood Pastures' Thank You." icon="inv_helmet_68" id="279" points="10" title="Simply Abominable"/>
<achievement categoryId="155" desc="During the Feast of Winter Veil, use a Handful of Snowflakes on each of the race/class combinations listed below." icon="spell_frost_frostshock" id="1687" points="10" title="Let It Snow">
<criteria id="6237" name="Orc Death Knight"/>
<criteria id="6238" name="Human Warrior"/>
<criteria id="6239" name="Tauren Shaman"/>
<criteria id="6240" name="Night Elf Druid"/>
<criteria id="6241" name="Undead Rogue"/>
<criteria id="6242" name="Troll Hunter"/>
<criteria id="6243" name="Gnome Mage"/>
<criteria id="6244" name="Dwarf Paladin"/>
<criteria id="6245" name="Blood Elf Warlock"/>
<criteria id="6246" name="Draenei Priest"/>
</achievement>
<achievement categoryId="155" desc="Use Mistletoe on the Alliance &quot;Brothers&quot; during the Feast of Winter Veil." icon="inv_misc_herb_09" id="1686" points="10" title="Bros. Before Ho Ho Ho's">
<criteria id="6228" name="Brother Nimetz in Stranglethorn Vale"/>
<criteria id="6236" name="Brother Anton in Nijel's Point"/>
<criteria id="6229" name="Brother Wilhelm in Goldshire"/>
<criteria id="6231" name="Brother Karman in Theramore"/>
<criteria id="6230" name="Brother Kristoff in Stormwind"/>
<criteria id="6232" name="Brother Joshua in Stormwind"/>
<criteria id="6233" name="Brother Crowley in Stormwind"/>
<criteria id="6234" name="Brother Cassius in Stormwind"/>
<criteria id="6235" name="Brother Benjamin in Stormwind"/>
</achievement>
<achievement categoryId="155" desc="During the Feast of Winter Veil, use your culinary expertise to produce a Gingerbread Cookie, Egg Nog and Hot Apple Cider." icon="inv_misc_food_62" id="1688" points="10" title="The Winter Veil Gourmet">
<criteria id="6247" name="Gingerbread Cookie"/>
<criteria id="6248" name="Egg Nog"/>
<criteria id="6249" name="Hot Apple Cider"/>
</achievement>
<achievement categoryId="155" desc="During the Feast of Winter Veil, use your Winter Veil Disguise kit to become a snowman and then dance with another snowman in Dalaran." icon="spell_frost_frostward" id="1690" points="10" title="A Frosty Shake">
<criteria id="6257" name="Winter Veil Disguise Kit"/>
</achievement>
<achievement categoryId="155" desc="Pelt the enemy leaders listen below." icon="inv_weapon_rifle_01" id="4436" points="10" title="BB King">
<criteria id="12662" name="Cairne Bloodhoof"/>
<criteria id="12661" name="Lady Sylvanus Windrunner"/>
<criteria id="12660" name="Lor'themar Theron"/>
<criteria id="12658" name="Thrall"/>
<criteria id="12659" name="Vol'jin"/>
</achievement>
</category>
<category>
<achievement categoryId="155" dateCompleted="2009-09-06T06:50:00+10:00" desc="Earn the right to represent the Gnomeregan Exiles in the Argent Tournament." icon="inv_misc_tournaments_symbol_gnome" id="2779" points="10" title="Champion of Gnomeregan"/>
<achievement categoryId="155" dateCompleted="2009-07-26T14:44:00+10:00" desc="Unmask and defeat the Black Knight at the Argent Tournament." icon="inv_helmet_44" id="2773" points="10" title="It's Just a Flesh Wound"/>
<achievement categoryId="155" dateCompleted="2009-07-20T13:41:00+10:00" desc="Best a rider of every racial faction at the Argent Tournament." icon="inv_spear_05" id="2836" points="10" title="Lance a Lot">
<criteria id="9918" name="Darnassus"/>
<criteria id="10224" name="The Exodar"/>
<criteria id="10225" name="Gnomeregan"/>
<criteria id="10226" name="Ironforge"/>
<criteria id="10227" name="Orgrimmar"/>
<criteria id="9919" name="Sen'jin"/>
<criteria date="2009-07-20+10:00" id="9920" name="Silvermoon City"/>
<criteria id="10228" name="Stormwind"/>
<criteria id="9921" name="Thunder Bluff"/>
<criteria id="9922" name="The Undercity"/>
</achievement>
<achievement categoryId="155" dateCompleted="2009-07-19T14:13:00+10:00" desc="Earn exalted status with and the right to represent Stormwind in the Argent Tournament." icon="inv_misc_tournaments_symbol_human" id="2764" points="20" reward="Title Reward: of Stormwind" title="Exalted Champion of Stormwind">
<achievement categoryId="155" dateCompleted="2009-07-19T14:13:00+10:00" desc="Earn the right to represent Stormwind in the Argent Tournament." icon="inv_misc_tournaments_symbol_human" id="2781" points="10" title="Champion of Stormwind"/>
</achievement>
<achievement categoryId="155" dateCompleted="2009-07-10T16:28:00+10:00" desc="Train to compete in the Argent Tournament by becoming a Valiant for your race's faction." icon="achievement_reputation_argentchampion" id="2758" points="20" title="Argent Valor">
<achievement categoryId="155" dateCompleted="2009-07-05T05:48:00+10:00" desc="Train to compete in the Argent Tournament by becoming an Aspirant for your race's faction." icon="achievement_reputation_argentcrusader" id="2756" points="10" title="Argent Aspiration"/>
</achievement>
<achievement categoryId="155" desc="Defeat another player in a mounted duel at the Argent Tournament." icon="inv_spear_05" id="2772" points="10" title="Tilted!"/>
<achievement categoryId="155" desc="Purchase and use an Argent Pony from Dame Evniki Kapsalis, the Crusader's Quartermaster." icon="ability_mount_ridinghorse" id="3736" points="10" title="Pony Up!"/>
<achievement categoryId="155" desc="Earn the right to represent Darnassus in the Argent Tournament." icon="inv_misc_tournaments_symbol_nightelf" id="2777" points="10" title="Champion of Darnassus"/>
<achievement categoryId="155" desc="Earn the right to represent the Exodar in the Argent Tournament." icon="inv_misc_tournaments_symbol_draenei" id="2778" points="10" title="Champion of the Exodar"/>
<achievement categoryId="155" desc="Earn exalted status with and the right to represent the Gnomeregan Exiles in the Argent Tournament." icon="inv_misc_tournaments_symbol_gnome" id="2762" points="20" reward="Title Reward: of Gnomeregan" title="Exalted Champion of Gnomeregan">
<criteria id="9680" name="Exalted with Gnomeregan Exiles"/>
<criteria date="2009-09-06+10:00" id="9660" name="Champion of Gnomeregan"/>
</achievement>
<achievement categoryId="155" desc="Earn the right to represent Ironforge in the Argent Tournament." icon="inv_misc_tournaments_symbol_dwarf" id="2780" points="10" title="Champion of Ironforge"/>
<achievement categoryId="155" desc="Earn the right to represent every Alliance race's faction in the Argent Tournament." icon="inv_misc_tournaments_banner_human" id="2782" points="10" title="Champion of the Alliance">
<criteria id="9778" name="Champion of Darnassus"/>
<criteria id="9779" name="Champion of the Exodar"/>
<criteria date="2009-09-07+10:00" id="9780" name="Champion of Gnomeregan"/>
<criteria date="2009-09-07+10:00" id="9781" name="Champion of Stormwind"/>
<criteria id="9782" name="Champion of Ironforge"/>
</achievement>
<achievement categoryId="155" desc="Earn both exalted status with The Silver Covenant and the right to represent a city in the Argent Tournament." icon="inv_elemental_primal_mana" id="3676" reward="Unlocks Silver Covenant dailies at the Argent Tournament." title="A Silver Confidant"/>
</category>
</category>
</achievements>

Using PHP for reading the WoW Armory

October 14th, 2009

I’ve been playing around with extracting data from the WoW Armory. The main problem with reading from the armory is that if you don’t specify the correct user agent the armory returns you some nicely formatted HTML. Which is fine for browsing - but if you want to extract data you’ll want the XML version.

All the examples I found to do this via PHP require the curl library to be installed - however the easier alternative is just to use file_get_contents after setting the appropriate user agent via ini_set:

PHP:

ini_set("user_agent""Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1");
$xml file_get_contents($url);

fuse-j for java 6

November 29th, 2007

I’ve been looking into fuse as a preliminary to a project I’m thinking of starting.

Anyway given as I was looking to work in Java I had a look at fuse-j. Trying to compile it under java 6 failed however, because (as aptly pointed out in the fuse-j discussion forums) Java 6 allows duplicate functions with the same parameters, but different return types, and java.nio.ByteBuffer has two such methods.

A quick change of the jni generator to also include the return type, and a modification of the function calls within the C code and the zip filesystem example is working.

So a java 6 compatible version is available:

http://www.gameldar.fdns.net/fuse-j-2.4-prerelease1-java6.tar.gz

Java3D and Compiz Working!

November 11th, 2007

I have it working now. Basically all the steps were in place, I just need to work out how to get the drawing to happen immediately… I was using gtk_widget_queue_draw(window); and it would basically only update as I waved the mouse across the window… eventually I found the extra bit that forced the render to work immediately (gtk_widget_queue_draw(window); waits until all pending events are processed) and added the part code to process these events:

gdk_window_process_updates(GTK_WIDGET(window)->window, true);

Now this worked… but only for about 30 seconds before I ended up with an Xlib:
Xlib: unexpected async reply (sequence 0x6eb)!

A quick search showed that basically this was a problem because I was trying to process the drawing in the thread from Java, not GTK+ main thread. After a weeks delay … given life factors - I finally worked out the last step - thanks to the the GTK+ FAQ:

http://www.gtk.org/faq/#AEN482

So it now works… I’m not sure it is fast enough… particularly with more complex processing… but we’ll see how it operates.

I’ll post code later.
I’ve created a video of it working:
http://www.gameldar.fdns.net/jcompiz_small.avi