Luxocracy / NeatPlates

NeatPlates is a continuation of the original Tidy Plates in an attempt to keep it update date in the absence of its authors.
https://wow.curseforge.com/projects/neat-plates
80 stars 20 forks source link

show interrupt on the cast bar with the name of char (Feature Request) #41

Closed ja0b closed 5 years ago

ja0b commented 5 years ago

Hi @Luxocracy, The other day I saw this behaviour and I loved it, so when a mob cast you see the cast bar:

untitled0

Then if somebody interrupts (maybe stuns too) this happens: untitled1

How hard would it be to implement this on TPC ? This would be GREAT!

Thanks!

Luxocracy commented 5 years ago

Getting the castbar to stay up and say interrupted shouldn't be any issues at all. Not sure about stuns etc. or displaying who interrupted it. Would have to look more into what the interrupt events actually pass along.

Luxocracy commented 5 years ago

I made a quick version of this. I have no idea how it handles multiple mobs or anything like that so any feedback about bugs etc. would be great.

ja0b commented 5 years ago

I'll have a look, I'll let you know πŸ‘

yishuangfrank commented 5 years ago

Could you and a switch for displaying who interrupted? Maybe someone don't need it(like me,because the theme I use doesn't support well.) tim 20181114231521

Luxocracy commented 5 years ago

Yes, I will most likely add some options for this feature. Things like, disabling it entirely or just the name portion of it.

ja0b commented 5 years ago

@Luxocracy seems like the cast bars are staying up longer and sometimes until the next cast starts.

Luxocracy commented 5 years ago

@ja0b Is this in the "pre3" version?

ja0b commented 5 years ago

6.21.13-pre

Luxocracy commented 5 years ago

It sounds like something that should be fixed in pre3, already noticed a lot of issues with how it works in the previous 2 versions. Also know of at least one more in the current pre3 version regarding a color error.

ja0b commented 5 years ago

I'll play with it tonight and I'll let you know if I found something new πŸ‘

ja0b commented 5 years ago

@Luxocracy the cast bar bug is not present anymore, looking good so far, using the class colours was a great idea .

Something I saw is that when I taunt the cast bar shows the interrupt message.

Also, I think I have found a good way to show the stuns on the nameplates too if you want we can consider there as a separate feature request.

see this:

featurerequest

The icon of the stun on top of the bar with the counter so the others know if the adds are in stun and how long is it.

Luxocracy commented 5 years ago

I've looked into something like it before, a so called emphasized buff/debuff slot. And as far as I could tell this is something that you would have to manually enter every buff/debuff you want to show up as there is nothing indicating weather a buff/debuff stuns or has any kind of CC effect.

It's not a system that I'm very interested in adding as said list will have to be updated periodically because abilities change. Just having a emphasized buff/debuff slot that you can customize is about the only part of it I'd really consider.

ja0b commented 5 years ago

Actually, I think that is even better, maybe this is another toggleable widget with some pre values (stuns) in place that can be removed if wanted. If you want I can get a list with the spell ids.

Let me know. πŸ‘

Luxocracy commented 5 years ago

I've added another file to the pre-release with some more changes which should fix a few more things. Hopefully the issue with other auras, such as taunt, displaying the interrupt should no longer happen and interrupting channeling spells will now count as well. Which is really weird that that doesn't trigger the normal interrupt event.

But stuns or other interrupts I don't think I can get to show for channeled spells, as they do for normal casts, as the method that has to be used for that can't be used if there is no interrupt event triggered.

ja0b commented 5 years ago

I got a friend testing pre4 and something it's up with the bars now for some reason they are not showing as before only on focus @Luxocracy

Luxocracy commented 5 years ago

Bars as in castbars or the nameplates themself? And focus target shouldn't affect anything I believe.

ja0b commented 5 years ago

The nameplates, I think it's something with the distance, if the target is a bit far away... you cannot see the nameplate.

Luxocracy commented 5 years ago

There's an option for nameplate distance under nameplate behaviour. Guessing it got set to something really low somehow.

hechenxing commented 5 years ago

Can you add an option to turn this interrupt message on and off?Sometimes it is not required thanks a lot.

ja0b commented 5 years ago

@Luxocracy all looking good so far on pre-4 amazing work πŸ‘ . Something my friend realised was the fact that he had to set the distance config a few times, for some reason it was getting back to the initial value (10).

Now, this needs to be toggleable as I guess all new features need to be.

Luxocracy commented 5 years ago

Yeah I was considering if it was that, I was trying to implement a system where it would respect CVars set elsewhere. But it is a real hassle with how the current profile system is set up.

So what I'm currently planning on doing, is to move the CVars to the main section instead of per profile. Which should mean that they are independent and won't change unless you mess with that specific CVar. As it currently stands they have to be set through the same method as the rest of the profile, which means they get changed anytime settings are loaded.

Luxocracy commented 5 years ago

@hechenxing There should already be an option to disable this under "Cast Bars" in pre4, if I forgot to include it there it is definitely in pre5.

@ja0b pre5 includes the moving of the CVars to the main options so hopefully they won't cause issues anymore.

ja0b commented 5 years ago

I've been testing pre-6 and all good! πŸ‘

ja0b commented 5 years ago

Something I saw was the interrupt owner text is not appearing when the pets do the interrupt. e.g. warlocks using https://www.wowhead.com/spell=19647/spell-lock

Luxocracy commented 5 years ago

Hmm, since the unit performing the interrupt isn't a player it's not surprising that it doesn't show up. So will have to see if I can, firstly, detect if the unit is a pet. And then if I can get the owner of the pet from that information.

Will look into it, but I feel like this should be possible.

Luxocracy commented 5 years ago

Added another pre-release(pre7), this should now show the owner as the interrupter when a pet interrupts. You do have to be in a party/raid with the owner of the pet for it to work, because this is the only point when you can get unit information by name alone.

It might show the incorrect interrupter if you have players whos pets have the same name, but the only alternative that I can manage to work out is to go through the entire raid and build up an index everytime a pet interrupts. Or do this whenever someone joins or summons/revives their pet. because their unique IDs change whenever they are re-summoned.

That just seems a bit excessive for something that will rarely ever occur.

ja0b commented 5 years ago

Yes, that seems excessive this will do just fine πŸ‘

ja0b commented 5 years ago

Testing pre-7 I didn't see the interrupt for pets working, it was working as before with just the "interrupted" text.

Luxocracy commented 5 years ago

Seems like servername can't be included when attempting to get their info by name alone, so will need to strip that off before hand. Makes this slightly less accurate but might be fine anyways since this causing issues would be very rare and have very little impact.

This should work when people are from other servers now in pre8. I've also attempted to fix when units interrupt/cancel their own casts it should no longer just attribute that interrupt to the owner of the next applied debuff.

ja0b commented 5 years ago

I think this is ready to be released πŸ‘

Luxocracy commented 5 years ago

Closing this as it is now part of the latest release.