Nameplates in Midnight

Nameplates in Midnight

The Good, the Bad and the Ugly. Nameplates are not exempt from the API restrictions introduced in Midnight and we're highlighting what they do well, where work is needed and what is lacking, especially in contrast to Jundies Plater profile.

Photo by Tim Foster on Unsplash.

Table of Contents

Introduction & History

Back in Shadowlands Season 3 when I was still tanking, I first installed Aeneas Plater profile and it was night and day. By modern standards, the profile didn't include much. Establishing a consistent nameplate color language was such a massive quality of life improvement however that I never considered going back. And why would anyone?

Aeneas quit at some point in Dragonflight, or at least stopped maintaining their profile, so I forked it and started maintaining my own. Eventually Jundies - who also forked Aeneas - and I officially joined forces ahead of The War Within, although we already worked together behind the scenes for a year longer and we ended up seeing massive growth. In fact, there's a good chance you're here because you're using it. If not, you've likely seen it on streams, or know guildies using it. Frankly, a success far beyond what we anticipated.

And now, we're here to talk about the upcoming changes to nameplates in Midnight from various perspectives:

  • Jundies raids as melee in <poptart cornDog> (US), around world rank 20
  • Xephyris (me) raids as DPS Evoker main in <Mental Apocalypse> (EU), around world rank 100
  • I'm also always pushing keys considerably deep into title, initially as tank, having achieved 6 seasonal titles so far
  • I've been modernizing nearly all mods and scripts in the profile to be both as efficient as possible, reducing the performance footprint of the profile by over 70% while adding more features so I'm considerably familiar with what's currently possible

This isn't to boast, but more to establish a baseline of knowledge about us who meticulously maintain(ed) this profile for more or less two expansions now. Keeping this up to date - we provided near-exhaustive updates late into PTR/ahead of patch release - understanding when to use which tool, keeping track of all the special cases is a lot of work that requires understanding the circumstances at a high level.

Feature Parity

Let's get this out of the way. We cannot and should not expect feature parity. Blizzards outspoken goal here is to reduce the necessity of some of what addons are capable of, so we should expect to see the need for some of this to also vanish. At the same time, this is from the first Clarification on Planned Changes sent to addon authors in June and this post will take them by their word:

The goal is for our base UI to provide players with a good portion of the most important combat information addons currently provide. Most of this functionality will ship at the same time as these addon restrictions, if not sooner. Furthermore, this is an ongoing process: we intend to keep this line of communication open after the restrictions are put in place, and we will continue to listen, iterate, and improve our offerings in subsequent patches.

I'm already apologizing for this post to have become this large, but there is a lot to unravel. You'll forgive me for some of the yap too, I hope everyone can agree that we're all very passionate about these things in one way or another and there's only so many chances on actually talking this through. I'm also "afraid" that I'm basically celebrating having to sunset (only) two years of work here and appreciate there's addon developers out there having done this for literally 10x the time.

Thanks to the bunch of folks I sent excerpts for early feedback, thanks to Continuity (Plater maintainer) for answering my questions and let's get into it!

Secrets

In many cases below, we'll be referring to secrets. What are those? Here's the definition given by Blizzard:

The easiest way to think of Secret Values (Secrets) is that they are like black boxes, which contain a Lua value of any type (number, string, boolean, etc) inside them. Insecure (tainted) Lua code can receive Secrets from our APIs and pass those Secrets into certain APIs, but it cannot actually see the value that is inside of that box. Attempting to compare a Secret with another value (Secret or not) will result in a Lua error, as will attempting to perform arithmetic on one. Untainted Lua code has no such restrictions and can operate on Secret Values pretty much exactly like non-Secrets. (...)

In layman's terms: where you before could freely parse and alter most combat-related information, when you try to do that now, you'll just be greeted with an error, preventing you from doing whatever you wanted to do. Some minor exceptions apply.

Visual Customization

To get this out of the way - we'll not focus on visual customization here and instead solely focus on feature availability or lack thereof. Blizzard promised addons will continue to visually alter UI elements and with Platynator there's also already the first Midnight-compatible nameplate addon.

Additionally, Wowhead already covered most options with their post What's Changing With Blizzard Nameplates? - Everything You Need to Know.

At the time of writing, this post is 10 days old and no changes have been made to the available options.

Nameplate (Re)Positioning Behaviour

How nameplates arrange themselves is not something we have a lot of control over and we shouldn't either. Logic for this has always been handled by Blizzard, what we could is simply choosing generally between Stacking and Overlapping nameplates between which Stacking has been the clear winner.

With Midnight, Blizzard is iterating on their behaviour - while non-stacking continues to be the default, you can opt into Stacking Nameplates for Enemy and Friendly units separately.

part new of the Midnight nameplate options

the new Stack Nameplates setting

It's worth noting that the new stacking nameplates behaviour is something that's still being iterated on, so keep that heavily in mind for the remainder of this post. Just like on Retail, not using Stacking Nameplates is not a great idea - everything still overlaps massively so you're effectively forced to use Stacking Nameplates.

Developers' notes: Behavior of stacking nameplates is still a work in progress.

Nameplate stacking behavior has been adjusted to no longer overlap with nameplates in other groupings and are less likely to clump at the top of the screen. Developer's notes: There may still be overall stickiness of the nameplates that is not behaving as desired. (...)

Looking at this - for the most probably familiar - Azure Vault pull, we quickly discover why this is a problem and needed work. From other larger pulls like in Priory or Gambit in this season, you'll also be probably deeply familiar with nameplates at the top of the screen.

Default stacking nameplates in Retail with NPC names enabled.

It's no surprise that with Plater enabled, the overall movement stays roughly the same. Plater also makes use of some now-removed CVars (more about that later) that controls implicit spacing between nameplates.

Plater with Jundies.

We can probably agree on that in both scenarios, nameplates don't move unreasonable amounts. It's possible to consistently target the correct NPC until you have really egregiously sized pulls. You can also pretty reliably tell where the actual NPC is currently located based on its nameplate.

Unfortunately we've not seen any progress being made on the following weird behaviour since its introduction week 1 and I initially had planned to omit it because I anticipated it'll get fixed asap, so here comes the current Alpha behaviour - brace yourselves.

Courtesy of Linaori, taken from this Alpha feedback thread

And because this was so much fun, here's again Azure Vault.

Good luck trying to kick something here.

a cat successfully playing the cups shell game

Nameplate Text Customization

Unit Name

The ability of customizing the unit name.

Before:

  • ❌ Retail Default Nameplates never customize unit names
  • ⚠️ addons can rename NPCs by id individually
    • Plater provides a nickname system
      • very tedious process when done manually
      • allows setting the name of an NPC to any arbitrary nickname
      • mods can fill the gap

After:

  • ❌ Midnight Nameplate Options don't allow customizing unit names
  • ❌ addons will no longer be able to customize unit names as all surrounding info (UnitName, UnitGUID) is now secret
Implementation

Any time there's a bunch of enemies in a section of a dungeon, they often but not always share the same adjectives before the actual type of NPC. For example, you'll encounter a lot of Wastelander Phaseblades and Wastelander Ritualists (and a bunch more) in the arena of the second boss of Eco-Dome Al'dani. Now nameplates have only a certain length, so in many cases, they get truncated and you end up just reading Wastelande... or whatever your nameplate width setting allows. This will be the default behavior for Midnight nameplates.

Terrible for communication in various ways:

  • planning: "I'm kicking the left Ritualist!"
    • need to either know already or figure out which of the enemies is the Ritualist, which may already be on the move and collapse with another caster
  • spontaneous adjustments: "I failed my kick, we need a stop on the far caster/Ritualist!"
    • need to either be aware of mob positioning at all times
    • or have pulled a low amount of casters in order to have a uniquely identifiable caster in the pull at a given time
      • which is absolutely not possible in that dungeon which is meant to be a testimony of new dungeon design
    • in many cases, cast times are not forgiving enough to allow these mistakes and still manage to cover for them

So what the mod does is - for the most part - to only ever render the last word in the name of an enemy: Phaseblade or Ritualist.

Verdict

👎 significantly worse than before and an instantly visible downgrade. Just to name a few examples:

Here's a part of a screenshot from a Midnight dungeon - pay attention to the NPC names this time. There's nine nameplates visible, all of them are for enemies starting with Vilebranch.

image of an in-progress pull with 9 visible nameplates, all of which are NPCs whose name begins with Vilebranch

image taken from @CartridgeBros tweet

Also worth noting for PvP that realm names are not removed from players:

image of an in-progress cast targeting a player not displaying their target
Suggestion

There's an inherent problem making this work across localizations generically so in my opinion, the best way to fix this going forward is to be more mindful of NPC naming in relation to other NPCs. It'll be the most natural way of the need for this tool to go away.

The other obvious solution to this would be nameplate colors but we'll get to that later.

Health Formatting

The ability of changing how health values are displayed.

Before:

  • ❌ Retail Default Nameplates don't show health values
  • ✅ addons can allow showing numbers
    • basic options allow customizing them, including color and font
    • third party code can further fill the gap

After:

  • ⚠️ Midnight Nameplate Options allow showing both absolute and % values
  • ❌ addons are bound to the API restrictions: UnitHealth, UnitHealthMax as well as UnitHealthPercent return secrets
Verdict

Unfortunately health values use AbbreviateLargeNumbers internally, a function you may be familiar from formatting numbers in WeakAuras as it's one of the default options, which behaves in questionable ways, using only the next largest unit past five digits:

AbbreviateLargeNumbers(1024) -- yields 1,024 🎉
AbbreviateLargeNumbers(10240) -- yields 10,240, should be 10.2 K
AbbreviateLargeNumbers(102400) -- yields 102 K 🎉
AbbreviateLargeNumbers(1024000) -- yields 1024 K, should be 1.02 M
AbbreviateLargeNumbers(10240000) -- yields 10240 K, should be 10.2 M
AbbreviateLargeNumbers(102400000) -- yields 102 M 🎉
AbbreviateLargeNumbers(1024000000) -- yields 1024 M, should be 1.02 B

After the squish, as of now, enemies will once again have above 50k health relatively soon and bosses will be in the tens of millions, meaning you'll more often than not see nameplates with numbers such as 52,349, taking up unreasonably much space that currently we simply don't have. This makes it very impractical to use both absolute health and % values. Additionally, percentages never show fractions.

depiction of three Raid Targeting Dummies including abs and % health. their name is abbreviated to R...

Target Dummies are now R rated.

depiction of a random neutral enemy outside of Silvermoon. its name is ironically abbreviated to Brilliant...

The literal first NPC outside of Silvermoon. The irony of the abbreviated name is not lost on me.

Suggestion

Allow customizing both. I'm impartial as to how, if Blizzard is really afraid of allowing UnitHealth and UnitHealthMax to not be secrets, then we'd need either UI settings for this, or just fixing of AbbreviateLargeNumbers.

Selection Highlighting

Target Highlighting

The ability to highlight the players current target in any form.

Before:

  • ⚠️ Retail Default Nameplates highlight the target slightly
    • if you don't always show names, it'll get shown for your current target
    • the border color changes from black to white
  • ✅ addons allow highlighting your target through various options
    • custom border color
    • custom scale
    • custom texture

After:

  • ⚠️ Midnight Nameplate Options allow highlighting the target by showing its name on the nameplate, depending on your settings
    • the border color changes from black to white
  • ✅ addons allow highlighting your target through various options
    • custom border color
    • custom scale
    • custom texture
Verdict & Suggestion

Probably better to let a clip speak for itself.

The target upscaling is a CVar (nameplateSelectedScale, defaulting to 1.2) and not exposed as setting - this is the default experience for new players. I'm putting some emphasis on that because I find it very jarring and only learned when researching for this post that this is actually a Retail feature for ages, but it's a lot less noticeable there even with default nameplates.

At a minimum, make the scaling an option (read: a slider with e.g. 5% steps beginning at 0% increased scale to 50%). I appreciate it's with the best intent but this is not great. Forcing the nameplate into the center of the pack of nameplates you're looking at may be be fine once you're used to it - disabling target upscaling seems to interestingly disable this.

Focus Highlighting

The ability to highlight the players current focus in any form.

Before:

  • ❌ Retail Default Nameplates don't highlight the focus
  • ✅ addons allow highlighting the focus
    • custom border color
    • custom scale
    • custom texture

After:

  • ⚠️ Midnight Nameplate Options use minimal highlighting of the focus target
    • focusing a target puts a tiny golden border around it
    • thats it
  • ✅ addons allow highlighting the focus
    • custom border color
    • custom scale
    • custom texture
no target, vision obscured
no target, vision obscured
with target, vision obscured
with target, vision obscured
no target
no target
with target
with target
Verdict & Suggestion

What can I say. It's better than what the Retail Nameplates currently offer. But it's a massive downgrade to addons. The border is so faint, when I sent it to others for their opinion, most didn't even notice it, just like you probably didn't notice that this sentence is slightly brighter than all other text.

Please consider:

  • allowing customizing the focus border color for accessibility reasons alone already
  • consider allowing to customize the focus nameplate scale, e.g. by introducing a CVar nameplateFocusScale

Color Changes

Nameplate Color Change

The ability to change the color of a nameplate procedurally for any reason, e.g. based on NPC id, aura presence or threat.

Before:

  • ❌ Retail Default Nameplates don't ever change color
  • ✅ addons can allow changing the nameplate color
    • Plater in particular has multiple options:
      • allows setting new defaults
      • allows setting a color based on threat situation
      • allows setting a color per NPC id
      • through scripts, allows setting color based on aura presence

After:

  • ❌ Midnight Nameplate Options don't allow changing the nameplate color
  • ⚠️ addons will continue to be able to change the color by setting new defaults for all nameplates and their threat situation
    • but will lose the ability to conditionally change the color based on aura presence or NPC id
Verdict

👎 significantly worse than before and an instantly visible downgrade.

Going on a limb here claiming that everyone who has used this feature for a while knows that it is simply too much of an advantage to do nothing. That's not to say that it should get removed without replacement.

⚠️ This is also an accessibility issue. The default colorblind modes don't actually really seem to help most colorblind users, customizability beats generic colorblind modes by miles.

conversation with a work colleague about built-in colorblind modes and their usefulness
Suggestion

Blizzard already has implicit classifications of NPCs:

  • bosses
    • as indicated internally via boss1, boss2, bossN, ... units
  • cc-immune NPCs that are not bosses
    • lieutenants such as the minibosses in Priory but also the Knights in Priory
  • casters, as indicated by their mana bar
    • your classic Priest casting Smite and Mage casting Fireball in Priory
  • everything else, usually minions, melees, pets, rogues

There can of course be overlaps, e.g. Forge Master Damian (right side forge lieutenant) in Priory having - but not using - mana or Taener Duelmal (mage lieutenant) in Priory being a mage but neither having nor using mana.

Blizzard even has existing code that uses the low-level classification of "caster" vs "non-caster": the Warlock Venthyr covenant ability Impending Catastrophe (which is also dearly missed by some Warlocks) auto-cursed targets hit with either Curse of Weakness (non-casters) or Curse of Tongues (casters).

You might already see where I'm going with this:

Add these categories (boss | notable enemy | caster | non-caster) to the default UI nameplate settings and allow setting a custom color for them, then integrate it into the Midnight nameplates.

We'd still be unable to define more colors than that, but it would alleviate most of the pain of this feature disappearing. It'd also significantly help people to learn a dungeon and also fix aforementioned accessibility problems. We have this very option with the item rarity color settings!

Threat Color Change

The ability to visibily indicate a threat situation change on a nameplate. Role-aware and ideally also pet-aware, as there's not only regular pets that may taunt, but also e.g. temporary guardians such as Earth Elemental.

Before:

  • ❌ Retail Default Nameplates don't ever change color
  • ✅ addons allow changing the threat color
    • both in general
    • Plater also allows this situationally through scripts, making a nameplate aware of whether the now-tanking unit is a pet like the aforementioned elemental

After:

  • ⚠️ Midnight introduces threat highlighting options
    • neither options allow recoloring the nameplate
    • both options are not very visible in practice
    • the additional texture imo doesn't play well with all nameplate types
  • ❌ addons will be both unable to determine who gained/lost threat and change color as APIs such as UnitTarget and UnitGroupRolesAssigned return secrets
Verdict

Better than nothing, but needs work. The ability to highlight threat on pets is now gone. It wasn't extremely important, but commonly when such an ability was used it was to help the tank. Now the tank is sweating extra because they think they lost aggro on top of already struggling.

What's also gone is the ability to distinctly color nameplates when - as a tank - your co-tank is tanking.

Auras

Aura - Generic Tracking

The ability to track auras, primarily of the player and their pets on nameplates.

Before:

  • ✅ Retail Default Nameplates just tracks all your auras
  • ✅ addons allow filtering via allow and deny lists
    • the default lists in Plater are not perfectly maintained, but profiles can fill the gap

After:

  • ✅ Midnight Nameplate Options seem to mostly use the same list of auras to track as Retail
    • which means it also comes with the same bugs
    • no option to allow/denylist anything by name or id
  • addons may be able to display the very same auras as the default nameplates. At the time of writing, this isn't 100% confirmed however.
Verdict

Better than nothing, but needs upfront fixing and then continuous work.

There's some inconsistencies between which debuffs are tracked: on Retail Bombardments are tracked by default nameplates on Retail, but isn't any longer in Midnight, despite the debuff being just as relevant. Here's to hoping that once this is fixed, it also fixes the occasional bug where a debuff applied by others shows up for you despite not being yours.

Aura - Reordering

The ability to reorder auras, e.g. by duration at application time. Useful for consistency, especially for dot specs, think of "my out-of-the-box longest lasting dot can always be found at the first position" cases.

Before:

  • ❌ Retail Default Nameplates reorder based on a set ordering logic
  • ✅ addons can reorder
    • Plater provides single Sort Auras checkbox to sort by remaining duration

After:

  • ❌ Midnight Nameplate Options don't allow reordering
    • the ordering logic is unchanged to what you already currently see on Live when using the default nameplates:
      • first, show auras that originate from the player
      • then, show auras that you can apply (e.g. trinket procs aren't player spells so they have less priority)
      • for all remaining auras, use order of application, ignoring stacks, expiration time/remaining duration, etc. - this includes your pets
  • ❌ addons won't be able to either as aura details are secret
Verdict

Tough one to judge properly for me as I don't play any dot-heavy specs but I feel like making this at the very least an option should be trivial. In either case, the current ordering logic seems questionable if it doesn't include implicit ordering by duration that eluded me in the code. An implementation detail like the aura instance id doesn't seem well suited to be used for this.

Aura - Filtering

The ability to filter auras by name or id.

Before:

  • ❌ Retail Default Nameplates filter via inaccessible flags only
  • ✅ addons can provide filtering via allow and deny lists
    • the default lists in Plater are not perfectly maintained, but profiles can fill the gap

After:

  • ❌ Midnight Nameplate Options don't allow filtering beyond what's yours
    • the logic is slightly altered to what you see on Retail which is probably the reason for the tracked auras inconsistencies between Live and Alpha
  • ❌ addons won't be able to either
Verdict

Rises and falls with the success of pruning. If we don't end up with irrelevant auras popping up on nameplates I'm ok with this and the changes to e.g. Deathmark as probably the worst offender have shown that this seems to move in the right direction.

For those unfamiliar, here's some fun Deathmark comparisons:

yep, that's up to 14 debuffs
hiding non-gameplay altering auras, down to 8 max
Deathmark has been adjusted and poisons don't show anymore, down to 5 max

Aura - Special

The ability to highlight a specific set of auras in some form, usually isolated from the other auras.

Before:

  • ❌ Retail Default Nameplates don't differentiate between auras
  • ✅ addons can allow highlighting special auras
    • requires manual maintenance by spell id
    • the default list is not well maintained, but profiles can fill the gap

After:

  • ✅ Midnight Nameplate Options include an option to show Shared CCs
    • the default list is not well maintained, we cannot fill the gap
    • there's false positives but also a lot missing
  • ⚠️ addons likely will be able to separately display these
Implementation

For context, this refers to the Buff Special functionality in Plater and what the Midnight Nameplate Options refer to as Shared CCs due to both being positioned in the same place: to the right of a nameplate.

Verdict

Better than nothing, but needs work. Currently a clear downgrade. Also unclear whether it'll track e.g. damage amp debuffs such as Destabilized on Dimensius Phase 3. Without that, it's only a shadow of what Plater allows. Limiting it to Shared CCs may be ok initially, but really, why not go all the way?

Aura - Unit Name Change

The ability to change the unit name based on aura presence.

Before:

  • ❌ Retail Default Friendly Nameplates don't ever change unit name color
  • ✅ addons can change the color of the name
    • Plater doesn't provide functionality for this inherently, but mods/scripts can

After:

  • ❌ Midnight Nameplate Options don't ever change unit name color
  • ❌ addons won't be able to do so either as all the relevant info - auras - are secrets
Implementation

A long and often requested feature that we only recently rolled our own implementation for. Based on user-defined colors, change the color of a unit name based on the combination of auras present on it.

No aura, no color change. Deathstalker's Mark? Green!

We hestitated for a long time because it conflicts to some degree with nameplate colors but figured, in the end users are responsible for the colors they choose.

Verdict

This is the single most requested feature we saw. I'd imagine people will be pretty upset about losing it. For the time being, Blizzard seems hellbent on forcing you to pay attention to the aura bars of individual auras or the cooldown manager for your current target.

Pandemic Glow of Tracked Auras

The ability of highlighting pandemicable auras on nameplates.

Before:

  • ❌ Retail Default Friendly Nameplates don't highlight pandemicable auras
  • ✅ addons can highlight pandemicable auras

After:

  • ❌ Midnight Nameplate Options don't highlight pandemicable auras
  • ❌ addons won't be able to highlight pandemicable auras anymore as the aura data is now secret
Implementation

Not really much to say here. Adds a glow at 30% of the remaining duration of the aura and you're done.

Verdict & Suggestion

Notably pandemic highlighting made it into the cooldown manager with Alpha Phase 3:

When a Essential or Utility Cooldown element in the Cooldown Manager enters pandemic range, a red box appears around it.

That's a step in the right direction, however nameplates also need that treatment. The cooldown manager only ever cares about your current target and that just doesn't reflect reality well.

Commonly, when you have to refresh debuffs on one target and multiple are present, you'll want to refresh it on other targets too but now you're forced to either look for the aura on other nameplates and spot whether its roughly in pandemic range or you spam target tab and hope you're hitting the targets you care about.

Aura - Friendly Buffs

The ability to highlight your own beneficial auras on friendly nameplates.

the new friendly aura settings

Before:

  • ❌ Retail Default Friendly Nameplates don't highlight friendly auras
  • ❌ addons couldn't do so either as friendly nameplates are locked down

After:

  • ✅ Midnight Nameplate Options include highlighting friendly auras
  • ❓ unknown at this time whether addons can and will do this
temporary buff highlighting
Verdict & Suggestion

This was a surprising, but welcome addition. Not because I'm particulary affected or interested in this feature, but more features, especially for friendly nameplates which haven't been touched for ages, are always welcome.

Unforunately it currently doesn't seem to be very strict in terms of what is a "temporary" buff and will happily show any buff you applied to the target, including raid buffs and other long lasting buffs such as Blistering Scales (60+ mins) or Timelessness (30+ mins) as well as Fury of the Aspects (annoying since it would show on everyone).

It's limited to two auras based on application time. No reordering occurs if you'd apply a third, shorter-lived aura which I'd assume is ok as long as longer-lived buffs like those above are actually filtered out.

three auras applied to a friendly, two longer lasting, yet the most temporary one doesn't show

Aura - Invalidate Unit

The ability to visually indicate that a unit affected by an aura is now immune to damage, commonly indicated by changing the nameplate color.

Technically already covered by Nameplate Color Change, but as this is a secondary feature it's worth talking about.

Before:

  • ❌ Retail Default Nameplates don't show any indication of a unit becoming immune to damage
  • ⚠️ addons can provide tooling to indicate this

After:

  • ❓ Midnight Nameplate Options could integrate this into Shared CCs
  • ❌ addons won't be able to indicate this anymore due to aura info being secret
Implementation

Straight forward - on certain auras, change the nameplate color to grey, or whatever you set it to.

Verdict & Suggestion

Just a really useful quality of life feature. Nothing that is mandatory and most certainly another maintenance burden. Still, why not? At the lowest level, it's an accessibility feature, at the highest, DPS optimization.

Nameplate Scaling

The ability to change the scale of a nameplate procedurally for any reason, e.g. based on NPC id, aura presence or threat.

A criminally underused feature and one of my favorites. The gist: not all mobs are equally relevant to keep track of their health or cast bars in a pull. So why have them all the same size?

Before:

  • ❌ Retail Default Nameplates allow scaling, but never make use of it
  • ❓ addons commonly only allow scaling all nameplates
    • once again, Plater scripts to the rescue

After:

  • ❌ Midnight Nameplate Options largely only allows scaling all nameplates in 5 predefined steps
    • notably, there's an option to scale less relevant nameplates down based on the kind of unit, separating between Minions, "Minor" and Friendly Players/NPCs
  • ⚠️ addons will continue to be able to change the scaling by setting new defaults for all nameplates AND inherit the scaling of the a particular NPC if the game considers it relevant
    • no dynamic scaling based on NPC id
    • no dynamic scaling based on e.g. auras on the player such as fixates
Implementation

Probably by now the largest maintenance burden for Jundies is to tread the fine line of which unit to scale to what, under which circumstances. Naturally pairs extremely well with nameplate colors. Depicted is the commonly first pull of Halls of Atonement and immediately you can tell that Groundskeeper are less relevant than everything else.

a quarter of jundies example image showing the leftmost shard area in Halls of Atonement

Similar to health markers, for each dungeon we collect a list of NPCs and their scaling factors:

local hallsOfAtonement = {
  [167892] = small, -- Tormented Soul
  [167806] = small, -- Animated Sin
  [167610] = small, -- Anklebiter
  [165415] = small, -- Toiling Groundskeeper
  [164363] = medium, -- Undying Stonefiend - Echelon
}

if isRdps then
  hallsOfAtonement[164563] = medium -- Vicious Gargon
  hallsOfAtonement[165515] = medium -- Depraved Darkblade
end

As of recent, we're also supporting role-based scaling which we're carefully using to introduce even more nuanc.

Verdict

👎 worse than before and an instantly visible downgrade. Not an insurmountable loss like nameplate colors, but still noticeable, particularily during pre-patch. Ultimately, it won't be too painful because with a new dungeon rotation, you have no before/after effect so the transition won't be too jarring.

Suggestion

Similar to the Nameplate Color Change Suggestion, add another category for Notable Enemies such as lieutenants and cc immune NPCs and allow optionally increasing their scale in relation to the selected general scale. Basically inverse Simplify Nameplates and give both better labels. With that, I'd consider this adopted despite not even remotely fully solve what the Plater mod Priority Based Scaling and our improved fork are capable of solving, but at least acknowledges the importance of, well, important NPCs.

Icing on the cake would be role-specific scaling. Sparingly used in our mod, but still:

  • tanks care less about enemies without abilities and more about enemies with tankbusters
  • melees care more about enemies with frontals such as Tacticians or area-denial from Loaderbots
  • casters care little about what melees often care about (a tale as old as time)

Break Time

You've made it this far, here's a clip of our cat.

Cast Bar

Cast Bar - Target Name

The ability to show the name of the target of a casting unit.

Before:

  • ❌ Retail Default Nameplates cannot show the target name
  • ✅ addons allow showing the target name

After:

  • ✅ Midnight Nameplate Options include an option to show the target name
  • ⚠️ addons will likely be able to show the target name
Verdict & Suggestion

Generally speaking, works. Colors the target name by class color automatically. Does however not remove the realm name from the target if the unit is on another realm, leading to questionable behaviour:

image of an in-progress cast targeting a player from another realm, leading to a linebreak

image taken from @CartridgeBros tweet

Apparently it also just doesn't work reliably - the target was myself and it worked fine with the next cast.

image of an in-progress cast targeting a player not displaying their target

Cast Bar - Cast Name

The ability to show the name of a spell being cast.

Before:

  • ✅ Retail Default Nameplates shows the cast name
  • ✅ addons allow showing the cast name

After:

  • ✅ Midnight Nameplate Options include an option to show the cast name
  • ✅ addons will be able to show the spell name
Verdict

Works! Optionally allows showing the spell icon too, which is basically identical to what the Retail Default Nameplates do (although they don't seem to show the icon on channels).

Minor nuisance: hiding the spell icon doesn't adjust the position of the cast name despite more space being available now. Makes it look misaligned.

Midnight nameplate options test cast bar with spell icon active
Midnight nameplate options test cast bar with spell icon inactive

Cast Bar - Remaining Time

The ability to show the remaining time until a cast finishes.

Before:

  • ❌ Retail Default Nameplates cannot show the remaining time
  • ✅ addons allow showing the remaining time

After:

  • ❌ Midnight Nameplate Options include an option to show the remaining time
  • ❌ addons won't be able to show the remaining time either
Verdict

Mixed bag. It's not extremely important to know how long a cast will take once you're past the learning stage. But it helps to get a good feeling for an important spell by knowing its cast time early on and it's not like that info is gone, you just have to look at logs now instead.

I'm also intentionally ignoring the edge case of "can I finish my cast before this spell goes off". Sure, before you were able to see it easier but in close cases you'd still rather not risk it anyway.

Cast Bar - Interrupt Source

The ability to show the name of the unit interrupting a cast.

Before:

  • ❌ Retail Default Nameplates cannot show the interrupt source
  • ✅ addons allow showing the interrupt source

After:

  • ❌ Midnight Nameplate Options include no option to show the interrupt source
  • ❌ addons won't be able to show the interrupt source either as CLEU are no longer available
Verdict

Probably ok not to have this info, personally never felt it to be extremely relevant in a world where interrupt tracking is readily available anyway and it didn't compete with that either. And in a world where you can't track neither, you'd rather have static interrupt tracking over this.

Cast Bar - Dynamic Color

The ability to dynamically change the color of the cast bar. Primarily used to indicate whether a spell is interruptible and whether the player can interrupt.

Before:

  • ❌ Retail Default Nameplates don't ever change their color
  • ✅ addons allow changing the color of the cast bar
    • Platers default customization is just that, blanket change the color
    • mods can go further

After:

  • ❌ Midnight Nameplate Options don't allow changing the color of the cast bar
  • ❌ addons won't be able to change the color of the cast bar as unit casting info and cooldown info are secrets
Implementation

One of the more complex mods we supported. The Plater mod Enemy Enhanced Castbar which was published some time during Dragonflight and later was forked by us keeps track of your interrupt ability and colored cast bars based on its availability:

  • if your interrupt is on cooldown and won't be ready during its cast time, the cast bar will be orange
  • if your interrupt is on cooldown but will be ready during its cast time, the cast bar will be yellow
    • and show a marker in the cast bar for when your interrupt is ready
    • and change to green once you're past that marker

All of this of course customizable with a simple color picker, courtesy of Platers mod setting presets.

a description of the capabilities of the Enhanced Enemy Castbar mod including various cast bar states for illustrative purposes
Verdict

👎 worse than before and an instantly visible downgrade. Note that I didn't use this mod myself, but instead used a WeakAura tracking focus cast instead and implemented the same "can interrupt past this point" logic there which I'll dearly miss.

Yes, this is absolutely one of the features that provide an advantage against those that don't have it.

It's also one of the most popular features based on feedback from users. Even with the upcoming longer lockouts from interrupts in Midnight, as much as I can understand that this mod has to go away in its current form, interrupts will stay. Adopting this as baseline feature would be a huge boon.

Cast Bar - Spell Reflect Indicator

The ability to indicate whether a spell being cast on you can be Spell Reflected .

Before:

After:

  • ❌ Midnight Nameplate Options include no feature for Spell Reflection
  • ❌ addons won't be able to fill the gap anymore as unit casting info and cooldown info is secret
Implementation

If an enemy is seen casting a spell on you, besides doing its regular interrupt checks, the mod will check whether the spell is in a hand-maintained list (thank you, Sense) of known reflectable spells and then lookup your Spell Reflection state. If available, it'll color the cast bar in a unique color for Spell Reflection specifically.

a description of the capabilities of the Enhanced Enemy Castbar mod including various cast bar states for illustrative purposes
Verdict

In an ideal world, tooling surrounding Spell Reflection isn't necessary. We're in no such world however, so Warriors now have only two options:

  • go through try and error themselves, potentially wasting a defensive, until you learned which spells can be reflected and which can't, when to use what, and so on. Historically an inconsistent mess.
  • wait a moment and hope Sense updates his spell reflection sheet for this patch and learn that

Wait, wasn't there a note for Spell Block recently...

Developers' notes: Spell Block required a lot of specialized knowledge to use. Not only did you need to know when damage was coming, but also whether it was a form of magic damage that could be blocked or not and thus affected by the ability. AOE damage isn't blockable, neither is periodic damage. Some tankbusters are and others aren't. We weren't happy with the knowledge demanded to use the ability effectively.

I'm obviously not advocating for the removal of Spell Reflection but please, before you put out statements like the above, use some reflection yourself. A lot of other abilities need "a lot of specialized knowledge" - just to name a few:

That's not an inherently bad thing. But if things aren't communicated clearly by the game - something that's promised to improve with Midnight and people like me will very closely watch - then people will reach to tooling like this, which will be sorely missed.

Cast Bar - Highlighting Important Casts

The ability to put some kind of emphasis on a set of casts, either by spell id or name, that are deemed important for any reason.

Before:

  • ❌ Retail Default Nameplates don't differentiate any casts
  • ✅ addons allow highlighting important casts
    • requires manual maintenance by spell id
    • the Plater default tooling provided for this, once again, is hardly maintained but profiles can fill the gap

After:

  • ✅ Midnight Nameplate Options allow highlighting important casts
    • the highlighting is visually minimal
    • no surrounding options to choose from (e.g. texture, flashing). you either like the setting or you don't
  • ⚠️ addons will continue to be able to highlight casts the default nameplates consider important
    • no custom set of spell ids to maintain
    • whether a custom animation will be possible is currently unknown
Verdict

If properly maintained by Blizzard, probably ok. Unfortunately there's no dungeon journal entries for Trash so we can only go by what's marked as Important for raid, where a tool like this has significantly less relevance. Definitely needs work on the UI front however.

Cast Bar - Highlighting of Fixates

The ability to highlight a nameplate of a unit fixating the player in any way.

This was also nicely pairable with nameplate scaling. Note the spawning mine being scaled to a much smaller size until it starts fixating me, where it'll get upscaled instead:

Before:

  • ❌ Retail Default Nameplates don't highlight fixates
  • ✅ addons can highlight fixates
    • Plater itself ships a script with fixates - it's not well maintained but profiles can fill the gap

After:

  • ❌ Midnight Nameplate Options have no such highlighting
  • ❌ addons will no longer be able to determine whether a specific npc id targets anyone specifically
Verdict

Could be situationally ok if it was properly telegraphed but looking at these recent examples, it commonly isn't:

  • ❌ Operation: Floodgate has Loaderbots spinning and the only indication is them targeting you with their channel
  • ❌ on One-Armed Bandit, bombs had a yellow line connecting to the player, technically obvious but meshed badly with the encounter room floor
  • ✅ The MOTHERLODE!! had fixating bombs which had a red line connecting to the player, considerably obvious
  • ❌ Broodtwister Ovi'nax had fixates as a core mechanic of the encounter with no indication beyond a debuff

Here's to hoping that visibility for this mechanic gets improved in the future, then this niche feature is obsolete.

Miscellaneous Features

Quest Progress Indication

The ability to indicate quest progress of certain quest types directly on nameplates.

Before:

  • ❌ Retail Default Nameplates don't indicate quest progress
  • ❓ addons can provide quest progress
    • Plater inherently collects the info but doesn't expose it
    • Jundies ships a mod displaying the info

After:

  • ❌ Midnight Nameplate Options have no such option
  • ❓ addons should be able to continue to provide quest progress
Implementation

Pretty straight forward. Any quest that requires you to do something with specific NPCs like collecting them or just hunting them down displays the corresponding quest progress: either an absolute number of missing criteria or a percentage of total done.

default nameplates showing... nothing
Jundies Plater showing quest progress next to the plate
Verdict & Suggestion

The default UI indicates quest progress via the tooltip which I've personally never considered to be great UX. Something more instantly visible would be nice, understanding that what the Plater mod does is very functional. Losing this isn't the end of the world, but please experiment in this area.

Hiding Nameplates

The ability to hide nameplates, primarily for the purpose of reducing clutter.

Before:

  • ❌ Retail Default Nameplates only hide nameplates for entire classifications of units, e.g. totems, guardians, etc.
  • ⚠️ addons don't commonly hide nameplates
    • Plater scripts/mods can fill the gap

After:

  • ❌ Midnight Nameplate Options only hide nameplates for entire classifications of units, e.g. totems, guardians, etc.
  • ❌ addons won't be able to hide nameplates anymore as the required info (npc id) is secret
Verdict & Suggestion

In 99.99% of the cases, just inconvenient and glaringly obvious in the rare cases this was used.

The most egregious case for this was in Brackenhide Hollow, the bridge towards the third boss directly after Treemouth.

significant amount of irrelevant nameplates visibleall irrelevant nameplates are hidden

And of course, in Midnight:

Suggestion

This is gonna sound harsh, but do better playtesting? This should've not even made it to PTR. The fact that data Blizzard has that suggests these barely ever got pulled, and when, then only unintentionally because someone fell off and these slimes were still not removed for Dragonflight Season 4 is hard to explain.

Execute Indication

The ability to indicate whether a unit is below the possibly dynamic so-called execute threshold, depending on your spec.

Before:

  • ❌ Retail Default Nameplates don't indicate when an enemy is within execute range
  • ✅ addons can provide tooling to indicate this
    • Plater does this by default

After:

  • ❌ Midnight Nameplate Options doesn't indicate when an enemy is within execute range
  • ❌ addons will no longer be able to indicate this as UnitHealthPercentage is secret
Implementation

Again, something very straight forward. Based on your class/spec and situationally, your talents too, a small marker will be present on nameplates indicating whether the unit is below the execute threshold.

execute range settings in plater
execute range indication in action on a nameplate
Verdict & Suggestion

Once again hard for me to judge as I don't play any execute specs. From what I've seen in from others, people seem to be on the fence for this too as some have turned it off. Falls for under the category of "nice to have", so why not?

Phase Indication

The ability to indicate percentage-based encounter-like events on nameplates.

Before:

  • ❌ Retail Default Nameplates don't indicate thresholds
  • ✅ addons can provide tooling to indicate this
    • Jundies fills this gap with a Plater script

After:

  • ❌ Midnight Nameplate Options don't indicate these thresholds
  • ❌ addons will no longer be able to indicate these thresholds as UnitHealthPercentage as well as UnitGUID are secret
Implementation

One of the more larger maintenance burdens for Jundies was to gather this information. Every single NPC and their health thresholds in dungeons or raid throughout the last few years are collected, for example:

local hallsOfAtonement = {
  [164218] = { 70, 40 }, -- Lord Chamberlain statue intermission indicators
  [165415] = { 30 }, -- Groundskeeper fleeing
}

Using Lord Chamberlain as an example, beginning the encounter the nameplate will have a marker similar to the execute indication at 70% health. Once you're past that, it'll show the 40% marker for the next intermission.

an image of a nameplate with health markers
another example, Tirnenn Villagers becoming friendly at 20%
Verdict & Suggestion

In the long run, probably ok to not have this anymore. Blizzard set a predecent with Overcharged Sentinels in Eco-Dome Al'dani and their shield that there's easy tooling available on their end to communicate this behaviour. Here's to hoping this trend continues.

Energy Indication

The ability to indicate upcoming energy-based encounter-like events on nameplates.

Before:

  • ❌ Retail Default Nameplates don't indicate thresholds
  • ✅ addons can provide tooling to indicate this
    • Jundies fills this gap with a Plater script

After:

  • ❌ Midnight Nameplate Options don't indicate these thresholds
  • ❌ addons will no longer be able to indicate these thresholds as UnitPower, UnitPowerMax as well as UnitPowerType are secret
Implementation

Past a configurable threshold, 80 by default, the current energy will appear in the top left corner of the nameplate until it is depleted again.

Gutshot will Call Hyenas at full energy despite raising them from cub!
Some say it's the most painful way to die...

Doesn't need any particular maintenance since game APIs provide all relevant info.

Verdict & Suggestion

Unfortunately energy as indicator of upcoming important abilities is only sparingly/inconsistenly used in dungeons outside of encounters. For example it would've been great on Ardent Paladins in Priory of the Sacred Flame for their Sacred Toll but for some reason, they have mana yet never spend any. Not to mention you need to target them in order to see their state, so again, this feature ultimately just really is another accessibility tool.

Time To Death Estimation

The ability to indicate on the nameplate how long a unit will live for.

Before:

  • ❌ Retail Default Nameplates don't indicate thresholds
  • ✅ addons can provide tooling to indicate this
    • Jundies fills this gap with a Plater mod

After:

  • ❌ Midnight Nameplate Options don't indicate these thresholds
  • ❌ addons will no longer be able to calculate time to die as CLEU is no longer available
Implementation

Relied on a linear regression algorithm collecting the last 100 health change events per unit for a moving window of 10 seconds, compared the data against the remaining health of the unit and then displayed an estimation of how long it'll take until death. Useful to gauge whether you can use cooldowns again or not, or just whether you'll make the timer late into an encounter in Mythic+.

Yup, as you can already tell, this was one of the more costly features.

There was, or are, also a couple WeakAuras replicating very similar functionality but in my testing, they've all performed significantly worse.

Verdict & Suggestion

A very niche feature that doesn't matter for the far majority of the playerbase. Absolutely fine not to have this going forward, I've not been using it personally for a while either and it's not on by default in Jundies either.

That said, it was pretty useful for cooldown planning whenever the combat doesn't end with enemy death such as:

The list isn't extremely long but I could go on for a while.

Console Variables

Largely informational, here's some technical bits while we're here. Pruning was imo badly needed.

Removed CVars

// scaling related
NamePlateClassificationScale // Applied to the classification icon for nameplates.
NamePlateMaximumClassificationScale // This is the maximum effective scale of the classification icon for nameplates.
nameplateGlobalScale // Applies global scaling to non-self nameplates, this is applied AFTER selected, min, and max scale.
NamePlateHorizontalScale // Applied to horizontal size of all nameplates.
NamePlateVerticalScale // Applied to vertical size of all nameplates.

// insets
nameplateLargeBottomInset // The inset from the bottom (in screen percent) that large nameplates are clamped to.
nameplateLargeTopInset // The inset from the top (in screen percent) that large nameplates are clamped to.
nameplateOtherBottomInset // The inset from the bottom (in screen percent) that the non-self nameplates are clamped to.
nameplateOtherTopInset // The inset from the top (in screen percent) that the non-self nameplates are clamped to.
nameplateClassResourceTopInset // The inset from the top (in screen percent) that nameplates are clamped to when class resources are being displayed on them.

// positioning related
nameplateMotion // Defines the movement/collision model for nameplates
nameplateMotionSpeed // Controls the rate at which nameplate animates into their target locations [0.0-1.0]
nameplateOverlapH // Percentage amount for horizontal overlap of nameplates
nameplateOverlapV // Percentage amount for vertical overlap of nameplates

// personal resource bar-related which becomes a separate edit mode element
NameplatePersonalClickThrough // When enabled, the personal nameplate is transparent to mouse clicks.
NameplatePersonalHideDelayAlpha // Determines the alpha of the personal nameplate after no visibility conditions are met (during the period of time specified by NameplatePersonalHideDelaySeconds).
NameplatePersonalHideDelaySeconds // Determines the length of time in seconds that the personal nameplate will be visible after no visibility conditions are met.
NameplatePersonalShowAlways // Determines if the the personal nameplate is always shown.
NameplatePersonalShowInCombat // Determines if the the personal nameplate is shown when you enter combat.
NameplatePersonalShowWithTarget // Determines if the personal nameplate is shown when selecting a target. 0 = targeting has no effect, 1 = show on hostile target, 2 = show on any target
nameplateSelfBottomInset // The inset from the bottom (in screen percent) that the self nameplate is clamped to.
nameplateSelfScale // The scale of the self nameplate.
nameplateSelfTopInset // The inset from the top (in screen percent) that the self nameplate is clamped to.

// misc
nameplateShowOnlyNames // Whether to hide the nameplate bars
nameplateShowPersonalCooldowns // If set, personal buffs/debuffs will appear above the personal resource display
ShowClassColorInFriendlyNameplate // use this to display the class color in friendly nameplate health bars
ShowClassColorInNameplate // use this to display the class color in enemy nameplate health bars
ShowNamePlateLoseAggroFlash // When enabled, if you are a tank role and lose aggro, the nameplate with briefly flash.
nameplateHideHealthAndPower
nameplateShowFriendlyBuffs
nameplateShowFriendlyGuardians
nameplateShowFriendlyMinions
nameplateShowFriendlyPets
nameplateShowFriendlyTotems
nameplateShowFriends

Remaining CVars

// scaling related
nameplateLargerScale // An additional scale modifier for important monsters.
nameplateMaxScale // The max scale of nameplates.
nameplateMaxScaleDistance // The distance from the camera that nameplates will reach their maximum scale.
nameplateMinScale // The minimum scale of nameplates.
nameplateMinScaleDistance // The distance from the max distance that nameplates will reach their minimum scale.
nameplatePlayerLargerScale // An additional scale modifier for players.
nameplateSelectedScale // The scale of the selected nameplate.

// alpha related
nameplateMaxAlpha // The max alpha of nameplates.
nameplateMaxAlphaDistance // The distance from the camera that nameplates will reach their maximum alpha.
nameplateMinAlpha // The minimum alpha of nameplates.
nameplateMinAlphaDistance // The distance from the max distance that nameplates will reach their minimum alpha.
nameplateOccludedAlphaMult // Alpha multiplier of nameplates for occluded targets.
nameplateSelectedAlpha // The alpha of the selected nameplate.
nameplateSelfAlpha // The alpha of the self nameplate.

// camera distance related
nameplateGameObjectMaxDistance // The max distance to show player nameplates for game objects
nameplateMaxDistance // The max distance to show nameplates.
nameplatePlayerMaxDistance // The max distance to show player nameplates.
nameplateTargetBehindMaxDistance // The max distance to show the target nameplate when the target is behind the camera.

// positioning related
nameplateTargetRadialPosition // When target is off screen, position its nameplate radially around sides and bottom. 1: Target Only. 2: All In Combat
nameplateOtherAtBase // Position other nameplates at the base, rather than overhead

// misc
nameplateResourceOnTarget // Nameplate class resource overlay mode. 0=self, 1=target
nameplateShowAll // Show nameplates at all times.
nameplateShowDebuffsOnFriendly // Whether debuffs are shown on friendly nameplates.
nameplateShowEnemies // Show nameplates for enemy units
nameplateShowEnemyGuardians // Turn this on to display Unit Nameplates for enemy guardians.
nameplateShowEnemyMinions
nameplateShowEnemyMinus // Turn this on to display Unit Nameplates for minor enemies.
nameplateShowEnemyPets
nameplateShowEnemyTotems // Turn this on to display Unit Nameplates for enemy totems.
nameplateShowFriendlyNPCs // Whether nameplates are shown for friendly npcs.
nameplateShowSelf // Display class resource bar. 0=off 1=on

New CVars

All related to the new options.

nameplateAuraScale // Controls the size multiplier for buffs and debuffs on nameplates.
nameplateDebuffPadding // The padding between the debuff list and the health bar on nameplates.
nameplateShowClassColor // use this to display the class color in enemy nameplate health bars
nameplateSize // Provides discrete values that are translated into specific horizontal and vertical scales defined in lua for displaying nameplates.
nameplateStyle // Determines how nameplate contents are displayed

Maintenance

Testing Cycles

As you've learnt or already knew, maintenance is key for many bits of the profile we maintained. Making sure most if not all eventualities are covered before release was the standard we hold ourselves to.

This doesn't mean we didn't miss things but we routinely covered all these for new dungeons and raids, going by the working names for these mods/scripts:

  • Short Names - since it's generic it's easy to spot problems, but those need special handling
  • Hide Nameplate - requires diving into logs for the NPC ids
  • Important Casts - requires diving into logs for the spell ids
  • Fixate - requires diving into logs for the aura and NPC ids
  • Health Markers - requires log analysis to find the correct health breakpoint(s) and NPC ids
  • Use Stops - requires diving into logs for the cast ids
  • Must Die - requires diving into logs for NPC ids
  • Invalidate Unit - requires diving into logs for aura ids
  • Show Energy - requires diving into logs for NPC ids
  • Time To Die - in case of special cases like Rasha'nan not dying at 0% hp, requires special handling
  • Priority Based Scaling - we're initially conservative and a mid-patch update usually covered more

Additionally we made sure to be backwards compatible when adapting to new APIs (e.g. when TWW moved APIs to C_Spell) so we could release updates ahead of patch release.

Early Patch Release

Once the patch is out, naturally we're dogfooding changes ourselves which is absolutely crucial.

We then react to feedback from users on reddit, discord, guild, dms and assess how much we can delay making these changes because just like anyone else, we're acutely aware of how annoying it is having to update addons/profiles constantly, not to mention that Plater profiles in particular are destructive, meaning you lose all your visual customizations.

Every now and then we even got people code-reviewing our code and suggesting improvements. Or Classic players reporting LUA errors - because we never anticipated someone would import a dedicatedly Retail-focused profile into Classic. The next release made sure we accounted for that too. It's a people pleasing business the moment you publish something like this and commit to maintaining it.

Quo Vadis, Nameplates?

Not all is doom and gloom. I have to admit, in certain areas it certainly looks dire, especially in context of testable content in the Alpha. But I'm also trusting that Blizzard is has reasonable motivation to not alienate the userbase too much. Expansion launches have historically been the largest surges of players, and I find it hard to believe that Blizzard would risk jeopardizing that.

And maybe I'm trusting a bit too much here but: Blizzard isn't bound to third-party developers and sites for their updates. If they want to fix some spell(s) not showing up on nameplates, the cooldown manager, raid warnings, the encounter timeline, add a new metric to the damage meter - they can just hotfix that in. Remember that Blizzard too is in the people pleasing business.

Just as easy as Blizzard can hotfix stuff, they can also not do that. The cooldown manager was introduced in 11.1 and is at the time of writing, a week after 11.2.5, just barely usable. Of course if the intent for it was to only become relevant with 12.0, then what was the point of releasing it already, especially after communicating that most of the class changes we're currently seeing in the Alpha are only a byproduct of the addon restrictions from recent months?

I was in middle school when Patch 1.11 released in 2006. Servers were on fire for days, from what I recall due to the Scourge invasion events. It was the time of "never play on patch day". What is preventing a lack of upfront maintenance on the cooldown manager and nameplates, figuratively speaking, from becoming the new "never play on patch day" whenever a spec gets reworked or the new tier set introduces a new aura that is relevant to track?

There's spells I've reported on the Liberation of Undermine PTR over half a year ago (Bombardments, Mass Eruption) that still are either not available for tracking or bugged in the cooldown manager in 12.0. You might also remember Get a Glow up With Transmog Updates in Midnight, yet all of the UI showcased there remains to be seen. And I'd imagine the UI team, regardless of its size, is already swamped with work.

The community needs Blizzard to step up massively here. Replacing addons, and especially addons with as many customization features as this, with barebones replacements can work, but only with a promise of rapid iteration - and we've not seen any of that. Remember the post banner? Let's hope we're on the way out of the tunnel, not into it.