Wow armory bank parser and some other things
I made several programs while playing world of warcraft. He's three of them.
Bank Parser
While I was playing the World of Warcraft with my friends, we formed a guild. We used the guild vault to pool resources in a sort of communist style system. My guild leader wanted to ensure that everyone was being generally fair with their contribution and usage of resource. So I endeavored to write a program to analyze the guild bank log from wowarmory.com. Getting at the data is not too hard, as the whole website is sent as XML and then transformed in the browser with XSLT. I wrote one program to download the XML pages and load and display them. The code can be found on Github.
I'm not posting a binary because this project has not been updated since Blizzard switched to using Battle.net accounts for log-in. So currently it does not work, but it should not be too much trouble to update it.
Flying Mount Macro
While this is by definition less than 255 characters, that is why it was so difficult to make.
/run m={1,34,35,40};z=GetZoneText();if IsFlyableArea() and(((z~="Dalaran")or(GetSubZoneText() =="Krasus' Landing"))and(z~="Wintergrasp"))then m={11,26};end
/run CallCompanion("MOUNT",m[math.random(1, #m)]);
It will randomly select a ground mount while in old world, dalaran (but not Krasus' Landing), or wintergrasp. While in any other part of northrend or out land, it will select a random flying mount. It is kinda cumbersome to use, as the mounts are specified by their position in the mounts window. The first m= is ground mounts will the second is flying mounts. This only has to be updated every time you get a new mount ;-).
I know there are addons such as Mounted that give you a nice UI and don't break every time a new mount is added, but I found my macro to be more reliable once I got it working.
Wowhead downloader and scanner
Wowhead.com has a ton of useful information on it. For certain tasks it can be handy to have a copy of their website on your hard drive. For example, the bank parser could be augmented to see if any materials lying around could be crafted into an item. Pointing a conventional web spider at wowhead does not work because of the site's intense usage of javascript. However I noticed that the javascript used to define links to other pages was not too far from being JSON (duh, since JSON is just a subset of javascript). For all the details see the code on Github.




