Trap Monitor

  • 16 posts
    #1 Feb 26, 2011 at 14:34 UTC - 0 likes

    After reading an interesting post on monitoring sheep I decided to ask my questions. This seems possible but I am not sure it is a built in function. I am trying to monitor my Freezing Trap. I have built an Icon with a separate timer which works well enough but I would like to be able to hide it if broke early. I use two pieces for this, one for the Icon and one for the timer, I couldn't see a way to do it with just a single display. Also I have to duplicate this for each spec I use it on due to having a different timer, not sure if there is a way to have the timer change based on spec. I have looked at the custom settings for hide which I could not figure out, so currently it just uses a timer. This would work really well if I had the same kind of trigger options to hide the Icon as I do for show Icon but still allow me to use the timer if it doesn't break early. Additionally I will want to add some messages and stuff to alert me but I think the options for that will work, haven't tried it yet. If anyone knows a site to see some setups and configurations used by other hunters that would be useful also. Any help would be great. Thanks

    Last edited Feb 26, 2011 by grobson67211: Answered part of my question.
    #2 Feb 27, 2011 at 01:05 UTC - 0 likes

    Well, the easiest solution would probably be to simply use an Aura trigger, with Unit set to "Focus", to track the status of Freezing Trap on your focus. This will show the remaining time, and hide when the debuff is broken, automatically. However, if you want a "global" tracker - one that does not require to have the frozen mob on focus - it might take a little more work.

    In that case, here's what I would do:

    First of all, this situation calls for two triggers. The first tracks the expected duration of the trap, and the second ensures that it will hide when broken.

    For the first trigger:

    Trigger Type: Event

    Event: Combat Log

    Message: Spell Aura Applied

    Source Unit: Player

    Spell Name: Freezing Trap

    Duration (s): 60 (or however long it is expected to last)

    The second trigger checks SPELL_AURA_APPLIED and SPELL_AURA_REMOVED combat log messages to track when Freezing Trap is applied and removed. Unfortunately, this requires a Custom Trigger (it should be possible with another Event -> Combat Log trigger, but it is not due to a small configuration bug).

    Trigger Type: Custom

    Event Type: Event


    Custom Trigger:

      if(message == "SPELL_AURA_APPLIED" and UnitIsUnit(source or "", "player") and spell == "Freezing Trap") then
        return true

    Hide: Custom

    Custom Untrigger:

      if(message == "SPELL_AURA_REMOVED" and UnitIsUnit(source or "", "player") and spell == "Freezing Trap") then
        return true

    Finally, this functionality should be easier in 1.4, where "All targets" aura checking (aura checking based on combat log messages instead of unit checking) will be a default option of Aura triggers.

    #3 Feb 28, 2011 at 01:59 UTC - 0 likes

    I really appreciate your reply. I am not sure if you misunderstood some of the question or if I was not clear so I cannot tell what the first trigger you list is for. I don't think I need it. It is basically what I had come up with already but doesn't do what I want. The second trigger does exactly what I was trying to do. Which brings up my next issue. I had setup a separate timer to overlay the Icon for obvious reasons. Seeing your solution to the Icon issue makes me think there must be a similar way to hide this timer if it breaks early also. Under Hide: Custom there are several options. While I mostly understand how the Custom Untrigger works I am unsure how the other options work. I am guessing I can use some kind of function under Duration Info to accomplish this. Assuming I can use more than one of these how do they work? What causes it to run these functions? Are they checked any time this trigger is checked same as the Custom Untrigger? Is any data passed to them? Will they hide on just one true or do they all have to be true like multiple triggers on the same display? Assuming this can be done this way, is there a way for the timer to know how long the effect lasts without hard coding it?

    While I am interested in the best way to do this, I have accomplished this using two triggers on the timer. The first one uses the standard Hide Duration that you used on the first trigger. The second uses the Customer Untrigger you supplied. This seems to be working but it seems inefficient to use two triggers to accomplish this. Also when setting this up it seems like Main Trigger has to be the one to use the Hide Duration timer. It would not work using the Customer Untrigger as the Main Trigger. Not sure if that is intentional, or something I did wrong. From a usability perspective it seems like it should be fine either way but maybe there is a reason for this.

    I appreciate any help with this. I am new to WoW and will be trying to learn more about the API and how it works. I am unsure if there is some documentation or a FAQ for WeakAuras that would answer some of my questions. I have been unable thus far to locate this info.

    Thanks for your help.

    #4 Feb 28, 2011 at 04:09 UTC - 0 likes

    First of all: the solution I posted was intended to be for the timer display. The first trigger is unnecessary for the Icon display, as its only purpose is to provide duration info.

    However, now that you mention it, the Duration Info field of Custom Triggers can be used for this purpose as well, and as you suspect, it is more efficient to do it this way. Unfortunately, the Duration Info, Name Info, etc. fields do not have documentation at the moment (mostly due to my own laziness). To accomplish what you want, use the following code:

      return 60, GetTime() + 60

    That will remove the need for the first trigger altogether.

    And yes, it is intentional that only the Main Trigger will send Duration, Name, etc. Info to the display.

    #5 Feb 28, 2011 at 23:10 UTC - 0 likes

    Thanks for the clarification, I can see that the misunderstanding was on my part and it makes sense that it was the timer. I put in the code for the duration you gave and so far it seems to work perfect. Thanks so much for the help, I think I have exactly what I was looking for.

    #6 Jun 19, 2011 at 06:06 UTC - 0 likes


    Is the "global" tracker you have done for "freezing trap" working correctly on last version (r164)? He is triggering and showing the timer, but can't Untrigger.

    I tried the "multy targets" aura checking, but the timer only shows if you actually target the mob, otherwise i only see "?".

    Any help is appreciated.

    #7 Jun 19, 2011 at 21:05 UTC - 0 likes

    Is it possible for a progress bar using Multi-target to gather duration information from the mouseover in the current version? As Pastilhas said it currently only triggers for target (and possibly focus - I haven't tried) with default settings.

    I'm also trying to get trap information on arbitrary targets, and mouseover updating would be an optimal solution.

    #8 Jun 20, 2011 at 00:15 UTC - 0 likes

    Are yo using Aura checking for this or the above combat log solution (@Magdain & @ Pastilhas)?

    Last edited Jun 20, 2011 by CommanderSirow
    #9 Jun 20, 2011 at 02:24 UTC - 0 likes

    Hi and thx on replying.

    Using Combat Log Situation:

    Frost trap testing:


    If, "Require for Activation" = All Triggers, then it don't work. (no timer etc ...).

    If, "Require for Activation" = Any Triggers, then i see the timer but it don't do off if trap broken.

    Using Aura checking:

    Frost trap Aura testing:


    If we don't have Mob on target only a "?" appear. If we target it, then we get the timer.

    But if we are in combat, targeting a mob to get the timer showed, is not a ideal situation. We can accidentally broke the cc.

    Thx in advance.

    Last edited Jun 20, 2011 by Pastilhas
    #10 Jun 20, 2011 at 08:58 UTC - 0 likes

    Hi Again....

    Well I think i finally done it. Not sure if the code are totally clean or correct (I'm just a Noob). But it's working.

    Just cheeked Ikcelaks export Custom Duration Issue (progress bar), and tried to convert it to my needs.

    So i made a progress bar. No needs to have target or focus.


    If you can check it for optimization that's nice.

    Last edited Jun 20, 2011 by Pastilhas
    #11 Jun 21, 2011 at 00:16 UTC - 0 likes

    This does look fine so far. :)

    #12 Jun 21, 2011 at 00:21 UTC - 0 likes

    That script doesn't trigger on refresh so it will often times be inaccurate.

    Here's the original string I used with the aura checking method. It will show a solid bar with no duration until you target the mob. As an aside I believe it also works on party targeting based on anecdotal evidence I've seen in dungeons.

    Last edited Jun 21, 2011 by Magdain
    #13 Jun 21, 2011 at 15:56 UTC - 0 likes

    @Multi-Target trigger:

    The way I understand it, is that Multi-Target does not care if you its looking on player, target, focus, party, raid, ect. BUT it has at least to be one of these. That means if you don't have the trap as target or focus, it won't show up.

    @Combatlog trigger:

    Updated with SPELL_AURA_REFRESH:


    This should work on all occasions now. (Apply, Refresh, Remove, Break)

    EDIT: Don't set In Combat load conditions on this! ;)

    Last edited Jun 21, 2011 by CommanderSirow
    #14 Jun 30, 2011 at 18:58 UTC - 0 likes

    Hi again :P

    New Patch ... New problem.

    I´m not sure why, but my scrit progress bar, and your Improved @Combatlog trigger: (from CommanderSirow) stopped working. What have changed ? What are needed to be changed to make it work again. Please CommaderSirow show me your magic, you have great power, do it again. :P


    Last edited Jun 30, 2011 by Pastilhas
    #15 Jul 01, 2011 at 03:59 UTC - 0 likes

    I'm not up2date regarding this discussion, though my bet would be:

    #16 Jul 01, 2011 at 04:42 UTC - 0 likes

    OMG thx ccKep,

    Your bet was correct :P. It's working again.

    @Combatlog trigger: Updated with SPELL_AURA_REFRESH: (From CommanderSirow) working on Patch 4.2

  • 16 posts

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