<p>As a long time World of Warcraft player, and a passionate developer I have decided that I would like to combine the two and set about developing some addins.  Not only to improve my gameplay experience but as a great opportunity to learn something new.</p>

<p>Does anyone have any advice on how to go about starting out?</p>

<p>Is there an IDE one can use?  How does one go about testing?  Are there any ready made libraries available?  Or would I get a better learning experience by ignoring the libraries and building from scratch? How do I oneshot Hogger?</p>

<p>Would love to hear your advice, experiences and views.</p>

[{'answer_id': 6863, 'author': 'Michael Stum', 'author_id': 91, 'author_profile': 'https://Stackoverflow.com/users/91', 'pm_score': 6, 'selected': True, 'text': '<p><a href="http://www.wowwiki.com/Getting_started_with_writing_addons" rel="noreferrer">This article</a> explains how to start pretty well.</p>\n\n<p>Your first bookmark is possibly the US Interface Forum, especially the Stickies for that:</p>\n\n<p><a href="http://us.battle.net/wow/en/forum/1011693/" rel="noreferrer">http://us.battle.net/wow/en/forum/1011693/</a></p>\n\n<p>Then, grab some simple addons to learn how XML and LUA interacts. The <a href="http://www.wowwiki.com/Category:HOWTOs" rel="noreferrer">WoWWiki HOWTO List</a> is a good point here as well.</p>\n\n<p>One important thing to keep in mind: World of Warcraft is available in many languages. If you have a EU Account, you got an excellent testing bed by simply downloading the language Packs for Spanish, German and French. If you\'re an US Guy, check if you can get the Latin America version. That way, you can test it against another language version.</p>\n\n<p>Once you made 1 or 2 really small and simple addons just to learn how to use it, have a look at the various frameworks. <a href="http://www.wowace.com/" rel="noreferrer">WowAce</a> is a popular one, but there are others.</p>\n\n<p>Just keep one thing in mind: Making an Addon is work. Maintaining one is even more work. With each new Patch, there may be breaking changes, and the next Addon will surely cause a big Exodus of Addons, just like Patch 2.0.1 did.</p>\n'}, {'answer_id': 6882, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 3, 'selected': False, 'text': '<p>Another useful tools you might like is <a href="http://www.codeplex.com/WarcraftAddOnStudio" rel="noreferrer">WarcraftAddOnStudio</a> which lets you make plugins in the visual studio environment.</p>\n'}, {'answer_id': 39749, 'author': 'slm', 'author_id': 4262, 'author_profile': 'https://Stackoverflow.com/users/4262', 'pm_score': 3, 'selected': False, 'text': '<p>The best way to start is with the book <strong>World of Warcraft Programming</strong>. It covers LUA, XML, WarcraftAddOnStudio and the WoW API. The book also has sections on best practices and avoiding common mistakes.</p>\n'}, {'answer_id': 55732, 'author': 'John Calsbeek', 'author_id': 5696, 'author_profile': 'https://Stackoverflow.com/users/5696', 'pm_score': 3, 'selected': False, 'text': '<p>I learned the art of add-ons primarily by looking at the code of Blizzard\'s UI. You can see that code by <a href="http://us.blizzard.com/support/article.xml?articleId=21466" rel="noreferrer">extracting the default UI</a> or <a href="http://wowcompares.com/" rel="noreferrer">finding a copy of the default UI online</a>. Add-on developers sometimes like to over-engineer their pet projects (who doesn\'t?), while Blizzard\'s code is usually pretty no-nonsense and straightforward. In addition, <a href="http://www.lua.org/pil/" rel="noreferrer">Programming in Lua</a> is a pretty useful (if slightly out-of-date) reference for the actual Lua language.</p>\n'}]
['https://Stackoverflow.com/questions/6859', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/770/']