Download
(219Kb)
Download
Updated: 07-14-10 10:04 PM
Pictures
File Info
Updated:07-14-10 10:04 PM
Created:unknown
Downloads:8,835
Favorites:40
MD5:

CandyDice  Popular! (More than 5000 hits)

Version: 70
by: kaylen [More]

CandyDice is inspired by the venerable and widely used DiscoDice rogue timer mod. CandyDice uses the Ace2 embedded libraries (notably CandyBars for the timer bars), tracks a wider variety of abilities, shows cooldowns as well as duration timers, and is sufficently generic that it can show duration timers for any buff and cooldowns for any ability. It works out of the box with most rogue abilities, several horde racials, and a few low level mage cooldowns.

Updated to version 70 with WOTLK 3.3 compatibility.

Optional Files (0)


Post A Reply Comment Options
Unread 01-09-07, 08:07 PM  
kaylen
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 6
File comments: 40
Uploads: 1
Originally posted by VincentSDSH
Anyone else notice that KidneyShot doesn't trigger a duration bar? or that the stealth cooldown seems to go off somewhat at random?
Kidney Shot Works For Me(tm). Can you give me any specifics?

The stealth bar will sometimes show up when it should be suppressed. This is your client showing the cooldown wrong, usually because of lag. It should correct itself in a second or two.

CandyDice seems to work fine under the new patch, I will post an updated version later this week (Monday at the latest) with the toc fixes below and an updated toc for the new patch.

EDIT: Kidney Shot worked for me because I hadn't merged the fixes for it from my TBC branch. Because of the slowness of the site, I don't want to struggle through making a release but I will paste the updated file below. FYI, duration didn't work because the event now fires after your combo points are gone.

Code:
assert(CDRogueTimers)
local BabbleSpell = AceLibrary("Babble-Spell-2.2")

KidneyShot = CDRogueTimers:NewModule("Kidney Shot")

local KSName = BabbleSpell["Kidney Shot"]

KidneyShot.category = "Stun"

function KidneyShot:OnEnable()
    --self:SetDebugging(true)
    self.rank = nil
    self:RegisterEvent("SPELLS_CHANGED", "ScanSkills")
    self:RegisterEvent("UNIT_SPELLCAST_SUCCEEDED")
    self.parser:RegisterEvent("CDRogueTimersKidneyShot", "CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE", function(event, info)
        return self:CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE(event, info)
    end)    
end

function KidneyShot:OnDisable()
    self.parser:UnRegisterAllEvents("CDRogueTimersKidneyShot")
end

function KidneyShot:UNIT_SPELLCAST_SUCCEEDED(unit, spell)
    if unit ~= "player" then return end
    if spell ~= KSName then return end
    self.combo = GetComboPoints()
end

function KidneyShot:CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE(event, info)
    if info.skill ~= KSName then return end
    if not self.rank then
        self:ScanSkills()
    end
    if not self.rank then return end
    if not self.combo then return end
    local duration = self.combo + (self.rank-1)
    self.combo = nil
    self:StartBar(duration)
end

function KidneyShot:ScanSkills()
    -- Scan spellbook to figure out what rank we have
    for ii =1,MAX_SPELLS do
        local name, rank = GetSpellName(ii, BOOKTYPE_SPELL)
        --self:Debug(name)
        if name == KSName then
            --- wrong wrong wrong... parse the rank out of the string
            local _,_,nrank = string.find(rank, 'Rank (%d)')
            self.rank = nrank
            return
        end
    end
end


CheapShot = CDRogueTimers:NewModule("Cheap Shot")

CheapShot.category = "Stun"

function CheapShot:OnEnable()
     self.parser:RegisterEvent("CDRogueTimersCheapShot", "CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE", function(event, info)
        return self:CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE(event, info)
    end)
end

function CheapShot:OnDisable()
    self.parser:UnRegisterAllEvents("CDRogueTimersCheapShot")
end

function CheapShot:CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE(event, info)
    if info.skill ~= BabbleSpell["Cheap Shot"] then return end
    if info.victim ~= UnitName("target") then return end
    self:StartBar(4)
end
Last edited by kaylen : 01-09-07 at 08:38 PM.
Report comment to moderator  
Reply With Quote
Unread 01-09-07, 07:33 PM  
VincentSDSH
Non-Canadian Luzer!
 
VincentSDSH's Avatar
AddOn Author - Click to view AddOns

Forum posts: 350
File comments: 257
Uploads: 12
Anyone else notice that KidneyShot doesn't trigger a duration bar? or that the stealth cooldown seems to go off somewhat at random?

Edit: Ok, looks like KidneyShot throws a CHAT_MSG_SPELL_PERIODIC_CREATURE_DAMAGE instead of a CHAT_MSG_SPELL_SELF_DAMAGE event, I changed the event for KidneyShot and the duration timer started showing up again...now to get it to use the right duration...
Last edited by VincentSDSH : 01-09-07 at 08:05 PM.
Report comment to moderator  
Reply With Quote
Unread 01-09-07, 07:07 PM  
Loads
A Kobold Labourer

Forum posts: 1
File comments: 15
Uploads: 0
Also glad to have you back in action Kaylen. Will give these a workout later this week.
Report comment to moderator  
Reply With Quote
Unread 01-09-07, 09:50 AM  
VincentSDSH
Non-Canadian Luzer!
 
VincentSDSH's Avatar
AddOn Author - Click to view AddOns

Forum posts: 350
File comments: 257
Uploads: 12
Glad to see ya back, Kaylen

Just fyi, in the 67 build, the .toc file has a problem, it should look like:

Libs\AceModuleCore-2.0\AceModuleCore-2.0.lua
Libs\ParserLib\ParserLib.lua

(extra file ref removed and parselib pathname fixed)
Last edited by VincentSDSH : 01-09-07 at 05:30 PM.
Report comment to moderator  
Reply With Quote
Unread 01-08-07, 07:15 PM  
kaylen
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 6
File comments: 40
Uploads: 1
I'm sorry for abandoning you guys, seeing all the posts motivate me a lot more to clean up what I have and release it. I've had a lot of work IRL and my guild disbanded so I haven't been playing much lately, kind of on hold until TBC ships.

The CandyBar problem listed below - thanks for the fix. The CandyBar devs slipped a backwards incompatible API change in without upping the version number and I was hoping they'd fix it right away, but I will fix CandyDice to work properly with the new API.

Non-refreshing timers: Blizzards fault, but CandyDice can work around it.

RE: CCWatch functionality. This is the purpose of the CandyDice-RogueTimers addon (part of CandyDice). It's still a beta state but will be working much better in the upcoming release.

RE: Shadow priests: CandyDice can, out of the box, track any buff or cooldown. just add them to be tracked with /cdice abilities addnew. I add items to the defaults as it occurs to me, and I mainly play a rogue so those are the abilities I add. If anyone wants to contribute default files for any class or race, they are very easy to create - just edit the class files in the CandyDice folder. Copy existing entries, the color entry is a HTML format hex color.

RE: Frost mages: The water elemental isn't a buff (I think?) so the core CandyDice mod won't work, but a CandyDice-RogueTImers module probably could. I don't have a 60 mage so someone else would need to write this or provide me with the information needed.

Thank you all for all your support, I feel bad about letting you guys down. I have a new release incoming.
Report comment to moderator  
Reply With Quote
Unread 01-06-07, 09:50 PM  
VincentSDSH
Non-Canadian Luzer!
 
VincentSDSH's Avatar
AddOn Author - Click to view AddOns

Forum posts: 350
File comments: 257
Uploads: 12
Has this been abandoned? I love this mod and I'd hate to see it die (and I don't have time to pick up life-support for yet another mod)

EDIT: Ok, I *think* I fixed the DoT problems. Just an update to the modules for garrote and rupture: http://www.silverdaggers.net/cd_roguetimers_fixed.zip It's only a partial fix (in that when the mob dies the timer will continue) but it's at least showing up.
Last edited by VincentSDSH : 01-08-07 at 03:00 PM.
Report comment to moderator  
Reply With Quote
Unread 01-05-07, 08:39 PM  
Retlaw
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
Originally posted by Taroven
I'd really hate to see CD completely break as the patches continue... I've been using it since about three days after I started my first Rogue, and I couldn't imagine switching to another mod!
Well, if you use FuBar, you can try out RogueTimerFu at http://www.wowinterface.com/download...ueTimerFu.html

I was getting studdering during combat when i used it, but you may have better luck.
Report comment to moderator  
Reply With Quote
Unread 01-04-07, 09:55 AM  
Taroven
A Cyclonian
AddOn Author - Click to view AddOns

Forum posts: 49
File comments: 837
Uploads: 11
Well, somehow broke CandyDice when I snagged a couple new Ace2 mods. It gave the dreaded Line 699/720 errors, wouldn't even load up the bars.

Retlaw, your fix seems to work perfectly for now.

EDIT: Just added in Vincent's fix to the CandyBar update... I'll tell you guys how it goes.

I'd really hate to see CD completely break as the patches continue... I've been using it since about three days after I started my first Rogue, and I couldn't imagine switching to another mod!
Last edited by Taroven : 01-04-07 at 10:00 AM.
Report comment to moderator  
Reply With Quote
Unread 01-01-07, 05:37 PM  
Retlaw
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
Re: CandyDice fix

Damn, still randomly pops the line 720 error with my fix, so may want to stick to the other fix.
Report comment to moderator  
Reply With Quote
Unread 01-01-07, 03:44 PM  
Retlaw
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
CandyDice fix

Actually, I found a better way of fixing it without possibly breaking other CandyBar dependent addons, or having to modify it again on new CandyBars versions.

Code:
File: CandyDice.lua

change line 699
    cb:RegisterCandyBar(cbn, 1, ability, icon)
to 
    cb:RegisterCandyBar(cbn, 1, ability, icon, fgcolor, bgcolor)

and line line 720
    cb:RegisterCandyBar(buff, 1, buff, icon)
to
    cb:RegisterCandyBar(buff, 1, buff, icon, fgcolor, bgcolor)
It just patches CandyDice to pass the color params to CandyBar on creation, rather than kludging CandyBars to work backwards with CandyDice.
Last edited by Retlaw : 01-01-07 at 03:45 PM.
Report comment to moderator  
Reply With Quote
Unread 12-28-06, 09:00 AM  
Retlaw
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
That did the trick for me, thanks for the fix.

Report comment to moderator  
Reply With Quote
Unread 12-28-06, 03:42 AM  
VincentSDSH
Non-Canadian Luzer!
 
VincentSDSH's Avatar
AddOn Author - Click to view AddOns

Forum posts: 350
File comments: 257
Uploads: 12
Ok, this is what I did to make the error go away.

Using the latest CandyBars ( http://www.wowace.com/files/ ) Rev:21326

Line 124: CandyBar:argCheck(c1, 6, "string")

Change To

Line 124: CandyBar:argCheck(c1, 6, "string", "nil")

Seems to work so far, your milage may vary.
Report comment to moderator  
Reply With Quote
Unread 12-20-06, 05:18 PM  
Vella
A Murloc Raider

Forum posts: 6
File comments: 12
Uploads: 0
has some one a fix? i like this addon to much it would be sad to lose ist.
Report comment to moderator  
Reply With Quote
Unread 12-17-06, 04:17 PM  
Retlaw
A Kobold Labourer

Forum posts: 1
File comments: 7
Uploads: 0
Errors with latest AceEvent/CandyBar

CandyDice seems to have problems with the latest versions of AceEvent and/or CandyBar, having them loaded causes the following errors when cooldown or timer bars are shown:

AceEvent-2.0\\AceEvent-2.0.lua:403: Interface\\AddOns\\CandyDice\\CandyDice.lua:699: CandyBar-2.0: Bad argument #6 to `Register' (string expected, got nil)

AceEvent-2.0\\AceEvent-2.0.lua:296: Interface\\AddOns\\CandyDice\\CandyDice.lua:699: CandyBar-2.0: Bad argument #6 to `Register' (string expected, got nil)

The code section it is referring to is as follows:
Code:
function CandyDice:RegisterCooldownBar(ability, fgcolor, bgcolor, icon)
    --- register a CandyBar respecting all the CandyDice settings like show icon, texture, scaling, etc
    --- Returns the name of the bar
    local cbn = ability.."CD"
    local icon = CandyDice.db.profile.options.iconcd and icon or ''
    local o = self.db.profile.options
    local texture = self.textures[o.texture]
    -- register bar
    cb:RegisterCandyBar(cbn, 1, ability, icon)
    if fgcolor then
        cb:SetCandyBarColor(cbn, fgcolor, 0.5)
        cb:SetCandyBarBackgroundColor(cbn, bgcolor or fgcolor, 0.2)
    end
    cb:RegisterCandyBarWithGroup(cbn,"CandyDiceCooldowns")
    cb:SetCandyBarScale(cbn, o.scalecd)
    if texture then cb:SetCandyBarTexture(cbn, texture) end
    if CandyDice.db.profile.options.reversecd then
        cb:SetCandyBarReversed(cbn, true)
    end
    return cbn
end
Last edited by Retlaw : 12-17-06 at 04:22 PM.
Report comment to moderator  
Reply With Quote
Unread 12-14-06, 11:15 AM  
Astika
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 8
Uploads: 1
Currently ... timers for Rupture, Garrote, Expose Armor, Sap are not working.

I recall Rupture working, once or twice, but it seems to have stopped. I've also cleared out /AddOns and /WTF and restarted from scratch with just CandyDice and BugSack as the only enabled addons.

Please tell me there is a fix, or that I am screwing up somewhere. I'm Hemo, and Rupture is my bread and butter for raids CandyDice is the only addon for timers and cooldowns i prefer to use.

thanks in advance.
__________________
shadows and shadows of shadows.
Last edited by Astika : 12-14-06 at 11:18 AM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: