Get an Epic Experience with Premium

Debuff Filter

Buffs & Debuffs Login to Add Favorites
  • World of Warcraft
  • 3,943 Monthly Downloads
  • Supports: 6.1.0
  • 494,546 Total Downloads
  • Updated 03/05/2015
  • Created 08/01/2006
  • 633 Favorites
  • Project Site
  • Comments
  • Release Type: Inactive
  • License: All Rights Reserved
  • Newest File: Debuff Filter

About Debuff Filter

This addon filters out the debuffs and buffs that you don't care about, and places them anywhere on screen.  If you're a melee class, you can filter out everything but CoR, FF and Sunder.  If you're a caster, you can just show debuffs like CoE and Winter's Chill.  Healers can filter out everything but their buffs and HoTs, etc.

This addon can also display cooldowns.  It can show all listed cooldowns, or it can show spells and items that are not on cooldown and that are available for use.  You can also make these cooldown buttons clickable.  In other words, you can create more toolbars.

Besides filtering your current target, you can filter buffs/debuffs on yourself, and buffs/debuffs on the Focus target.  Buffs/debuffs are grouped into frames.  You can duplicate frames, so you can have more than 1 frame for your target.  You can also create frames for other valid targets, like pet, raid1, targettarget, etc.

To configure the mod once it's installed, type /dfilter -- you should see a simple UI.  To add a filter, select "Frame Buffs" on the left hand side, then select your target from the dropdown menu (Target, Player, Focus), then select the Buff or Debuff tab, then type in the name of your buff/debuff and press enter.  You won't see the list of buffs/debuffs unless you enlarge the window, which you can do by dragging the bottom right corner.

If you're not sure how to set the Focus target, you can either type /focus <target> or go into keybindings and bind keys to "Focus Target" and "Target Focus" under Targeting Functions.

Note: make sure "Show Frame" is checked for your target type, or you won't see anything get filtered.

To move the frames, select "General Settings" on the left hand side, then check "Show Backdrop", and then shift-click and drag one of the backdrops.

If you'd like to change the orientation of any frame, select "Frame Layout" on the left hand side, then select the direction under the dropdown Grow menu, and then configure how many buffs or debuffs you'd like to see per row.  The layout settings are as follows:

Right-Down, Right-Up: grows to the right, new rows start below or above the first row.
Left-Down, Left-Up: grows to the left, new rows start below or above the first row.
If the "rows" setting is set to 1, you'll have vertical orientation.

To change the orientation of the buff duration time, ctrl-right click the frame you'd like to configure.

Settings are stored on a per-character/server basis, so it should work fine if you have alts.

2015-03-05 (
- 6.x UnitId fix (thanks, stellschraube!)
- Updated TOC

2013-9-13 (
- Updated TOC

2013-9-9 (
- Fixed dual spec lua changes
- Updated TOC

Much thanks to porkbone for letting me maintain this!

2012-9-1 (3.22):
- applied fix for 5.0 update (thanks alpair!)
- updated TOC

Note: I am no longer actively updating Debuff FIlter. If someone would like to continue to maintain it, please contact me on Curse.

2011-6-19 (3.31):

- works properly with latest alpha version of masque (previously ButtonFacade) -- in version 3.30, it wouldn't work unless both ButtonFacade and Masque were installed and enabled (I think)
- can right-click cancel buffs
- can have timers as 1m rather than 1:00
- can control space between icons
- each frame has own 'hide in combat' option
- can change addon's transparency
- can select option to display most enrage buffs
- can remove color border on debuffs

2011-4-29 (3.21):

- Updated .toc file so that Debuff Filter won't appear out of date for patch 4.1

2011-4-6 (3.20):

- Fixed bug where sometimes profiles stopped switching when changing talents.

2011-2-7 (3.10):

- Can show ghost timers now.  When a (de)buff/cooldown finishes, the icon becomes faded for three seconds.
- Can disable the flash overlay that occurs on cooldowns now.
- Can show abbreviated names beside (de)buffs/cooldowns now.
- Can replace a (de)buff's icon with the icon of an item that exists in your bags.  If that item is removed, the (de)buff's new look remains.
- Certain cooldowns, that are about to start but haven't yet, like a priests inner focus won't blink link crazy anymore.
- Could not fix bug where sometimes profiles aren't switched when changing talents.  Please do manually instead.

2010-12-25 (3.04):

- Fixed bug where you cannot create a new profile, if ButtonFacade is installed.

2010-12-24 (3.03):

- Fixed bug where addon would not work and you get error message "LibDualSpec-1.0 requires LibStub".  If another addon already loaded LibStub this error would not occur.
- Fixed bug where you change talent specs and you get error message "buttonfacadeGroup is nil".  This would occur if addon ButtonFacade was not installed.

2010-12-16 (3.02):

- Fixed bug where addon would not show anything if it was installed on a computer with no setup file (setup file is DebuffFilter.lua in WTF folder)
- Included missing library.  If another addon has this library addon would work fine.
- Hopefully fixed bug where addon would not show buffs/debuffs on game versions that were not english.

2010-12-15 (3.00):

- Can select to show debuffs/buffs only on friends or only on enemies
- Can create frames that show your cooldowns -- show all listed cooldowns, spells and items that are not on cooldown and that are available for use, or show cooldowns a certain number of seconds before they expire
- Can create frames with spells and items that you can cast by clicking -- this means you can create more toolbars
- Added profiles, which can automatically switch when you change talent specs
- Can enable or disable addon in game
- Can select threshold when buff/debuffs/cooldowns display time in fractions of a second

2010-11-26 (2.22):

- Fixed bug where stealable buffs were not showing
- Fixed interface bug where the DEL tooltip still showed even when interface was closed.  It would even delete if you clicked on it, so you may accidentally delete all your (de)buffs.

2010-11-25 (2.21):

- Added option to remove black box that surround timers

2010-11-23 (2.20):

- Fixed bug that displayed red border around every debuff, will now display the correct color for the debuff
- Can now filter (de)buffs according to their duration, or show them only when they have a certain number of seconds left
- Black background is shown behind each time, making it easier to read
- Implemented my own sorting algorithm, since the previous one greatly decreased FPS
- Will now display (de)buffs correctly on targettarget when its not a raid member
- Can adjust how quickly tenths of a second are shown (for example, every 0.3 seconds), below 5 seconds, or not show tenths of a second at all
- Can add the debuffs to the buffs frame -- and add the buffs to the debuffs frame
- Hopefully reduced CPU usage time

2010-11-1 (2.10):

- Can duplicate frames, so you can have more than 1 frame for your target
- Can copy (de)buffs from other frames
- Can show certain groups of (de)buffs: mine, nonraider, magic, poison, disease, curse, stealable
- Can sort (de)buffs alphabetically or by time left
- Can reverse display of cooldown
- Can display both cooldown and time
- Can lock frames and show tooltips at same time (click-thru won't occur unless show tooltips is disabled)

2010-10-14 (2.00):

- Can scale each frame independently, or scale all the frames like before
- Added frames for targettarget
- Ability to add frames for any type of target, like pet, targettargettarget, boss1, raid4...
- New dialog to configure options
- Any frame can show all buffs or debuffs
- ButtonFacade support
- Updated for Cataclysm


2010-09-28 (1.99):

Will now display debuffs/buff on PTR.


2010-09-19 (1.98):

There were limits on the number of debuffs/buffs that were
scanned.  So sometimes the target/player/focus had a
debuff/buff that was not shown.


2009-05-25 (1.97):

Added frFR (Nya) and koKR (metalchoir) localization.
Fixed a bug that occurred when no localized version was found.


2009-04-28 (1.96):

Hopefully fixed the self-applied/duration bug!
Included a deDE localization, provided by Juido

Updated for 3.1.


First Previous Page 1 of 38 Next Last
  • #566

    THx for updates. But actually all this addon needs is an option to disable this  "clock-like rotating shadow" thing on buffs -debuffs. It s extremely hard to differ ur buffs /debuffs at the end of its duration especially in combat when you dont want to focus on it.

  • #565

    "target buffs" "filter by duration" stopped working after you patched it.

    not sure why you patched it. it was working just fine lal

    Last edited by birdyhey on 3/12/2015 9:21:56 PM
  • #564

    hi serruf,

    for most actions the old code was still working. Esppecially if you were checking only selfbuffs. E.g. on my warrior I had no issues with the old code.

    But on chars where I had to check for target debuffs it caused a lot of lua-error as the code was not able to retrieve the unit type.

    Reason: before wow 6.x a unit ID looked like this: 0xF5304D2B00008852

    you had to retrieve a part of this id and do a mask operation to retrieve the type of the unit (mask with 0x7 to get: 0 for players, 1 for world objects, 3 for NPCs, 4 for permanent pets, 5 for vehicles.)

    But for wow 6.x they changed the building of the unit id to the following:

    for Player: Player-976-0002FD64

    for creatures, pets and other stuff: Creature-0-976-0-11-31146-000136DF91

    So now for getting the unit type you need to check the first part. This is done with my code modification.

    And one hint: if you are not getting any lua error, it might be, that you disabled the showing of the errors or you don't have an addon catching them. I recognized the issue only on my warlock where the buff stacks were not updated correctly.


    Last edited by stellschraube on 3/7/2015 1:21:32 PM
  • #563

    I'd like to suggest adding 'buff cancelling' to the functionality of the addon.  Personally, I've kept the last available version alive for my own use for years, making corrections where needed.  One of the things I added was the ability to cancel buffs as needed.  It's pretty simple, and while not perfect it surely does a good job.

    In the function "DebuffFilter_OnMouseUp" change to the following (bold/italics is the addition):

    function DebuffFilter_OnMouseUp(self, button)

    if (button == "LeftButton") then
      local frame = self:GetParent();

      -- store the new frame position in config file
      local anchor = {"TOPLEFT","UIParent","BOTTOMLEFT",frame:GetLeft(),frame:GetTop()}
    DebuffFilter.PlayerConfig.Frames[frame.DBFframename][frame.DBFbuffOrDebuff].anchor = anchor;

     elseif (button == "RightButton") then
        CancelUnitBuff("player", self.index)

  • #562

    Thank you of course stellschraube, but I don't understand what has changed, all worked perfectly

    But the problem with frames is not changed when General settings, put a check mark appears a new frame, it's certainly not much it doesn't, but still... just sometimes they appear on the other tabs

    Last edited by serruf on 3/6/2015 1:39:03 AM
  • #560
    stellschraube THANK YOU!!!!! WORK!!!! AAA
  • #559

    But I found a litte mistake..

    the line:  BB =casterGUID:sub(5,casterGUID:find("-"))

    need to be changed to:  BB =casterGUID:sub(0,casterGUID:find("-")-1)

  • #561

    Thank You!  ! ! !  Good!

  • #558

    Seems to work. Good work, stells =)

  • #557

    Hi guys,

    I was able to solve the issue. The reason for the error: with version 6.x Blizzard changed the way how UnitIds are created (see Therefore the code to identify the unit type is not working correctly anymore.

    Following the steps to solve it:

    Go into your interface folder and search for the folder "Debuff Filter". Within this folder search for the file "DebufFilter.lua". Open this file in an editor.

    Search for the following code part:

        if casterGUID ~= nil then
            BB = tonumber(casterGUID:sub(5,5), 16);
            maskedBB = BB % 8; -- x % 8 has the same effect as x & 0x7 on numbers <= 0xf
            -- mask with 0x7 to get: 0 for players, 1 for world objects, 3 for NPCs, 4 for permanent pets, 5 for vehicles.
            if maskedBB ~= 0 and maskedBB ~= 4 and maskedBB ~= 5 then
                buffInGroup = true

    and exchange it with the following part:

        if casterGUID ~= nil then
            BB =casterGUID:sub(5,casterGUID:find("-"))
            if BB == "Creature" or BB == "GameObject" then
                buffInGroup = true

  • #556
    The addon still works, but is there no one Cosmetica to support him? Because it has no analogues! =(
  • #555

    Please update!!! Love this addon.

  • #554

    Hi Rhykros,

    great to hear that you try to keep this addon alive.

    I have several issues since launch of WOD.

    1. The addon is giving a lot of lua-errors. Something with "updating" as I remember. If I get this error the next time, I will post it.

    2. This issue might be a result of the first one: On my warlock I have often the issue that the displayed buff is not correctyl updated (but I get no lua-errors on this char so...don't know if it is really related to the first one.


    Edit: here the error message.

    Date: 2015-02-07 15:46:38
    ID: 1
    Error occured in: Global
    Count: 1
    Message: ..\AddOns\DebuffFilter\DebuffFilter.lua line 2279:
    attempt to perform arithmetic on local 'BB' (a nil value)
    DebuffFilter\DebuffFilter.lua:2279: DebuffFilter_Frame_Update()
    framename = "target"
    buffOrDebuff = "Buffs"
    frameitem = <table> {
    frameBackdrop = <unnamed> {
    Comparisons = <table> {
    buffsFromLastIterationCount = 0
    buttons = <table> {
    buffsFromLastIteration = <table> {
    frameBackdropTitle = <unnamed> {
    frame = DebuffFiltertargetBuffs {
    frameCount = DebuffFiltertargetBuffsCount {
    ComparisonList = <table> {
    framelayout = <table> {
    ghostTimer = false
    frametarget = "target"
    thresholdDisplayFractions = 5
    scale = 1
    per_row = 8
    reverseCooldown = false
    grow = "rightdown"
    ghostTimerDuration = 3
    time_tb = "bottom"
    sort = 0
    intervalFractionSecond = 0.2
    anchor = <table> {
    time_lr = "right"
    cooldown = 0
    displayAbbreviations = false
    generaloptions = <table> {
    intervalFractionSecond = 0.2
    ghostTimerOpacity = 0.45
    scale = 1
    tooltips = false
    sort = 0
    lock = true
    showTrace = false
    ghostTimerDuration = 3
    displayAbbreviations = false
    thresholdDisplayFractions = 5
    reverseCooldown = false
    backdrop = false
    cooldowncount = false
    combat = false
    showDebug = false
    count = false
    ghostTimer = false
    disableOverlay = false
    enabled = true
    cooldown = 0
    noBoxAroundTime = false
    buttons = <table> {
    frametarget = "target"
    targetIsFriend = true
    already_seen_debuffs = <table> {
    buff_table_array = <table> {
    button = nil
    name = "Disenchant Visual - Indefinite"
    texture = "Interface\Icons\INV_Enchant_Disenchant"
    applications = 0
    duration = 0
    expiretime = 0
    caster = "target"
    nametexture = nil
    width = 0
    debuff = nil
    buff_table = nil
    buffInGroup = false
    intervalFractionSecond = 0.2
    casterGUID = "Creature-0-1467-1153-21838-79821-0000562487"
    BB = nil
    maskedBB = nil
    ghostTimer = false
    curtime = 12215.448
    i = 1
    isdebuff = false
    changeicon = nil
    numbuffs = 0
    sb = <table> {
    enabled = true
    showAllMyBuffs = true
    showAllNonRaiderBuffs = true
    buffExpiretime = 30
    buffDuration = 30
    showAllCurseBuffs = false
    buffExpiretimeToggle = false
    showAllDiseaseBuffs = false
    showAllStealableBuffs = false
    showAllMagicBuffs = false
    showAllBuffs = false
    List = <table> {
    buffDurationToggle = false
    showAllPoisonBuffs = false
    onlyFriendsOrEnemies = 0
    combineBuffsDebuffsFrames = false
    (for generator) = <function> defined =[C]:-1
    (for state) = <table> {
    1 = "Buffs"
    (for control) = 1
    _ = ""
    de_buffs = "Buffs"
    (*temporary) = nil
    (*temporary) = "t"
    (*temporary) = 16
    (*temporary) = nil
    (*temporary) = 5
    (*temporary) = "t"
    (*temporary) = nil
    (*temporary) = 0
    (*temporary) = 0
    (*temporary) = "target"
    (*temporary) = false
    (*temporary) = "attempt to perform arithmetic on local 'BB' (a nil value)"
    sortTableArray = <function> defined @Interface\AddOns\DebuffFilter\DebuffFilter.lua:1891
    deleteButton = <function> defined @Interface\AddOns\DebuffFilter\DebuffFilter.lua:2192
    LBF = nil

    Swatter, v5.21c.5521 (SanctimoniousSwamprat)
    AckisRecipeList, v3.0.13
    ArcHUD3, v3.0
    AskMrRobot, v19
    AtlasLootLoader, vv7.07.03
    Bartender4, v4.6.6
    BonusRollPreview, v60000.23-Release
    DBMCore, v
    DBMStatusBarTimers, v
    DebuffFilter, v5.4.0.1
    GarrisonMissionManager, vv22
    GatherMate2, v1.33.4
    GroupCalendar5, v5.7b4
    HandyNotes, vv1.3.2
    HandyNotesDraenorTreasures, v1.09a
    InterruptNoSpam, v1.61e
    LibSharedMedia30, v3.0-89
    MogIt, v3.4.0
    Omen, v3.1.9
    OmniCC, v6.0.10
    Outfitter, v5.10b9
    Postal, v3.5.1
    RaidAchievement, v
    RareCoordinator, v
    SavedInstances, v6.0.10
    Scrap, v12.23
    ScrapSpotlight, v12.23
    Skada, v1.4-28
    SpartanUI, v3.3.4
    SpartanUIArtwork, v3.3.0
    SpartanUIPlayerFrames, v3.3.0
    TargetCharms, v1.5.5 (9/4/2012)
    TidyPlates, v6.15.3
    TidyPlatesGraphite, v
    TidyPlatesGrey, v
    TidyPlatesNeon, v
    TidyPlatesQuatre, v
    TidyPlatesThreatPlates, v7.013-Alpha
    TidyPlatesHub, v
    TidyPlatesWidgets, v
    Titan, v5.4.3.60000
    TitanBag, v5.4.3.60000
    TitanClock, v5.4.3.60000
    TitanGold, v5.4.3.60000
    TitanLocation, v5.4.3.60000
    TitanRepair, v5.4.3.60000
    TradeForwarder, v2.22-2
    WhoTaunted, v1.1.9
    WIM, v3.6.24
    BlizRuntimeLib_deDE v6.0.3.60000 <none>

    Last edited by stellschraube on 2/7/2015 8:48:32 AM
  • #553

    please come back.. i need you..

    Last edited by yoobro on 2/6/2015 11:46:29 AM
  • #552

    love this addon. still works!! 6.0.3

    Last edited by birdyhey on 2/1/2015 3:26:04 PM
  • To post a comment, please login or register a new account.
Login to Curse

Don't have an account? Create One.

Get an epic experience with Curse Premium
  • Faster addon downloads
  • Premium-Only Beta Giveaways
  • Ad-Free Curse experience
  • Premium Curse Client
  • and many More Features
  • Learn More »

G2A Giveaway