• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

AOE ability that targets the whole map

Status
Not open for further replies.
Level 3
Joined
Apr 17, 2008
Messages
44
I want to make an ability that targets the entire map when it is used but when I try to use it with AOE set to 99999 the game fails
 
Level 4
Joined
Apr 20, 2009
Messages
106
What I would do is change the base spell to something like Thunderclap, make it so it doesn't actually do anything by changing all the stats that matter, and then trigger it...
  • Events
    • Unit - A unit Starts the effect of an ability
  • Conditions
    • (Ability being cast) Equal to <Whatever>
  • Actions
    • Set Tempgroup = (Units in (Playable map area))
    • For each (Integer integer) from 0 to 10, do (Actions)
      • Loop - Actions
        • Set Tempunit = (Random unit from Tempgroup)
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • ((Owner of Tempunit) is an enemy of (Owner of (Triggering unit))) Equal to True
          • Then - Actions
            • Unit - Cause (Triggering unit) to damage Tempunit, dealing 150.00 damage of attack type Chaos and damage type Normal
          • Else - Actions
        • Unit Group - Remove Tempunit from Tempgroup
    • Custom script: call DestroyGroup(udg_Tempgroup)
That's pretty simpe. No Special Effects, just a flat damage done to all enemies. You can take it as far as you want to go, making it based on the level of the spell or whatever. It uses three variables, just because I like to keep things orderly, but you could cut it down to one... I think. Maybe two. I'm not sure how the Integer A and Integer B works with loops, so I specified my own integer.
 
Level 11
Joined
Dec 31, 2007
Messages
780
integer a and b work as normal integers... but if you use them several times you will start to notice problems, because the get overwritten by themselves (its like using the same variable a lot of times at the same time :p)
 
Level 4
Joined
Apr 20, 2009
Messages
106
They work as normal integers? How do you specify them is what I am confused about, though. Meh, this isn't the place to ask about it, as I don't want to hijack his thread. Just easier for me to use one integer variable and set it to what I need.
 
Level 3
Joined
Apr 17, 2008
Messages
44
can I make this trigger summon units around the temppoint

The goal of this spell is to basically rain infernals down on everything in the map. Im thinking right now I will just create a whole bunch of random regions and have target regionXXX with XXXX trigger

It's a doomclock system, time runs out unit casts _______ infernals go everywhere.
 
Level 12
Joined
Mar 26, 2005
Messages
790
what do you mean by "everything"? Every unit? every building, every destructible?

You can just pick every unit in playable area, and then lets say, create dummy there, and then pick all dummies and make them cast inferno on their position, it might work. But would be very laggy
 
Level 11
Joined
Jun 28, 2008
Messages
2,365
Um, cant he just use Unit Group - pick every unit in entire playable aria and do multiple actions? Sounds way simpler to me.
Aldo that could be me. Variables always make my head spin.
 
Level 11
Joined
Dec 31, 2007
Messages
780
yes, i would use a unit group and create a dummy in the position of the picked unit and order it to cast summon infernal at position of picked unit.

yes, you can make it summon at random points around the unit

i'll make you the trigger gimme a moment

EDIT: here it is

  • Untitled Trigger 001
    • Actions
      • Set Unit_Group = (Units in (Playable map area))
      • Unit Group - Pick every unit in Unit_Group and do (Actions)
        • Loop - Actions
          • Set Point_Var = (Position of (Picked unit))
          • Unit - Create 1 (Infernals caster) for (X Player) at Point_Var facing Default building facing degrees
          • Set InfernoCaster = (Last created unit)
          • Unit - Add a 1.00 second Generic expiration timer to InfernoCaster
          • Unit - Order InfernoCaster to Undead Dreadlord - Inferno Point_Var
          • For each (Integer A) from 1 to 4, do (Actions)
            • Loop - Actions
              • Set Point_Var2 = (Point_Var offset by 100.00 towards (Random angle) degrees)
              • Unit - Order InfernoCaster to Undead Dreadlord - Inferno Point_Var2
              • Custom script: call RemoveLocation(udg_Point_Var2)
          • Custom script: call RemoveLocation(udg_Point_Var)
      • Custom script: call DestroyGroup(udg_Unit_Group)
you gotta check if this works fine with a casting time of 0... if its not then try creating one caster perinfernal summoned and it will work fine
 
Status
Not open for further replies.
Top