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

Spell Pack For Beginner 1.0

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
I've made this spell pack for my brother to help him make his project. Now I want to share my pack for everyone who want to improve himself/herself.

I think this pack will be useful for beginner.

This pack is easy to learn and easy to understand. I hope everyone who downloaded my spell will improve his/her skill about create spells.

Feel free to edit my spell, I don't need credits but please remember my name in your heart.
Feel free to comment, If you've something in your mind about my pack please tell me.

Hope this will be useful for everyone.
I may not a professional but I hope this pack will become one of useful spell pack for everyone.

Thank you for reading my description and thank you for downloaded my spell.

Author : Pech Redflash

Updated : Removing all possible leaks.

Keywords:
Spell, Pack, Dreadlord, Pit, Lord, Undead, Human, Paladin, Beginner, Simple, Jaina, Admiral
Contents

Spell Pack for Beginner 1.0 by PRF (Map)

Reviews
11:14, 14th Jun 2014 BPower: Lacking configuration options, contains leaks, inappropriate way of indexing, tons of needless function calls ... rejected.

Moderator

M

Moderator

11:14, 14th Jun 2014
BPower:
Lacking configuration options, contains leaks, inappropriate way of indexing, tons of needless function calls ... rejected.
 
Please post triggers. Copy as text then paste here, but before you do that you type [trigger=] then paste here then if that's all to one trigger you type [/trigger] then continue and repeat onto your next triggers.

Quote my post to find the BB code or you type [/trigger] at the end then [trigger=/] without the / at the start.
 
Level 13
Joined
Jul 16, 2012
Messages
679
Tidal Rage
Trigger
  • Tidal Rage
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Tidal Rage
    • Actions
      • Set TidalRage_Caster = (Triggering unit)
      • Set TidalRage_Target = (Target unit of ability being cast)
      • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
      • Unit - Create 1 Dummy with Attachment for (Owner of TidalRage_Caster) at (Position of TidalRage_Target) facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Tidal Rage Dummy to (Last created unit)
      • Unit - Set level of Tidal Rage Dummy for (Last created unit) to (Level of Tidal Rage for TidalRage_Caster)
      • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt TidalRage_Target
      • -------- ===== ---------- Create Special at Target ---------- ===== --------
      • Special Effect - Create a special effect attached to the chest of TidalRage_Target using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ===== ---------- Create Special at Caster ---------- ===== --------
      • Special Effect - Create a special effect at (Position of TidalRage_Caster) using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ===== ---------- Move Caster to target location ---------- ===== --------
      • Unit - Move TidalRage_Caster instantly to ((Position of TidalRage_Target) offset by 100.00 towards (Random angle) degrees)
      • -------- ===== ---------- Create Special at Caster ---------- ===== --------
      • Special Effect - Create a special effect at (Position of TidalRage_Caster) using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ===== ---------- Order Caster to attack target ---------- ===== --------
      • Unit - Order TidalRage_Caster to Attack TidalRage_Target
      • Set TidalRage_Caster = No unit
      • Set TidalRage_Target = No unit
Maybe the Special Effect using point is leak :/
You move the dummy but you not remove the leak

Water Blast
Trigger
  • Water Blast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Water Blast
    • Actions
      • Special Effect - Create a special effect at (Position of (Triggering unit)) using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • For each (Integer A) from 1 to 12, do (Actions)
        • Loop - Actions
          • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing Default building facing degrees
          • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
          • Unit - Add Water Blast Dummy to (Last created unit)
          • -------- ===== ---------- Change size of Dummy for Size of SFX ---------- ===== --------
          • Animation - Change (Last created unit)'s size to (150.00%, 150.00%, 150.00%) of its original size
          • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
          • Unit - Set level of Water Blast Dummy for (Last created unit) to (Level of Water Blast for (Triggering unit))
          • -------- ===== ---------- Move Dummy to position of Caster (For sure) ---------- ===== --------
          • Unit - Move (Last created unit) instantly to (Position of (Triggering unit)), facing ((Real((Integer A))) x (360.00 / 12.00)) degrees
          • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
          • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm ((Position of (Triggering unit)) offset by 256.00 towards ((Real((Integer A))) x (360.00 / 12.00)) degrees)
Maybe the Special Effect using point is leak :/
You create a dummy but you not remove a leak
Moving dummy in a point is leak
Using Dummy to cast Carrion Swarm in the point is leak
Blessed Water
Trigger
  • Blessed Water
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • (Level of Blessed Water for (Attacked unit)) Greater than or equal to 1
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Attacking unit) is A structure) Equal to False
          • ((Attacking unit) is Magic Immune) Equal to False
          • ((Attacking unit) belongs to an enemy of (Owner of (Attacked unit))) Equal to True
        • Then - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Random integer number between 1 and 100) Less than or equal to (5 + ((Level of Blessed Water for (Attacked unit)) x 5))
            • Then - Actions
              • -------- ===== ---------- Create SFX at Attacking Unit ---------- ===== --------
              • Special Effect - Create a special effect attached to the chest of (Attacking unit) using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
              • Special Effect - Destroy (Last created special effect)
              • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
              • Unit - Create 1 Dummy with Attachment for (Owner of (Attacked unit)) at (Position of (Attacking unit)) facing (Random angle) degrees
              • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
              • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
              • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
              • Unit - Add Blessed Water Dummy to (Last created unit)
              • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
              • Unit - Set level of Blessed Water Dummy for (Last created unit) to (Level of Blessed Water for (Attacked unit))
              • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
              • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt (Attacking unit)
            • Else - Actions
        • Else - Actions
Maybe the Special Effect using point is leak :/
You create a dummy but you not remove the leak

Ghost Ship
Trigger
  • Ghost Ship Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Ghost Ship
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • GS_Number[1] Equal to 0
        • Then - Actions
          • Trigger - Turn on Ghost Ship Loop <gen>
        • Else - Actions
      • Set GS_Number[1] = (GS_Number[1] + 1)
      • Set GS_Number[2] = (GS_Number[2] + 1)
      • Set GS_Caster[GS_Number[2]] = (Triggering unit)
      • Set GS_CasterPoint[GS_Number[2]] = (Position of GS_Caster[GS_Number[2]])
      • Set GS_TargetPoint[GS_Number[2]] = (Target point of ability being cast)
      • Set GS_Angle[GS_Number[2]] = (Angle from GS_CasterPoint[GS_Number[2]] to GS_TargetPoint[GS_Number[2]])
      • Set GS_ShipPoint[GS_Number[2]] = (GS_CasterPoint[GS_Number[2]] offset by 500.00 towards (GS_Angle[GS_Number[2]] + 180.00) degrees)
      • Set GS_DistanceCount[GS_Number[2]] = 0.00
      • Set GS_DistanceMax[GS_Number[2]] = (Distance between GS_ShipPoint[GS_Number[2]] and GS_TargetPoint[GS_Number[2]])
      • Set GS_MoveSpeed[GS_Number[2]] = 25.00
      • Unit - Create 1 Ghost Ship Dummy for (Owner of GS_Caster[GS_Number[2]]) at GS_ShipPoint[GS_Number[2]] facing GS_Angle[GS_Number[2]] degrees
      • Set GS_ShipDummy[GS_Number[2]] = (Last created unit)
      • Animation - Change (Last created unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 50.00% transparency
      • Custom script: call RemoveLocation(udg_GS_CasterPoint[udg_GS_Number[2]])
      • Custom script: call RemoveLocation(udg_GS_TargetPoint[udg_GS_Number[2]])
      • Set GS_Boolean[GS_Number[2]] = True
  • Ghost Ship Loop
    • Events
      • Time - Every 0.05 seconds of game time
    • Conditions
    • Actions
      • For each (Integer GS_Number[3]) from 1 to GS_Number[2], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • GS_Boolean[GS_Number[3]] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • GS_DistanceCount[GS_Number[3]] Greater than or equal to GS_DistanceMax[GS_Number[3]]
                • Then - Actions
                  • Unit Group - Pick every unit in (Units within 500.00 of (Position of GS_ShipDummy[GS_Number[3]])) and do (Actions)
                    • Loop - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • ((Picked unit) is A structure) Equal to False
                          • ((Picked unit) is Magic Immune) Equal to False
                          • ((Picked unit) is alive) Equal to True
                          • ((Picked unit) belongs to an enemy of (Owner of GS_Caster[GS_Number[3]])) Equal to True
                        • Then - Actions
                          • Unit - Create 1 Dummy with Attachment for (Owner of GS_Caster[GS_Number[3]]) at (Position of (Picked unit)) facing (Random angle) degrees
                          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
                          • Unit - Add Ghost Ship Dummy to (Last created unit)
                          • Unit - Set level of Ghost Ship Dummy for (Last created unit) to (Level of Ghost Ship for GS_ShipDummy[GS_Number[3]])
                          • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt (Picked unit)
                        • Else - Actions
                  • Unit - Kill GS_ShipDummy[GS_Number[3]]
                  • Custom script: call RemoveLocation(udg_GS_ShipPoint[udg_GS_Number[3]])
                  • Set GS_Boolean[GS_Number[3]] = False
                  • Set GS_Number[1] = (GS_Number[1] - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • GS_Number[1] Equal to 0
                    • Then - Actions
                      • Set GS_Number[2] = 0
                      • Set GS_Number[3] = 0
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
                  • Set GS_DistanceCount[GS_Number[3]] = (GS_DistanceCount[GS_Number[3]] + GS_MoveSpeed[GS_Number[3]])
                  • Set GS_MovePoint[GS_Number[3]] = (GS_ShipPoint[GS_Number[3]] offset by GS_DistanceCount[GS_Number[3]] towards GS_Angle[GS_Number[3]] degrees)
                  • Unit - Move GS_ShipDummy[GS_Number[3]] instantly to GS_MovePoint[GS_Number[3]]
                  • Custom script: call RemoveLocation(udg_GS_MovePoint[udg_GS_Number[3]])
            • Else - Actions
In your loop you have Unit Group Leak
In Unit Group you create a dummy but not remove a leak
This call RemoveLocation(udg_GS_ShipPoint[udg_GS_Number[3]]) useless :)/ i dunno what point do use this)
Lost in the Darkness
Trigger
  • Lost in the Darkness Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Lost in the Darkness
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • LITD_ID[1] Equal to 0
        • Then - Actions
          • Trigger - Turn on Lost in the Darkness Loop <gen>
        • Else - Actions
      • Set LITD_ID[1] = (LITD_ID[1] + 1)
      • Set LITD_ID[2] = (LITD_ID[2] + 1)
      • Set LITD_Caster[LITD_ID[2]] = (Triggering unit)
      • Set LITD_Target[LITD_ID[2]] = (Target unit of ability being cast)
      • Set LITD_TimeCount[LITD_ID[2]] = 0.00
      • Set LITD_TimeToAppear[LITD_ID[2]] = 3.00
      • Unit - Hide LITD_Target[LITD_ID[2]]
      • Unit - Pause LITD_Target[LITD_ID[2]]
      • Unit - Turn collision for LITD_Target[LITD_ID[2]] Off
      • Unit - Add Invulnerable (Neutral) to LITD_Target[LITD_ID[2]]
      • Special Effect - Create a special effect at (Position of LITD_Target[LITD_ID[2]]) using Abilities\Spells\Demon\DarkConversion\ZombifyTarget.mdl
      • Set LITD_SFX_1[LITD_ID[2]] = (Last created special effect)
      • Set LITD_Boolean[LITD_ID[2]] = True
  • Lost in the Darkness Loop
    • Events
      • Time - Every 0.05 seconds of game time
    • Conditions
    • Actions
      • For each (Integer LITD_ID[3]) from 1 to LITD_ID[2], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • LITD_Boolean[LITD_ID[3]] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • LITD_TimeCount[LITD_ID[3]] Greater than or equal to LITD_TimeToAppear[LITD_ID[3]]
                • Then - Actions
                  • Unit - Move LITD_Target[LITD_ID[3]] instantly to (Random point in (Playable map area))
                  • Special Effect - Create a special effect attached to the origin of LITD_Target[LITD_ID[3]] using Abilities\Spells\Demon\DarkConversion\ZombifyTarget.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Special Effect - Destroy LITD_SFX_1[LITD_ID[3]]
                  • Unit - Remove Invulnerable (Neutral) from LITD_Target[LITD_ID[3]]
                  • Unit - Turn collision for LITD_Target[LITD_ID[3]] On
                  • Unit - Unpause LITD_Target[LITD_ID[3]]
                  • Unit - Unhide LITD_Target[LITD_ID[3]]
                  • Set LITD_Boolean[LITD_ID[3]] = False
                  • Set LITD_ID[1] = (LITD_ID[1] - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • LITD_ID[1] Equal to 0
                    • Then - Actions
                      • Set LITD_ID[2] = 0
                      • Set LITD_ID[3] = 0
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
                  • Set LITD_TimeCount[LITD_ID[3]] = (LITD_TimeCount[LITD_ID[3]] + 0.05)
            • Else - Actions
In your Loop, You move a targeted unit but you not remove a leak (Question: Why you move random in Whole Map?)
Anti Magic Shield
Trigger
  • Anti magic Shield
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Anti-magic Shield
    • Actions
      • Unit Group - Pick every unit in (Units within 700.00 of (Position of (Triggering unit))) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A structure) Equal to False
              • ((Picked unit) is Magic Immune) Equal to False
              • ((Picked unit) is alive) Equal to True
              • ((Picked unit) is hidden) Equal to False
              • ((Picked unit) belongs to an ally of (Owner of (Triggering unit))) Equal to True
              • (Owner of (Picked unit)) Not equal to Neutral Passive
            • Then - Actions
              • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
              • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing (Random angle) degrees
              • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
              • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
              • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
              • Unit - Add Anti-magic Shield Dummy to (Last created unit)
              • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
              • Unit - Set level of Anti-magic Shield Dummy for (Last created unit) to (Level of Anti-magic Shield for (Triggering unit))
              • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
              • Unit - Order (Last created unit) to Undead Banshee - Anti-magic Shell (Picked unit)
            • Else - Actions
You have here a Unit Group Leak
You create a dummy but you not remove a leak
Skeleton Army
Trigger
  • Skeleton Army
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Skeleton Army
    • Actions
      • For each (Integer A) from 1 to ((Level of Skeleton Army for (Triggering unit)) + 3), do (Actions)
        • Loop - Actions
          • Unit - Create 1 Skeleton Warrior for (Owner of (Triggering unit)) at ((Position of (Triggering unit)) offset by (Random real number between 0.00 and 500.00) towards (Random angle) degrees) facing (Angle from (Position of (Triggering unit)) to (Position of (Last created unit))) degrees
          • Unit - Add a 40.00 second Generic expiration timer to (Last created unit)
          • Special Effect - Create a special effect at (Position of (Last created unit)) using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
          • Special Effect - Destroy (Last created special effect)
      • For each (Integer A) from 1 to ((Level of Skeleton Army for (Triggering unit)) + 3), do (Actions)
        • Loop - Actions
          • Unit - Create 1 Skeletal Mage for (Owner of (Triggering unit)) at ((Position of (Triggering unit)) offset by (Random real number between 0.00 and 500.00) towards (Random angle) degrees) facing (Angle from (Position of (Triggering unit)) to (Position of (Last created unit))) degrees
          • Unit - Add a 40.00 second Generic expiration timer to (Last created unit)
          • Special Effect - Create a special effect at (Position of (Last created unit)) using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
          • Special Effect - Destroy (Last created special effect)
Its better use integer variables in your loop
Creating Skeleton but you not remove a leak
Special effect using point maybe is a leak
Mass Carrion Spawn
Trigger
  • Mass Carrior Spawn
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Mass Carrion Swarm
    • Actions
      • Set CS_Point1 = (Position of (Triggering unit))
      • Set CS_Point2 = (Target point of ability being cast)
      • -------- ===== ---------- Left Side ---------- ===== --------
      • For each (Integer A) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set CS_Point3 = ((Position of (Triggering unit)) offset by 256.00 towards ((15.00 x (Real((Integer A)))) + (Angle from CS_Point1 to CS_Point2)) degrees)
          • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing (Random angle) degrees
          • Unit - Make (Last created unit) face CS_Point3 over 0.00 seconds
          • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
          • Unit - Add Mass Carrion Swarm Dummy to (Last created unit)
          • -------- ===== ---------- Change size of Dummy for Size of SFX ---------- ===== --------
          • Animation - Change (Last created unit)'s size to (150.00%, 150.00%, 150.00%) of its original size
          • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
          • Unit - Set level of Mass Carrion Swarm Dummy for (Last created unit) to (Level of Mass Carrion Swarm for (Triggering unit))
          • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
          • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm CS_Point3
          • Custom script: call RemoveLocation(udg_CS_Point3)
      • -------- ===== ---------- Right Side ---------- ===== --------
      • For each (Integer A) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set CS_Point3 = ((Position of (Triggering unit)) offset by 256.00 towards ((Angle from CS_Point1 to CS_Point2) - ((Real((Integer A))) x 15.00)) degrees)
          • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing (Random angle) degrees
          • Unit - Make (Last created unit) face CS_Point3 over 0.00 seconds
          • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
          • Unit - Add Mass Carrion Swarm Dummy to (Last created unit)
          • -------- ===== ---------- Change size of Dummy for Size of SFX ---------- ===== --------
          • Animation - Change (Last created unit)'s size to (150.00%, 150.00%, 150.00%) of its original size
          • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
          • Unit - Set level of Mass Carrion Swarm Dummy for (Last created unit) to (Level of Mass Carrion Swarm for (Triggering unit))
          • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
          • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm CS_Point3
          • Custom script: call RemoveLocation(udg_CS_Point3)
      • Custom script: call RemoveLocation(udg_CS_Point1)
      • Custom script: call RemoveLocation(udg_CS_Point2)
Creating dummy but not remove a leak
Those dummy use a Carrion Swarm in a point is a leak
This CS_Point1 and CS_Point2 is useless.
Use integer variables in your loop for better
Sleep
Trigger
  • Sleep
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Sleep
    • Actions
      • -------- ===== ---------- Create SFX ---------- ===== --------
      • For each (Integer A) from 1 to (10 x (Level of Sleep for (Triggering unit))), do (Actions)
        • Loop - Actions
          • Special Effect - Create a special effect at ((Position of (Target unit of ability being cast)) offset by (Random real number between 0.00 and (200.00 + ((Real((Level of Sleep for (Triggering unit)))) x 100.00))) towards (Random angle) degrees) using Abilities\Spells\Undead\Sleep\SleepSpecialArt.mdl
          • Special Effect - Destroy (Last created special effect)
      • -------- ===== ---------- Sleep Nearby Enemies ---------- ===== --------
      • Unit Group - Pick every unit in (Units within (200.00 + (100.00 x (Real((Level of Sleep for (Triggering unit)))))) of (Position of (Target unit of ability being cast))) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A structure) Equal to False
              • ((Picked unit) is Magic Immune) Equal to False
              • ((Picked unit) is alive) Equal to True
              • ((Picked unit) is hidden) Equal to False
              • ((Picked unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True
            • Then - Actions
              • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
              • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing (Random angle) degrees
              • Unit - Make (Last created unit) face CS_Point3 over 0.00 seconds
              • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
              • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
              • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
              • Unit - Add Sleep Dummy to (Last created unit)
              • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
              • Unit - Set level of Sleep Dummy for (Last created unit) to (Level of Sleep for (Triggering unit))
              • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
              • Unit - Order (Last created unit) to Undead Dreadlord - Sleep (Picked unit)
            • Else - Actions
Unit Group leak
Special Effect (point) leak
Those dummy created must be remove a leak
Frost Nova
Trigger
  • Frost Nova
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Frost Nova
    • Actions
      • Set FrostNova_Point1 = (Position of (Triggering unit))
      • Set FrostNova_Point2 = (Target point of ability being cast)
      • For each (Integer A) from 1 to ((10 x (Level of Frost Nova for (Triggering unit))) + 1), do (Actions)
        • Loop - Actions
          • Set FrostNova_Point3 = (FrostNova_Point1 offset by (((Real((Integer A))) x 150.00) - 150.00) towards (Angle from FrostNova_Point1 to FrostNova_Point2) degrees)
          • Unit Group - Pick every unit in (Units within 175.00 of FrostNova_Point3) and do (Actions)
            • Loop - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) is A structure) Equal to False
                  • ((Picked unit) is Magic Immune) Equal to False
                  • ((Picked unit) is hidden) Equal to False
                  • ((Picked unit) is alive) Equal to True
                  • ((Picked unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True
                • Then - Actions
                  • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing (Random angle) degrees
                  • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
                  • Unit - Add Frost Nova Dummy to (Last created unit)
                  • Unit - Set level of Frost Nova Dummy for (Last created unit) to (Level of Frost Nova for (Triggering unit))
                  • Unit - Order (Last created unit) to Undead Lich - Frost Nova (Picked unit)
                • Else - Actions
          • Special Effect - Create a special effect at FrostNova_Point3 using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • Custom script: call RemoveLocation(udg_FrostNova_Point3)
      • Custom script: call RemoveLocation(udg_FrostNova_Point1)
      • Custom script: call RemoveLocation(udg_FrostNova_Point2)
Unit Group Leak
Those dummy created must be remove a leak
Summon Water Elemental
Trigger
  • Summon Water Elemental
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Summon Water Elemental
    • Actions
      • -------- =========== ------------------------------ Behind ------------------------------ =========== --------
      • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing ((Facing of (Triggering unit)) + 180.00) degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Summon Water Elemental Dummy to (Last created unit)
      • Unit - Set level of Summon Water Elemental Dummy for (Last created unit) to (Level of Summon Water Elemental for (Triggering unit))
      • Unit - Order (Last created unit) to Human Archmage - Summon Water Elemental
      • -------- =========== ------------------------------ Left Side ------------------------------ =========== --------
      • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing ((Facing of (Triggering unit)) + 90.00) degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Summon Water Elemental Dummy to (Last created unit)
      • Unit - Set level of Summon Water Elemental Dummy for (Last created unit) to (Level of Summon Water Elemental for (Triggering unit))
      • Unit - Order (Last created unit) to Human Archmage - Summon Water Elemental
      • -------- =========== ------------------------------ Right Side ------------------------------ =========== --------
      • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing ((Facing of (Triggering unit)) - 90.00) degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Summon Water Elemental Dummy to (Last created unit)
      • Unit - Set level of Summon Water Elemental Dummy for (Last created unit) to (Level of Summon Water Elemental for (Triggering unit))
      • Unit - Order (Last created unit) to Human Archmage - Summon Water Elemental
      • -------- =========== ------------------------------ Water SFX ------------------------------ =========== --------
      • Special Effect - Create a special effect at (Position of (Triggering unit)) using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
Creating Dummy but not remove a leak
SFX (point) leak
Brilliance Aura
Trigger
  • Brilliance Aura
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • ((Triggering unit) has buff Brilliance Aura) Equal to True
    • Actions
      • Wait 0.25 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Random integer number between 1 and 10) Less than or equal to 2
        • Then - Actions
          • Unit - Set mana of (Triggering unit) to ((Mana of (Triggering unit)) + ((20.00 x (Max mana of (Triggering unit))) / 100.00))
          • Special Effect - Create a special effect attached to the overhead of (Triggering unit) using Abilities\Spells\Items\AIma\AImaTarget.mdl
          • Special Effect - Destroy (Last created special effect)
        • Else - Actions
Dont use wait
Ice Wall
Trigger
  • Ice Wall
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Ice Wall
    • Actions
      • Set IceWall_Point1 = (Position of (Triggering unit))
      • Set IceWall_Point2 = (Target point of ability being cast)
      • -------- ===== ---------- Center ---------- ===== --------
      • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at IceWall_Point2 facing (Angle from IceWall_Point1 to IceWall_Point2) degrees
      • Special Effect - Create a special effect attached to the origin of (Last created unit) using Abilities\Spells\Undead\FreezingBreath\FreezingBreathTargetArt.mdl
      • Unit - Add Ice Wall Slow Aura to (Last created unit)
      • Unit - Add a ((5.00 x (Real((Level of Ice Wall for (Triggering unit))))) + 5.00) second Generic expiration timer to (Last created unit)
      • Unit - Set level of Ice Wall Slow Aura for (Last created unit) to (Level of Ice Wall for (Triggering unit))
      • -------- ===== ---------- Left Side ---------- ===== --------
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set IceWall_Point3 = (IceWall_Point2 offset by ((Real((Integer A))) x 150.00) towards ((Angle from IceWall_Point1 to IceWall_Point2) + 90.00) degrees)
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at IceWall_Point3 facing (Angle from IceWall_Point1 to IceWall_Point2) degrees
          • Special Effect - Create a special effect attached to the origin of (Last created unit) using Abilities\Spells\Undead\FreezingBreath\FreezingBreathTargetArt.mdl
          • Unit - Add Ice Wall Slow Aura to (Last created unit)
          • Unit - Add a ((5.00 x (Real((Level of Ice Wall for (Triggering unit))))) + 5.00) second Generic expiration timer to (Last created unit)
          • Unit - Set level of Ice Wall Slow Aura for (Last created unit) to (Level of Ice Wall for (Triggering unit))
          • Custom script: call RemoveLocation(udg_IceWall_Point3)
      • -------- ===== ---------- Right Side ---------- ===== --------
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • Set IceWall_Point3 = (IceWall_Point2 offset by ((Real((Integer A))) x 150.00) towards ((Angle from IceWall_Point1 to IceWall_Point2) - 90.00) degrees)
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at IceWall_Point3 facing (Angle from IceWall_Point1 to IceWall_Point2) degrees
          • Special Effect - Create a special effect attached to the origin of (Last created unit) using Abilities\Spells\Undead\FreezingBreath\FreezingBreathTargetArt.mdl
          • Unit - Add Ice Wall Slow Aura to (Last created unit)
          • Unit - Add a ((5.00 x (Real((Level of Ice Wall for (Triggering unit))))) + 5.00) second Generic expiration timer to (Last created unit)
          • Unit - Set level of Ice Wall Slow Aura for (Last created unit) to (Level of Ice Wall for (Triggering unit))
          • Custom script: call RemoveLocation(udg_IceWall_Point3)
      • -------- ===== ---------- Remove Leaks ---------- ===== --------
      • Custom script: call RemoveLocation(udg_IceWall_Point1)
      • Custom script: call RemoveLocation(udg_IceWall_Point2)
You not remove a SFX
Its better use integer variables
Frostbite
Trigger
  • Frostbite
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Frostbite
    • Actions
      • Unit Group - Pick every unit in (Units within 700.00 of (Position of (Target unit of ability being cast))) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A structure) Equal to False
              • ((Picked unit) is Magic Immune) Equal to False
              • ((Picked unit) is alive) Equal to True
              • ((Picked unit) is hidden) Equal to False
              • ((Picked unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True
            • Then - Actions
              • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
              • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing (Random angle) degrees
              • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
              • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
              • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
              • Unit - Add Frostbite Dummy to (Last created unit)
              • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
              • Unit - Set level of Frostbite Dummy for (Last created unit) to (Level of Frostbite for (Triggering unit))
              • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
              • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt (Picked unit)
            • Else - Actions
Unit Group leak
Those dummy create must be remove a leak
Inner Fire
Trigger
  • Inner Fire
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Inner Fire
    • Actions
      • Unit Group - Pick every unit in (Units within 700.00 of (Position of (Triggering unit))) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is alive) Equal to True
              • ((Picked unit) belongs to an ally of (Owner of (Triggering unit))) Equal to True
              • (Owner of (Picked unit)) Not equal to Neutral Passive
              • ((Picked unit) is hidden) Equal to False
            • Then - Actions
              • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing (Random angle) degrees
              • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
              • Unit - Add Inner Fire Dummy to (Last created unit)
              • Unit - Set level of Inner Fire Dummy for (Last created unit) to (Level of Inner Fire for (Triggering unit))
              • Unit - Order (Last created unit) to Human Priest - Inner Fire (Picked unit)
            • Else - Actions
Unit Group leak
Those dummy create must be remove a leak
Blessed of Heaven
Trigger
  • Blessed of Heaven
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Blessed of Heaven
    • Actions
      • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • ((Picked unit) is A Hero) Equal to True
              • ((Picked unit) is alive) Equal to True
              • ((Picked unit) belongs to an ally of (Owner of (Triggering unit))) Equal to True
              • (Owner of (Picked unit)) Not equal to Neutral Passive
              • ((Picked unit) is hidden) Equal to False
            • Then - Actions
              • Special Effect - Create a special effect attached to the overhead of (Picked unit) using Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl
              • Special Effect - Destroy (Last created special effect)
              • Unit - Set life of (Picked unit) to ((Life of (Picked unit)) + (500.00 x (Real((Level of Blessed of Heaven for (Triggering unit))))))
            • Else - Actions
Unit Group leak
Mass Shockwave
Trigger
  • Mass Shockwave
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Mass Shockwave
    • Actions
      • Set MassSW_Point1 = (Position of (Triggering unit))
      • Set MassSW_Point2 = (Target point of ability being cast)
      • -------- ===== ---------- 3 Wave at Left Side ---------- ===== --------
      • For each (Integer A) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set MassSW_Point3 = (MassSW_Point1 offset by ((Real((Integer A))) x 200.00) towards ((Angle from MassSW_Point1 to MassSW_Point2) + 90.00) degrees)
          • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at MassSW_Point3 facing (Angle from MassSW_Point1 to MassSW_Point2) degrees
          • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
          • Unit - Add Mass Shockwave Dummy to (Last created unit)
          • -------- ===== ---------- Change size of Dummy for Size of SFX ---------- ===== --------
          • Animation - Change (Last created unit)'s size to (150.00%, 150.00%, 150.00%) of its original size
          • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
          • Unit - Set level of Mass Shockwave Dummy for (Last created unit) to (Level of Mass Shockwave for (Triggering unit))
          • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
          • Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave (MassSW_Point3 offset by 150.00 towards (Angle from MassSW_Point1 to MassSW_Point2) degrees)
          • -------- ===== ---------- Remove Possible Bug ---------- ===== --------
          • Custom script: call RemoveLocation(udg_MassSW_Point3)
      • -------- ===== ---------- 3 Wave at Right Side ---------- ===== --------
      • For each (Integer A) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set MassSW_Point3 = (MassSW_Point1 offset by ((Real((Integer A))) x 200.00) towards ((Angle from MassSW_Point1 to MassSW_Point2) - 90.00) degrees)
          • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
          • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at MassSW_Point3 facing (Angle from MassSW_Point1 to MassSW_Point2) degrees
          • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
          • Unit - Add Mass Shockwave Dummy to (Last created unit)
          • -------- ===== ---------- Change size of Dummy for Size of SFX ---------- ===== --------
          • Animation - Change (Last created unit)'s size to (150.00%, 150.00%, 150.00%) of its original size
          • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
          • Unit - Set level of Mass Shockwave Dummy for (Last created unit) to (Level of Mass Shockwave for (Triggering unit))
          • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
          • Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave (MassSW_Point3 offset by 150.00 towards (Angle from MassSW_Point1 to MassSW_Point2) degrees)
          • -------- ===== ---------- Remove Possible Bug ---------- ===== --------
          • Custom script: call RemoveLocation(udg_MassSW_Point3)
      • -------- ===== ---------- Remove Possible Bug ---------- ===== --------
      • Custom script: call RemoveLocation(udg_MassSW_Point1)
      • Custom script: call RemoveLocation(udg_MassSW_Point2)
Those dummy use Shockwave in a point is leak
Warrior of the Pit
Trigger
  • Warrior of the Pit
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Warrior of the Pit
    • Actions
      • For each (Integer A) from 1 to ((Level of Warrior of the Pit for (Triggering unit)) + 1), do (Actions)
        • Loop - Actions
          • Unit - Create 1 Doom Guard for (Owner of (Triggering unit)) at ((Position of (Triggering unit)) offset by 300.00 towards ((Real((Integer A))) x (360.00 / ((Real((Level of Warrior of the Pit for (Triggering unit)))) + 1.00))) degrees) facing ((Real((Integer A))) x (360.00 / ((Real((Level of Warrior of the Pit for (Triggering unit)))) + 1.00))) degrees
          • Unit - Add a 60.00 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Create Special Effect At Summoned Unit ---------- ===== --------
          • Special Effect - Create a special effect attached to the chest of (Last created unit) using Abilities\Spells\Human\MarkOfChaos\MarkOfChaosDone.mdl
          • Special Effect - Destroy (Last created special effect)
          • Special Effect - Create a special effect attached to the overhead of (Last created unit) using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • Unit - Order (Last created unit) to Orc Tauren Chieftain - War Stomp
      • For each (Integer A) from 1 to ((Level of Warrior of the Pit for (Triggering unit)) + 1), do (Actions)
        • Loop - Actions
          • Unit - Create 1 Fel Stalker for (Owner of (Triggering unit)) at ((Position of (Triggering unit)) offset by 500.00 towards ((Real((Integer A))) x (360.00 / ((Real((Level of Warrior of the Pit for (Triggering unit)))) + 1.00))) degrees) facing ((Real((Integer A))) x (360.00 / ((Real((Level of Warrior of the Pit for (Triggering unit)))) + 1.00))) degrees
          • Unit - Add a 60.00 second Generic expiration timer to (Last created unit)
          • -------- ===== ---------- Create Special Effect At Summoned Unit ---------- ===== --------
          • Special Effect - Create a special effect attached to the chest of (Last created unit) using Abilities\Spells\Human\MarkOfChaos\MarkOfChaosDone.mdl
          • Special Effect - Destroy (Last created special effect)
          • Special Effect - Create a special effect attached to the overhead of (Last created unit) using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • Animation - Play (Last created unit)'s stand victory animation
You create Doom Guard and Fel Stalker in a caster point but you not remove a leak
Howl of Terror
Trigger
Howl of Terror
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Howl of Terror
Actions
For each (Integer A) from 1 to 40, do (Actions)
Loop - Actions
Special Effect - Create a special effect at ((Position of (Triggering unit)) offset by (Random real number between 0.00 and 1000.00) towards (Random angle) degrees) using Abilities\Spells\Other\HowlOfTerror\HowlCaster.mdl
Special Effect - Destroy (Last created special effect)
SFX (point) leak
Portal of the Pit
Trigger
  • Portal of the Pit Cast
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Portal of the Pit
    • Actions
      • -------- ===== ---------- Turn on the Loop ---------- ===== --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • POTP_Number[1] Equal to 0
        • Then - Actions
          • Trigger - Turn on Portal of the Pit Loop <gen>
        • Else - Actions
      • -------- ===== ---------- Setting Varriable ---------- ===== --------
      • Set POTP_Number[1] = (POTP_Number[1] + 1)
      • Set POTP_Number[2] = (POTP_Number[2] + 1)
      • Set POTP_Caster[POTP_Number[2]] = (Triggering unit)
      • Set POTP_CasterPoint[POTP_Number[2]] = (Position of POTP_Caster[POTP_Number[2]])
      • Set POTP_TargetPoint[POTP_Number[2]] = (Target point of ability being cast)
      • Set POTP_Area[POTP_Number[2]] = 900.00
      • Set POTP_Angle[POTP_Number[2]] = (Angle from POTP_CasterPoint[POTP_Number[2]] to POTP_TargetPoint[POTP_Number[2]])
      • Set POTP_TimeCount[POTP_Number[2]] = 0.00
      • Set POTP_TimeWait[POTP_Number[2]] = (8.00 - (Real((Level of Portal of the Pit for POTP_Caster[POTP_Number[2]]))))
      • -------- ===== ---------- Create Portal at Caster and Target Location ---------- ===== --------
      • Unit - Create 1 Portal Dummy for (Owner of POTP_Caster[POTP_Number[2]]) at POTP_CasterPoint[POTP_Number[2]] facing POTP_Angle[POTP_Number[2]] degrees
      • Animation - Play (Last created unit)'s birth animation
      • Set POTP_Dummy1[POTP_Number[2]] = (Last created unit)
      • Animation - Change (Last created unit)'s animation speed to (110.00 + ((Real((Level of Portal of the Pit for POTP_Caster[POTP_Number[2]]))) + 30.00))% of its original speed
      • Unit - Create 1 Portal Dummy for (Owner of POTP_Caster[POTP_Number[2]]) at POTP_TargetPoint[POTP_Number[2]] facing POTP_Angle[POTP_Number[2]] degrees
      • Animation - Play (Last created unit)'s birth animation
      • Set POTP_Dummy2[POTP_Number[2]] = (Last created unit)
      • Animation - Change (Last created unit)'s animation speed to (110.00 + ((Real((Level of Portal of the Pit for POTP_Caster[POTP_Number[2]]))) + 30.00))% of its original speed
      • -------- ===== ---------- Start Loop ---------- ===== --------
      • Set POTP_Boolean[POTP_Number[2]] = True
  • Portal of the Pit Loop
    • Events
      • Time - Every 0.05 seconds of game time
    • Conditions
    • Actions
      • For each (Integer POTP_Number[3]) from 1 to POTP_Number[2], do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • POTP_Boolean[POTP_Number[3]] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • POTP_TimeCount[POTP_Number[3]] Greater than or equal to POTP_TimeWait[POTP_Number[3]]
                • Then - Actions
                  • Unit Group - Pick every unit in (Units within 500.00 of (Position of POTP_Dummy1[POTP_Number[3]])) and do (Actions)
                    • Loop - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • ((Picked unit) is alive) Equal to True
                          • ((Picked unit) is hidden) Equal to False
                          • ((Picked unit) belongs to an ally of (Owner of POTP_Caster[POTP_Number[3]])) Equal to True
                          • ((Picked unit) is A structure) Equal to False
                        • Then - Actions
                          • Unit - Move (Picked unit) instantly to ((Position of POTP_Dummy2[POTP_Number[3]]) offset by (Distance between (Position of (Picked unit)) and (Position of POTP_Dummy1[POTP_Number[3]])) towards (Angle from (Position of POTP_Dummy1[POTP_Number[3]]) to (Position of (Picked unit))) degrees), facing (Facing of (Picked unit)) degrees
                        • Else - Actions
                  • Unit - Kill POTP_Dummy1[POTP_Number[3]]
                  • Unit - Kill POTP_Dummy2[POTP_Number[3]]
                  • Custom script: call RemoveLocation(udg_POTP_CasterPoint[udg_POTP_Number[3]])
                  • Custom script: call RemoveLocation(udg_POTP_TargetPoint[udg_POTP_Number[3]])
                  • Set POTP_Boolean[POTP_Number[3]] = False
                  • Set POTP_Number[1] = (POTP_Number[1] - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • POTP_Number[1] Equal to 0
                    • Then - Actions
                      • Set POTP_Number[2] = 0
                      • Set POTP_Number[3] = 0
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                • Else - Actions
                  • Set POTP_TimeCount[POTP_Number[3]] = (POTP_TimeCount[POTP_Number[3]] + 0.05)
            • Else - Actions
Unit Group Leak
Rain of Fire
Trigger
  • Rain of Fire
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Rain of Fire
    • Actions
      • -------- ===== ---------- Create Dummy Unit ---------- ===== --------
      • Unit - Create 1 Dummy with Attachment for (Owner of (Triggering unit)) at (Target point of ability being cast) facing (Facing of (Triggering unit)) degrees
      • -------- ===== ---------- Adds Time for Dummy ---------- ===== --------
      • Unit - Add a 15.00 second Generic expiration timer to (Last created unit)
      • -------- ===== ---------- Add Ability for Dummy ---------- ===== --------
      • Unit - Add Rain of Fire Dummy to (Last created unit)
      • -------- ===== ---------- Set Level of Dummy Ability to Same of Caster ---------- ===== --------
      • Unit - Set level of Rain of Fire Dummy for (Last created unit) to (Level of Rain of Fire for (Triggering unit))
      • -------- ===== ---------- Order dummy to cast spell ---------- ===== --------
      • Unit - Order (Last created unit) to Neutral Pit Lord - Rain Of Fire (Target point of ability being cast)
      • -------- ===== ---------- Remove Possible Bug ---------- ===== --------
Dummy point leak
Dummy cast a Rain of Fire is a leak
Learn more about removing leaks
 
Level 2
Joined
May 25, 2013
Messages
15
To : AKA.GywGod133
day 56: i have finally scrolled down to the bottom HAHAHAHAHAHAHA
You're really funny guy. But you're really help me, thank you, thank you, thank you.
I've read the tutorials about removing leaks. I really don't know that.
For now I've understand how to removing leaks thank you again

Please teach me more about removing leaks, I really want to know all about leaks.

Updated : I've removed all thing that you told me about leaks.
Thank you very much again AKA.GywGod133
 
Last edited:
Newbie detected.

Lots of leaks, function calls etc.

First, learn to use variables(so that you can keep from using "Triggering Unit", "Position of Whatnot" etc.)

Second, read some tutorials about cleaning leaks.

Third, seriously, learn about For Integer loops, so that you can stop CnPing the code all over again

This pack is for beginners, hence the skills of its author :)

For the person who posted the triggers, please put [stable][/stable] tags around the trigger tags, so that it will crop the trigger and it will stop stretching this page.
 
Last edited:
Level 10
Joined
Aug 21, 2010
Messages
316
dota impact lol

I opened the map and when I saw only the names of spells I immediately turned off the editor(More than half of the spells from dota)

Listen, buddy, I have dota map,original version [unlocked course] and it is logical that I can just copy anything and post it here but what's the point, where's the creativity.After all, dota is totally worn out.Give us something new something fresh.
 
Last edited:
Top