ArcHUD3 Classic

ArcHUD3 Classic

30.3k Downloads

Doesn't work at all on the Shadowlands beta

Vilacard opened this issue ยท 6 comments

commented

Figured I'd get the ball rolling and open an issue. Been using this addon for god knows how long (IIRC, as far back as vanilla/BC) and I hope to see it updated for Shadowlands. Holy paladins get access to holy power again. I'm not sure of any other power changes like that.
Upon logging in, I get 7 lua errors:

Message: Interface\AddOns\ArcHUD3\Frames.lua:188: attempt to call method 'SetBackdrop' (a nil value)
Time: Sat Jul 25 20:50:24 2020
Count: 1
Stack: Interface\AddOns\ArcHUD3\Frames.lua:188: attempt to call method 'SetBackdrop' (a nil value)
[string "@interface\AddOns\ArcHUD3\Frames.lua"]:188: in function <Interface\AddOns\ArcHUD3\Frames.lua:125>
[string "@interface\AddOns\ArcHUD3\Frames.lua"]:211: in function CreateHUDFrames' [string "@Interface\AddOns\ArcHUD3\Core.lua"]:181: in function <Interface\AddOns\ArcHUD3\Core.lua:166> [string "=[C]"]: ? [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65> [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:498: in function InitializeAddon'
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:613: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605>

Locals:

Message: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
Time: Sat Jul 25 20:50:24 2020
Count: 1
Stack: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
[string "=[C]"]: in function SetPoint' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:322: in function CreateFontString'
[string "@interface\AddOns\ArcHUD3\Rings\MirrorTimer.lua"]:39: in function Initialize' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:79: in function <Interface\AddOns\ArcHUD3\ModuleCore.lua:72> [string "=[C]"]: ? [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65> [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:498: in function InitializeAddon'
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:613: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605>

Locals:

Message: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
Time: Sat Jul 25 20:50:24 2020
Count: 1
Stack: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
[string "=[C]"]: in function SetPoint' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:322: in function CreateFontString'
[string "@interface\AddOns\ArcHUD3\Rings\Casting.lua"]:44: in function Initialize' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:79: in function <Interface\AddOns\ArcHUD3\ModuleCore.lua:72> [string "=[C]"]: ? [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65> [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:498: in function InitializeAddon'
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:613: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605>

Locals:

Message: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
Time: Sat Jul 25 20:50:24 2020
Count: 1
Stack: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
[string "=[C]"]: in function SetPoint' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:322: in function CreateFontString'
[string "@interface\AddOns\ArcHUD3\Rings\TargetCasting.lua"]:48: in function Initialize' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:79: in function <Interface\AddOns\ArcHUD3\ModuleCore.lua:72> [string "=[C]"]: ? [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65> [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:498: in function InitializeAddon'
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:613: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605>

Locals:

Message: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
Time: Sat Jul 25 20:50:24 2020
Count: 1
Stack: Interface\AddOns\ArcHUD3\ModuleCore.lua:322: :SetPoint(): Couldn't find region named 'ArcHUDFrameCombo'
[string "=[C]"]: in function SetPoint' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:322: in function CreateFontString'
[string "@interface\AddOns\ArcHUD3\Rings\FocusCasting.lua"]:36: in function Initialize' [string "@Interface\AddOns\ArcHUD3\ModuleCore.lua"]:79: in function <Interface\AddOns\ArcHUD3\ModuleCore.lua:72> [string "=[C]"]: ? [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65> [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:498: in function InitializeAddon'
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:613: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605>

Locals:

Message: Interface\AddOns\ArcHUD3\Core.lua:458: attempt to index field 'TargetHUD' (a nil value)
Time: Sat Jul 25 20:50:28 2020
Count: 1
Stack: Interface\AddOns\ArcHUD3\Core.lua:458: attempt to index field 'TargetHUD' (a nil value)
[string "@interface\AddOns\ArcHUD3\Core.lua"]:458: in function UnregisterAll' [string "@Interface\AddOns\ArcHUD3\Core.lua"]:295: in function OnProfileChanged'
[string "@interface\AddOns\ArcHUD3\Core.lua"]:228: in function <Interface\AddOns\ArcHUD3\Core.lua:195>
[string "=[C]"]: ?
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function EnableAddon' [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:620: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605> [string "=[C]"]: in function LoadAddOn'
[string "@interface\FrameXML\UIParent.lua"]:493: in function UIParentLoadAddOn' [string "@Interface\FrameXML\UIParent.lua"]:616: in function TimeManager_LoadUI'
[string "@interface\FrameXML\UIParent.lua"]:1353: in function <Interface\FrameXML\UIParent.lua:1250>

Locals:

Message: Interface\AddOns\ArcHUD3\ModuleCore.lua:113: attempt to index field 'db' (a nil value)
Time: Sat Jul 25 20:50:28 2020
Count: 4
Stack: Interface\AddOns\ArcHUD3\ModuleCore.lua:113: attempt to index field 'db' (a nil value)
[string "@interface\AddOns\ArcHUD3\ModuleCore.lua"]:113: in function <Interface\AddOns\ArcHUD3\ModuleCore.lua:112>
[string "=[C]"]: ?
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function EnableAddon' [string "@Interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:540: in function EnableAddon'
[string "@interface\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:620: in function <...ce\AddOns\ArcHUD3\Libs\AceAddon-3.0\AceAddon-3.0.lua:605>
[string "=[C]"]: in function LoadAddOn' [string "@Interface\FrameXML\UIParent.lua"]:493: in function UIParentLoadAddOn'
[string "@interface\FrameXML\UIParent.lua"]:616: in function `TimeManager_LoadUI'
[string "@interface\FrameXML\UIParent.lua"]:1353: in function <Interface\FrameXML\UIParent.lua:1250>

Locals:

commented

Something else I found is, according to MysicalOs:
One of the major changes in 9.0 is a change to SetBackdrop. The TL/DR, on live, 100% of frames support backdrops, whether they are used or not. 1000s of frames between every addon and default UI, even frames that never see such as event frames have backdrops. UI team realized this is a serious performance issue. so effective in 9.0, no frames have backdrops unless the addon imports/inherits the backdrop template.
this means addons that aren't importing them now throw nil errors with method "Setbackdrop". This issue affects a large number of addons.

commented

I seem to have gotten it working. In Frames.lua, at line 188, I replaced

f:SetBackdrop({bgFile = "Interface/Tooltips/UI-Tooltip-Background",
		tile = true, tileSize = 16,
		insets = { left = 4, right = 4, top = 4, bottom = 4 }})
    f:SetBackdropColor(0,0,0,0.5)

with

local frame = CreateFrame("Frame", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate");
frame:SetBackdrop({bgFile = "Interface/Tooltips/UI-Tooltip-Background",
		tile = true, tileSize = 16,
		insets = { left = 4, right = 4, top = 4, bottom = 4 }});
    frame:SetBackdropColor(0,0,0,0.5)

In regards to getting holy power to show for prot and holy paladins, I just opened HolyPower.lua in the Rings folder, then I changed line 29 to

module.specs = nil -- array of SPEC_... constants; nil if this ring is available for all specs

A new request regarding fade options, at least for holy power, I'd like one that will fade a ring when it's empty, but always show if there's something even if there's at least 1. Holy paladins can build up HP out of combat with the use of holy shock, and also use it outside of combat with light of dawn and word of glory.

commented

Thank's a lot for the investigations! I'll have a look at it soon(tm)!

commented

Seems easy enough, thanks! However, the change in Frames.lua:188 is not quite right: The BackdropTemplate should go into line 126.

I will do some tests and after that a commit.

commented

Fixed with v6.0.1, please retest

commented

Seems to be working fine. Thanks for the update!