Quartz
Quartz is a modular approach to a casting bar addon. An overview of (hopefully most of) the modules:
*Player
The core of Quartz is lightweight implementation of a standard casting bar, with configurable size, text and icon positioning, and colors.
*Target/Focus
Implementation of target and focus casting bars in similar fashion to the player cast bar.
*Buffs
Display of target and focus buffs and debuffs as duration bars.
*Flight
Hooks into FlightMap or InFlight to display the current flight progress on your casting bar.
*Global Cooldown
Displays a tiny spark-bar to show your Global Cooldown near the cast bar. Helpful for those who'd rather not squint at their action bars to see when they can cast again.
*Interrupt
Changes the color and text of your casting bar to help show that your cast has been interrupted (and show who interrupted it).
*Latency
Displays the amount of time spent between cast send and start events, in the form of a bar at the end of your casting bar, with optional text that displays the actual duration of the lag. This helps in canceling casts when they will not actually be interrupted, especially for users with consistently high pings.
*Mirror
Shows the 'basic' timers such as breath and feign death, as well as some 'odd' ones such as party invite time, resurrect timeout, and arena game start, and a framework for injecting custom timers into the bars.
*Range
Recolors the casting bar when your cast target moves out of range mid-cast.
*Swing
Displays a swing timer for your melee weapon as well as hunter autoshot.
*Timer
Allows for creating custom timers displayed on the mirror bars.
*Tradeskill Merge
Merges multiple casts of the same tradeskill item into one big cast bar.
Use /quartz to bring up the configuration menu.
Addon version 3.7.9 for game version 4.4.0 throws exception on Cataclysm Classic during initial load.
Function in question: function Tradeskill:OnEnable()
Error on line 100/101 can be fixed with: "elseif C_TradeSkillUI and C_TradeSkillUI.CraftRecipe then"
The CraftRecipe function was moved to C_TradeSkillUI in Legion, but even tho Cata Classic uses retail client this function is not part of C_TradeSkillUI. They probably kept the old architecture as to not break addons :)
In reply to TriforceBiH: My pull request that fixes this has been merged today, and there's an alpha version available with the fix.
On my paladin, this seems to have added a weapon swing timer, is there anyway i can get rid of this?
Is it possible to fix channel ticks e.g. drain soul?
Also profession timers on multi craft
Anyone know how to anchor the bars to new raid frames?
"Trade merge" not working for cata classic
no channeling ticks anymore
In reply to JleBuK:
Same issue here, Mind Flay no longer shows ticks after the last update.
I don't know if it broke with cata, but Its not showing me the shield icon on uninterruptable casts.
Message: Interface/AddOns/Quartz/modules/Tradeskill.lua:101: Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target
Time: Tue May 21 13:01:16 2024
Count: 1
Stack: Interface/AddOns/Quartz/modules/Tradeskill.lua:101: Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target
[string "@Interface/AddOns/Quartz/modules/Tradeskill.lua"]:101: in function <Interface/AddOns/Quartz/modules/Tradeskill.lua:89>
[string "=[C]"]: ?
[string "@Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua"]:66: in function <...AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:61>
[string "@Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua"]:523: in function `EnableAddon'
[string "@Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua"]:536: in function `EnableAddon'
[string "@Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua"]:626: in function <...AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:611>
Locals: self = <table> {
SetDefaultModuleLibraries = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:363
Enable = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:290
NewModule = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:231
EnableModule = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:328
modules = <table> {
}
GetModule = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:206
IterateEmbeds = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:438
SecureHook = <function> defined @Interface/AddOns/Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:335
defaultModuleLibraries = <table> {
}
RawHookScript = <function> defined @Interface/AddOns/Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:394
UNIT_SPELLCAST_SUCCEEDED = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:164
SetDefaultModulePrototype = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:405
DoTradeSkillClassic = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:185
name = "Quartz3_Tradeskill"
IsEnabled = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:447
orderedModules = <table> {
}
baseName = "Quartz"
DisableModule = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:346
ApplySettings = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:189
DoTradeSkill = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:180
ADDON_LOADED = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:107
SecureHookScript = <function> defined @Interface/AddOns/Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:409
RegisterMessage = <function> defined @Interface/AddOns/AnnoyingPopupRemover/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:80
UnregisterMessage = <function> defined @Interface/AddOns/AnnoyingPopupRemover/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:143
UNIT_SPELLCAST_START = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:113
UNIT_SPELLCAST_STOP = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:157
IsHooked = <function> defined @Interface/AddOns/Bartender4/libs/AceHook-3.0/AceHook-3.0.lua:492
OnEnable = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:89
OnInitialize = <function> defined @Interface/AddOns/Quartz/modules/Tradeskill.lua:83
IsModule = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:213
hooks = <table> {
}
SetDefaultModuleState = <function> defined @Interface/AddOns/Bartender4/libs/AceAddon-3.0/AceAddon-3.0.lua:383
SendMessage = <function> defined @Interface/AddOns/AnnoyingPopupRemover/Libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:49
UnhookAll = <function> defined @Interface/AddOns/Bar
Please fix the Crafting Timer. Always nice to know how long my 1000000 Ores will take^^
I too see the same error as those below.
Can confirm, see the same bulk crafting castbar error. Results in the castbar showing -315/1.5, for example...
Error output:
52x Quartz/modules/Tradeskill.lua:101: Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target
[string "=[C]"]: ?
[string "@AdiBags/libs/AceHook-3.0-9/AceHook-3.0.lua"]:210: in function <...faceAdiBags/libs/AceHook-3.0/AceHook-3.0.lua:118>
[string "@AdiBags/libs/AceHook-3.0-9/AceHook-3.0.lua"]:340: in function `SecureHook'
[string "@Quartz/modules/Tradeskill.lua"]:101: in function <Quartz/modules/Tradeskill.lua:89>
[string "=[C]"]: ?
[string "@AdiBags/libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:66: in function <...ceAdiBags/libs/AceAddon-3.0/AceAddon-3.0.lua:61>
[string "@AdiBags/libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:523: in function `EnableAddon'
[string "@AdiBags/libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:536: in function `EnableAddon'
[string "@AdiBags/libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:626: in function <...ceAdiBags/libs/AceAddon-3.0/AceAddon-3.0.lua:611>
Locals:
(*temporary) = "Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target"
Yesterday's patch broke the multicraft timer calculation functionality on Cata Classic.
Cata Classic error :(
1x Quartz/modules/Tradeskill.lua:101: Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target
[string "=[C]"]: ?
[string "@AutoCombatLogger/Libs/AceHook-3.0-9/AceHook-3.0.lua"]:210: in function <...ns/AutoCombatLogger/Libs/AceHook-3.0/AceHook-3.0.lua:118>
[string "@AutoCombatLogger/Libs/AceHook-3.0-9/AceHook-3.0.lua"]:340: in function `SecureHook'
[string "@Quartz/modules/Tradeskill.lua"]:101: in function <Quartz/modules/Tradeskill.lua:89>
[string "=[C]"]: ?
[string "@AutoCombatLogger/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:66: in function <.../AutoCombatLogger/Libs/AceAddon-3.0/AceAddon-3.0.lua:61>
[string "@AutoCombatLogger/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:523: in function `EnableAddon'
[string "@AutoCombatLogger/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:536: in function `EnableAddon'
[string "@AutoCombatLogger/Libs/AceAddon-3.0-13/AceAddon-3.0.lua"]:626: in function <.../AutoCombatLogger/Libs/AceAddon-3.0/AceAddon-3.0.lua:611>
Locals:
(*temporary) = "Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target"
In Cata: doesn't look like total time for bulk crafting is calculated correctly. Shows some negative amount.
error in Cata classic with the recent update
Message: Interface/AddOns/Quartz/modules/Tradeskill.lua line 101:
Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target
New error in Cata classic with the update today:
Date: 2024-05-14 18:06:40
ID: 1
Error occured in: Global
Count: 1
Message: Interface/AddOns/Quartz/modules/Tradeskill.lua line 101:
Usage: SecureHook([object], method, [handler]): Attempting to hook a non existing target
Debug:
[string "=(tail call)"]: ?
[string "=[C]"]: ?
Hi,
Could you update it to the latest Classic Era Game Version of 1.15.2?
Blizzard Channeling Ticks are not showing on the castbar anymore :(
Would be awesome, thanks a lot in advance!
Cataclysm Classic After pre-patch, while using channeling skill, I can't hear the tick sound or see the tick marks.