Mind controlling another player causes name plate to disapear
Backupiseasy opened this issue · 18 comments
- https://www.curseforge.com/wow/addons/tidy-plates-threat-plates/issues/610
- I know other have written this but it wasn't fixed, this happens consistently every time I mind control to an extent that I stopped taking mind control in my talents :(
- https://www.curseforge.com/wow/addons/tidy-plates-threat-plates/issues/597
- I am experiencing this issue with the most up to date addon. When a priest mind controls me in an arena or bg, Threatplates stops working. This is a mild inconvenience because I rely on threatplates to show debuffs above nameplates.
- Correct, just when I get mind controlled. Although I don't have a priest to test on other units. The nameplates of the other players become the stock Blizzard nameplates after I get mind controlled and no longer show the threatplates health bar or debuffs above the health bar associated with threatplates. There is no Lua error that pops up. I would guess that doing a /reload would bring them back but during an arena that's not usually feasible. Let me know if I can provide you with any more information. Thanks!
Just to make sure, this also happens when you yourself mind control another player? This way it would be easy to test for me.
So, I tested mind controlling other players in arena and nameplates continued to work just fine. I cannot verify that nameplates disapear when you yourself mind conrol another player.
Now, I also tested it in a duel (getting mind controlled), still everythink works fine. Currently, my best guess is that is a combination of Threat Plates with another addon that shows/hides nameplates in certain situations.
Here's an example - https://www.twitch.tv/videos/1813489188?t=00h44m30s
Hi, I want to add to this.
I use default blizzard nameplate for friendlies.
When my priest MC's an enemy, their nameplate turns into friendly plate and continues to stay that way, instead of at least going back to the way I've setup Threat Plates on enemies.
Let me know if you need more details, or if I should create a separate issue for this. Thanks.
This happens in arena.
Match starts -
- Enemy players has correct TP nameplates
- My priest on my team MCs enemy
- MC’ed enemy’s nameplate then turns into blizzard’s nameplate (that’s how I have it setup for friendly)
- MC ends or canceled, that enemy’s nameplate never gets reverted to TP nameplate
Ideally I’d want the MC’ed enemy player’s nameplate stays as TP nameplate regardless of their MC state.
Let me know if you need more info, or a screenshot, I can go into a match and get my priest to MC, take one today some time today.
By the way, as for a duel, when the duel starts the player is always using friendly nameplate instead of hostile TP nameplate I’ve setup. So if it can detect hostile and uses TP nameplate instead that’ll be great but not a huge deal to me at all.
Thanks for your time!
Does` this happen when you MC players (in arena or bgs) or also with NPCs?
But, as you mentioned Blizzard nameplates for friendly units. I am not sure above the correct sequence. If it's a duel, it should be like that:
- Friendly player with Blizzard nameplate
- Duel starts => enemy player with enemy TP nameplate
- MC => nameplate disapears, right?
- MC ends => enemy plyer with TP nameplate - from your comment I think this does not happen, but the enemy player (still in duel) gets a friendly (TP) nameplate
- Duel ends => Friendly player with Blizzard nameplate
Something like that :D?
Ok, now I think I understand this and I can see it in the video. That should be a side effect with of Blizzard nameplates being enabled for friendly units outside for arenas. I need to think about why this is happening. Once I have a version that could fix it, I'll post an update here.
And I think I found the reason why this is happening. I'll try to uploaded a beta version to test in the upcoming days.
Hey @Backupiseasy , thanks for taking the time to look at this and coming up with a fix already!
Just for personal interest, could you explain what causes this?
Basically, when a nameplate is shown as Blizzard nameplate, but not as Threat Plates nameplate, the value TPFrame.Active is set to false (so that a lot of stuff is not processed for these nameplates as, e.g., TP widgets are not shown). Now, when mindcontrol is used, this value is set from true (TP shown) to false (TP not shown as you configured that for friendly units which, after being mindcontrolled, the enemy unit is). After mindcontrol ends, a UNIT_FACTION event is triggered and TP checks the nameplate again. But the code that resets this kind of visibility is only executed if TPFrame.Active is true which - after mindcontrol - is not the case. So, I have to move that part of the code before the check for TPFrame.Active
Hope that explains it :D
This might also explain a similar bug when you yourself are mindcontrolled, although that's a bit more complicated to fix, I think.
I see, thank you for the detailed explanation.
So with the fix, will the nameplate kept as TP nameplate with a check like it's arena123 unit regardless of it being friendly or not. Or will the nameplate turn friendly, into blizz nameplate for the during of MC and turns back to TP nameplate?
Like this "Or will the nameplate turn friendly, into blizz nameplate for the during of MC and turns back to TP nameplate?" - this is the intended behaviour currently.
To change that, i.e, to keep the TP nameplate even for the friendly unit in the arena (compared to outside of it where it should turn into a Blizzard nameplate), that would be an enhancement (new feature). Currently, the check for Blizzard/TP nameplate does not consider if you are in an arena or not.
You can try the following version: https://drive.google.com/file/d/1PeZ_OF5yXizpB4tEBiOvYJf_hK35b8Yn/view?usp=sharing
It should fix the original issue. Feedback is welcome :D
Hi @Backupiseasy
I can confirm that fixed the issue! Thanks!