Get an Epic Experience with Premium


Buffs & Debuffs Login to Add Favorites
  • World of Warcraft
  • 17,428 Monthly Downloads
  • Supports: 6.0.2
  • 788,250 Total Downloads
  • Updated 10/25/2014
  • Created 12/02/2008
  • 780 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: MIT License
  • Newest File: BadKitty 20601
Support development! **

About BadKitty


BadKitty is a debuff tracker for Feral Druids. Originally designed to accurately track Mangle's remaining time regardless of how many Ferals or Arms Warriors were in the raid, it has grown to track all buffs, debuffs, and cooldowns important to every cat (and bear) who cares about their damage output.

Savage Roar, Mangle (Trauma included), Faerie Fire, Rip, Rake, Tiger's Fury, Berserk, Glyph of Shred charges, Omen of Clarity, Predator's Swiftness, Demoralizing Roar (Demo Shout, CoW, Vindication included), Lacerate, Thrash, Pulverize, and Barkskin are all tracked and take into account any overlapping debuffs that may exist in your group or raid.

In both Cat and Bear Forms, two options are available for you. A small bar frame akin to many simliar mods, and a unique 'warning' frame that displays on your screen images of any buff or debuff that will soon need your attention. These two options can be used independently or simultaneously. Color, texture, and opacity options are available for these as well.

If you have any errors, questions, comments, or suggestions, put them in the comments here, or come bug me on Gul'dan (look for Anatinus). I try to improve BadKitty when I can, so your words will not fall on deaf ears. Happy Shredding!

Fixed the warning shape/direction slider and radio buttons.


First Previous Page 5 of 66 Next Last
  • #1024

    I've had plans for a while to generalize BadKitty for all specs/classes. There's a fork (well, a total rewrite) on my machine that aims to do this, but is no where near complete.

    ...someday! /stareoffintospace

  • #1025

    I'm both \o/ and ;_;

  • #1018

    I just got this in LFR.... :-/

    Date: 2012-12-09 14:16:22
    ID: 136
    Error occured in: AddOn: BadKitty
    Count: ∞
    Message: Note: AddOn BadKitty attempted to call a protected function (CompactRaidFrame40:Hide()) during combat lockdown.
       [C]: Hide()
       ..\FrameXML\CompactUnitFrame.lua:278: CompactUnitFrame_UpdateVisible()
       ..\FrameXML\CompactUnitFrame.lua:234: CompactUnitFrame_UpdateAll()
      Swatter, v5.15.5365 (LikeableLyrebird)
      WowheadLooter, v50006
      NPCScan, v5.0.0.5
      NPCScanOverlay, v5.0.0.3
      AckisRecipeList, v2.4.3
      ACP, v3.4.1
      Altoholic, v5.1.001
      AraBrokerTradeskills, vr43
      AucAdvanced, v5.15.5365 (LikeableLyrebird)
      AucFilterBasic, v5.15.5365 (LikeableLyrebird)
      AucFilterOutlier, v5.15.5365.5347(/embedded)
      AucMatchUndercut, v5.15.5365.5364(/embedded)
      AucScanData, v5.15.5365 (LikeableLyrebird)
      AucStatiLevel, v5.15.5365 (LikeableLyrebird)
      AucStatPurchased, v5.15.5365 (LikeableLyrebird)
      AucStatSales, v5.15.5365.5305(/embedded)
      AucStatSimple, v5.15.5365 (LikeableLyrebird)
      AucStatStdDev, v5.15.5365 (LikeableLyrebird)
      AucStatWOWEcon, v5.15.5365.5323(/embedded)
      AucUtilAHWindowControl, v5.15.5365.5347(/embedded)
      AucUtilAppraiser, v5.15.5365.5362(/embedded)
      AucUtilAskPrice, v5.15.5365.5347(/embedded)
      AucUtilAutoMagic, v5.15.5365.5347(/embedded)
      AucUtilCompactUI, v5.15.5365.5336(/embedded)
      AucUtilEasyBuyout, v5.15.5365.5347(/embedded)
      AucUtilFixAH, v5.15.5365 (LikeableLyrebird)
      AucUtilItemSuggest, v5.15.5365.5365(/embedded)
      AucUtilPriceLevel, v5.15.5365.5365(/embedded)
      AucUtilScanButton, v5.15.5365.5320(/embedded)
      AucUtilScanFinish, v5.15.5365.5347(/embedded)
      AucUtilScanProgress, v5.15.5365.4979(/embedded)
      AucUtilScanStart, v5.15.5365.5347(/embedded)
      AucUtilSearchUI, v5.15.5365.5347(/embedded)
      AucUtilSimpleAuction, v5.15.5365.5362(/embedded)
      AucUtilVendMarkup, v5.15.5365.4828(/embedded)
      Babylonian, v5.1.DEV.332(/embedded)
      BadKitty, v2.5.4
      BagBrother, v
      Bagnon, v5.1.1
      BeanCounter, v5.15.5365 (LikeableLyrebird)
      BindPad, v2.6.3
      BrokerCPU, v50001
      BrokerCurrency, v5.0.4-1.2.11
      BrokerEverything, v5.1.1
      BrokerEverythingConfig, v0.5
      Carbonite, v5.05.09
      CarboniteTransfer, v1.01
      Chatter, v1.0
      Chinchilla, vv2.5.9
      ChocolateBar, vv2.3.1
      Configator, v5.1.DEV.344(/embedded)
      DataStore, v5.1.001
      DataStoreAchievements, v5.1.001
      DataStoreAgenda, v5.1.001
      DataStoreAuctions, v5.1.001
      DataStoreCharacters, v5.1.001
      DataStoreContainers, v5.1.001
      DataStoreCrafts, v5.1.001
      DataStoreCurrencies, v5.1.001
      DataStoreInventory, v5.1.001
      DataStoreMails, v5.1.001
      DataStorePets, v5.1.001
      DataStoreQuests, v5.1.001
      DataStoreReputations, v5.1.001
      DataStoreSpells, v5.1.001
      DataStoreStats, v5.1.001
      DataStoreTalents, v5.1.001
      DBMCore, v
      DBMTerraceofEndlessSpring, v
      DeathNote, vv1.4
      DebugLib, v5.1.DEV.337(/embedded)
      Dominos, v5.1.0
      DominosXP, v
      Enchantrix, v5.15.5365 (LikeableLyrebird)
      Factionizer, v05.01.00 12.11.28
      Gatherer, v4.0.6
      GearScore, v5.00.00.00
      GTFO, v4.18.1
      GupPet, v2.104
      Informant, v5.15.5365 (LikeableLyrebird)
      LibExtraTip, v5.12.DEV.342(/embedded)
      Overachiever, v0.70
      Postal, v3.5.0
      Quartz, v3.1.1
      RatingBuster, vr395
      RobBossMods, v
      ShadowedUnitFrames, vv3.7.4
      ShadowPriestDoTTimer, v1.4
      SimplePowerBar, v3.3
      Skada, v1.4-7
      SkadaCC, v1.0
      SkadaDamage, v1.0
      SkadaDamageTaken, v1.0
      SkadaDeaths, v1.0
      SkadaDebuffs, v1.0
      SkadaDispels, v1.0
      SkadaEnemies, v1.0
      SkadaHealing, v1.0
      SkadaPower, v1.0
      SkadaThreat, v1.0
      Stubby, v5.15.5365 (LikeableLyrebird)
      Symbiosis, v0.17
      TidyPlates, v6.8.0 (R556)
      TidyPlatesQuatre, v
      TidyPlatesHub, v
      TidyPlatesWidgets, v
      TipHelper, v5.12.DEV.343(/embedded)
      TipTac, v12.10.30
      TipTacItemRef, v12.08.30
      TipTacTalents, v12.09.05
      VuhDo, v3.20
      VuhDoOptions, v3.20
      WIM, v3.6.3
      BlizRuntimeLib_enUS v5.1.0.50100 <us>


  • #1027

    Was reading a similar comment below, and found this error in BugSack, maybe it'll help.  Maybe not.  But I am giving it a shot.

    6x Blizzard_CompactRaidFrameContainer.lua:345: CreateFrame: Can"t create protected "Button" now
    <in C code>
    Blizzard_CompactRaidFrameContainer.lua:345: in function "CompactRaidFrameContainer_GetUnitFrame"
    Blizzard_CompactRaidFrameContainer.lua:317: in function "CompactRaidFrameContainer_AddUnitFrame"
    Blizzard_CompactRaidFrameContainer.lua:296: in function "CompactRaidFrameContainer_AddFlaggedUnits"
    Blizzard_CompactRaidFrameContainer.lua:169: in function "CompactRaidFrameContainer_LayoutFrames"
    Blizzard_CompactRaidFrameContainer.lua:130: in function "CompactRaidFrameContainer_TryUpdate"
    Blizzard_CompactRaidFrameContainer.lua:57: in function "CompactRaidFrameContainer_OnEvent"
    <string>:"*:OnEvent":1: in function <string>:"*:OnEvent":1

    self = CompactRaidFrameContainer {
     unitFrameUnusedFunc = <func> @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameContainer.lua:46
     flowSortFunc = <func> @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameManager.lua:762
     groupMode = "flush"
     raidUnits = <table> {}
     frameUpdateList = <table> {}
     flowOrientation = "vertical"
     showBorder = true
     borderFrame = CompactRaidFrameContainerBorderFrame {}
     flowFilterFunc = <func> @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameManager.lua:830
     groupFilterFunc = <func> @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameManager.lua:860
     partyUnits = <table> {}
     flowMaxPrimaryUsed = 72.000015258789
     flowMaxSecondaryUsed = 36.000007629395
     units = <table> {}
     flowPauseUpdates = true
     enabled = true
     frameReservations = <table> {}
     flowFrames = <table> {}
     0 = <userdata>
     displayFlaggedMembers = true
    unit = "raid2"
    frameType = "flagged"
    info = <table> {
     updateList = "normal"
     setUpFunc = <func> @FrameXML\CompactUnitFrame.lua:952
     mapping = <func> =[C]:-1
    mapping = "0x05000000018EE52C"
    frame = nil
    frameCreationSpecifiers = <table> {
     flagged = <table> {}
     raid = <table> {}
     pet = <table> {}
     target = <table> {}
    unitFramesCreated = 2
    applyFunc = <func> @Blizzard_CompactRaidFrames\Blizzard_CompactRaidFrameContainer.lua:324

  • #1019

    Bizarre. BadKitty doesn't call any protected functions, and all the stack info given is from Blizzard's UI. So it looks like either a) the Blizzard UI messing up and blaming the addon that happened to cause it, or b) an overwrite of one of the variables in BadKitty by some other mod. I just did a quick search through the code and didn't find any calls to :Hide() on a frame that could be altered externally, but I suppose (b) is still possible.

    Did this just happen once?

  • #1030


    Have you tried if you can reproduce it with the daily Riding the Storm? Attacking the flying quest mobs and then using the leave vehicle button while still in combat might reproduce the error.

  • #1029

    I've been trying to isolate it but it is a pain because it has only happened (since I started taking notes) to happen when I'm in a party, usually a raid. And I need my addons in a raid. But I installed buggrabber and bug sack, and here is what it produced tonight:

    14x [ADDON_ACTION_BLOCKED] AddOn "BadKitty" tried to call the protected function "CompactRaidFrame2:Show()".
    !BugGrabber-r188\BugGrabber.lua:587: in function <!BugGrabber\BugGrabber.lua:587>
    <in C code>
    FrameXML\CompactUnitFrame.lua:276: in function "CompactUnitFrame_UpdateVisible"
    FrameXML\CompactUnitFrame.lua:234: in function "CompactUnitFrame_UpdateAll"
    FrameXML\CompactUnitFrame.lua:46: in function <FrameXML\CompactUnitFrame.lua:43>


    That probably doesn't help, but I'll keep trying things.

  • #1023

    I don't know if BadKitty really taints the Blizzard raid frames since I don't raid with my Druid, but I know for sure that AuctionMaster taints them which results in a similar stack trace. Sadly it's not as easy as fixing all leaked global variables, at least in AuctionMasters case, so maybe fixing the leaked globals isn't enough for BadKitty too. See here for more details and a daily that can be easily used to test the taint problem:

    Last edited by cremor on 12/11/2012 11:44:36 AM
  • #1021

    Nothing besides trial and error in determining the cause. If I get a chance this week I'll clear out the rest of the global variables BadKitty uses (see cremor's comment below, it's overdue), but I'm not convinced that's causing your problem.

  • #1020

    It has been happening to me for several weeks, I believe, and it probably happens every session. The addon keeps ticking though.

    Since this has been happening for awhile for me and no one else has reported it, it seems reasonable to think that my particular setup has an issue. I should point out that this doesn't happen in my first fight when I log on, although I can't discern a pattern. But since it is in the middle of fights, I don't stop and take notes. ;) 

    I will try disabling some other addons and take better notes. Any advice you can suggest?

  • #1017

    Thanks for the update, but version 2.5.4 still sets a huge amount of global variables with common names (e.g. i, unitCaster, expirationTime, duration, enable, start, ...).

    Please see this list for all global set variables:

    Those that are prefixed with "BK" are fine, but all others should either be local or also have a prefix.

  • #1014

    Uploaded BadKitty 2.5.4. It is updated for 5.1 and I fixed the "local _" issue.

  • #1011

    Please do set "_" as a local. After 5.1, I couldn't do even move in shapeshift form without getting a huge explosion of errors, indicating that BadKitty was trying to call CompactRaidFrames and was being blocked. I popped open the main LUA file, added "local _" at the top, and now it's working perfectly again, with no errors.

    Anyone who's comfortable with coding can make the same very, very small change - open BadKitty.lua in a text editor. At the very top, hit enter a few times to move everything down. On the top line, type "local _" (no quote marks). Save the file, then launch WoW. Should help remove a lot of errors, if you're getting any. :)

  • #1013

    Ugh I thought I fixed that. I must have....dreamed fixing it? I haven't been getting errors.

    I'll do it today.

  • #1016

    At least it was easy? :) Thanks for the official fix!

  • 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 »

Dying Light Wiki Game Giveaway