| Tested: | Hour of Twilight 4.3 |
| Updated: | 03-15-12 12:43 PM |
| Created: | 04-09-09 11:46 AM |
| Downloads: | 12,574 |
| Favorites: | 131 |
| MD5: |

| WARNING: THIS MOD IS FOR ADVANCED ONLY! IT EATS PUPPIES AND LOVES KITTENS! |
Simple mod that allows, buff, debuff and cooldown tracking.Installation
The zip contains 3 folders:Locking / unlocking
- rTextures just contains textures I'm using
- SpellID is a mod that will enhance your tooltip with a spellID information
- rFilter3 contains the filter addon with the config.lua
If you use the move attribute (see documentation) you can move and resize that icon ingame. To do that use the "/rf" or "/rfilter" slash command.Config
rFilter3 has a config.lua. You can set the spellIDs and units you want to track spells on there. To get a spellID from a certain buff/debuff just hover it and write down the spellID. (Make sure you have the spellID mod installed)SVN
Some spells have the same buff/debuff effect and can overcast each other. There is a list of those spells here: http://elitistjerks.com/f15/t107452-...buffs_debuffs/
You can define different buff, debuff and cooldown lists for different chars and different specs. Use conditions to split them up.
The number values in the brackets are IMPORTANT. They have to count up from 1. Don't mess them up.
lua Code:
------------------------------------- -- rFILTER 3 - CONFIG DOCUMENTATION -- zork, 2011 ------------------------------------- ------------------------------------- -- GENERAL ------------------------------------- highlightPlayerSpells = true --player spells will have a blue border updatetime = 0.2 --how fast should the timer update itself ------------------------------------- -- BUFFS / DEBUFFS ------------------------------------- spec = nil, --nil, 1, 2 or 3 (optional), the talent tree you want to track the spell (nil will make it work in any tree) visibility_state = "[combat] show; hide", --STRING (optional) attribute that lets you show/hide the frame on a given state condition. example: "[stance:2] show; hide" spellid = 469, --NUMBER, the spellid to track this will represent the icon if none is found spelllist = { --TABLE (optional), you can check spell lists in case the same effect is given by more that one buff/debuff. your spell needs to be in the list aswell! list is sorted by index. [1] = 469, [2] = 79105, [3] = 6307, [4] = 90364, }, size = 26, --NUMBER, the size of the icon pos = { --TABLE, the position of the icon (http://www.wowwiki.com/API_Region_SetPoint) a1 = "BOTTOM", a2 = "BOTTOM", af = "UIParent", x = 130, y = 107 }, unit = "player", --STRING, UnitID (http://www.wowwiki.com/UnitId), the unit that should be tracked validate_unit = true, --true/false (optional), only show the icon if unit is found hide_ooc = true, --true/false (optional), hide icon out of combat ismine = false, --true/false, track if the spell casted is actually MY spell (hide same buffs/debuffs from other players) desaturate = true, --true/false, desaturate the icon if not found match_spellid = false, --true/false (optional), in case you not only match the name but the spell id of the buff/debuff move_ingame = true, --true/false (optional), in case you want to move the frame ingame, the size will be the MINIMUM frame size you can resize to, so adjust the size in case you need lower minimum size ingame alpha = { --TABLE, Set the alpha values of your icons (transparency) found = { frame = 1, icon = 1, }, not_found = { frame = 0.4, icon = 0.6, }, }, ------------------------------------- -- COOLDOWNS ------------------------------------- spec = nil, --nil, 1, 2 or 3 (optional), the talent tree you want to track the spell (nil will make it work in any tree) visibility_state = "[combat] show; hide", --STRING (optional) attribute that lets you show/hide the frame on a given state condition. example: "[stance:2] show; hide" spellid = 469, --NUMBER, the spellid to track this will represent the icon if none is found size = 26, --NUMBER, the size of the icon pos = { --TABLE, the position of the icon (http://www.wowwiki.com/API_Region_SetPoint) a1 = "BOTTOM", a2 = "BOTTOM", af = "UIParent", x = 130, y = 107 }, unit = "player", --STRING, UnitID (http://www.wowwiki.com/UnitId), the unit that should be tracked hide_ooc = true, --true/false (optional), hide icon out of combat desaturate = true, --true/false, desaturate the icon if not found move_ingame = true, --true/false (optional), in case you want to move the frame ingame, the size will be the MINIMUM frame size you can resize to, so adjust the size in case you need lower minimum size ingame alpha = { --TABLE, Set the alpha values of your icons (transparency) cooldown = { frame = 1, icon = 0.6, }, no_cooldown = { frame = 1, icon = 1, }, },
Example config from my warrior tank:
http://code.google.com/p/rothui/sour...er3/config.lua
http://code.google.com/p/rothui/sour...trunk/rFilter3
- Add the move attribute to any spell you want to move ingame (see documentation)
- Ingame: LEFT MOUSE+ALT+SHIFT = DRAG
RIGHT MOUSE+ALT+SHIFT = RESIZE
-- 1 is your first spec
-- 2 is your second spec
-- false or nil will remove the spec tracking
validate_unit = true, --only show the icon if unit is found
hide_ooc = true, --hide icon out of combat
File Name |
Version |
Size |
Author |
Date |
40300.02 |
75kB |
zork |
01-14-12 06:41 AM |
|
40300.01 |
75kB |
zork |
11-30-11 11:50 AM |
|
4.011 |
80kB |
zork |
06-29-11 04:18 PM |
|
4.010 |
79kB |
zork |
06-03-11 08:39 AM |
|
4.009 |
78kB |
zork |
06-03-11 07:18 AM |
|
4.008 |
77kB |
zork |
06-03-11 05:03 AM |
|
4.007 |
77kB |
zork |
04-28-11 02:26 PM |
|
4.006 |
77kB |
zork |
02-25-11 02:22 PM |
|
4.005 |
77kB |
zork |
02-25-11 02:04 PM |
|
4.004 |
77kB |
zork |
11-05-10 07:51 AM |
|
4.003 |
77kB |
zork |
10-30-10 04:36 AM |
|
4.002 |
76kB |
zork |
10-26-10 04:44 PM |
|
4.001 |
77kB |
zork |
10-24-10 03:43 PM |
|
002 |
4kB |
zork |
04-10-09 04:15 AM |
![]() |
Comment Options |
|
|
|
|
A Kobold Labourer
Forum posts: 0
File comments: 3
Uploads: 0
|
I really love rFilter3! Thanks for the great work!
|
|
|
|
|
||
|
Depends. If the icon is displayed under your player auras you can track it. Otherwise it is a server side effect and you need special holypower addons to track it.
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
Last edited by zork : 04-03-12 at 09:09 AM.
|
||
|
|
|
|
||
|
Actually you brought me a good idea. That counts.
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
|
||
|
|
|
|
||
![]() Aber sorry nochmal für die Arbeit^^
__________________
Zum Lügen gehören immer 2, einer der lügt und einer der's glaubt! |
||
|
|
|
|
||
|
Added it and updated the documentation. Example
That is actually pretty neat. You can now show/hide an icon based ony any macro condition possible.
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
Last edited by zork : 03-15-12 at 12:53 PM.
|
||
|
|
|
|
||
|
Hmm...interesting. Not yet possible but I got an idea.
visibility state-driver http://www.wowace.com/addons/bartend...-state-header/ Code:
actionbar:1/.../6 or bar:1/.../6 — Given action bar page is selected
bonusbar:5 — The possess bar is active (controlling a vehicle or another player)
button:1/.../5/<virtual click> or btn:1/.../5/<virtual click> — Macro activated with the given mouse button
channeling:<spell name> — Channeling the given spell
combat — In combat
cursor — What the cursor is currently holding, see API_GetCursorInfo for types
dead — Target is dead
equipped:<item type> or worn:<item type> — item type is equipped (item type can be an inventory slot, item type, or item subtype)
exists — Target exists
flyable — In a zone where flying is allowed (this does not check if you have Cold Weather Flying, if you are in a flyable zone, but do not have this skill, the macro fails)
flying — Mounted or in flight form AND in the air
group:party/raid — You are in the given type of group
harm — Can cast harmful spells on the target
help — Can cast helpful spells on the target
indoors — Self explanatory
modifier:shift/ctrl/alt or mod:shift/ctrl/alt — Holding the given key
mounted — Self explanatory
outdoors — Self explanatory
party — Target is in your party
pet:<pet name or type> — The given pet is out
raid — Target is in your raid/party
spec:1/2 — Currently active talents
stance:0/1/2/.../n — In a stance
form:0/.../n — In a form which is no stance by itself (shadowdance)
stealth — Stealthed
swimming — Self explanatory
unithasvehicleui — The target of the macro has vehicle UI
vehicleui — The player has vehicle UI
Code:
RegisterStateDriver(myIconFrame, "visibility", "[spec:1]hide;[nocombat]fade:30;[target=target,noexists]fade:30;show")
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
Last edited by zork : 03-15-12 at 12:15 PM.
|
||
|
|
|
|
||
|
PUPPY DETECTED. LOADING GUNS.
Hint...the info page tell you about the spec attribute.
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
Last edited by zork : 03-14-12 at 10:00 AM.
|
||
|
|
|
|
|
|
Hi^^
Erstmal, tolles Addon! Habe leider aber ein kleines Problem... Ich bin Druide und als Katze brauche ich Wildes Brüllen, als Bär Pulverisieren. Wie bekomme ich es hin das wenn ich in Katzengestalt bin Wildes Brüllen und in Bärengestalt Pulverisieren an der selben Stelle angezeigt wird? Gibt es einen Stance-Befehl? Habe mal einen Screen gemacht, im roten Kreis sieht man, das obwohl ich Katze bin das Pulverisieren Icon dort ist, es wechselt zwar wenn ich Wildes Brüllen nutze, aber sobald der Kampf vorbei ist, ist dort wieder das Pulverisieren Icon^^ http://www.abload.de/img/rfilter3-probpkky4.jpg Hoffe kannst mir evtl. helfen^^
__________________
Zum Lügen gehören immer 2, einer der lügt und einer der's glaubt!
Last edited by F1NCH : 03-14-12 at 09:28 AM.
|
|
|
|
|
|
|||
Code:
if f.spec and f.spec ~= GetPrimaryTalentTree(false, false, GetActiveTalentGroup()) then
if not f.spec2 or f.spec2 and f.spec2 ~= GetPrimaryTalentTree(false, false, GetActiveTalentGroup()) then
f.iconframe:SetAlpha(0)
return
end
end
Code:
table.insert(cfg.rf3_CooldownList, {
spec = 1, -- for arms
spec2 = 2, -- and fury
spellid = 86346, -- Colossus Smash
pos = { a1 = "BOTTOMLEFT", a2 = "BOTTOM", af = "MainFilterFrame", x = 3, y = 0 },
size = 36,
desaturate = true,
move_ingame = false,
alpha = {
cooldown = {
frame = 1,
icon = 0.6,
},
no_cooldown = {
frame = 1,
icon = 1,
},
},
})
|
|||
|
|
|
|
||
1. tree = 1 (2^0) 2. tree = 2 (2^1) 3. tree = 4 (2^2) and then we can make some multitree version: 1.+3. tree = 5 1.+2. tree = 3 2.+3. tree = 6 1.+2.+3. tree = 7(=nil) so then you can set spec = 1 or 2 or 3 or 4 or 5 or 6 or 7 and do some binary magic around it (; just my thought |
||
|
|
|
|
||
|
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
|
||
|
|
|
|
||
|
It's actually not that bad at all. The onUpdated checks every icon available. The UNIT_AURA and other EVENTS would be fired per icon. Which may result in more function calls.
Plus if you don't like the update every 0.2 seconds just change the timer.
__________________
| Simple is beautiful. | Blog | Roth UI | Roth UI FAQ | GoogleCode | DevShots | TheBigOne | Guild | zorker.de
Last edited by zork : 01-22-12 at 09:40 AM.
|
||
|
|
|
|
||
![]() I was working on that add-on a little, trying to modify it to fit my needs and noticed 1 interesting thing... even if nothing goes on it still checks 5 times a second (0.2 timer) for every added icon which produce pretty high CPU usage if you have allot of stuff added there. OnUpdate is only needed to get our timer working. So would it make sense to actually go with handling icon updates on per-event basis? i.e. we don't need to always check for cooldowns, we can just start our OnUpdate script for timer once SPELL_UPDATE_COOLDOWN event was fired, same thing with Buffs and Debuffs: we just watch for UNIT_AURA and then start our timer. |
||
|
|
![]() |