GridStatusControlPipes
This addon provides further control possibilities for any other Grid status. By now the following controls are available:
- show or hide status on key press (KeyGuard)
- show or hide status in or out of combat (CombatGuard)
- convert duration status (like aura duration) to min/max value status to be able to display remaining time of auras on bar indicators (like GridManaBars) (ToBarFilter)
- filter status for specific classes (ClassGuard)
- convert color of status to class color (ClassColorFilter)
- aura filter (can be used as debuff white list) (AuraGuard)
- convert value to text (like health) (ToTextFilter)
- threshold filter for values (ThresholdGuard)
How does it work
Like the name says, the addon works like a pipe, every pipe consists of four parts:
- indicator - status registered with the indicator of a pipe are used as input for the pipe
- guards - guards control if a pipe is open or not
- filters - filters change the values piped through the pipe
- status - the pipes status is the output of the pipe and can be registered with the actual destination indicator
So what you have is the following:
[status to control] -> [pipe indicator] -> [pipe status] -> ([guards] -> [filters]) -> [destination indicator]
How to use - a few examples
Generally you do the following steps to configure a pipe:
- Create pipe by entering its name under "Grid -> Control Pipes -> New Pipe". This will create a new status for the pipe under "Status" and a new indicator for it under "Indicators".
- Set input of the pipe by registering the status to filter with the pipes indicator under "Grid -> Indicators -> <pipe name>"
- Set the destination of the pipe by registering the pipes status with the destination indicator under "Grid -> Indicators -> <destination indicator>"
- Configure the pipes Guards and Filters by adding new ones under "Grid -> Status -> <pipe name> -> <Filters/Guards>"
Some example configurations
"Shadow ward pipe" - As a priest I use GridStatusMissingBuffs to display missing buffs. But since Shadow ward isn't always needed I want to be able to easily toggling showing missing shadow wards on/off. To do this I pipe its state through a pipe which uses the KeyGuard. So I can toggling showing of missing shadow wards by pressing a key.
"Remaining Health pipe" - Most times health deficite is the only value I need to know for healing. But in some cases I need to know the remaining health of a unit to decide who needs special healing (during AoE for example). For this I pipe grids health status through a pipe with a "ToTextFilter" (to convert the health value to a text), a "ThresholdGuard" (to show remaining health only on half death people) and a "KeyGuard" (to toggle this on of).
"Debuff white list pipe" - Grid doesn't come with a whitelist for the debuff type status. To add this I pipe the debuff type status through a pipe with a "AuraGuard" where I can add the debuffs of this kind i don't need to see.
"Remaining hot duration pipe" - I use the mana bar of GridManaBars to show the remaining time of my hots on a unit by piping the "Aura Status" of the hot through a pipe with a "ToBarFilter". The destination of the pipe is the Mana bar indicator.
There are a lot more things you can use it for, just play around with it :). If you need other guards or filters tell me, its pretty easy to add new ones.
FAQ
Q: "Why does my threshold guard does not work on the aura duration?" A: "Thats because you need to activate "show duration" at the aura status itself."
Notes
- The reaction of the key depends on the duration you keep the key pressed. This means, if you keep the key pressed for more than 300ms the key will react as "while key is pressed", otherwise it will react like "toggle on key press".
- Please resist the urge to create loops with the pipes! I know its tempting but I didn't test what happens if you do so and I won't take responsibility if it caused the ending of the world! Seriously!
1. Add a New To-text
2. Click on To-text filter set Status to "Duration"
3. Add a New Threshold guard
4. Click on Threshold guard set Status to "Duration" Open when to "below" and Threshold (in %) to 100
The pipe should now function perfectly for the Weakened Soul debuff
-HM
http://grab.by/5l91
-HM
And for your other problems: What ARE the problems? You only said what you want to do (although I have no idea what GridStatusWeakenedSoul does) but not whats the real problem, or what exactly does not work.
Well, I believe I have it setup right but nothing shows. I run a large number of GridIndicatorXXX mods including Text3, Icon Sides, Icon Corners, Side Text, Corner Text, and CornerPlus. The one for HP works, the food one works, but the Weakened Soul shows NOTHING in any location I put it. I have tried side text and corner text as well as Center Text and Center Text 2. The original poster stated he got a 0 in the spot, but I never get an indicator of any kind. Here is a another screen shot of the exact setup for this pipe:
http://grab.by/5lh4
Can you list the steps to create a working pipe.
Here are the steps I used to create what I have:
1. create a pipe called Weakened Soul
2. New To-text filter
3. New Threshold guard
4. Status set threshold guard to Duration
5. Set threshold guard Open when (Not sure what to set here have tried above 0, and below 100 with no result)
6. Frame -> Weakened Soul set to Debuff: Weakened Soul
7. Set to text location on grid, Center Text, Center Text 2, Center Text 3, Side Text, Corner Text
Under Grid->Status->Auras->Debuff: Weakened Soul the Show Duration box is checked. Same for Auras->Buff: Power Word: Shield
No matter where I set it, the timer simply shows 0 until Weakened Soul wears off.
Did I miss something in the filter? On Guards does it need an Aura guard of some kind? Oddly enough if I add a filter to bar the pipe does correctly show in the mana bar so it is working correctly, but for some reason it is as though Weakened soul is not passing the text translation of the duration timer.
-HM
Your setup is correct the only problem is that the "to text"-filter does not convert the "duration" of an status to text but the "value" of an status which is used to display status in bars (like health and mana).
I will add an option to the "to-text" filter to choose between duration and value as "to-text" input.
Until then you should be able to achieve the same by doing the following:
1. Remove all filters from your pipe
2. Add a "to bar" filter to your pipe
3. Add a "to text" filter to your pipe
The ordering is important here. What you practically do is converting the "duration" to a "value" with the "to bar" filter which then can be converted to "text" by the "to text" filter.
-HM
Also, having set this up now this is actually better than GridStatusWeakenedSoul as once the timer wears off, it nows shows how much of the shield HP are left as 6.0k for instance and decreases it from there. It is also tracking while the timer is counting down so if it has taken damage the amount shown is commensurate. Combining this with this Grid module allows the healer to see the Weakened Soul timer, the amount of the shield left in actual value, and set a separate indicator with GridStatusShield with colors to see visually where it is at on the fly.
GridStatusShield can be found on curse here:
http://wow.curse.com/downloads/wow-addons/details/gsshield.aspx
I had no idea the order was relevant to the functionality, thank you very much for the assistance.
-HM
So the problem would be more motivating me that 1/10 of a second is a relevant information a healer needs AND is able to process during combat. After all Grid is meant to display as less (distracting) information as possible
http://grab.by/5lj5
The info coming in:
Top left my renew and the hot count
midddle shield timer/damage left on it
Bottom left spirit is the green square but gone in combat, 21.6k is the total hp pipe can be toggled.
Middle left is the shield strength color changing indicator
Center Text is name
Center Text 3 is health deficit
Center Text 2 is magic/diseases, raid debuff, incoming heal, etc. etc. heavy lifting
mana bar
Top right is corner plus for Fort, Mow, Shadow Protection, Arcane Intellect/Dal Brillance...all but priest go away in combat and when cast via Grid Status missing buffs, I recast in on brez people
middle right is PoM icon/stacks
Bottom right, health deficit in case Center Icon is blocking Center Text 3.
Top Middle, GridStatusRaidDebuff icons, stacks, duration etc.
So long as the priorities are right it all works. In raid it also shows incoming Rez's, who has a res but hasn't used it yet, pvp status, raid lead, assist, master looter, and tons of other info.
The more information I can pack in the little the better. You just greatly improved our ability to see what is going on during Lich King because instead of just knowing when Weakened Soul wears off, we can also see how much is left of each persons shield allowing for reprioritizing who needs the next wave of shields first.
The 1/10ths are important because each one counts. You start the bubbles at 19/20 seconds before the start of LK fight, and you can have the whole raid covered just before the first infest. At that point it is a race to rebubble and losing a 10th here or there adds up fast. As a healer you know, haste and nailing the GCD are key. Even a check box as a choice to show it or not may be worthwhile for some.
Either way, the problem is solved and I understand the pipes much better now
Thank you very much, hopefully this helps others use this addon as well as tie them in with other modules for Grid.
-HM
Could you please walk me through how to make this happen?
First I created a control pipe named "PW: S".
Then I assigned this new Frame to the status "Buff: Power Word Shield" (Frame -> PW: S -> Asterisk Power Word: Shield)
After that I connected the "PW: S"-Frame with the "Bottom Left Corner"-Frame (Frame -> Bottom Left Corner)
I then added a new "To-Text filter" (Status -> Control Pipes -> PW: S -> Filters) and a "Threshold Guard" (Status -> Control Pipes -> PW: S -> Guards).
I configured the latter to react on status "duration" and set the threshold to "below" and "30".
I played around with "threshold" and "absolute threshold" and "above" and "below" - non of which worked.
I also made sure that the aura "Power Word: Shield" is set to "show duration".
No success at all... it only keeps showing me a "0" (zero)...
please hL3p! :X
I tried to get a manually added debuff (Weakened Soul) to pop up only in the last 3 seconds that it is active.
I have added the pipe, registered it and entered the destination. This showed the debuff in the location I wanted.
The problem is I seem unable to get it only to show the last three seconds. I think it should work like this:
add a threshold guard for duration below 3 seconds.
Unfortunately it still shows the debuff during the entire duration.
Anyone has any ideahow to do this?
I'm having one problem, however.
I've added a control pipe which has debuffType:magic as input.
To this pipe I've added an aura guard with the following auras: "Frostbolt" and "frostbolt".
In frame settings, I've set top left icon to show this pipe and this pipe only.
The problem is that the frostbolt debuff isn't filtered at all.
Having this pipe in top left status behaves just as if I would've added a standard debuffType:magic to top left corner.