Addons Now Usable in Shadowlands Beta

Is the Bug Report forum intentionally closed? I wanted to report an API-related issue.

what issue? you mean the assertion/crash that happens with some incorrect calls? or a bigger one?

Is there a list of changes? Both my XP and Rep addons that I work on appear broken. Need to know if there are any significant API changes.

1 Like

Anybody know where to find the updated meters for beta? Sloot seems to be using Recount and Max has Details but I can’t seem to find them anywhere.

Give them a day to work on them, this was just announced so they will need probably a day to get them working for this build

Semi working Details for anybody that’s interested

1 Like

Big changes to background textures for a huge variety of frame types, including frames that had been previously hidden in many cases.

All the addons I had (except the ones I wrote myself, which don’t use frames at all) throw constant Lua errors.

Give addon developers some time to sort this out, its really tedious work to make the necessary changes.

From MysticalOs on Twitter (via WoWhead):

1 Like

Is there currently a list of addons that are usable?

I noticed there is something strange happening when entering and leaving dungeons. The character’s level changes, and at least the standard built-in “congratulations, you have leveled up” messages don’t distinguish these fake level changes from real ones.

Has anyone solved the SetBackdrop issue yet?

I’ve been out of the loop from the main WoW addon community for a while… is there an active forum (outside of the official UI and Macro forum) where addon authors are most active? WoWInterface used to have a very active community but it appears to have died down quite a bit, ditto with Curse.

1 Like

Ok, I see the DBM team has been all over this already and uses this for a fix:

  • The frame needs to import “BackdropTemplate”
  • Set the backdrop properties in the frame.backdropInfo object
  • Call “ApplyBackdrop()” instead of “SetBackdrop()”

I’ll use an example of LibUIDropDownMenu crashing:


f.MenuBackdrop= _G[name.."MenuBackdrop"] or CreateFrame("Frame", name.."MenuBackdrop", f)
	bgFile = "Interface\\Tooltips\\UI-Tooltip-Background",
	edgeFile = "Interface\\Tooltips\\UI-Tooltip-Border",
	tile = true,
	tileSize = 16,
	edgeSize = 16,
	insets = { left = 5, right = 4, top = 4, bottom = 4, },

Shadowlands Beta:

f.Backdrop = _G[name.."Backdrop"] or CreateFrame("Frame", name.."Backdrop", f, "BackdropTemplate")
f.Backdrop.backdropInfo = {
	bgFile = "Interface\\DialogFrame\\UI-DialogBox-Background-Dark",
	edgeFile = "Interface\\DialogFrame\\UI-DialogBox-Border",
	tile = true,
	tileSize = 32,
	edgeSize = 32,
	insets = { left = 11, right = 12, top = 12, bottom = 9, },

If you want your addon backwords compatible, where it works on 8.x and 9.x, you’re going to have to go a little bit deeper than just specifying “BackdropTemplate” in your frames.

I found examination of the code in Leatrix Plus some help here. If you use a variable for the frame rather than specifying “BackdropTemplate” constant, it will work on 8.x if the variable is NIL. This allows you to do some version checking and set the variable to “BackdropTemplate” if the tocversion is 90000 or higher, or set it to NIL if not.

This seems to have worked for the addons I’m updating, which don’t have a lot of frames.

Here is the code I’m using, and have no problems so far using the Addon in Classic, BfA, or the Shadowlands Beta with the same code

local wowversion, wowbuild, wowdate, wowtocversion = GetBuildInfo()
local wowtextversion
if wowtocversion and wowtocversion < 19999 then wowtextversion = "Classic" end 
if wowtocversion and wowtocversion > 19999 and wowtocversion < 90000 then wowtextversion = "Retail" end 
if wowtocversion and wowtocversion > 90000 then 
	wowtextversion      = "Beta"
	AddonBackdropTemplate = "BackdropTemplate"
local f = CreateFrame("Frame", "MyAddon", UIParent, AddonBackdropTemplate)
1 Like

Is there any possibility of changes for addons effecting friendly nameplates inside instances? I understand why is was changed back in 7.2 because people were using it to trivialize mechanics but fully removing all of the functionality seems like a pretty broad solution.

Because add-ons are new and most likely not fully functional. If they bug yes it could effect several other things in game. Example I installed a couple add-ons and couldn’t open my bags after, none of which were a bag add-on but they got effected.

Not able to find the blue post atm. They removed backdrops and add-on creators need to apply them to their code to work.

This is inaccurate.

Instead of always creating backdrops on every frame, they require each frame to explicitly inherit backdrops. There is no change in functionality, only the default setting has been changed in an effort to improve performance.

1 Like

This can all be done on a single line really

local f = CreateFrame("Frame", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")

why? Is wow so hard you need an addon to tell you how many more horns you gotta collect or where your coords are or a hint to everything? They seriously make the game to damn simple

you know you could have just copied what blizzard are doing?
CreateFrame( "Frame", "framename", parentframe, BackdropTemplateMixin and "BackdropTemplate" )

works in all clients because BackdropTemplateMixin only exists in the new clients whose frames now need to inherit the new BackdropTemplate as well

edit: oops, didnt realise this had already been posted

Why are people still like this? You do know that addons are used for a lot of different things, other than DBM or Damage Meters, right? There are

  • Button and UI managers for aesthetic purposes
  • Bag management
  • Transmog enhancements
  • Tooltip improvements
  • Battle Pet Journal overhaul
  • Hunter Stable improvement
  • Junk sellers