• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!

Cloud Silence vs Self Bug

Status
Not open for further replies.
Level 8
Joined
Jul 8, 2013
Messages
249
I'm running into some very strange behavior with a new ability I am testing!


The ability is based on Cloud, so it is a channeled spell, but instead of prevented ranged attacks in the target area it instead prevents spellcasting (by friend or foe). And it lasts up to 8 seconds.

So far so good, that's all working as intended.


But I noticed strange behavior if the caster targets his own area!
First of all, the spell ends immediately.

But the bigger problem is that the caster (and ONLY the caster) gets hit with the debuff PERMANENTLY and can never again cast any spells. The debuff can't even be removed with dispels!

I tried the obvious solution of changing the Targets Allowed to "Air, Enemy, Friend, Ground, Neutral, NOT SELF, organic", but even with Not Self added to the list the same thing happened for some reason.
 
Level 21
Joined
Mar 29, 2020
Messages
1,237
you can just trigger the ability from scratch.

the ability could work like this - apply a dummy aura for the duration of the spell on the units in range (you can filter out the caster with the aura or in the second trigger). with a separate trigger - if a unit that has the buff of that aura starts casting an ability - instantly move that unit a tiny bit (when you move a unit with GUI it interrupts whatever it is doing - I think this always works). and obviously you can add effects and whatever to make this look the way you want. that should do it.
 
Level 8
Joined
Jul 8, 2013
Messages
249
I did some experiments and found a simple fix!

Just make the channeled silence ability not work on a certain unit classification (say, Non-Ancients for example).

Then have a trigger that when a unit Starts The Effect of the ability, add that classification to the unit. You can remove it 0.02 seconds later and it will work perfectly! (0.01 seconds doesn't work for some reason).
 
Status
Not open for further replies.
Top