I have an AE instant ability that damages targets around the caster, everything is fine except the ability only targets enemy units.
The problem with this is, I can't seem to find a way from stopping the caster from activating the ability when there are no valid targets near by, so in this case nothing happens, but the ability cost is still used, and the cooldown still fires.
Sorry no, it's a player controlled hero - but it's basically an insta-cast AE attack.
I want them not to be able to use it if valid (enemy) targets aren't in range, simlar to how targetable abilities give you an error if you don't pick a target.
I can possibly do this via triggers, and check for units in range whenever it is used, then refund the cost of the spell and reset the cooldown - but surely there is a way in the data editor.
Check out the EnemiesNearby validator, I'm thinking if you copy and modify it to suite your needs it could act as a validator on whether that ability should be available or not... :) I take it this is related to that other post about missiles vs AE effects eh? Pretty sure this is the missing link if that's the case :)
Thanks for the tip! Using that sort of validator in the Effect- Search Area of the ability worked a treat. Now when they goto cast the ability, it will only fire if enemies are in range.
I was having trouble because I was looking for somewhere in the ability itself to use the validator and it wasn't working, turns out in the effect it still works and stops the ability firing.
I'm not sure if it was related to the missles vs AE effects, that was a separate issue which was very straight forward, but it is similar to my other issue of showing the range of an insta-cast PBAOE (point blank area of effect) ability - something that I have a feeling is not going to be possible.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
I have an AE instant ability that damages targets around the caster, everything is fine except the ability only targets enemy units.
The problem with this is, I can't seem to find a way from stopping the caster from activating the ability when there are no valid targets near by, so in this case nothing happens, but the ability cost is still used, and the cooldown still fires.
Is there any way around this?
So if I get this right, you want an AI controlled unit to not autocast that ability when not in combat, and the AE to also affect allied units?
For autocast: use validators.
Affecting allied units: you have to check ally in search filters.
Sorry no, it's a player controlled hero - but it's basically an insta-cast AE attack.
I want them not to be able to use it if valid (enemy) targets aren't in range, simlar to how targetable abilities give you an error if you don't pick a target.
I can possibly do this via triggers, and check for units in range whenever it is used, then refund the cost of the spell and reset the cooldown - but surely there is a way in the data editor.
Check out the EnemiesNearby validator, I'm thinking if you copy and modify it to suite your needs it could act as a validator on whether that ability should be available or not... :) I take it this is related to that other post about missiles vs AE effects eh? Pretty sure this is the missing link if that's the case :)
Thanks for the tip! Using that sort of validator in the Effect- Search Area of the ability worked a treat. Now when they goto cast the ability, it will only fire if enemies are in range.
I was having trouble because I was looking for somewhere in the ability itself to use the validator and it wasn't working, turns out in the effect it still works and stops the ability firing.
I'm not sure if it was related to the missles vs AE effects, that was a separate issue which was very straight forward, but it is similar to my other issue of showing the range of an insta-cast PBAOE (point blank area of effect) ability - something that I have a feeling is not going to be possible.