Filters are the basis of SBF and its operation. Understanding filters is the key to getting the most out of SBF. Each frame owns its own set of filters. This has the benefit of letting you show (or not show) a particular effect in as many frames as you want.
Filters work with the blacklist and whitelist settings for their frame.
(The following text all appears in the "Filter Help" window in game as well)
Filter Help
A filter is of the form {command}{modidfier}{parameter}
The filter has 3 parts:
command - what property of the effect the filter will operate on
operator - how the filter will compare
parameter - what the filter will compare against
An example: D>20
In this example, the parts are (more details about these on the next pages):
D - The filter will look at the effect's duration in minutes
> - The filter will use a 'greater than' comparison
20 - The filter will compare against 20 minutes
So, the filter D>20 means 'Any effects with duration more than 20 minutes'. As above, what happens to a effect that matches a filter depends on whether the frame is set to blacklist or whitelist.
Commands:
n: Filter by name (not case sensitive)
tt: Filter by tooltip description text (not case sensitive)
D: Filter by effect duration in minutes
d: Filter by effect duration in seconds
r: Filter on effect's remaining time in seconds
R: Filter on effect's remaining time in minutes
a: Auras (effects with no duration: paladin auras, aspects, etc.)
e: Filter temporary item enchantments
tr: Filter the tracking buff
to: Filter your totems (for the shaman who owns the totems)
c: Filter effects that your class can cast (but that you did not necessarily cast yourself)
my: Filter effects that you cast
In addition, there are several filters specifically for debuffs. (The h stands for harmful, since d was already claimed for duration)
For those who have been using SBF before version 3.1, note that the h filter is no longer needed. The Show Buffs and Show Debuffs checkboxes on the General tab are used to determine what types of effects will be shown in a frame
hc filters curses.
hd filters diseases.
hm filters magic.
hp filters poison.
hu filters debuffs with no type (untyped).
ha filters debuff types you can dispel.
Some other filters that you can use:
s: Filter effects that you can spellsteal (hint: you can only spellsteal buffs)
v: Filter effects that are from your vehicle
player: Filter effects that are cast by players
npc: Filter effects that are cast by NPCs
party: Filter effects that are cast by people in your party or raid
harm filters if the unit is an enemy (mostly useful for frames showing target, targettarget, focus, etc.)
help filters if the unit is friendly (mostly useful for frames showing target, targettarget, focus, etc.)
An example for harm/help is at the bottom of this page
Operators
= exact match (used with n)
~ partial match (used with n,t)
< less than (used with d,D,r,R)
<= less than or equal to (used with d,D,r,R)
> greater than (used with d,D,r,R)
>= greater than or equal to (used with d,D,r,R)
The negation (logical not) operator, !, can be used with almost any command:
a! (or !a) means 'effects that are not auras' (that is, effects that have durations)
n!~elixir means 'effects that do not contain elixir in their name'
n!=arcane intellect means 'not the Arcane Intellect effect'
tt!~intellect means 'effects that do not contain intellect in the tooltip text'
!hc would mean 'effects that are not curses'
Parameters
String - The n and tt commands take a string that is either used to partially match (~ operator) or exactly match (= operator) the name or tooltip text of the effect
Number - The D, d, R, and r commands take a number that is used to compare against the effect's duration or remaining time
The rest do not take any parameters, and SBF will tell you at startup if you have put a parameter on a filter that shouldn't be there
Filters are run in the order that they appear in the filters list for the frame. If your first two filters are n~Elixir and r<60, then 'elixir of mastery' will match on the first one, even when it has less than 60 seconds remaining. Select a filter in the list and use the Up and Down buttons to arrange filters in the order you want them to be applied in.
Combining Filters with the and operator
You can make combinations of filters using logical and {&} operator.
n~flask&R>60 will be true if the name of the effect has 'flask' in it and its time remaining is more than 60 minutes
New in SBF 3.1: The or {|} operator and nesting with parentheses are no longer supported. Refer to the SBF website for more details.
Sample Filters
Again, filters work in conjunction with the whitelist/blacklist setting for the frame. If the frame is set to whitelist and a filter matches, then the effect(s) will be shown in the frame. If the frame is set to blacklist and a filter matches, then the effect(s) will not be shown in the frame.
n~elixir - Filter 'Adept's Elixir', 'Elixir of Mastery' and so on
D<=3 - Filter effects with duration less than or equal to 3 minutes
a - Filter all auras
n=living bomb&my - Filter the Living Bomb effect that I applied
my - Filter all effects that I applied
c - Filter all effects that my class can cast
e - Filters all temporary item enchants (sharpened, wizard oil, etc.)
Using the help and harm filters
The help and harm filters are used to filter effects in the same frame depending on who is showing in the frame. These are basically useful for frames showing target, focus, and targettarget. To use these filters, you want to set up the frame like this:
Now you want to add filters. Suppose you're a priest and have set your target frame up as above. Now you want to have the frame show you if your target has fort/renew/shield if it's friendly, or shadow word: pain if it's an enemy. So, we set up some filters: