WeakAuras

Sheep Monitor

  • 10 posts
    #1 Feb 23, 2011 at 11:28 UTC - 0 likes

    I've been looking into replacing a mod I use called Sheep Monitor with a WeakAura display. I'm possibly being a little ambitious here but this kinda feels like it may be possible, I'll be stuffed if I can work out how though...

    Firstly, I'd like to create a display that triggers when there are 5s left on the duration of my CC (Polymorph and all it's variations [cat, turtle, pug, sheep, monkey, penguin, etc.]) on focus target.

    Secondly, I want to create a display that monitors the focus target and triggers when (only my) CC on that target is broken (i.e. some numpty has hit the mob). Optionally (and ideally) I would like to print the name of the player that broke the CC and the spell that broke it to a chat channel.

    On a different tack. I've found I frequently want to announce things to different chat-channels based on what type of group I'm in. Solo = /say, 5-man = /party, 10/25 = /raid. Is there an easy way to do that?

    Apologies for all the questions. Totally love your mod...evangelising it wherever I can. ;)

    #2 Feb 23, 2011 at 13:18 UTC - 0 likes

    The first one should easily be possible with normal aura triggers (there is a timeleft option available now afaik).

    For the second part, this MIGHT be possible via Event -> COMBAT_LOG_EVENT_UNFILTERED
    Fetching event name: SPELL_AURA_BROKEN (broken by melee dmg) and SPELL_AURA_BROKEN_SPELL (broken by spell damage)

    (Doc: http://www.wowpedia.org/API_COMBAT_LOG_EVENT)

    #3 Feb 23, 2011 at 17:03 UTC - 0 likes

    Hmm...that looks a little beyond my abilities. I can get the countdown working via the standard Aura trigger. Playing around with Event I can get it to flag when Poly is removed via Event -> SPELL_AURA_REMOVED but that's as far as it goes. Looking at COMBAT_LOG_EVENT_UNFILTERED, I'm guessing that has a higher than normal impact on CPU. I might just run without a sheep-break announcer and just scream incoherently into Ventrillo. :oP

    Edit: Looking at it a little further, it may not even be possible atm. See http://us.battle.net/wow/en/forum/topic/1965986980

    Last edited Feb 23, 2011 by Cayle
    #4 Feb 23, 2011 at 22:15 UTC - 0 likes

    @Cayle: Go

    Problem 1: A display that shows when there's 5s left on your Polymorph. Easy. Just use an Aura trigger, input your polymorph auras, and set the Time Remaining option to "<= 5".

    Problem 2: Calling out "numpties" who break your CCs. Considerably harder, especially since, as you have discovered, SPELL_AURA_BROKEN messages apparently do not occur for Polymorph effects. Here's what I would do:

    Trigger Type: Custom

    Event Type: Event

    Event(s): COMBAT_LOG_EVENT_UNFILTERED

    Custom Trigger:

    function(_, _, message, _, source, _, destGUID, dest, _, _, spellName)
      if(message == "SPELL_AURA_APPLIED" and UnitIsUnit(source or "", "player") and spellName and spellName:find("Polymorph")) then
        WeakAuras_Polymorph_Mob = destGUID
        return false
      elseif(message == "SPELL_AURA_REMOVED" and UnitIsUnit(source or "", "player") and spellName and spellName:find("Polymorph")) then
        WeakAuras_Polymorph_Mob = nil
        return false
      elseif(WeakAuras_Polymorph_Mob == destGUID and message:find("DAMAGE")) then
        SendChatMessage(source.." is a numpty who broke my Polymorph with "..(spellName or "a melee swing").."!"
        return true
      end
    end
    

    Problem 3: Adjusting output based on what group you are in. This is something I plan to make easier in the future, by adding an option to the Chat Message dropdown. For the time being, you have to do it in Custom Code. For example:

    local msg = "Here is some message"
    local output
    local _, groupType = GetInstanceInfo()
    if(groupType == "raid") then
      if(IsRaidOfficer()) then
        output == "RAID_WARNING"
      else
        output == "RAID"
      end
    elseif(groupType == "party") then
      output = "PARTY"
    elseif not(UnitIsDeadOrGhost("player") then
      output = "SAY"
    end
    if(output) then
      SendChatMessage(msg, output)
    else
      print(msg)
    end
    

    Note that you would generally put this code in the Custom Code option of the On Show portion of the Actions tab. However, in this specific case, you want your message to include the name of the person who broke your Polymorph, and that information is not available to the Actions tab code. Thus, you have to put the messaging code in the trigger itself.

    Last edited Feb 23, 2011 by Mirrormn
    #5 Feb 24, 2011 at 00:22 UTC - 0 likes

    Thanks MirrorMn. I've got Problem 3 working. Some typo adjustments/corrections to the code you posted:

    local msg = "Balvenie Cauterized!  Heal me!"
    local output
    local _, groupType = GetInstanceInfo()
    if(groupType == "raid") then
      if(IsRaidOfficer()) then
        output = "RAID_WARNING"
      else
        output = "RAID"
      end
    elseif(groupType == "party") then
      output = "PARTY"
    elseif not(UnitIsDeadOrGhost("player")) then
      output = "SAY"
    end
    if(output) then
      SendChatMessage(msg, output)
    else
      print(msg)
    end
    

    I played around with the CC breaker announce script a little and got it working:

    function(_, _, message, _, source, _, destGUID, dest, _, _, spellName)
      if(message == "SPELL_AURA_APPLIED" and UnitIsUnit(source or "", "player") and spellName and spellName:find("Polymorph")) then
        WeakAuras_Polymorph_Mob = destGUID
        return false
      elseif(message == "SPELL_AURA_REMOVED" and UnitIsUnit(source or "", "player") and spellName and spellName:find("Polymorph")) then
        WeakAuras_Polymorph_Mob = nil
        return false
      elseif(WeakAuras_Polymorph_Mob == destGUID and message:find("DAMAGE")) then
        SendChatMessage(source.." is a numpty who broke my Polymorph with "..(spellName or "a melee swing").."!"..destGUID)
        WeakAuras_Polymorph_Mob = nil
        return true
      end
    end
    

    I have general problems with both scripts in that they print each message to the chat channel twice. Is this something I'm doing or is it a bug? I notice it even happens with the non-custom chat option. You get a double message...

    #6 Feb 25, 2011 at 00:12 UTC - 0 likes

    If you're getting double messages from Action tab code, the non-custom Action tab option, and Trigger code... I suspect there might be something external to WeakAuras screwing things up. If you export the offending display(s) and post them here I can see if the bug is reproducible.

    Last edited Feb 25, 2011 by Mirrormn
    #7 Feb 27, 2011 at 11:11 UTC - 0 likes

    Sorry for the tardy reply. Been away for a few days... I did some more structured testing around this. It seems to be happening with Custom LUA based chat messages. This display double-posts...

    dSKwBaqiOsTib(evknkvPtPkMLuHBbvzxuj9lOcmmsXXujlduEgOAAsvUgqTnvkFtfzCujoNurRtQQQENuvzEsvvUhiAFQO4GaXcfLEiPuteQkxeQQ2ii8rLkgjuroPsvRujntOI6MuPANkXpPsXqLQYsjL8uitvfUQsL2kuH(kubDwOsmxvuTxI)kkgSIdtYILk9yr1KvvxgzZKQplOrRuoTuEnujnBa3gk7gLFl0WPILtvphvtxY1fz7Qu9DvuA8aPopiTEGK5lvvL9tz5soeKsoKsqCbD5kCxHjimb9f0xoeeNa07l2yLGY6MJd34ooJFioeeODJUoNkbcWN6udC436bUNgnGb3zNIoE9CrqTVG0wLkY3afjipf2ISdOoKGc9XKJGiq7OyF6lzLsq5YHSCjhckXjFgqlqCcMgWNaFQtnAadUhm4Dk64b(KGaTB015ujqGhy43C5cwVBWV6eo4BxxIoE9aliOUrxNtLaXPtx300dm4tD6cCW365IOJh4lb1vLJRH(yI91oce9YHSCjqCttpnxWUCbm8RtDcdmCrhpWWLfyce300tZfSlxad)6uNWadx0XdmCzbUaXnn90Cb7YfWWVo1jmWWfD8adxw6jqa(0TE30C62ny3GP52jyIoEGHlLG4eGEFXgReKw73bNoeu5BHHKxoeuItz8jgjzfuRiSffgjlAe0p5vvlYe0LGykmIlhYYLG0wLkY3afjLGYt8kILzR9jbLN4vetq5jEfXYuqDibXlvL4ckXO7eReu1WOVGsCktI1kjRGY3OCCvq0DIvckXPmTIWwuyKKvq5jEfXeKEILxTi79XwTXghFJvVbLVfgs(GoSzxwRwuy0BqP8Huf880pB1gBA6V7YA1IcJEdkLpKQGhBGesBcCV59rp9dESP2iMTAJn2yJNQKNzt5tu)SvBSHa4KTAJn2yJNQKNzJUcGt9ZwTXgI9TvI9fuItz4oeaWIcJKScIUtSIlODx2FK5aeT2b)hcI7qaalkmswUGbtq(eJKLlbr3jwjiTJrGF8SmB0IuFO28UViShb9PUjD9dOoKGWjq0YDi2fNLsqFINli814oakOCBo7gXSrBvQiFduKnHrIBtuxVdBuSVnXu5KkUnUT)Cauqj)zSPXTPBYZASqBQOnFsvB42T2urBWbCfuxTzVUnqJjB(nQdBIPYjvCBCB)5aOGs(ZyZMIBtxIy2Khz8eg9TPluBQnYgDafgHB3AtfTXRAFBIEBCu(cQn5BQYM3UPYgwSSPRQkak0htSVn5BQ6XvB2RBd0yYgG2DQdBCB)5aOGs(ZyZMIBJJIZPVn1MpMc3SP2iB0buye3gf7Bdp5V3UtFC7wBQOn4aUcQRcAJAHBLSatdmbbevF5qqGkYibjOCafNlhcI3yHaKGChKDWVGWsavtoeK7GSd(LSsji3vHKKvkbXDOC5qq8gleGKfycclbun5qwGjzLskbL4ugMcJKUc6301B5jGcQGyrpMcqqjoLburgjDfetHrcY9M3h90xqjoLH7q5swbL4uM8iwxvjzfuItz(nD9wEcOGkDfuItzYbuCUKvq8gOi5qq8gleGeelYib5O8fujRGyrgjzfKYtmLKvqfXKScclbun5qqSiJKSsjO6SeRGQ3Utswb5C3rYkLucQRkhxd9Xe7FqGUsEsq7zf51v5059HJ9bHxHrN3ho2hEzvmg5Xd)yDbim8Gli9ONc9Xe7FqGUsEsqheORKN4NJCiaaqYR2Dv1Im3CN8akO8ZrP)NyzWhPQnb5PWwKDa1HeKJpg6joViqxjpjivE1ImUCiiEP8LCiimIZvHKGYQaUtSgztJBt3KN1yH2urB(KQ2WTGYt8kIjiGyUcWgmEOnqAtqwfWDI1iB0wLkY3af9XTn2GtKcWgmc3b2kqmxbytmvoPYwbI5kaBY0HnH(yY5aQdzdK2Sdv7z8sXYP9m947JT20Fd9XKZbuhYgiH0MaVQ9dESP2iMTAJnn939CTuTVB01B5K)95XMAJy2Qn2yJnXu5KkBG0MaTazp(YGdbrRL9l7eyR2ydbWjB1gBSXMyQCsLnqAtGwGShFb2Qn2qSVTsaCQP)g6JjNdOoKnqcPnbokFbn4XMAJy2Qn2etLtQSbsBc6deToWLaBLa4ut3gwSE3L1Q9C8rQVB87Sf51BGdGck5dEESP2iMTAJnXu5KkBG0Maei4sGTsSVT20FJPYjvp2uBeZwTXgeX(AVPk3joxfsVy8WoSjMkNu9yReaNSvBSXX3y1lgp8Xwj2xq)ygEmX(swbHrCUkKYuqDibPfi7XNG(XmyeNRcjPRG(Xm5jEfXKScIhtSVG2ZkYRRYPZb5)Jm(54qsHRGK8k(59fpl5bj5vC3PFtDokMyF(59T7I24KRXWqPeKEJ14BYHG(Xm5jEfXKUckpXRiMGaI5kaBaA3jmEOnqAZUSwTOWO3ahafuYh84QRb2SP424O4C6BtT5JPWnBQnYgDafgXTrX(2Wt(7T70h3b2kqmxbyZNuFmEOnqAZUSwTOWO3ahafuYh84QRb2SP420LiMn5rgpHrFB6c1MAJSrhqHr4oWwbI5kaBY0rb1HSbsB2HQ9mEPy50EME89XwB6VfuhYgR)bPnbo3DcESP2iMTIZTUOk19naKC6OHrE8G7QMGN(pkFJ(ja6OHr(x9elVAr27JnnDByX6DxwR2ZXhP(UXVZwKxVboakOKp45XMAJy2kIyFT3uL7eNRcPxG2DcJh2raceCj4Xwjao10F3HQLeMwQ23DcRl55Vp2CgB08ytTrmBfrSV2BQYDIZvH07NuFmEyhbAbYE8f8yReaNA6V7q1scRpLVG6oH1L883hBoJnxp2uBeZwre7R9MQCN4Cvi9(j1hJh2rqFGO1bUe8yReaNSvhFJvVbNFbRxoeqabeA0OrtGRU(j1hJh(yRe7BdX(DyJgxb)yRe7lLucQ9fK2Qur(gOiBWzbPh9uOpMyFTJarVCilWeiUD5YvVRlyGHddm8BWGj64bgUSaxGaSlWC5YLtNadxZTtN0Cj64bgUuccuXiMSOX1Exckpce9YHucs9)TQfzkGmLVfgsEUCiLGsSY3cdjVCiOwrylkmsw61RhCnckpXRiMG0tS8QfzVp2Qn244BS6nOlqIv(wyi5d6WMDzTArHrVbLYhsvWZt)SvBSPP)UlRvlkm6nOu(qQcESbsiTj4ylbukqf9bp2uBeZwTXgBSXtvYZSP8jQF2Qn2qaCYwTXgBSXtvYZSrxbWP(zR2ydX(2kX(cI7qaalkmswUGbtkbD22V2KLEWfuJDN8CsYkOCF0jdubIEG7e(TtxGH3tZLlGVPr0XdmCbf9nIvQQfzcchXVwh71geCoZ(fCe)AHWVGY9rNmGwGa8PB9UP5e8o7D5cyyxUi64bgMGuSgMQArMCiimvJjhcYXtCQeKcWzt1xcGtcQG6qcYXtCQKskbveOlTJarVCilxYYLSatwUKf4YYLS0twUKskzbMCiOeN8zaTaXjyAaFc8Po1Obm4EWG3POJh4tckpce9YHuckXkFlmK8YHGAfHTOWizPxVEW1iO8eVIycspXYRwK9(yR2yJJVXQ3GUajw5BHHKpOdB2L1Qffg9gukFivbpp9ZwTXMM(7USwTOWO3Gs5dPk4XgiH0MGJTeqPav0h8ytTrmB1gBSXgpvjpZMYNO(zR2ydbWjB1gBSXgpvjpZgDfaN6NTAJne7BRe7liUdbaSOWiz5cgmPeKE0tH(yI91oce9YHSatG42Llx9UUGbgomWWVbdMOJhy4YcCbcWUaZLlxoDcmCn3oDsZLOJhy4sjOUQCCn0htSV2rGOxoKLlbIBA6P5c2LlGHFDQtyGHl64bgUSatG4MMEAUGD5cy4xN6egy4IoEGHllWfiUPPNMlyxUag(1PoHbgUOJhy4YspbcWNU17MMt3Ub7gmn3obt0XdmCPeKI1WuvlYKdbHPAm5qqoEItLGuaoBQ(saCsqfuhsqoEItLusjOY3cdjVCiOeNY4tmsYkOwrylkmsw0iOFYRQwKjOlbLN4velZw7tckpXRiMG(u3KU(buhsq4eiA5oe7IZcI7qaalkmswUGbtqjgDNyLGQgg9feDNyLG0ogb(XZYSrls9HAZ7(IWEeKpXiz5sqjoLPve2IcJKScIPWiUCilxcsBvQiFduKucIUtSIlODx2FK5aeT2b)hckXPmChcayrHrswbLN4vetq6jwE1IS3hB1gBC8nw9gu(wyi5d6WMDzTArHrVbLYhsvWZt)SvBSPP)UlRvlkm6nOu(qQcESbsiTjW9M3h90p4XMAJy2Qn2yJnEQsEMnLpr9ZwTXgcGt2Qn2yJnEQsEMn6kao1pB1gBi23wj2xq5jEfXYuqDibXlvL4ckFJYXvbr3jwjOeNYKyTsYkLG2Ow4wjlW0atqar1xoeeOImsqckhqX5YHG4nwiaji3bzh8liSeq1Kdb5oi7GFjRucYDvijzLsqChkxoeeVXcbizbMGWsavtoKfyswPKsqjoLHPWiPRGsCktoGIZLSckXPmGkYiPRGykmsqU38(ON(ckXPmChkxYkOeNY8B66T8eqbv6kOeNYKhX6QkjRG(nD9wEcOGkiw0JPaeeVbksoeeVXcbibXImsqokFbvYkiN7oswbvNLyfu92DsYkOIyswbP8etjzfewcOAYHGyrgjzLsqSiJKSsjLG0JEk0htS)bb6k5jbDqGUsEIFoYHaaajVA3vvlYCZDYdOGYphL(FILbFKQ2eewZ7JEjRG8uylYoG6qcYXhd9eNxeORKNeurGU0oce9YHSCjlxYcmz5swGllxYspz5skbbA3ORZPsGaSlxAa3jCy9UG3zNU05nrhVEGfeNa07l2yLG0A)o40HGu)FRArMcit5BHHKNlhsjOCF0jdubIEG7e(TtxGH3tZLlGVPr0XdmCbbQyetw04AVlb1(csBvQiFduKnAjOZ2(1MS0dUG6QYX1qFmX(heORKNe0EwrEDvoDEF4yFq4vy059HJ9HxwfJrE8Wpwxacdp4ccQB015ujqC6eSt9oD5c8BW04YfmxeD8aFjOg7o55KKvqQ8QfzC5qq8s5l5qqyeNRcjbLvbCNynYMg3MUjpRXcTPI28jvTHBbLN4vetqaXCfGny8qBG0MGSkG7eRr2OTkvKVbk6JBBSbNifGnyeUdSvGyUcWMyQCsLTceZva2KPdBc9XKZbuhYgiTzhQ2Z4LILt7z6X3hBTP)g6JjNdOoKnqcPnbEv7h8ytTrmB1gBA6V75APAF3OR3Yj)7ZJn1gXSvBSXgBIPYjv2aPnbAbYE8LbhcIwl7x2jWwTXgcGt2Qn2yJnXu5KkBG0MaTazp(cSvBSHyFBLa4ut)n0htohqDiBGesBcCu(cAWJn1gXSvBSjMkNuzdK2e0hiADGlb2kbWPMUnSy9UlRv754JuF343zlYR3ahafuYh88ytTrmB1gBIPYjv2aPnbiqWLaBLyFBTP)gtLtQESP2iMTAJniI91EtvUtCUkKEX4HDytmvoP6XwjaozR2yJJVXQxmE4JTsSVG(Xm8yI9LSccJ4CviLPG6qcslq2JpbXJj2xq7zf51v505G8)rg)CCiPWvqsEf)8(INL8GK8kU70VPohftSp)8(2DrBCY1yyOG(XmyeNRcjPRG(Xm5jEfXKSsji9gRX3Kdb9JzYt8kIjDfuEIxrmbbeZva2a0Uty8qBG0MDzTArHrVboakOKp4XvxdSztXTXrX503MAZhtHB2uBKn6akmIBJI9THN83B3PpUdSvGyUcWMpP(y8qBG0MDzTArHrVboakOKp4XvxdSztXTPlrmBYJmEcJ(20fQn1gzJoGcJWDGTceZva2KPJcQdzdK2Sdv7z8sXYP9m947JT20FlOoKnw)dsBcCU7e8ytTrmBfNBDrvQ7Bai50rdJ84b3vnbp9Fu(g9ta0rdJ8V6jwE1IS3hBA62WI17USwTNJps9DJFNTiVEdCauqjFWZJn1gXSveX(AVPk3joxfsVaT7egpSJaei4sWJTsaCQP)UdvljmTuTV7ewxYZFFS5m2O5XMAJy2kIyFT3uL7eNRcP3pP(y8Woc0cK94l4Xwjao10F3HQLewFkFb1DcRl55Vp2CgBUESP2iMTIi2x7nv5oX5Qq69tQpgpSJG(arRdCj4XwjaozRo(gREdo)cwVCiGaci0OrJMaxD9tQpgp8Xwj23gI97WgnUc(Xwj2xkPeu03iwPQwKjiCe)ADSxBqW5m7xWr8Rfc)ck3hDYaAbcWNU17MMtW7S3LlGHD5IOJhyyc6t8CbHVg3bqbLBZz3iMnARsf5BGISjmsCBI66DyJI9TjMkNuXTXT9NdGck5pJnnUnDtEwJfAtfT5tQAd3U1MkAdoGRG6Qn71TbAmzZVrDytmvoPIBJB7phafuYFgB2uCB6seZM8iJNWOVnDHAtTr2OdOWiC7wBQOnEv7Bt0BJJYxqTjFtv282nv2WILnDvvbqH(yI9TjFtvpUAZEDBGgt2a0UtDyJB7phafuYFgB2uCBCuCo9TP28Xu4Mn1gzJoGcJ42OyFB4j)92D6JB3AtfTbhWvqDvkPe0Dz5cUgysjc
    
    #8 Feb 27, 2011 at 11:41 UTC - 0 likes

    That group has two displays, each of which has its own Actions tab code ^_^.

    #9 Feb 27, 2011 at 14:09 UTC - 0 likes

    Ahhh...light dawns. This is my first group and I wasn't aware that configuring the group alert configured both sub-displays. Handy, if you know about it. Classic case of RTFM. Sorry about that. ;)

    #10 Feb 28, 2011 at 00:23 UTC - 0 likes
    Quote from Cayle: Go

    I wasn't aware that configuring the group alert configured both sub-displays.

    Indeed. Groups actually hold very little data about themselves; almost all of the configuration options of a Group are simply a proxy for configuring its children.

  • 10 posts

You must login to post a comment. Don't have an account? Register to get one!