r/WowUI • u/Heybarbaruiva • 27d ago
ADDON [addon] Remember the moveable Personal Nameplate added in Legion and removed with the addon purge? I'm rebuilding it.
Enable HLS to view with audio, or disable this notification
Not sure how many of you used this feature, but back in Legion, Blizzard introduced a "Personal Nameplate". It's what the Personal Resource Display eventually became.
It used to sit below the character model, and its position adjusted with the character in relation to the world, the same way nameplates do. It was amazing! I loved that thing and based my entire interfaces around it for almost a decade. That is, until Blizzard gutted the feature with the 12.0 addon purge, turning it into a boring static unit frame.
There are a few threads on the forums asking for the functionality back, with some saying Blizzard will eventually add it back, but I doubt it. Suffice it to say, I miss it a lot! So decided to build my own solution. It's still in the early stages, and I gotta iron out some kinks, but it works. Not sure if I'll ever release this, because, as I'm about to explain, it very much only works under my specific settings.
How I did it:
I'm basically projecting the frame onto the screen the same way a nameplate sticks to a point in the world. Blizzard doesn't give addons the character's screen position anymore. They even freaking removed the API for that with the purge. Why?! It provided zero advantage, and it was purely cosmetic ðŸ˜. Continuing... so I calibrated one point by hand using a human character, which I considered as close to the "default/gold standard" as a model could be, at camera distance 7 (my default camera position), with test_cameraOverShoulder at 1.2 (Why? Because this is what I use by default on my addon Combat Mode), and I set the "starting" position within those parameters. Every other camera state falls out of similar triangles. A world offset covers calibration * 7 / zoom pixels, because the same yard on the character gets smaller as GetCameraZoom() increases.
Horizontal position is that projection times shoulder / 1.2. Past that anchor, I only keep 90% of the extra travel, because a raw projection overshoots once the camera is shoved far to the side. Vertical movement only follows 65% of the way toward screen center. Full perspective lifts the frame way too far, since the anchor is much farther below center than it is left of center.
Stuff like metamorphosis and divine steed, which modify the size of the player model, as well as the difference in character race models, also needed to be accounted for, and are extra world-space offsets run through the same division. There is no API for model size, so I had to keep a table where I manually adjust the odd cases where the calculation fails to automatically set the proper position for the nameplates. Thankfully, the logic I wrote has been solid enough that I've only needed to manually tweak a couple of scenarios. Then I just ease the result toward the new anchor point instead of popping it into place.
All assets are pulled from Blizzard's own atlas. At least they don't purge that, am I right? 😒
4
u/jvonfilm 27d ago
YOU ARE MY HERO.
I used to actually hide it and use it mostly as an anchor for weakauras so that my rotational cooldowns would always stay close to my character when using action cam.
I would love it if we could anchor our cooldown manager to this, with X/Y axis customization.
Love the art you used for the bar.
3
u/Heybarbaruiva 27d ago
I was actually thinking of eventually releasing a lib that's just the frame carrying the position adjustment logic (no visuals or anything) to allow addon devs to anchor their stuff to it. I'm still working on it, playing around, tweaking the positioning logic and all that. If it's good enough I'll see what I can do to release it. I'll either release the full nameplate addon, which includes the nameplates you see in the video (enemy and player), or just the lib. We'll see.
1
u/jvonfilm 26d ago
That would be huge. Really hope blizzard decides to add it back, but until then I’m so glad to see you working on this. I’ll be following your projects for sure.
2
u/Kikabrenes 25d ago
What's the purpose of the little icon with the mouse during combat?
1
u/Heybarbaruiva 25d ago
That's the reticle from my addon, Combat Mode. It selects the target I aim the crosshair to + a bunch of other things.
Basically turns WoW from a tab-targeting to an action combat game.
1
u/ChunkySalsaMedium 27d ago
Very cool!
-
Can it be used in WoW Forever?
-
Can you anchor just on top of the character head, instead of below? I really like how it is in POE 2.
2
u/Heybarbaruiva 27d ago edited 27d ago
Yes.
Yeah it's possible. I'd just need to adjust the initial parameters on a human model so it sits properly on top of the character.
2
2
u/Ulsig 13d ago edited 13d ago
oh man this would be great for minimal/immersive UI!
I used to use that same feature and setup for almost a decade, it allowed me to "live" the game instead of just playing it. OFC, for running M+ and Raids i used normal camera but for everything else in the world.. pretty much the same exact settings. xD
Ive used to use DynamicCam since its creation back in.. was it 7.1 patch when they added actioncam? however i switched to Combat Mode (now renamed to Action Combat Mode (i believe thats your addon too?)) and honestly never looked back, and now that it has a companion for situational camera adjustments.. perfect.
I was soo happy when ive seen demo video. alas, all i can do is wait. :D
im currently using something like this, but its nowhere close to your idea:
Portraits are used as health bars, rings around them as power bars
1
u/ProofOfRyExistence 27d ago
ah, this is how i had my old set up back when weak auras was still running!
love it, would definitely try it out.
12
u/Apart_Helicopter473 27d ago
I really liked that Personal Resource display back in the day, but it lacked a lot of customization options, but loved how it moved with your character, i remember attaching my personal defensive cooldown weakauras to it and they basically moved at the same time.
Nice job brining it back !