Given I've been trying to help a few people recently with setting up some WeakAuras stuff, I thought it would be helpful to make a thread for questions and answers about accomplishing specific tasks with this awesome addon that I know doesn't get enough use or attention!
Download: http://www.wowace.com/addons/weakauras/
First, I cannot stress how powerful this addon is. The very basic functionality is to give an indicator or warning for something happening that you care about. That said, it can essentially perform any check or do anything you want to trigger a warning -- anything that can be done by another addon through the WoW API can be used as a trigger for a WeakAuras warning.
Unlike PowerAuras, which has a limited set of built-in triggers (Buff, Debuff, Health, Stance, etc.), WeakAuras has two very powerful features that let it check virtually anything.
1. Combat Log Events
Anything that passes through the game engine to the combat log (that would be output to something like World of Logs) can be used as a trigger. So maybe you want to know when a specific mob begins to cast a particular spell. Or perhaps when a specific aura is applied. Again, because it's the combat log, you don't need to utilize your target, focus, or any such nonsense. That's extremely powerful for certain boss fights and knowing what is going on.
2. Custom LUA Triggers
If the normal stuff doesn't suffice and you want to run a extremely specific check to trigger your indicator, you can create completely custom triggers from LUA code (which I'll gladly write for you if you ask here). For example, I use some custom triggers for help with my balance DPS rotation, which I'll explain below.
WeakAuras is also great in that it doesn't waste resources, and has a number of "Load" settings that determine when a trigger will load itself (that is, if it isn't loaded, it won't check the trigger or waste memory). You can do it by zone, player, class, spec, instance type, etc; which has come in very handy for me.
Anyway, onto a few examples, but I strongly encourage people to install this and post here with requests for something they want to know.
TIP: When editing anything that requires text input, be sure to hit "Enter" or click Accept afterward so it gets saved.
In-City Repair Warning
I had a problem remembering to repair often when returning to towns, and hated showing up to a group/raid not at 100%, so I created a few Auras to warn me when my gear was at certain durability levels based on where I was.
Code:
duKnkaaka1PasZsI6wGODPq6xsPyysrhduwgq5ziKPbsxJeTnj03OigNuY5qKENuQMNukDpkshuHAHsKEOuinrG4IiQ2OuWhLiCskQvskVeHIMjcv3eHs7eO6NkedfrzPaYtvAQuQRIiSvPq8vekCwerZvcAVO(lL0GjoSqlwc8ys1Kv0LPAZK0NrWOPeNgPxlrKzdWTPWUH8BPA4ky5q9CjnDrxxW2bHVlfQXtcNhuTEjIA)QMHX28gzBo5TYlSrHwqrEn4DY7KT5T6aujRtrjVLoIT9ielXjVbBEJZjnPDueG1etjqWXv2MtEDfdr00NCb8IDc0oYg(GZlbCpmWl8ruvREYnazlLkHrAtOkjTOsWkcgmySkKqlYlDYlq(qKI5vXiQQvp5gu2SOjqbJiyqvcMsyerutwfsLGXjV6Sndom2Mx1okxAj7m4GPK3jToaic32vK8cKpePyEHpIQA1tUbivAcrkjTjrfH1sPjfvcJiwfsOT4nQN0oQY28wZiozBER9aAYRzu6y1OUx445SJQfsm8yjnoGJ1cjR3yhpoGJvI1N0yHBpGM1cjFjBmqetyJ2jqG3z3AThqtUuo5K34CstAhfbynXuceCCLT5K3etjqWXSnVj8bNx9qn7g8QhQz3WQf605vpuZUbV6HA2nSMWhCEDiCuYRdHJYkVKr8XKKCGSscYazSn5wbI812m4LOmjidKX2KB1m4nc5GBpcqK0kiKaOXLAM4MTjjV6HA2n4vnG0tAhDbyqV2Llu1lMRa51KIiamOxslo6AxUC5cGUEeWfAz9aUSruX1UC5Yf1o(c1uyLH16YSFTlxUC5Yf9aUSruHPLWtZiiCu2XWnNUbibCSakaAchykOx7YLlxUCHQErpGVerZlgrfxslo6AxUC5YLlxUqvVaSEa3gJOcqV02lnhL0lPfhDTlxUC5YLlxUCb7zaJUK4GFTlxUC5YLlxC08AxUC5YLloAETlxUCXrZRD5YLlypdy0f1iGQFTlxC08AoAYBa5q4OK3KA4tEdv3AartUuo5f7eODKn8bN30vK82y6mTWnueQjTmbkPnHbRiuWAcLuwfsOf5nGsmLabhZ28QhQz3Gx1aspPD0fGb9AxUC5cv9cQNxmxbYRjfrayqVKwC0fSNbm6sId(fhnV2LlxUaORhbCHwwpGlBevCTlxUCrTJVqnfwzyTUm7x7YLlxUCrpGlBevyAj80mcchLDmCZPBasahlGcGMWbMc61UC5YLlxOQx0d4lr08IruXL0IJU2LlxUC5YLlu1laRhWTXiQa0lT9sZrj9sAXrx7YLlxUC5YLlxWEgWOlQrav)AxUC5YLlxU4O51UC5YLlxC08AxUC5IJMx7YLlxWEgWOljo4xZrto5nIOgXK2rSnV1mIt2M3e(GZ7a2REY7a2REYBDGIJa4KxJifX28MWhCEhWE1tEhWE1tEJagSejlaO6CYjVwCkblj3GsLqv2QyRMereyql2IuOSkKqnHx6KxG8HifdzJst4CYGdgBZRAhLlTKDgCWuY7KwhaeHB7ksEbYhIumVWhrvT6j3aKknHiLK2KOIWAP0KIkHreRcj0w8g1tAhvzBERzeNSnV1Ean51mkDSAu3lC8C2r1cjgESKghWXAHK1BSJhhWXkX6tASWThqZAH6wIOe6ODce4D2Tw7b0KlLto5nXuceCmBZBThW6EartEhaeH7yEdv3AartUuEt4doV6HA2n4nGCiCuYBsn8jV00napA4m4W4vpuZUHvl0PZREOMDdEDiCuYBJ2nkiMxiENaV1qboeok3GQkvbV8QhQz3WAcFW51HWrjVoeokR8sgXhtsYbYkiKpgKYKGmqgBtUvZG3iKdU9iarsRGqcGgxQzIB2MK8gQU1ApG19aIMCP8gQUvA6gGhnCUuE1d1SBWRAaPN0ocyqVaORhbCHwwpGlBev0(1u74lutHvgwRlZ(10d4YgrfMwcpnJGWrzhd3C6gGeWXcOaOjCGPG2(1OQx0d4lr08IruXL0IJUgv9cW6bCBmIka9sBn9sZrb7sAXrxd7zaJUK4G3(1C08AoAEnhnVg2ZagDrncO6TFnhn5TgkWHWrjzyxLQGxsaUzBRGyMCq4KxStG2r2WhCEtxrYBJPZ0c3qrOM0YeOK2egSIqbRjuszviHwK3akXuceCmBZREOMDdEvdi9K2rad6faD9iGl0Y6bCzJOI2VMAhFHAkSYWADz2VMEax2iQW0s4Pzeeok7y4Mt3aKaowafanHdmf02Vgv9IEaFjIMxmIkUKwC01OQxawpGBJrubOxARPxAokyxslo6Aypdy0f1iGQ3(1C08AoAEnhnVg2ZagDjXbV9R5OjN8gruJys7i2M3AgXjBZBcFW5Da7vp5Da7vp5ToqXraCYRrKIyBEt4doVdyV6jVdyV6jVradwIKfauDo5KxloLGLKBqPsOkBvSvtIicmOfBrkuwfsOMWlDYlq(qKIHeKaowafanHZBCoPjTJIaSMykbcoUY2CYjN8cbdomOnBYjZa
Note: This warning will not display if your gear is above 90% durability, but if you want that value to change, alter the "0.9" in both places above to whatever decimal you want, so 0.95 will warn you when below 95% durability.
General Purpose Repair Warning
I didn't want an entire mod (and don't have the default repair guy cause he sucks), so this will simply warn you when your equipment falls under 20% durability regardless of your location.
Code:
dqeCeaakvkNcenlbClss7IKYVeKAysjogOSmsQEMI00iLUgOABsP(MqmoH05uj8oHY8eu19aHdQiwij4HcImrQuxKezJQe9rbvojvYkjvZuLu3uqODku9tbLgkjQLss8urtvsUQkjBvqWxfK0zLsAUKq7f6ViLblvhgvlwLQhJKjRWLj2mv8zKQrtkonIxliQzlf3wf7wPFlXWLulxvpNQMoLRJY2fOVlOy8G05vuRxqI9dmcdRW8G5aZbwHPtzTKekcgxD4yoi(6g(CLa1WufPMtEmzR9e60LhRWKI5TYbth2szKYEdsqVPqXBaDsak2h4WHgdO7uEqNabSaWIc6JcqNI9boCOqeoXCTbL1k)SltoUzp)oPHyZ3iqgdOtCaDk2d68Da6houq30ilqN4a63OyFOpCOqc6HhcqVf1uh0nnYc0FXy)c6o8gVedOl7aOl7aOl7aO)IX(f0TNjXa6YoqdZxOtkB1CTGPjqnm5ugPSESctVXFdRW0xy7atxRjVdNsuCYyuwVIHQWd5jSN7vu5syKFc75(qugeUIzHTdVIuA4RPvTcD6yok08f2oqfqdnmTNqNU8yfMetoX5hbJddtkM3khAAidbtkM3khmT5AbtkM3khmzReuwdtJCKbME2DjOSMYV4qGI5vXDvrZTlLCJjZl0ylXqfWK5fAetoX5hbvatkM3khA2CTGPeuwdtjOSgMHu5CNBG(1f6ysX8w5GPdBPmszVbjO3uO4nGojaf7dC4qJb0DkpOtGawayrb9rbOtX(ahouicNyU2GYALF2Ljh3SNFN0qS5BeiJb0joGof7bD(oa9dhkOBAKfOtCa9BuSp0houib9WdbO3IAQd6Mgzb6VySFbD7zsmGUSdGUSdGUSdG(lg7xq3H34LyaDzhyY8cnFH9ucBjgQaME2DjOSwYCCiqXetjOSMhtLVEsRkPcn3knXDGRu29KkLO5kEiOu8QWQsR0CFLktuW11UQAftFH9ucBjgM1n8z5rdZ5W644fdVuv4rMc)IwM2gwu4rAdh2u0rvTrXmmKHPbVST2irJO9I2A1grl8ixmfDuvBBm5l5WnszXkm9g)nSctBUwWS(fVyyw)Ixmm91KN3GgMhozXkmT5AbZ6x8IHz9lEXWK3uRHRmRXlOHgMAecDngEjC4AHhTnSPrH3gEe4rHHoQQncMKbMQi1CYRQB2ZVtAi2mM8XGyKYYBOzpHoD59yfAOHPhtyQnvn1Xmigh20wuhneba
Moonkin Rotation Helpers
These were all made to help me keep track of my Balance rotation crap, cause otherwise I suck (worse than normal). The key things I wanted were to tell me when my target does not have my dots (moonfire or insect swarm) AND even if those dots were up, to warn me when they had under 3 seconds left (and thus could be recast without clipping any ticks). I also wanted to know when my primary cooldowns were available, especially Starsurge when it normally came off cooldown but also when a Shooting Stars proc reset the CD instantly.
To see what it sorta looks like in-game, I've attached a couple screenshots. Ignore the words and the bar underneath, that's a different addon, but the 5 icons are the WeakAuras part, and when they are visible, it means I can and should use it. It's also worth noting that WeakAuras lets you "Group" individual Auras together, so you can edit various general settings for all Auras in that group simultaneously. I have all my Balance stuff grouped, so I can move them as one around the screen, or resize them, or set their load trigger to be the same (meaning, they all load when I'm Balance speced only); pretty handy.
I won't explain them all, but you can use these guidelines for your own versions for other spells.
Self-Applied Debuff/DoT Warning
This will display the icon you specify when your current target does not have that Debuff/DoT applied by you currently active, or if it's active, when it has under 3 seconds remaining. This makes keeping DoTs active very simple as you can see the icon pop, spam that button for your next GCD, and never worry about clipping or losing the DoT.
1. Type: Icon
2. Display > Display Icon: Spell_Nature_StarFall (Moonfire icon, change to whatever you want)
3. Trigger > Main Trigger > Type: Custom
4. Main Trigger > Event Type: Status
5. Main Trigger > Check On...: Every Frame
6. Main Trigger > Custom Trigger:
Code:
function()
local t = GetTime();
local _,_,_,_,_,_,eM,uM = UnitDebuff('target', 'Moonfire')
local _,_,_,_,_,_,eS,uS = UnitDebuff('target', 'Sunfire')
if (eM and (eM - t) <= 3 and uM == 'player') or (eS and (eS - t) <= 3 and uS == 'player') or (not eM and not eS) then
return true;
end
return false;
end
7. Main Trigger > Custom Untrigger:
Code:
function()
local t = GetTime();
local _,_,_,_,_,_,eM,uM = UnitDebuff('target', 'Moonfire')
local _,_,_,_,_,_,eS,uS = UnitDebuff('target', 'Sunfire')
if (eM and (eM - t) >= 3 and uM == 'player') or (eS and (eS - t) >= 3 and uS == 'player') then
return true;
end
return false;
end
8. Main Trigger > Conditions > In Combat: Checked
9. Load > Talent Specialization: First Tree (Balance) [Change as appropriate or don't check if you want it to load for all specs]
Note: This trigger actually checks for two different debuffs, since Druid Moonfire is sometimes Moonfire and sometimes Sunfire. If you want to check for two different debuffs, use the above Trigger/Untrigger, changing the names appropriately (Moonfire and Sunfire). If you want just a single debuff to check, use these instead (again changing Insect Swarm to your debuff name):
Custom Trigger:
Code:
function()
local t = GetTime();
local _,_,_,_,_,_,e,u = UnitDebuff('target', 'Insect Swarm')
if (not e) or (e and (e - t) <= 3 and u == 'player') then
return true;
end
return false;
end
Custom Untrigger:
Code:
function()
local t = GetTime();
local _,_,_,_,_,_,e,u = UnitDebuff('target', 'Insect Swarm')
if (e and (e - t) >= 3 and u == 'player') then
return true;
end
return false;
end
Spell Cooldown (For Spells That Can Proc Instant CD Refreshes)
As described above, this is a fairly basic thing, but because of the way the actual "cooldown" of abilities works, you have to use a custom trigger to check the actual time left frequently to see if an instant proc caused the cooldown to become available right away before it normally would've otherwise. It also will show you the icon if the cooldown is not quite available, but WILL be available within one more GCD (so you can prepare to spam that button for your next GCD basically).
Code:
dKKjgaGirAuOItHs9kifMfQ0TqQSlLeddqDmuLLPu1ZukMMsPRjeBdf8nKQghK4CcP8or08GK09uI9rH4GOKfIi5HaYerrDrvOnkKQ(OkyKqQojfSsG8siPmtku3uizNa4NuinuLuTueXtHAQc1vHu6Ris9wKYCrrUlIAVu9xaAWshwulwjLhtrtwLUmOnlcFgOgnk0Pr41qs1Sv42OQ2TGFROHRIwoepNstxvxhjBhsrFxjPZRuz9qs49qs09fsL9t255XoMVJVo(6XooFVepXmKha(ieGbdrSES)oEmZxp2X2tOPh7ylra8a6aS3X8PgpHh7aS3jL)(7ykleqZj)1YVtkhBjqfqp2XwIa4b0XNzKFNJ5tnEcp2XNzKFNtk)93FhtfEecWGHiESJnPS)KVJtqfmFIzqLdBbsvvvDmnZd1xDr9a8Jj4d5WoPaPQQQoMM5HQL7vDr9a8XNWXaO5CCNRg4Szdk0Jc7KQ0rNknAaHolaoCungDdyv86hn2yvdmtMSaPQQQsKq1QMdxvRQrubwnhUQC4yvrd1RkDQpBvJSOYBLiSvFgHbbsvvvvvvvfb(uib1hHcMuGuvvvHHRaPQQQIaFkKGAI8WctkqWW1FhNnFIzW6Xo2(zK3JDSDsfUo2q4HijYMqMyDVZGLjsdZOolkKSLP1NRcryrHKTrbVezMWtQW1YugmyK5ktWGD8DcODsfU(A(7VJZu)0xZX5ab)8tmdESJTFg59yh)7oHo(ebAHVJprGw474e5l0F)D8JqagmeXJD8V7e6ytk7p57ytk7p5d4V7e6y7NFkRJHOjm8ogigZVAuqRndg6ykleqQaX7KYXMu2FYhqgjUqh)e8HxhBsz)jFhNGky(eZGkh2cKQQQ6yAMhQ2t4yyvxurL0szMe0AG5uYQlQ8qjAmamxvAPRZYywmBaGuYQlQ7bMxKTCvPLUojgoIJtjRUOgbLiCvPLIrNvuSaiLS6I6wG3WvLwkPzrcjgmkjPKvxu3SD7Eu4QslL5JSIrh1aWWb0JtjRUOUL(iB5XvLwk6OfG4JKKswDrncdmSLhxvAPrX6WXuYQlQ82SHRkTusZIeJnkqOwkz1fvgqHbUQ0sjXOhq7XuYQlQ8OpY(OlPaPQQQoMM5H6RUOEa(Xe8HCyNuGuvvvhtZ8qfqUGvxupaF8jCmaAoh35Qbo2t4yyPzHdO5Zzpxv0giEGgzRLt65iVdIKYMnz2jfivvv1X0mpuTCVQlQhGp(eoganNJ7C1aNnBqHEuyNuLo6Ordi0zbWHJQXOBaRIx)OXgRAGzYKfivvvvIeQw1C4QAvxwubw9zegeivvvvvvvve4tHeuFekysbsvvvfoSqIeQw1C4QYHJvfnuVQ0P(Svr1fvEReHTAoCv5aw1iQaRMdxvWQO6IkVvIWw9zegeivvvvvvvve4tHeuFekysbsvvvfgUcKQQQkc8PqcQjYdlmPabdxhBYi0e1Dm15n)q)DCECYy2JE63dCe6JGs0OF7(OXaWmS1tqxKnogbcMygI3DcDmH5m4yIRJJANk(eogQanNJ7C1GJVe2ZrENbZzWXgcpejr2eYKbZzWYeR1ige)oazgHI4cyu5a4bCV)o26yERSDnEognDa4Tb49(7o
As before, change the spellId number in the Trigger > Custom Trigger & Trigger > Custom Untrigger to match your appropriate spell you're checking the cooldown on.
Normal Spell Cooldown
This one is a basic cooldown aura, for abilities you don't need to know about from instant-proc effects and such, things that will always come off cooldown the same time all the time, such as Treants for me.
1. Type: Icon
2. Trigger > Main Trigger > Type: Status
3. Main Trigger > Status: Cooldown Progress (Spell)
4. Main Trigger > Spell: Force of Nature (change as appropriate)
5. Main Trigger > Ignore GCD: Checked (this will ignore the GCD and show you immediately)
6. Main Trigger > Inverse: Checked (This tells it to only show the icon when the ability is AVAILABLE to use)
7. Main Trigger > Conditions > In Combat: Checked
8. Load > Talent Specialization: First Tree (Balance) [Change as appropriate]
There are tons of others and as I said, most anything can be done or checked to trigger an indicator/aura, so feel free to ask and I'll try to help you out!