• 🏆 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!

Aggron Stonebreaker the Ogre Magi Spells v1.0

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
  • Like
Reactions: deepstrasz
This spells created by me, they're similar to DotA hero {Aggron}.
The spells are GUI and MUI.

Please give me credits if you used it.
BY Storm_hih



Triggers:

1.Multi Cast Learn

  • Multi Cast Learn
    • Events
      • Unit - A unit Learns a skill
    • Conditions
      • (Learned Hero Skill) Equal to Multi Cast
      • (Level of Multi Cast for (Triggering unit)) Equal to 1
    • Actions
      • Unit - Add Unrefined Fire Blast to (Triggering unit)


2.Multi Cast Chance
2.Multi Cast Trigger

  • Multi Cast Trigger
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Level of Multi Cast for (Triggering unit)) Greater than 0
      • Or - Any (Conditions) are true
        • Conditions
          • (Ability being cast) Equal to Unrefined Fire Blast
          • (Ability being cast) Equal to Fire Blast
          • (Ability being cast) Equal to Fire Blast 1
          • (Ability being cast) Equal to Fire Blast 2
          • (Ability being cast) Equal to Fire Blast 3
          • (Ability being cast) Equal to Bloodlust
          • (Ability being cast) Equal to Bloodlust 1
          • (Ability being cast) Equal to Bloodlust 2
          • (Ability being cast) Equal to Bloodlust 3
    • Actions
      • Set MultiCastChance = (Random integer number between 1 and 100)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Multi Cast for (Triggering unit)) Greater than 1
        • Then - Actions
          • Set MultiCastChance2 = (Random integer number between 1 and 100)
        • Else - Actions
          • Set MultiCastChance2 = 100
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Level of Multi Cast for (Triggering unit)) Equal to 3
        • Then - Actions
          • Set MultiCastChance3 = (Random integer number between 1 and 100)
        • Else - Actions
          • Set MultiCastChance3 = 100
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • MultiCastChance3 Less than or equal to 12
        • Then - Actions
          • Set MultiCastCount = (MultiCastCount + 1)
          • Set MultiCastSpellCasted[MultiCastCount] = (Ability being cast)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Or - Any (Conditions) are true
                • Conditions
                  • (Ability being cast) Equal to Bloodlust
                  • (Ability being cast) Equal to Bloodlust 1
                  • (Ability being cast) Equal to Bloodlust 2
                  • (Ability being cast) Equal to Bloodlust 3
            • Then - Actions
              • Set MultiCastEffectType[MultiCastCount] = 1
            • Else - Actions
              • Set MultiCastEffectType[MultiCastCount] = 2
          • Set MultiCastTarget[MultiCastLoop] = (Target unit of ability being cast)
          • Set MultiCastNumber[MultiCastCount] = 3
          • Set MultiCastCaster[MultiCastCount] = (Triggering unit)
          • Floating Text - Create floating text that reads 4xMULTICAST! above (Triggering unit) with Z offset 10.00, using font size 15.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
          • Set MultiCastText = (Last created floating text)
          • Floating Text - Set the velocity of MultiCastText to 25.00 towards 90.00 degrees
          • Floating Text - Change MultiCastText: Disable permanence
          • Floating Text - Change the fading age of MultiCastText to 3.00 seconds
          • Floating Text - Change the lifespan of MultiCastText to 5.00 seconds
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • MultiCastChance2 Less than or equal to (10 + (5 x (Level of Ignite for (Triggering unit))))
            • Then - Actions
              • Set MultiCastCount = (MultiCastCount + 1)
              • Set MultiCastSpellCasted[MultiCastCount] = (Ability being cast)
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • Or - Any (Conditions) are true
                    • Conditions
                      • (Ability being cast) Equal to Bloodlust
                      • (Ability being cast) Equal to Bloodlust 1
                      • (Ability being cast) Equal to Bloodlust 2
                      • (Ability being cast) Equal to Bloodlust 3
                • Then - Actions
                  • Set MultiCastEffectType[MultiCastCount] = 1
                • Else - Actions
                  • Set MultiCastEffectType[MultiCastCount] = 2
              • Set MultiCastTarget[MultiCastLoop] = (Target unit of ability being cast)
              • Set MultiCastNumber[MultiCastCount] = 2
              • Set MultiCastCaster[MultiCastCount] = (Triggering unit)
              • Floating Text - Create floating text that reads 3xMULTICAST! above (Triggering unit) with Z offset 10.00, using font size 15.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
              • Set MultiCastText = (Last created floating text)
              • Floating Text - Set the velocity of MultiCastText to 25.00 towards 90.00 degrees
              • Floating Text - Change MultiCastText: Disable permanence
              • Floating Text - Change the fading age of MultiCastText to 3.00 seconds
              • Floating Text - Change the lifespan of MultiCastText to 5.00 seconds
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • MultiCastChance Less than or equal to (10 + (15 x (Level of Ignite for (Triggering unit))))
                  • MultiCastChance Less than 51
                • Then - Actions
                  • Set MultiCastCount = (MultiCastCount + 1)
                  • Set MultiCastSpellCasted[MultiCastCount] = (Ability being cast)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • Or - Any (Conditions) are true
                        • Conditions
                          • (Ability being cast) Equal to Bloodlust
                          • (Ability being cast) Equal to Bloodlust 1
                          • (Ability being cast) Equal to Bloodlust 2
                          • (Ability being cast) Equal to Bloodlust 3
                    • Then - Actions
                      • Set MultiCastEffectType[MultiCastCount] = 1
                    • Else - Actions
                      • Set MultiCastEffectType[MultiCastCount] = 2
                  • Set MultiCastTarget[MultiCastLoop] = (Target unit of ability being cast)
                  • Set MultiCastNumber[MultiCastCount] = 1
                  • Set MultiCastCaster[MultiCastCount] = (Triggering unit)
                  • Floating Text - Create floating text that reads 2xMULTICAST! above (Triggering unit) with Z offset 10.00, using font size 15.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                  • Set MultiCastText = (Last created floating text)
                  • Floating Text - Set the velocity of MultiCastText to 25.00 towards 90.00 degrees
                  • Floating Text - Change MultiCastText: Disable permanence
                  • Floating Text - Change the fading age of MultiCastText to 3.00 seconds
                  • Floating Text - Change the lifespan of MultiCastText to 5.00 seconds
                • Else - Actions


3.Multi Cast Effects

  • Multi Cast Effect
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • For each (Integer MultiCastLoop) from 1 to MultiCastCount, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • MultiCastStop[MultiCastLoop] Equal to 0
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • MultiCastCountNumber[MultiCastLoop] Equal to MultiCastNumber[MultiCastLoop]
                • Then - Actions
                  • Set MultiCastStop[MultiCastLoop] = 1
                  • Set MultiCastTarget[MultiCastLoop] = No unit
                  • Set MultiCastCaster[MultiCastLoop] = No unit
                  • Unit Group - Remove all units from MultiCastBloodGroup[MultiCastLoop]
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • MultiCastEffectType[MultiCastLoop] Equal to 1
                • Then - Actions
                  • Set MultiCastCountNumber[MultiCastLoop] = (MultiCastCountNumber[MultiCastLoop] + 1)
                  • Set MultiCastPoint[MultiCastLoop] = (Position of MultiCastCaster[MultiCastLoop])
                  • Set MultiCastCheckGroup = (Units within 575.00 of MultiCastPoint[MultiCastLoop] matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) belongs to an enemy of (Owner of MultiCastCaster[MultiCastLoop])) Not equal to True) and (((Matching unit) Not equal to
                  • Set MultiCastBloodTarget[MultiCastLoop] = (Random unit from MultiCastCheckGroup)
                  • Unit Group - Add MultiCastBloodTarget[MultiCastLoop] to MultiCastBloodGroup[MultiCastLoop]
                  • Unit - Create 1 MultiCast Dummy for (Owner of MultiCastCaster[MultiCastLoop]) at MultiCastPoint[MultiCastLoop] facing 0.00 degrees
                  • Set MultiCastDummy[MultiCastLoop] = (Last created unit)
                  • Unit - Add Bloodlust to MultiCastDummy[MultiCastLoop]
                  • Unit - Set level of Bloodlust for MultiCastDummy[MultiCastLoop] to (Level of MultiCastSpellCasted[MultiCastLoop] for MultiCastCaster[MultiCastLoop])
                  • Unit - Add a 1.00 second Generic expiration timer to MultiCastDummy[MultiCastLoop]
                  • Unit - Order MultiCastDummy[MultiCastLoop] to Orc Shaman - Bloodlust MultiCastBloodTarget[MultiCastLoop]
                  • Custom script: call DestroyGroup (udg_MultiCastCheckGroup)
                  • Custom script: call RemoveLocation (udg_MultiCastPoint[udg_MultiCastLoop])
                • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • MultiCastEffectType[MultiCastLoop] Equal to 2
                • Then - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • MultiCastCountNumber[MultiCastLoop] Less than MultiCastNumber[MultiCastLoop]
                    • Then - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • MultiCastCounter[MultiCastLoop] Less than 0.30
                        • Then - Actions
                          • Set MultiCastCounter[MultiCastLoop] = (MultiCastCounter[MultiCastLoop] + 0.03)
                        • Else - Actions
                          • Set MultiCastCounter[MultiCastLoop] = 0.00
                          • Set MultiCastCountNumber[MultiCastLoop] = (MultiCastCountNumber[MultiCastLoop] + 1)
                          • Set MultiCastPoint[MultiCastLoop] = (Position of MultiCastCaster[MultiCastLoop])
                          • Unit - Create 1 MultiCast Dummy for (Owner of MultiCastCaster[MultiCastLoop]) at MultiCastPoint[MultiCastLoop] facing 0.00 degrees
                          • Set MultiCastDummy[MultiCastLoop] = (Last created unit)
                          • Unit - Add Fire Blast to MultiCastDummy[MultiCastLoop]
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • MultiCastSpellCasted[MultiCastLoop] Equal to Unrefined Fire Blast
                            • Then - Actions
                              • Unit - Set level of Fire Blast for MultiCastDummy[MultiCastLoop] to 4
                            • Else - Actions
                              • Unit - Set level of Fire Blast for MultiCastDummy[MultiCastLoop] to (Level of MultiCastSpellCasted[MultiCastLoop] for MultiCastCaster[MultiCastLoop])
                          • Unit - Add a 1.00 second Generic expiration timer to MultiCastDummy[MultiCastLoop]
                          • Unit - Order MultiCastDummy[MultiCastLoop] to Human Mountain King - Storm Bolt MultiCastTarget[MultiCastLoop]
                          • Custom script: call RemoveLocation (udg_MultiCastPoint[udg_MultiCastLoop])
                    • Else - Actions
                • Else - Actions
            • Else - Actions


4.Dummy Clear

  • Dummy Clear
    • Events
      • Unit - A unit Dies
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to MultiCast Dummy
    • Actions
      • Unit - Remove (Triggering unit) from the game
Contents

Ogre Magi spells By Storm_hih (Map)

Reviews
12th Dec 2015 IcemanBo: Too long as NeedsFix. Rejected. 17:00, 19th Jul 2012 Magtheridon96: You should make this spellpack take into account the fact that some users might use different spells. Try making them configurable. You should also...

Moderator

M

Moderator

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

17:00, 19th Jul 2012
Magtheridon96:

You should make this spellpack take into account the fact that some users might use different spells.
Try making them configurable.
You should also make the multicast multipliers configurable so users
can add a Multicast x5 if they choose to.

Also, a tip: When you call something like (Triggering unit) more than once in a trigger,
it's always going to be more efficient to store that thing in a variable
and then reuse the variable instead of calling it again and again.
You can do this for everything. (Last created unit, Level of ability for unit X, Triggering player, etc...)

What you should aim for is making the Multicasting system configurable
to the extent that I can associate it with totally new spells.

Since you often can't just recast an ability on a target (Bloodlust for
example), you should also give players the option to register different
abilities for each multicast and use a boolean to determine if the ability
should be cast multiple times or if you should use a different ability.
 
Well without documentation it doesn't really make any real sense from what I see, from what I can tell I suppose it is. Also you're still dlong all your damage with object data, so it's never going to really be that impressive, Since all the damage is controlled in there.

An another note - it's all very inefficient, and very spell-specific since you have to set it up for every single spell as opposed to having a chance of occuring regardless of spell or whatever, but then again it's hard for the rest of us to actually be able to tell what you're trying to achieve with this.
 
I thought you're gonna fix the others first?

and yeah, this is too specific/narrow of a spell for a public resource...

I know you're trying to recreate DotA's ogre magi's ultimate skill, but that won't do... you need to adjust it to be a viable public resource...

And oh, there is this Rewind spell which does this multicast thingy, with a much better process... and it supports any spell too...

and if you're gonna do all DotA's heroes a pack, please just upload it somewhere else... don't populate the spell section with these DotA based packs...
 
It's not that you cannot, but please only upload a few, especially those that aren't very specific (just like this one, the structure of this is TOO SPECIFIC to the Ogre Magi)... also, Radamantus' rewind spell does multicast far more better...

And if this was for a single person only, just use the pastebin and send him a link...

lastly, don't triple post...
 
@Iconer - you should follow the rules of the community that you belong... in this case, the rules of the Hive... but well I guess its not much use to you as I believe you've already proven from all the other threads that you're someone who only cares about yourself...

@storm - one last suggestion, don't ever try to upload an Omnislash... XD...
 
Top