Download
(189Kb)
Download
Compatible with Retail, Classic & TBC
Updated: 04-05-24 11:08 AM
Pictures
File Info
Compatibility:
Classic (1.15.2)
Plunderstorm (10.2.6)
WOTLK Patch (3.4.3)
Updated:04-05-24 11:08 AM
Created:05-20-19 06:41 AM
Downloads:582,591
Favorites:285
MD5:
10.2.6

ClassicCastbars  Popular! (More than 5000 hits)

Version: v1.7.9
by: wardz [More]

# ClassicCastbars


Customizable castbars for Classic & Retail World of Warcraft. Type "/castbar" to open the options panel.
Includes optional party & nameplate castbars, school lockout alerts, and basic channel + uninterruptible cast state tracking for Classic Era.


**Note: This addon is now in maintenance mode, expect less frequent updates.**


## Classic Era 1.15.0+


This addon is no longer needed for Classic Era to see *target* castbars. You may safely disable this addon now and enable castbars in `Blizzard Options -> Interface -> Show Enemy Cast Bar` instead.


For anyone still using it for castbar customizations, make sure you're using version 1.7.2+ to support the new built in cast events.


## Links


- [CurseForge Main Download](https://www.curseforge.com/wow/addons/classiccastbars)
- [Submit Translations](https://www.curseforge.com/wow/addons/classiccastbars/localization)
- [Submit Bugs or Issues](https://github.com/wardz/ClassicCastbars/issues)


### License


Copyright (C) 2024 Wardz | [MIT License](https://opensource.org/licenses/MIT).

ClassicCastbars
v1.7.9 (2024-04-05)
Full Changelog Previous Releases
  • forgot these spark setpoint calls for commit 5a62ba8
  • pixel perfect fixes for castbar spark effect
  • add warning note incase anyone forks
  • bump toc versions
  • more GlobalStrings localization replacements
  • fix typo
  • delete unnecessary tooltip text
Optional Files (0)


Archived Files (41)
File Name
Version
Size
Author
Date
v1.7.8
189kB
wardz
02-17-24 10:48 PM
v1.7.7
189kB
wardz
02-14-24 01:13 PM
v1.7.6
190kB
wardz
01-25-24 09:58 AM
v1.7.5
191kB
wardz
01-07-24 03:56 PM
v1.7.4
218kB
wardz
11-16-23 10:03 AM
v1.7.3
218kB
wardz
11-15-23 12:36 PM
v1.7.2
218kB
wardz
11-15-23 10:16 AM
v1.7.1
218kB
wardz
11-12-23 11:45 AM
v1.7.0
218kB
wardz
11-09-23 12:18 PM
v1.6.10
216kB
wardz
11-04-23 08:09 PM
v1.6.9
216kB
wardz
11-03-23 12:58 AM
v1.6.8
215kB
wardz
10-22-23 05:38 PM
v1.6.7
214kB
wardz
09-19-23 11:30 AM
v1.6.6
214kB
wardz
09-13-23 10:40 PM
v1.6.5
214kB
wardz
08-29-23 10:28 AM
v1.6.4
214kB
wardz
08-24-23 06:19 AM
v1.6.3
214kB
wardz
07-05-23 09:50 AM
v1.6.2
214kB
wardz
05-28-23 06:39 AM
v1.6.1
214kB
wardz
04-23-23 04:49 PM
v1.6.0
214kB
wardz
04-21-23 01:52 PM
v1.5.6
209kB
wardz
02-23-23 02:41 PM
v1.5.5
209kB
wardz
02-19-23 11:47 AM
v1.5.4
209kB
wardz
02-14-23 11:51 AM
v1.5.3
209kB
wardz
02-08-23 05:31 PM
v1.5.2
209kB
wardz
11-19-22 02:27 PM
v1.5.1
202kB
wardz
08-16-22 12:29 PM
v1.5.0
202kB
wardz
08-15-22 11:21 AM
v1.4.6
202kB
wardz
08-04-22 02:01 PM
v1.4.5
201kB
wardz
05-02-22 04:46 PM
v1.4.4
202kB
wardz
01-26-22 03:32 AM
v1.4.3
202kB
wardz
12-02-21 07:20 PM
v1.4.2
189kB
wardz
09-29-21 08:19 AM
v1.4.1
189kB
wardz
09-08-21 09:02 AM
v1.4.0
187kB
wardz
05-23-21 10:49 AM
v1.3.23
182kB
wardz
04-24-21 12:58 PM
v1.3.22
182kB
wardz
04-21-21 08:48 AM
v1.3.21
182kB
wardz
03-31-21 08:07 PM
v1.3.20
182kB
wardz
02-09-21 05:47 PM
v1.3.19
182kB
wardz
02-05-21 10:26 AM
v1.3.18
182kB
wardz
02-05-21 06:49 AM
v1.3.17
182kB
wardz
01-25-21 08:46 AM


Post A Reply Comment Options
Unread 08-09-19, 05:41 AM  
wardz
A Deviate Faerie Dragon
 
wardz's Avatar
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 14
Uploads: 10
Re: Addon Update

Originally Posted by Elegen
Will this be updated for launch? I saw the update note on the main page but as of today's stress test it looks like the addon is still not working. So, I assume it hasn't been updated since that note was added.
Uploaded an update for it now.
Report comment to moderator  
Reply With Quote
Unread 08-08-19, 08:48 PM  
Elegen
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Addon Update

Will this be updated for launch? I saw the update note on the main page but as of today's stress test it looks like the addon is still not working. So, I assume it hasn't been updated since that note was added.
Report comment to moderator  
Reply With Quote
Unread 05-30-19, 04:54 PM  
puda74
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 5
Uploads: 2
Nice Updates. Working very well with Zperl.
Report comment to moderator  
Reply With Quote
Unread 05-28-19, 05:24 AM  
wardz
A Deviate Faerie Dragon
 
wardz's Avatar
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 14
Uploads: 10
Re: LUA Error

Originally Posted by jackfrost7
Getting the following error only when using zperl

Code:
Message: Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:67: attempt to compare number with nil
Time: Mon May 27 21:19:23 2019
Count: 2
Stack: Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:67: attempt to compare number with nil
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:67: in function `AdjustTargetCastbarPosition'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:89: in function `StartCast'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:122: in function `StartAllCasts'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:150: in function `StoreCast'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:168: in function <Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:161>
(tail call): ?

Locals: self = <unnamed> {
 NAME_PLATE_UNIT_REMOVED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:271
 StoreCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:135
 PLAYER_ENTERING_WORLD = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:199
 StopCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:107
 GetCastbarFrame = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:32
 ToggleUnitEvents = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:208
 db = <table> {
 }
 DeleteCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:154
 NAME_PLATE_UNIT_ADDED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:264
 PLAYER_GUID = "Player-4618-0000ECE3"
 COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:161
 AdjustTargetCastbarPosition = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:47
 StartAllCasts = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:115
 0 = <userdata>
 StopAllCasts = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:127
 StartCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:75
 PLAYER_TARGET_CHANGED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:254
}
castbar = <unnamed> {
 0 = <userdata>
 Border = <unnamed> {
 }
 Flash = <unnamed> {
 }
 showCastbar = true
 _data = <table> {
 }
 Icon = <unnamed> {
 }
 startChannelColor = <table> {
 }
 finishedCastColor = <table> {
 }
 nonInterruptibleColor = <table> {
 }
 Text = <unnamed> {
 }
 Timer = <unnamed> {
 }
 BorderShield = <unnamed> {
 }
 Spark = <unnamed> {
 }
 startCastColor = <table> {
 }
 flashColorSameAsStart = true
 finishedColorSameAsStart = true
 failedCastColor = <table> {
 }
}
parentFrame = XPerl_TargetportraitFrame {
 0 = <userdata>
 portrait3D = XPerl_TargetportraitFrameportrait3D {
 }
 gradient = <unnamed> {
 }
 portrait = XPerl_TargetportraitFrameportrait {
 }
}
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to compare number with nil"
Only when target is enabled, not nameplate... disabling target and enabling nameplate lets that part work (which is the part I use so I'm fine, just letting you know).

Not sure if this is on your addon or on zperl... I'm guessing zperl, but maybe you'll want to fix it anyways because people like non-blizz unit frames.

Thanks for the addon btw.
Thanks for the report. Next version should fix it but im gonna postpone uploading it until I get access to the stress test/beta servers again, incase there's any new errors.

Edit: Should be fixed now.
Last edited by wardz : 05-30-19 at 06:31 AM.
Report comment to moderator  
Reply With Quote
Unread 05-27-19, 07:37 PM  
jackfrost7
A Kobold Labourer

Forum posts: 0
File comments: 5
Uploads: 0
LUA Error

Getting the following error only when using zperl

Code:
Message: Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:67: attempt to compare number with nil
Time: Mon May 27 21:19:23 2019
Count: 2
Stack: Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:67: attempt to compare number with nil
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:67: in function `AdjustTargetCastbarPosition'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:89: in function `StartCast'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:122: in function `StartAllCasts'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:150: in function `StoreCast'
Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:168: in function <Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:161>
(tail call): ?

Locals: self = <unnamed> {
 NAME_PLATE_UNIT_REMOVED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:271
 StoreCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:135
 PLAYER_ENTERING_WORLD = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:199
 StopCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:107
 GetCastbarFrame = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:32
 ToggleUnitEvents = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:208
 db = <table> {
 }
 DeleteCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:154
 NAME_PLATE_UNIT_ADDED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:264
 PLAYER_GUID = "Player-4618-0000ECE3"
 COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:161
 AdjustTargetCastbarPosition = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:47
 StartAllCasts = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:115
 0 = <userdata>
 StopAllCasts = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:127
 StartCast = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:75
 PLAYER_TARGET_CHANGED = <function> defined @Interface\AddOns\ClassicCastbars\ClassicCastbars.lua:254
}
castbar = <unnamed> {
 0 = <userdata>
 Border = <unnamed> {
 }
 Flash = <unnamed> {
 }
 showCastbar = true
 _data = <table> {
 }
 Icon = <unnamed> {
 }
 startChannelColor = <table> {
 }
 finishedCastColor = <table> {
 }
 nonInterruptibleColor = <table> {
 }
 Text = <unnamed> {
 }
 Timer = <unnamed> {
 }
 BorderShield = <unnamed> {
 }
 Spark = <unnamed> {
 }
 startCastColor = <table> {
 }
 flashColorSameAsStart = true
 finishedColorSameAsStart = true
 failedCastColor = <table> {
 }
}
parentFrame = XPerl_TargetportraitFrame {
 0 = <userdata>
 portrait3D = XPerl_TargetportraitFrameportrait3D {
 }
 gradient = <unnamed> {
 }
 portrait = XPerl_TargetportraitFrameportrait {
 }
}
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to compare number with nil"
Only when target is enabled, not nameplate... disabling target and enabling nameplate lets that part work (which is the part I use so I'm fine, just letting you know).

Not sure if this is on your addon or on zperl... I'm guessing zperl, but maybe you'll want to fix it anyways because people like non-blizz unit frames.

Thanks for the addon btw.
Report comment to moderator  
Reply With Quote
Unread 05-23-19, 08:48 AM  
puda74
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 5
Uploads: 2
Nice, i love it.

/castbar target pos 0 -20
Is just under Target of Target frames btw.

Great job man
Report comment to moderator  
Reply With Quote
Unread 05-22-19, 12:45 AM  
wardz
A Deviate Faerie Dragon
 
wardz's Avatar
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 14
Uploads: 10
Ok, so I got into the stress test atleast. I'll upload a version tomorrow with all the fixes and options.

Edit: Uploaded it now, let me know if there's any issues.
Last edited by wardz : 05-23-19 at 02:48 AM.
Report comment to moderator  
Reply With Quote
Unread 05-21-19, 06:58 PM  
puda74
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 5
Uploads: 2
I just removed these lines.

-- self:RegisterEvent("NAME_PLATE_UNIT_ADDED")
-- self:RegisterEvent("NAME_PLATE_UNIT_REMOVED")

and..

-- function addon:NAME_PLATE_UNIT_ADDED(namePlateUnitToken)
-- local unitGUID = UnitGUID(namePlateUnitToken)
-- activeGUIDs[namePlateUnitToken] = unitGUID
--
-- self:StartCast(unitGUID, namePlateUnitToken)
--end

--function addon:NAME_PLATE_UNIT_REMOVED(namePlateUnitToken)
-- activeGUIDs[namePlateUnitToken] = nil
--
-- Release frame, but do not delete cast data
-- local castbar = frames[namePlateUnitToken]
-- if castbar then
-- PoolManager:ReleaseFrame(castbar)
-- frames[namePlateUnitToken] = nil
-- end
--end

And no more nameplates.
Report comment to moderator  
Reply With Quote
Unread 05-21-19, 12:26 PM  
wardz
A Deviate Faerie Dragon
 
wardz's Avatar
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 14
Uploads: 10
Originally Posted by Passed
At present, this creates two castbars. one underneath the main UI frame. One over the on screen health bar, it superimposes itself directly over the top. It is also larger than the main window health plate so that becomes completely hidden.


Can you upload a screenshot? I'll try and change the nameplate position for next version, but it's hard for me to fix since I don't have beta access. Any frame positioning are guesses only atm.
Last edited by wardz : 05-21-19 at 12:50 PM.
Report comment to moderator  
Reply With Quote
Unread 05-21-19, 09:01 AM  
Passed
A Kobold Labourer

Forum posts: 0
File comments: 7
Uploads: 0
At present, this creates two castbars. one underneath the main UI frame. One over the on screen health bar, it superimposes itself directly over the top. It is also larger than the main window health plate so that becomes completely hidden.
Report comment to moderator  
Reply With Quote
Unread 05-20-19, 09:43 PM  
wardz
A Deviate Faerie Dragon
 
wardz's Avatar
AddOn Author - Click to view AddOns

Forum posts: 17
File comments: 14
Uploads: 10
Re: Option to not use castbar on nameplates.

Originally Posted by puda74
Option to turn off nameplate cast bar and just use unitframes.
I don't have beta access so hard for me to add yet, I'll add options once I get in.

Originally Posted by puda74
Very cute.

local names = { Asmongold=1, Chance=1, Esfand=1, Tipsout=1, Joana=1, Ziqoftw=1, Sodapoppin=1, Staysafe=1 }
if names[UnitName("player")] then
C_Timer.After(1800, function()
if not UnitIsDeadOrGhost("player") then
DoEmote("fart")
Shhh
Last edited by wardz : 05-20-19 at 09:44 PM.
Report comment to moderator  
Reply With Quote
Unread 05-20-19, 02:44 PM  
puda74
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 5
Uploads: 2
Option to not use castbar on nameplates.

Option to turn off nameplate cast bar and just use unitframes.

Very cute.

local names = { Asmongold=1, Chance=1, Esfand=1, Tipsout=1, Joana=1, Ziqoftw=1, Sodapoppin=1, Staysafe=1 }
if names[UnitName("player")] then
C_Timer.After(1800, function()
if not UnitIsDeadOrGhost("player") then
DoEmote("fart")
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: