• 🏆 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!
  • ✅ The POLL for Hive's Texturing Contest #33 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!

How do I add a buff to a unit?

Status
Not open for further replies.
Level 11
Joined
Mar 31, 2009
Messages
732
I made an ability based on Channel, which was supposed to give an aoe buff like Roar (but not to affect itsself, like BBV).
I can't seem to find a trigger that will let me add a buff to a unit. Have I missed something?
Attached is a picture of the properties page for the ability.
The buffs aren't being added by what the channel data leads me to expect, and theres no function I can find that will add a buff either?

-- Edit: Solved by scraping the spell and starting over basing it on Roar instead.
 

Attachments

  • channel.PNG
    channel.PNG
    21.4 KB · Views: 109
Last edited:
Level 9
Joined
Oct 17, 2007
Messages
547
Just so you know, buffs are only for looks, adding the roar buff to the unit doesn't give the units the bonus(es).

There is no trigger for adding a buff to a unit but you have 2 options:

1. If the modified roar ability only meant to effect the caster then you can change the area of effect and target types so it only effect the caster itself; dont need to use Channel in this scenario.

2. If you want the unit to cast roar on another unit then i suggest using another dummy ability. i.e. Modify an ability like Bloodlust (if you want it to autocast) or Rejuv ( if you want manual casting) having it only give the unit the buff but none of the bonus. For the Roar bonus you can just modify the item abilities that add attack damage, hide them in a book and trigger the game to add it to a unit. When the buff expires trigger the game to remove the bonus book.
 
Level 20
Joined
Oct 21, 2006
Messages
3,230
If you make another buff from Roar/Lust they wont nomore stack with original Roar or Lust.

Simply modify Devotion Aura (or any aura) and change it's area of effect to 0 and targets to self. Then run a trigger "unit starts effect of an ability", "ability being cast is equal to something", "unit - add ability Devotion Aura to target unit of ability being cast".

You can easily make it MUI with dummy attackers..

Unit casts spell
Spell is ur spell
Create 1 dummy attacker unit
Order last created unit to attack target unit of abi being cast
Set expiration timer to last created unit 1.00 seconds

Event - Unit is attacked
Condition - Unit type of attacking unit equal to dummy attacker
Action - Add Devotion Aura to triggering unit
Action - 10.00 seconds
Action - Remove Devotion Aura from triggering unit

I support this systems because Roar buff and Custom Roar buff wont stack. But if you use auras they ALWAYS can stack if you just change the buff.
 
Level 25
Joined
Jun 5, 2008
Messages
2,572
Why complicate things?
If it is a target AOE spell simply make a dummy spell based on roar and a dummy unit, then set the dummy ability AOE to the same as your spell and create and order the dummy to cast the dummy ability.
You can do the other methods though it is always a good thing if you can avoid using unit groups.
 
Level 8
Joined
Mar 12, 2008
Messages
437
Why complicate things?
If it is a target AOE spell simply make a dummy spell based on roar and a dummy unit, then set the dummy ability AOE to the same as your spell and create and order the dummy to cast the dummy ability.
You can do the other methods though it is always a good thing if you can avoid using unit groups.

Super-sheep clearly said that it's best to trigger it to avoid any occurance of unstackable buffs.
 
Level 8
Joined
Nov 9, 2008
Messages
502
You want a Roar ability that affects all as normal except the caster? The only thing you need changing is that the caster doesn't receive the buff? That's simple.

Although you can't directly ADD a buff through triggers, you can directly REMOVE them. So why not have a trigger remove the buff from the caster as soon as it's cast?

lol pwned
and change the title of the thread to "how to remove a buff" while you're at it.
 
Level 11
Joined
Mar 31, 2009
Messages
732
You want a Roar ability that affects all as normal except the caster? The only thing you need changing is that the caster doesn't receive the buff? That's simple.

Although you can't directly ADD a buff through triggers, you can directly REMOVE them. So why not have a trigger remove the buff from the caster as soon as it's cast?

lol pwned
and change the title of the thread to "how to remove a buff" while you're at it.

Because the radius I want this to apply in is not circular. I want it to apply in an almost rectangle region that I make via triggers.

And the reason I wanted to apply the buff via triggers, was for another trigger, where I check if a unit has the debuff when it takes damage.
 
Level 8
Joined
Mar 12, 2008
Messages
437
Well that wont work, because it has to be MUI.
What if I end up removing a buff from a unit that already had the buff, and was supposed to keep it for a while?

Then you need some kind of "buff placer" which you base on a single target ability, such as bloodlust or inner fire (these buffs sadly won't stack, so try to use one that you aren't going to use later.
Then you create a trigger. Pick all the units you want to pick when the ability is cast. Then create a dummy for every picked unit and order it to cast the buff placer.
 
Level 8
Joined
Nov 9, 2008
Messages
502
You could change the custom value of the correct units that receive the buff, then check the value when you are removing buffs.
 
Level 8
Joined
Nov 9, 2008
Messages
502
That's true. Still that has issues with MUI. There's always the option of making the group a local variable but only 1 local per trigger when using GUI. It's up to the maker.
 
Status
Not open for further replies.
Top