• 🏆 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!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Buff System V 1.10

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
This is a buff system, which uses items and triggers togheter with spells in order to make buffs. This spell pack is mainly to show you some of the spells you can make using this way to apply buffs. This "spell pack" contains 5 spells:

  • Mass Bloodlust
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Mass Bloodlust
    • Actions
      • Set CastPoint = (Target point of ability being cast)
      • Unit Group - Pick every unit in (Units within 300.00 of CastPoint matching (((Matching unit) belongs to an ally of (Owner of (Triggering unit))) Equal to True)) and do (Actions)
        • Loop - Actions
          • Set BloodGroup = (Last created unit group)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Size of inventory for (Picked unit)) Greater than or equal to 1
            • Then - Actions
              • Hero - Create Bloodlust[(Level of Mass Bloodlust for (Triggering unit))] and give it to (Picked unit)
            • Else - Actions
              • Unit - Add Buff Inventory to (Picked unit)
              • Hero - Create Bloodlust[(Level of Mass Bloodlust for (Triggering unit))] and give it to (Picked unit)
              • Unit - Remove Buff Inventory from (Picked unit)
      • Custom script: call DestroyGroup ( udg_BloodGroup )
      • Custom script: call RemoveLocation ( udg_CastPoint )
  • Mass Slow
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Mass Slow
    • Actions
      • Set CastPoint = (Target point of ability being cast)
      • Unit Group - Pick every unit in (Units within 300.00 of CastPoint matching (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True)) and do (Actions)
        • Loop - Actions
          • Set SlowGroup = (Last created unit group)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Size of inventory for (Picked unit)) Greater than or equal to 1
            • Then - Actions
              • Hero - Create Slow[(Level of Mass Slow for (Triggering unit))] and give it to (Picked unit)
            • Else - Actions
              • Unit - Add Buff Inventory to (Picked unit)
              • Hero - Create Slow[(Level of Mass Slow for (Triggering unit))] and give it to (Picked unit)
              • Unit - Remove Buff Inventory from (Picked unit)
      • Custom script: call DestroyGroup ( udg_SlowGroup )
      • Custom script: call RemoveLocation ( udg_CastPoint )
  • Frost Nova
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Frost Nova
    • Actions
      • Set CastPoint = (Position of (Target unit of ability being cast))
      • Special Effect - Create a special effect at CastPoint using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Unit - Cause (Triggering unit) to damage circular area after 0.00 seconds of radius 150.00 at CastPoint, dealing ((Real((Level of Frost Nova for (Triggering unit)))) x 50.00) damage of attack type Chaos and damage type Universal
      • Unit Group - Pick every unit in (Units within 150.00 of CastPoint matching ((((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True) and ((((Matching unit) is A structure) Equal to False) and (((Matching unit) is alive) Equal to True)))) and do (Actions)
        • Loop - Actions
          • Set FrostGroup = (Last created unit group)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Size of inventory for (Picked unit)) Greater than or equal to 1
            • Then - Actions
              • Hero - Create Frost[(Level of Frost Nova for (Triggering unit))] and give it to (Picked unit)
            • Else - Actions
              • Unit - Add Buff Inventory to (Picked unit)
              • Hero - Create Frost[(Level of Frost Nova for (Triggering unit))] and give it to (Picked unit)
              • Unit - Remove Buff Inventory from (Picked unit)
      • Custom script: call DestroyGroup ( udg_FrostGroup )
      • Custom script: call RemoveLocation ( udg_CastPoint )
  • Deep Freeze
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Deep Freeze
      • ((Target unit of ability being cast) has buff Slowed) Equal to True
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Deep Freeze for (Triggering unit)) Equal to 1
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Size of inventory for (Target unit of ability being cast)) Greater than or equal to 1
            • Then - Actions
              • Hero - Create Freeze[(Level of Deep Freeze for (Triggering unit))] and give it to (Target unit of ability being cast)
            • Else - Actions
              • Unit - Add Buff Inventory to (Target unit of ability being cast)
              • Hero - Create Freeze[(Level of Deep Freeze for (Triggering unit))] and give it to (Target unit of ability being cast)
              • Unit - Remove Buff Inventory from (Target unit of ability being cast)
        • Else - Actions
  • Fire Strike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fire Strike
    • Actions
      • Set CastPoint = (Position of (Target unit of ability being cast))
      • Special Effect - Create a special effect at CastPoint using Abilities\Spells\Other\Doom\DoomDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing ((Real((Level of Fire Strike for (Triggering unit)))) x 100.00) damage of attack type Chaos and damage type Universal
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Size of inventory for (Target unit of ability being cast)) Greater than or equal to 1
        • Then - Actions
          • Hero - Create Stun[(Level of Fire Strike for (Triggering unit))] and give it to (Target unit of ability being cast)
        • Else - Actions
          • Unit - Add Buff Inventory to (Target unit of ability being cast)
          • Hero - Create Stun[(Level of Fire Strike for (Triggering unit))] and give it to (Target unit of ability being cast)
          • Unit - Remove Buff Inventory from (Target unit of ability being cast)
      • Custom script: call RemoveLocation ( udg_CastPoint )
[HIDDEN="Changelog]
V 1.00 - Upload
V 1.10 - Shortened down triggers by removing hero level if/then/else specified actions[/HIDDEN]
I hope this system will help many people in creating buff spells.
Please comment and rate!

Keywords:
Buff, Fire, System, Buff System, Laserdude, Epic, Mega, Mass, Bloodlust, Slow, Mass Bloodlust, Mass Slow, Frost Nova, Frost, Nova, Strike, Fire Strike
Contents

Just another Warcraft III map (Map)

Reviews
12th Dec 2015 IcemanBo: Too long time as NeedsFix. Rejected. 17:06, 4th Mar 2011 Bribe:

Moderator

M

Moderator

12th Dec 2015
IcemanBo: Too long time as NeedsFix. Rejected.

17:06, 4th Mar 2011
Bribe:
 
Level 37
Joined
Mar 6, 2006
Messages
9,240
You should at least put the IF/THEN/ELSES inside each other.


  • Fire Strike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fire Strike
    • Actions
      • Set CastPoint = (Position of (Target unit of ability being cast))
      • Special Effect - Create a special effect at CastPoint using Abilities\Spells\Other\Doom\DoomDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Fire Strike for (Triggering unit)) Equal to 1
        • Then - Actions
          • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing 100.00 damage of attack type Chaos and damage type Universal
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Size of inventory for (Target unit of ability being cast)) Greater than or equal to 1
            • Then - Actions
              • Hero - Create Stun (Level 1) and give it to (Target unit of ability being cast)
            • Else - Actions
              • Unit - Add Buff Inventory to (Target unit of ability being cast)
              • Hero - Create Stun (Level 1) and give it to (Target unit of ability being cast)
              • Unit - Remove Buff Inventory from (Target unit of ability being cast)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Level of Fire Strike for (Triggering unit)) Equal to 2
            • Then - Actions
              • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing 200.00 damage of attack type Chaos and damage type Universal
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Size of inventory for (Target unit of ability being cast)) Greater than or equal to 1
                • Then - Actions
                  • Hero - Create Stun (Level 2) and give it to (Target unit of ability being cast)
                • Else - Actions
                  • Unit - Add Buff Inventory to (Target unit of ability being cast)
                  • Hero - Create Stun (Level 2) and give it to (Target unit of ability being cast)
                  • Unit - Remove Buff Inventory from (Target unit of ability being cast)
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Level of Fire Strike for (Triggering unit)) Equal to 3
                • Then - Actions
                  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing 300.00 damage of attack type Chaos and damage type Universal
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Size of inventory for (Target unit of ability being cast)) Greater than or equal to 1
                    • Then - Actions
                      • Hero - Create Stun (Level 3) and give it to (Target unit of ability being cast)
                    • Else - Actions
                      • Unit - Add Buff Inventory to (Target unit of ability being cast)
                      • Hero - Create Stun (Level 3) and give it to (Target unit of ability being cast)
                      • Unit - Remove Buff Inventory from (Target unit of ability being cast)
                • Else - Actions
      • Custom script: call RemoveLocation ( udg_CastPoint )


You could use an initialization trigger to set the items to an array, then you'd only need one IF/THEN/ELSE. And use an equation for the damage.
 
Level 8
Joined
Jun 30, 2010
Messages
259
So ... basic this gives an item or what? Is there any system code at all or is it just object editor work? Anyway it will be fun to have it on units which DON'T have an inventory.

It adds an inventory to units which don't have one. I am not sure that this will work on units with an inventory that does not enable item using, such as race inventorys, thought.

It works on all other units fine, thought.
 
Level 8
Joined
Jun 30, 2010
Messages
259
Ah I see but how does the Buff end? As now you are creating lots of items.

You have not tried the spell, have you? The "system" is not based on triggers. The object editor is an essential part in this system, since all the buffs, abilitys and items are made in the object editor. The items are powerups with certain abilitys which have buffs which ressemble certain buffs, such as the cripple spell in order to slow a target.
Therefore, the time the buffs last is on the whole set in the object editor inside the spells. Some spells, however, seem to last forever, since I have tried them and excluded them from this spell pack.

This is also a good time to say to everyone that wishes to use this system and make your own spells and buffs with it; Try out each spell you want to use. If you want a stunning buff, try the storm bolt spell, if that does not work, try some other spell with the same effect! By doing it this way, you will be making spells with this system in no time!
 
Level 8
Joined
Jun 30, 2010
Messages
259
Lol! Deep Freeze does nothing! I've created Deep Freeze from WoW in my map without any triggs. or jass...

What do you mean? Read the spell description, please! It REQUIRES the TARGETED UNIT to have the FROZEN BUFF from the FROST NOVA spell. Try using Frost Nova on a unit and then immediately use deep freeze on any of the affected units before the buff dissappears in order for the spell to work! This is not a bug! I made it this way to be rather like the WoW version.
 
Level 8
Joined
Jun 30, 2010
Messages
259
hmmm... since this adds inventory to units without one, I say that this is not really that good coz it can ruin gameplay...

The inventory is removed instantly. It is not permanent. It simply gives a unit an inventory and gives it the item and then removes the inventory instantly. That makes the unit never really have any inventory.
The only thing this system ruins is in the score at the items obtained, if someone cares.
 
anyway, I cannot call this a system... because it is too simple and you need to copy-paste it for every buff, while systems are supposed to be a set of triggers/functions which automates something, and are used by just a set of function calls by the user...

This is just an example on how to add buffs to a unit... not a system... (users doesn't even need to download this map, if they look at one of the triggers, they can already make it themselves...)
 
Level 8
Joined
Jun 30, 2010
Messages
259
anyway, I cannot call this a system... because it is too simple and you need to copy-paste it for every buff, while systems are supposed to be a set of triggers/functions which automates something, and are used by just a set of function calls by the user...

This is just an example on how to add buffs to a unit... not a system... (users doesn't even need to download this map, if they look at one of the triggers, they can already make it themselves...)

I am aware of this.
As you can see in the description, I am calling it a spellpack, and it is uploaded as a spellpacl. The whole idea of this is to be an example of how to make buffs. Kind of like a tutorial map.
This is also in the description: "I hope this helps and shows people how to create buff spells."
Therefore, you are correct, but I have never said the difference.
 

sPy

sPy

Level 21
Joined
Apr 10, 2009
Messages
268
Mass bloodlust and mass slow works perfectly, I like it. But:
Fire Strike - You could just use a storm bolt without a projectile to make
Frost nova - Just use Lich's frost nova

I know you wanted to show example of adding buff, it is great, I never thought of it. But fire strike and frost nova isn't necessary, mass slow and bloodlust explained everything.
 
Spellpack? hmmm... quite but not much... anyway, trigger wise its fine but its almost 85% or more OE and just about 15% TE so I still cannot say that's its actually approvable as a spellpack, etc. (at least for me)...

I would suggest that you just write it down as a tutorial in the tuts section and maybe add other possible methods of placing buffs...

^_^
 
Level 8
Joined
Jun 30, 2010
Messages
259
Mass bloodlust and mass slow works perfectly, I like it. But:
Fire Strike - You could just use a storm bolt without a projectile to make
Frost nova - Just use Lich's frost nova

I know you wanted to show example of adding buff, it is great, I never thought of it. But fire strike and frost nova isn't necessary, mass slow and bloodlust explained everything.

The Frost Nova exists and are exactly like the original to show that you can make similar spells using this system.
And using Storm Bolt to make the Flame Strike would not need my system, and therefore it would not be neccessary to have it in this spellpack.

Adiktuz:
I know I should make it a tutorial, but that would be harder to find and would take alot of space. People simply would not read it, unless they are VERY determined.
Also, how would I use more TE in this? I have tried to exploit it as much as possible. OE is a big part of it, that is true.
 
yeah, its hard to put more TE into it, and the lack of TE makes it not that fit to be a spell resource...

its still better as a tut, especially for newbies (which I guess are really the target of this resource), though I agree that less and less people nowadays read something on the tutorials section... noobs even post of problems which can already be sloved by going to the tutorials section, just because they were lazy to browse or search...

anyway, this can be harder to find on this section than if it was on the tut sections, because it will get overrun by newly uploaded spells...

-and the search button is there for that reason though newbies also don't use it much...
 
Level 8
Joined
Jun 30, 2010
Messages
259
yeah, its hard to put more TE into it, and the lack of TE makes it not that fit to be a spell resource...

its still better as a tut, especially for newbies (which I guess are really the target of this resource), though I agree that less and less people nowadays read something on the tutorials section... noobs even post of problems which can already be sloved by going to the tutorials section, just because they were lazy to browse or search...

anyway, this can be harder to find on this section than if it was on the tut sections, because it will get overrun by newly uploaded spells...

-and the search button is there for that reason though newbies also don't use it much...

It seems as if you have 2 different ways that you are seeing this, on one hand you want it a tutorial, and on the other you seem to want it to remain, so what I want to ask you is:
What do you suggest?
 
Top