• 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.

Spell Request

Status
Not open for further replies.
Level 13
Joined
Oct 25, 2009
Messages
995
Hey Hey,anyonecan make a spell for me?
Like that,
Descrip is.. it can be active like immolation.
Dark Burn
Create a circle of darkness at the caster and drain life of nearby units,cost caster life per second.
Level 1 - Cost 15 life per second and drain 10 life of nearby units.
Level 2 - Cost 30 life per second and drain 25 life of nearby units.
Level 3 - Cost 45 life per second and drain 40 life of nearby units.
Level 4 - Cost 60 life per second and drain 55 life of nearby units.
It like this(I only add the special effect for this picture as example,i self can change the special effect xD)
spella.jpg
 
Level 37
Joined
Mar 6, 2006
Messages
9,243
Use these triggers and then edit Immolation in object editor.


  • Untitled Trigger 003
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Immolation
    • Actions
      • Unit Group - Add (Triggering unit) to grp
      • Trigger - Turn on Untitled Trigger 002 Copy <gen>
  • Untitled Trigger 002 Copy
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in grp and do (Actions)
        • Loop - Actions
          • Set u1 = (Picked unit)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (u1 has buff Immolation) Equal to True
            • Then - Actions
              • Unit - Set life of u1 to ((Life of u1) - (15.00 x (Real((Level of Immolation for u1)))))
            • Else - Actions
              • Unit Group - Remove u1 from grp
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (grp is empty) Equal to True
                • Then - Actions
                  • Game - Display to Player Group - Player 1 (Red) the text: Off
                  • Trigger - Turn off (This trigger)
                • Else - Actions
 
Level 13
Joined
Oct 25, 2009
Messages
995
ohhhh,thanks.

EDIT: can + 1 trigger?like this at set life
  • Unit - Set life of u1 to ((Life of u1) + (10.00 + 15.00 x (Real((Level of Immolation for u1)))))
And,can i remove this?
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • (Dark_Group is empty) Equal to True
    • Then - Actions
      • Trigger - Turn off (This trigger)
    • Else - Actions
because when no enemy there it wont drain my hero life.
EDIT 2 : level 1-2 doesn't work only.When i active this skill in 1-2 level,i missing hp and go active,it will drain hit point for my hero but i full hit point it doesn't drain my hero hit point only drain nearby units hit points?
 
Last edited:
Level 37
Joined
Mar 6, 2006
Messages
9,243
EDIT: can + 1 trigger?like this at set life
  • Unit - Set life of u1 to ((Life of u1) + (10.00 + 15.00 x (Real((Level of Immolation for u1)))))

Yes, if you want to increase the caster's life.

And,can i remove this?
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • (Dark_Group is empty) Equal to True
    • Then - Actions
      • Trigger - Turn off (This trigger)
    • Else - Actions

Yes, but then the trigger runs even if no unit has Immolation active.

because when no enemy there it wont drain my hero life.

If you want it to not drain your health when no enemy is near, then use this:


  • Untitled Trigger 002 Copy
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in grp and do (Actions)
        • Loop - Actions
          • Set u1 = (Picked unit)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (u1 has buff Immolation) Equal to True
            • Then - Actions
              • Set p1 = (Position of u1)
              • Custom script: set bj_wantDestroyGroup = true
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Number of units in (Units within 200.00 of p1 matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of u1)) Equal to True)))) Equal to 0
                • Then - Actions
                • Else - Actions
                  • Unit - Set life of u1 to ((Life of u1) - (15.00 x (Real((Level of Immolation for u1)))))
              • Custom script: call RemoveLocation(udg_p1)
            • Else - Actions
              • Unit Group - Remove u1 from grp
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (grp is empty) Equal to True
                • Then - Actions
                  • Game - Display to Player Group - Player 1 (Red) the text: Off
                  • Trigger - Turn off (This trigger)
                • Else - Actions
 
Level 13
Joined
Oct 25, 2009
Messages
995
Yes, if you want to increase the caster's life.



Yes, but then the trigger runs even if no unit has Immolation active.



If you want it to not drain your health when no enemy is near, then use this:


  • Untitled Trigger 002 Copy
    • Events
      • Time - Every 1.00 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in grp and do (Actions)
        • Loop - Actions
          • Set u1 = (Picked unit)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (u1 has buff Immolation) Equal to True
            • Then - Actions
              • Set p1 = (Position of u1)
              • Custom script: set bj_wantDestroyGroup = true
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Number of units in (Units within 200.00 of p1 matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of u1)) Equal to True)))) Equal to 0
                • Then - Actions
                • Else - Actions
                  • Unit - Set life of u1 to ((Life of u1) - (15.00 x (Real((Level of Immolation for u1)))))
              • Custom script: call RemoveLocation(udg_p1)
            • Else - Actions
              • Unit Group - Remove u1 from grp
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (grp is empty) Equal to True
                • Then - Actions
                  • Game - Display to Player Group - Player 1 (Red) the text: Off
                  • Trigger - Turn off (This trigger)
                • Else - Actions

I means,when no enemy at there,it will drain my health also.can you do that? =.=
 
Level 13
Joined
Oct 25, 2009
Messages
995
Here is the trigger=.=
  • Dark Loop
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in Dark_Group and do (Actions)
        • Loop - Actions
          • Set Dark_U1 = (Picked unit)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Dark_U1 has buff Dark Burn) Equal to True
            • Then - Actions
              • For each (Integer A) from 1 to 8, do (Actions)
                • Loop - Actions
                  • Special Effect - Create a special effect at ((Position of Dark_U1) offset by 150.00 towards (60.00 x (Real((Integer A)))) degrees) using war3mapImported\AnimateDeadTarget.mdx
                  • Special Effect - Destroy (Last created special effect)
              • Unit - Set life of Dark_U1 to ((Life of Dark_U1) - (15.00 x (Real((Level of Dark Burn for Dark_U1)))))
              • Unit - Set life of Dark_U1 to ((Life of Dark_U1) + (10.00 + (15.00 x (Real((Level of Dark Burn for Dark_U1))))))
            • Else - Actions
              • Unit Group - Remove Dark_U1 from Dark_Group
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Dark_Group is empty) Equal to True
                • Then - Actions
                  • Trigger - Turn off (This trigger)
                • Else - Actions
 
Level 37
Joined
Mar 6, 2006
Messages
9,243
  • Unit - Set life of Dark_U1 to ((Life of Dark_U1) - (15.00 x (Real((Level of Dark Burn for Dark_U1)))))
  • Unit - Set life of Dark_U1 to ((Life of Dark_U1) + (10.00 + (15.00 x (Real((Level of Dark Burn for Dark_U1))))))
Dark_UI is the caster. First you decrease the life and then you increase it. Why? That increase life equation produces a value higher than the decrese equation. Thus the unit will never lose life. Unless it's life is less than the decrease.

Also, you leak.
 
Level 13
Joined
Oct 25, 2009
Messages
995
oh,where leak =.=
and,i wan make,
when the hero cast the spell(immolation)
and it will drain nearby unit health to caster health but caster will lost more health.
Level 1 - Cost 15 life per second and drain 10 life of nearby units.
Level 2 - Cost 30 life per second and drain 25 life of nearby units.
Level 3 - Cost 45 life per second and drain 40 life of nearby units.
Level 4 - Cost 60 life per second and drain 55 life of nearby units.
Like top that quote =.=
 
Status
Not open for further replies.
Top