Large AoE Entangling Roots/Banish/Damage

I_RULE_YOU

New Member
Reaction score
34
I'm trying to make an ability called Dark Star, I want it to be a large AoE type spell like Death and Decay or Infernal. It's supposed to cast Entangling Roots on all enemy units in the area of effect for 3 seconds, and then banish them, for 5 seconds. Deals 450/900/1350 damage 4 seconds after the spell is originally cast.

I want this to be channeling until the damage is dealt, if that's possible. Explain in detail if you can.
 

Samael88

Evil always finds a way
Reaction score
181
You can make a dummy spell based on death and decay.
Then trigger it:
Code:
Event: Unit finishes casting spell
Condition: spell being cast equal to your dummy spell 
Actions:
save the target point of ability being cast into a location variable
Order triggering unit to stop.
Set all the units in the required area to a unitgroup
Use dummys to cast the entangling roots on them
Remove the location leak
Remove the group leak

Variables needed:
Point variable TempPoint
GroupVariable TempGroup

Don't forget to add a expiring timer to the dummys after creating them:thup:

Edit: Oh, I missed the channeling part. Atleast this is to get you started:) It will be far more complicated to make it a channeling spell. If that is even possible to make one of those mui, but it does not sound like that is nessecary.
 

Samael88

Evil always finds a way
Reaction score
181
You will need to create one dummy for each unit and have each dummy cast the spell on a separate unit. And you can make the banish and the entangling in the same dummy, if that is what you are asking for.

You could either do A(easy way):
Have the dummys stick aroung so that they can cast the banish in the same batch. Let's say you got a 10 sec time for the entangling then you will need to have about a 9-10 casting time to the banish:thup:

Or B(If it is even possible):
Have a trigger that fires when a unit stops the effect of you entangling roots spell and then have a dummy cast the banish on the triggering unit. It is worth a try:D
 

I_RULE_YOU

New Member
Reaction score
34
Well, it's possible that there will be as many as 100 units being effected by this ability, are you telling me I should create 100 dummys? Wouldn't that cause heavy lag?
 

Samael88

Evil always finds a way
Reaction score
181
Well, it's possible that there will be as many as 100 units being effected by this ability, are you telling me I should create 100 dummys? Wouldn't that cause heavy lag?

having a 100 units can cause lag on some computers. Are you aware of the 300 unit lag limit? That is asuming the units have unit-models, with the hurl bolder model the game can handle up to 500 and it is not the computers fault, I have tested it on dual cores aswell, and even a quadcore with 4gig ram and 1024mb graphics.

Also I don't think that the dummy units will lag that much beacuse they don't use any model at all, but the entanglingroots can cause heavy lag and with 100 it will atleast cause a lagspike upon cast:thdown:
 

I_RULE_YOU

New Member
Reaction score
34
Ugh! Would the mass banish cause lag as well? If not, I'm just going to have an 8 second Banish that goes into effect at the spells casting. Any chance you could right out exactly what this trigger would look like? I don't trust that I could make it without any errors.
 

Charapanga

New Member
Reaction score
46
So you want...
Mass entangling roots
wait 3 seconds
Mass banish
wait 5 seconds
Mass nuke
or
Mass entangling roots
wait 3 seconds
mass banish
wait 1 second
mass nuke
wait 4 seconds?
 

I_RULE_YOU

New Member
Reaction score
34
Well, mass roots will lag alot apparently, so I want:

Mass Banish 8 for 8 seconds upon casting, and 4 seconds after casting, mass nuke.
 

Charapanga

New Member
Reaction score
46
JASS:
Untitled Trigger 001
    Events
        Unit - A unit Begins channeling an ability
    Conditions
        (Ability being cast) Equal to Death And Decay
    Actions
        Unit - Cause (Triggering unit) to damage circular area after 4.00 seconds of radius 500.00 at (Position of (Triggering unit)), dealing 100.00 damage of attack type Spells and damage type Normal
        Unit Group - Pick every unit in (Units within 500.00 of (Position of (Triggering unit))) and do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy Unit for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Add Entangling Roots to (Triggering unit)
                Unit - Order (Last restored unit) to Night Elf Keeper Of The Grove - Entangling Roots (Picked unit)
                Wait 3.00 seconds
                Unit - Remove Entangling Roots buff from (Picked unit)
        Unit Group - Pick every unit in (Units within 500.00 of (Position of (Triggering unit))) and do (Actions)
            Loop - Actions
                Unit - Create 1 Dummy Unit for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Add Banish to (Triggering unit)
                Unit - Order (Last created unit) to Human Blood Mage - Banish (Picked unit)
                Wait 5.00 seconds
                Unit - Remove Banish buff from (Picked unit)


It will lag if you have like 100 units in a unit group, so, reduce unit count..

Add some variables to the trigger
Variables for
Triggering unit
Picked unit
Position of Triggering unit
Position of picked unit
Unit group - units within XXX of Position of triggering unit

And you're done
 

I_RULE_YOU

New Member
Reaction score
34
Ok well, I changed it a bit, heres the finished result:

Code:
Dark Star
    Events
        Unit - A unit Begins casting an ability
    Conditions
        (Ability being cast) Equal to Dark Star 
    Actions
        Set DarkUnit = (Triggering unit)
        Set DarkCaster = (Position of (Triggering unit))
        Special Effect - Create a special effect at DarkCaster using DarkStar.mdx
        Set DarkGroup = (Units within 800.00 of DarkCaster matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of DarkUnit)) Equal to True))))
        Unit Group - Pick every unit in DarkGroup and do (Actions)
            Loop - Actions
                Unit - Create 1 Dark Star Dummy for (Owner of DarkUnit) at DarkCaster facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Order (Last created unit) to Human Blood Mage - Banish (Picked unit)
                Wait 4.00 seconds
                Unit - Cause DarkUnit to damage (Picked unit), dealing (450.00 x (Real((Level of Dark Star  for DarkUnit)))) damage of attack type Spells and damage type Normal
                Wait 4.00 seconds
                Unit - Remove Banish buff from (Picked unit)

Any noticeable problems?
Any custom scrips needed? (If so, state what they should look like)

EDIT: Just tested it, it doesn't work, at all.
 

I_RULE_YOU

New Member
Reaction score
34
Damn! I never knew that. Hmmm.......... how could I fit those in there outside the loop?!??!?
 

LightChaosma

New Member
Reaction score
60
Code:
Dark Star
    Events
        Unit - A unit Begins casting an ability
    Conditions
        (Ability being cast) Equal to Dark Star 
    Actions
        Set DarkUnit = (Triggering unit)
        Set DarkCaster = (Position of (Triggering unit))
        Special Effect - Create a special effect at DarkCaster using DarkStar.mdx
[COLOR="Red"]Destroy last crted special effect[/COLOR]
        Set DarkGroup = (Units within 800.00 of DarkCaster matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of DarkUnit)) Equal to True))))
        Unit Group - Pick every unit in DarkGroup and do (Actions)
            Loop - Actions
                Unit - Create 1 Dark Star Dummy for (Owner of DarkUnit) at DarkCaster facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Order (Last created unit) to Human Blood Mage - Banish (Picked unit)
                Wait 4.00 seconds
                Unit - Cause DarkUnit to damage (Picked unit), dealing (450.00 x (Real((Level of Dark Star  for DarkUnit)))) damage of attack type Spells and damage type Normal
                Wait 4.00 seconds
                [COLOR="red"]Unit - Remove Banish buff from (Picked unit)              // use the duration of banish for this[/COLOR]

for the waits... does it need to be MUI?

i have dinner now, i'll add custom scripts when i get back
 

ThePlague

New Member
Reaction score
14
Code:
Dark Star
    Events
        Unit - A unit starts the effect of an ability //not begins casting
    Conditions
        (Ability being cast) Equal to Dark Star 
    Actions
        Set DarkUnit = (Triggering unit)
        Set DarkCaster = (Position of (Triggering unit))
        Special Effect - Create a special effect at DarkCaster using DarkStar.mdx
Destroy last created special effect
        Set DarkGroup = (Units within 800.00 of DarkCaster matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of DarkUnit)) Equal to True))))
        Unit Group - Pick every unit in DarkGroup and do (Actions)
            Loop - Actions
                Unit - Create 1 Dark Star Dummy for (Owner of DarkUnit) at DarkCaster facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Order (Last created unit) to Human Blood Mage - Banish (Picked unit)
                //loop stops here
         Wait 4.00 seconds
         custom script: call RemoveLocation udg_DarkCaster
        Unit Group - Pick every unit in DarkGroup and do (Actions)
            Loop - Actions
                Unit - Cause DarkUnit to damage (Picked unit), dealing (450.00 x (Real((Level of Dark Star  for DarkUnit)))) damage of attack type Spells and damage type Normal
//loop stop
custom script: call DestroyGroup udg_DarkGroup
try this
it should work
make sure ur dummies are able to cast banish in the 1 second they exist if nto increase that tiem or edit their casting time And casting animation time

oh and btw custom scripts are caps sensitive
 

Tastyfish

New Member
Reaction score
2
When I look at those triggers i can't stop to think, cant the waits be done in periodic events?
That way you have the "effects" of the spell in one trigger (periodic one) and the initialization in the other one.
 

I_RULE_YOU

New Member
Reaction score
34
Heres what I have now:

Code:
Dark Star
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Dark Star 
    Actions
        Set DarkUnit = (Triggering unit)
        Set DarkCaster = (Position of (Triggering unit))
        Special Effect - Create a special effect at DarkCaster using DarkStar.mdx
        Set DarkGroup = (Units within 800.00 of DarkCaster matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of DarkUnit)) Equal to True))))
        Unit Group - Pick every unit in DarkGroup and do (Actions)
            Loop - Actions
                Unit - Create 1 Dark Star Dummy for (Owner of DarkUnit) at DarkCaster facing Default building facing degrees
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
                Unit - Order (Last created unit) to Human Blood Mage - Banish (Picked unit)
                Wait 4.00 seconds
                Special Effect - Destroy (Last created special effect)
                Custom script:   call RemoveLocation (udg_DarkCaster)
                Unit Group - Pick every unit in DarkGroup and do (Actions)
                    Loop - Actions
                Unit - Cause DarkUnit to damage (Picked unit), dealing (450.00 x (Real((Level of Dark Star  for DarkUnit)))) damage of attack type Spells and damage type Normal
                Custom script:   call DestroyGroup (udg_DarkGroup)

Again, nothing happens. I moved the destruction of the special effect down because I want the special effect to last for four seconds. When you said "Loop ends here", I'm not sure what you meant, figured that the trigger automatically ends it at that point, so ignored those sections. Was I supposed to put something there?

When I look at those triggers i can't stop to think, cant the waits be done in periodic events?
That way you have the "effects" of the spell in one trigger (periodic one) and the initialization in the other one.

So you want me to initialize triggers at the wait points that do what?
 

LightChaosma

New Member
Reaction score
60
does this spell needs to be MUI? can it occur that it is cast 2 times at the same time by difrent units? if not its fairly easy. if it is you need to redo the entire trigger. (or find a spell in wich you can set damage interval and has a buff)
 

I_RULE_YOU

New Member
Reaction score
34
Well, its extremely extremely unlikely that someone will cast it at the same time, extremely, if they even random the same hero. Do you think it's that big of a problem? How would you fix it to work non MUI?
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top