1. Are you planning to upload your awesome spell or system to Hive? Please review the rules here.
    Dismiss Notice
  2. Updated Resource Submission Rules: All model & skin resource submissions must now include an in-game screenshot. This is to help speed up the moderation process and to show how the model and/or texture looks like from the in-game camera.
    Dismiss Notice
  3. DID YOU KNOW - That you can unlock new rank icons by posting on the forums or winning contests? Click here to customize your rank or read our User Rank Policy to see a list of ranks that you can unlock. Have you won a contest and still havn't received your rank award? Then please contact the administration.
    Dismiss Notice
  4. The raddest synthwave tracks were chosen - Check out our Music Contest #12 - Results and congratulate the winners!
    Dismiss Notice
  5. The poll for Hive's 12th Concept Art Contest is up! Go cast your vote for your favourite genie!
    Dismiss Notice
  6. Travel to distant realms and encounter scenes unknown to the common folk. The Greatest of Adventures is upon us with the 8th Cinematic Contest. Join in on a fun ride.
    Dismiss Notice
  7. The 18th Icon Contest is ON! Choose any ingame unit and give him/her Hero abilities. Good luck to all.
    Dismiss Notice
  8. Contestants are to create a scene set in the Stone Age. Come and see what you can come up with. We wish you the best of luck!
    Dismiss Notice
  9. Colour outside the lines! Techtree Contest #13 is a go. The contest is optionally paired.
    Dismiss Notice
  10. Greetings cerebrates, our Swarm needs new spawners that will have numerous children. Join the HIVE's 31st Modeling Contest - Spawners and Spawned! The contest is optionally paired.
    Dismiss Notice
  11. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Simple Spell Pack v1.3

Submitted by -Berz-
This bundle is marked as approved. It works and satisfies the submission rules.
Version: 1.3
Language: GUI
MUI: Yes
Documented: Yes
User Friendly: Yes
Works With Latest Patch: Yes
Current Number of Spells: 22
Current Number of Systems: 3

Author: -BerzekeR-

Spells

[​IMG]
Scream

Unleashes a sound that damages and silences nearby enemy units.

Level 1 - AOE 200, 80 damage, 2 seconds of silence.
Level 2 - AOE 250, 160 damage, 3 seconds of silence.
Level 3 - AOE 300, 240 damage, 4 seconds of silence.



Screenshot
[​IMG]


[​IMG]
Fire Wall

Creates a wall of fire that damages nearby enemy units.

Level 1 - 70 damage per second, lasts 10 seconds.
Level 2 - 100 damage per second, lasts 10 seconds.
Level 3 - 130 damage per second, lasts 10 seconds.




Screenshot
[​IMG]


[​IMG]
Power Slam

Slams the target with brute force dealing strength damage,
there is a chance that target gets stunned.

Level 1 - 2x strength damage, 15% to stun for 2 seconds.
Level 2 - 4x strength damage, 30% to stun for 3 seconds.
Level 3 - 6x strength damage, 45% to stun for 4 seconds.



Screenshot
[​IMG]


[​IMG]
Multi Shot

Shoots multiple arrows towards targeted location.
Level 1 - 10 arrows, arrow deals 25 damage.
Level 2 - 20 arrows, arrow deals 35 damage.
Level 3 - 30 arrows, arrow deals 45 damage.



Screenshot
[​IMG]


[​IMG]
Termal Eruption

Gathers the water into explosion. Explosion deals damage and slows attack and movement rate.

Level 1 - AOE 200, 90 damage, 15% decreased attack and movement rate, lasts 3 seconds.
Level 2 - AOE 200, 180 damage, 25% decreased attack and movement rate, lasts 4 seconds.
Level 3 - AOE 200, 270 damage, 35% decreased attack and movement rate, lasts 5 seconds.



Screenshot
[​IMG]


[​IMG]
Aqua Burst

Caster melts down into the earth and strikes out at the targeted location, dealing area damage.

Level 1 - Area of Effect 175, 70 damage.
Level 2 - Area of Effect 175, 140 damage.
Level 3 - Area of Effect 175, 210 damage.




Screenshot
[​IMG]


[​IMG]
Napalm Strike

Calls down a Sun ray that damages and burns the ground.

Level 1 - AOE 225, 90 damage, 50 ground damage per second, lasts 6 seconds.
Level 2 - AOE 225, 180 damage, 95 ground damage per second, lasts 8 seconds.
Level 3 - AOE 225, 270 damage, 135 ground damage per second, lasts 10 seconds.



Screenshot
[​IMG]


[​IMG]
Sinister Strike

Strikes the target with crippling power, dealing agility damage and reducing targeted unit's armor.

Level 1 - Deals 2x agility damage, 15% chance to reduce unit's armor by 5 points else 3, lasts 4 seconds.
Level 2 - Deals 4x agility damage, 30% chance to reduce unit's armor by 6 points else 4, lasts 5 seconds.
Level 3 - Deals 6x agility damage, 45% chance to reduce unit's armor by 7 points else 5, lasts 6 seconds.



Screenshot
[​IMG]


[​IMG]
Shadowstep

Caster moves trough the shadow to the position of targeted unit, dealing movement speed factor damage.

Level 1 - Dealing .35x movement speed damage.
Level 2 - Dealing .70x movement speed damage.
Level 3 - Dealing 1.05x movement speed damage.




Screenshot
[​IMG]


[​IMG]
Wound Poison

Strikes the target with poisoned dagger, dealing some damage on the impact and minnor damage over time, target is confused by the poison and it has a chance to miss on attack.

Level 1 - 60 impact damage, 6% to miss on attack, 100 damage over 18 seconds.
Level 2 - 120 impact damage, 12% to miss on attack, 200 damage over 18 seconds.
Level 3 - 180 impact damage, 18% to miss on attack, 300 damage over 18 seconds.



Screenshot
[​IMG]


[​IMG]
Ion Cannon

Charges the powerful laser towards targeted location, laser razes trough everything on its path dealing damage and burns up mana of enemy units in the line.

Level 1 - Deals 45 -135 damage, and burns up 30 - 90 mana.
Level 2 -Deals 90 -240 damage, and burns up 60 - 180 mana.
Level 3 - Deals 135 -405 damage, and burns up 90 - 270 mana.




Screenshot
[​IMG]


[​IMG]
Holy Blessing

Blesses the target with pure energy, healing it and making it invulnerable for a brief of time.

level 1 - Heals for 90 hit points, invulnerability for 2 seconds.
level 2 - Heals for 180 hit points, invulnerability for 4 seconds.
level 3 - Heals for 270 hit points, invulnerability for 6 seconds..




Screenshot
[​IMG]



[​IMG] Thunder Rage

Caster calls down a bolt of lightning that deals damage to enemy units in the area, thunder bolt instantly kills the units with low HP and explodes them to pieces dealing additional damage in small area around it.

Level 1 - Deals .20 x max life of picked unit, instantly kills units below 75 HP, AoE 225, corpse explosion deals 25 damage in AoE 85 around it.
Level 2 - Deals .40 x max life of picked unit, instantly kills units below 150 HP, AoE 225, corpse explosion deals 50 damage in AoE 85 around it.
Level 3 - Deals .60 x max life of picked unit, instantly kills units below 225 HP, AoE 225, corpse explosion deals 75 damage in AoE 85 around it.



Screenshot
[​IMG]



[​IMG]
Shadow Walk

Caster takes possession of it's own shadow, making it more accurate when evading enemy attacks and more resistant against magic attacks and spells. Removes negative buffs upon cast.Effect fades after a few seconds.

Level 1 - Grants 15% evasion against attacks, 7% magic resistance, lasts 4 seconds.
Level 2 - Grants 30% evasion against attacks, 14% magic resistance, lasts 8 seconds.
Level 3 - Grants 45% evasion against attacks, 21% magic resistance, lasts 12 seconds.



Screenshot
[​IMG]



[​IMG]
Desecration

Caster uses unholy powers in order to steal souls. As caster tries to steal the soul out of a dead body the corpse explodes and soul gets released. Explosion deals damage. Caster consumes the life force of the souls for his own healing.

Level 1 - Deals 20 x number of corpses in the AoE 250 damage, heals caster for 10 x number of corpses.
Level 2 - Deals 40 x number of corpses in the AoE 250 damage, heals caster for 20 x number of corpses.
Level 3 - Deals 60 x number of corpses in the AoE 250 damage, heals caster for 30 x number of corpses.



Screenshot
[​IMG]




[​IMG]
Beast Attack

Strikes the target with brutal force of the beast, damaging it and knocking it back.

Level 1 - Deals 1/8 of caster's max life + 1 x caster's strength, knocking back the target in distance of 300.
Level 2 - Deals 1/8 of caster's max life + 2 x caster's strength, knocking back the target in distance of 300.
Level 3 - Deals 1/8 of caster's max life + 3 x caster's strength, knocking back the target in distance of 300.



Screenshot
[​IMG]




[​IMG]
Earth Fury

Caster slams the ground, dealing damage in area, slowing attack and movement speed of enemy units for a few seconds.
There is a chance that caster slams the ground with more power, ripping out waves pure force dealing damage in outer area, making caster to gain attack speed.

Level 1 - Deals 125 damage, AoE 200, 25% slow for 2.5 seconds, 45% chance to deal 65 damage in AoE 400, 30% increased attack speed for 7 seconds.
Level 2 - Deals 200 damage, AoE 275, 25% slow for 3 seconds, 45% chance to deal 130 damage in AoE 550, 50% increased attack speed for 7 seconds.
Level 3 - Deals 275 damage, AoE 350, 25% slow for 3.5 seconds, 45% chance to deal 195 damage in AoE 700, 70% increased attack speed for 7 seconds.



Screenshot
[​IMG]




[​IMG]
Razor Edge

Caster puts all his rage into single powerful spinning strike, quickly striking in a line dealing damage to nearby enemy units in the area.

Level 1 - Deals up to 180 damage per unit, AoE 200 in distance of 700.
Level 2 - Deals up to 320 damage per unit, AoE 200 in distance of 700.
Level 3 - Deals up to 460 damage per unit, AoE 200 in distance of 700.



Screenshot
[​IMG]


[​IMG]
Face of Void

Caster unleashes its arcane power, summoning a slight taste of void upon his foes.

Level 1 - AoE 200, 60 damage, 15% slow, lasts 6 seconds.
Level 2 - AoE 240, 120 damage, 25% slow, lasts 7 seconds.
Level 3 - AoE 280, 180 damage, 35% slow, lasts 8 seconds.



Screenshot
[​IMG]




[​IMG]
Arcane Disruption

Casts a mysterious spell upon your allies or foes, recharges some mana and life upon allies or burns mana and damages enemies.

Level 1 - Restores/burns 120 mana and heals/damages for 60 points.
Level 2 - Restores/burns 170 mana and heals/damages for 85 points.
Level 3 - Restores/burns 220 mana and heals/damages for 110 points.



Screenshot
[​IMG]



[​IMG]
Impale

Slams the ground with the massive claws, shooting spiked tendrils out in 3 straight lines, dealing damage and hurling enemy ground units into the air in their wake.

Level 1 - 50 damage, 1 second stun.
Level 2 - 80 damage, 2 second stun.
Level 3 - 110 damage, 3 second stun.



Screenshot
[​IMG]



[​IMG]
Psychic Rape

Hurls a bolt of negative energy upon the targeted unit, burning its mana and life. Under this effects unit can get stunned.

Level 1 - Burns up mana equal to 2x Caster's agility, can stun for 2 seconds.
Level 2 - Burns up mana equal to 4x Caster's agility, can stun for 3 seconds.
Level 3 - Burns up mana equal to 6x Caster's agility, can stun for 4 seconds.



Screenshot
[​IMG]





Systems

Item System

This item system allows you to:
-Make items with recipe:
*Get items and a recipe and it will automatically give you a greater item
-Make items without recipe:
*Get items and they will automatically combine into greater item
-Make item upgrades;
*Makes two same items into greater one
*note this system only works with only one unit owned by player

Commands

First select a hero you would like to modify.

And as the hero is selected you can start to type commands as:

Examples:

-str 50 [gives 50 strength]
-int 5 [gives 5 intelligence]
-ms 100 [gives 100 movement speed]
-spd [checks the movement speed]

-agi -15 [decreases agility by 15]
-ms -100 [decreases movement speed by 100]
-gold 1000 [gives 1000 gold]

Donation

Simple system, all you need is gold, then you go to the shrine and then you "pray", so you can gain atributes, can be modified to gain other abilities too.



Triggers

  • Scream
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Scream
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Scream_Caster = (Triggering unit)
      • Set Scream_Ability_Level = (Level of (Ability being cast) for Scream_Caster)
      • Set Scream_Owner = (Owner of Scream_Caster)
      • Set Scream_Location = (Position of Scream_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Scream_Base_Area_of_Effect = 200.00
      • Set Scream_Bounus_Area_of_Effect = 50.00
      • Set Scream_Area_of_Effect = (Scream_Base_Area_of_Effect + ((Real(Scream_Ability_Level)) x Scream_Bounus_Area_of_Effect))
      • Set Scream_Base_Damage = 80.00
      • Set Scream_Total_Damage = (Scream_Base_Damage x (Real(Scream_Ability_Level)))
      • Set Scream_Damage_Group = (Units within Scream_Area_of_Effect of Scream_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of Scream_Owner) Equal to True))))
      • Set Scream_Dummy_Ability = Scream(dummy)
      • Set Scream_Sound = HarpyDeath <gen>
      • Set Scream_Sound_Volume = 80.00
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Dummy, ordering it to cast a spell --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy for Scream_Owner at Scream_Location facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Scream_Dummy_Ability to (Last created unit)
      • Unit - Set level of Scream_Dummy_Ability for (Last created unit) to Scream_Ability_Level
      • Unit - Order (Last created unit) to Neutral Dark Ranger - Silence Scream_Location
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Playing a nice sound effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Sound - Play Scream_Sound at Scream_Sound_Volume% volume, attached to Scream_Caster
      • Unit Group - Pick every unit in Scream_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Damaging units and creating nice special effects --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause Scream_Caster to damage (Picked unit), dealing Scream_Total_Damage damage of attack type Spells and damage type Unknown
          • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Undead\AbsorbMana\AbsorbManaBirthMissile.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Scream_Location)
      • Custom script: call DestroyGroup(udg_Scream_Damage_Group)

  • Power Slam
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Power Slam
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Power_Slam_Caster = (Triggering unit)
      • Set Power_Slam_Target = (Target unit of ability being cast)
      • Set Power_Slam_Location = (Position of Power_Slam_Target)
      • Set Power_Slam_Owner = (Owner of Power_Slam_Caster)
      • Set Power_Slam_Ability_Level = (Level of (Ability being cast) for Power_Slam_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Power_Slam_Strength = (Strength of Power_Slam_Caster (Include bonuses))
      • Set Power_Slam_Damage_Multiplier = (2 x Power_Slam_Ability_Level)
      • Set Power_Slam_Damage = ((Real(Power_Slam_Strength)) x (Real(Power_Slam_Damage_Multiplier)))
      • Set Power_Slam_Base_Chance = 15.00
      • Set Power_Slam_Total_Chance = (Power_Slam_Base_Chance x (Real(Power_Slam_Ability_Level)))
      • Set Power_Slam_Dummy_Ability = Power Slam(dummy)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Damaging the Target --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Cause Power_Slam_Caster to damage Power_Slam_Target, dealing Power_Slam_Damage damage of attack type Spells and damage type Unknown
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Power_Slam_Location using Abilities\Weapons\Bolt\BoltImpact.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Power_Slam_Location using Abilities\Spells\Human\StormBolt\StormBoltMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Giving a chance to trigger the bonus actions --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Random real number between 1.00 and 100.00) Less than or equal to Power_Slam_Total_Chance
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the Dummy, ordering it to cast a spell --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Power_Slam_Owner at Power_Slam_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Power_Slam_Dummy_Ability to (Last created unit)
          • Unit - Set level of Power_Slam_Dummy_Ability for (Last created unit) to Power_Slam_Ability_Level
          • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt Power_Slam_Target
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating nice special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect at Power_Slam_Location using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
        • Else - Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating and setting floating text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Floating Text - Create floating text that reads ((String((Integer(Power_Slam_Damage)))) + !) above Power_Slam_Target with Z offset 0.00, using font size 10.00, color (0.00%, 40.00%, 100.00%), and 0.00% transparency
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
      • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
      • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing Leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Power_Slam_Location)

  • Termal Eruption
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Termal Eruption
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Termal_Eruption_Caster = (Triggering unit)
      • Set Termal_Eruption_Owner = (Owner of Termal_Eruption_Caster)
      • Set Termal_Eruption_Location = (Target point of ability being cast)
      • Set Termal_Eruption_Ability_Level = (Level of (Ability being cast) for Termal_Eruption_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Termal_Eruption_Area_of_Effect = 200.00
      • Set Termal_Eruption_Base_Damage = 90.00
      • Set Termal_Eruption_Total_Damage = (Termal_Eruption_Base_Damage x (Real(Termal_Eruption_Ability_Level)))
      • Set Termal_Eruption_Loop_Number = 18
      • Set Termal_Eruption_Dummy_Ability = Termal Eruption(dummy)
      • Set Termal_Eruption_DummyAbility2 = Termal Eruption2(dummy)
      • Set Termal_Eruption_Damage_Group = (Units within Termal_Eruption_Area_of_Effect of Termal_Eruption_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of Termal_Eruption_Owner) Equal t
      • -------- ------------------------------------------------------------------------------------------------- --------
      • For each (Integer A) from 1 to Termal_Eruption_Loop_Number, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting Loop Location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Termal_Eruption_Loop_Location = (Termal_Eruption_Location offset by 50.00 towards (360.00 x ((Real((Integer A))) / (Real(Termal_Eruption_Loop_Number)))) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the Dummy, ordering it to cast a spell --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Termal_Eruption_Owner at Termal_Eruption_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Termal_Eruption_Dummy_Ability to (Last created unit)
          • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm Termal_Eruption_Loop_Location
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing Leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call RemoveLocation(udg_Termal_Eruption_Loop_Location)
          • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in Termal_Eruption_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Damaging the units from unit group and creating nice special effects --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause Termal_Eruption_Caster to damage (Picked unit), dealing Termal_Eruption_Total_Damage damage of attack type Spells and damage type Unknown
          • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Other\CrushingWave\CrushingWaveDamage.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Dummy, ordering it to cast a spell --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy for Termal_Eruption_Owner at Termal_Eruption_Location facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Termal_Eruption_DummyAbility2 to (Last created unit)
      • Unit - Set level of Termal_Eruption_DummyAbility2 for (Last created unit) to Termal_Eruption_Ability_Level
      • Unit - Order (Last created unit) to Human Mountain King - Thunder Clap
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Termal_Eruption_Location using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Termal_Eruption_Location using Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing Leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Termal_Eruption_Location)
      • Custom script: call DestroyGroup(udg_Termal_Eruption_Damage_Group)

  • Multi Shot
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Multi Shot
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Multi_Shot_Caster = (Triggering unit)
      • Set Multi_Shot_Owner = (Owner of Multi_Shot_Caster)
      • Set Multi_Shot_Ability_Level = (Level of (Ability being cast) for Multi_Shot_Caster)
      • Set Multi_Shot_Facing = (Facing of Multi_Shot_Caster)
      • Set Multi_Shot_Location = (Position of Multi_Shot_Caster)
      • Set Multi_Shot_Location_2 = (Target point of ability being cast)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Multi_Shot_Base_Arrow_Count = 10
      • Set Multi_Shot_Total_Arrow_Count = ((Multi_Shot_Base_Arrow_Count / 2) x Multi_Shot_Ability_Level)
      • Set Multi_Shot_Dummy_Ability = Multi Shot(dummy)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Dummy, ordering it to cast a spell --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy for Multi_Shot_Owner at Multi_Shot_Location facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Multi_Shot_Dummy_Ability to (Last created unit)
      • Unit - Set level of Multi_Shot_Dummy_Ability for (Last created unit) to Multi_Shot_Ability_Level
      • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm Multi_Shot_Location_2
      • -------- ------------------------------------------------------------------------------------------------- --------
      • For each (Integer A) from 1 to Multi_Shot_Total_Arrow_Count, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting Loop Location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Multi_Shot_Loop_Location = (Multi_Shot_Location offset by 50.00 towards ((Angle from Multi_Shot_Location to Multi_Shot_Location_2) + (2.00 x (Real((Integer A))))) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the Dummy, ordering it to cast a spell --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Multi_Shot_Owner at Multi_Shot_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Multi_Shot_Dummy_Ability to (Last created unit)
          • Unit - Set level of Multi_Shot_Dummy_Ability for (Last created unit) to Multi_Shot_Ability_Level
          • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm Multi_Shot_Loop_Location
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting Loop Location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Multi_Shot_Loop_Location2 = (Multi_Shot_Location offset by 50.00 towards ((Angle from Multi_Shot_Location to Multi_Shot_Location_2) - (2.00 x (Real((Integer A))))) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the Dummy, ordering it to cast a spell --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Multi_Shot_Owner at Multi_Shot_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Multi_Shot_Dummy_Ability to (Last created unit)
          • Unit - Set level of Multi_Shot_Dummy_Ability for (Last created unit) to Multi_Shot_Ability_Level
          • Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm Multi_Shot_Loop_Location2
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing Leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call RemoveLocation(udg_Multi_Shot_Loop_Location)
          • Custom script: call RemoveLocation(udg_Multi_Shot_Loop_Location2)
          • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing Leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Multi_Shot_Location)
      • Custom script: call RemoveLocation(udg_Multi_Shot_Location_2)

  • Aqua Burst
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Aqua Burst
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Aqua_Burst_Caster = (Triggering unit)
      • Set Aqua_Burst_Location = (Target point of ability being cast)
      • Set Aqua_Burst_Ability_Level = (Level of (Ability being cast) for Aqua_Burst_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Aqua_Burst_Area_of_Effect = 175.00
      • Set Aqua_Burst_Base_Damage = 70.00
      • Set Aqua_Burst_Total_Damage = (Aqua_Burst_Base_Damage x (Real(Aqua_Burst_Ability_Level)))
      • Set Aqua_Burst_Damage_Group = (Units within Aqua_Burst_Area_of_Effect of Aqua_Burst_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of Aqua_Burst_Caster)) Equal to T
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in Aqua_Burst_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Damaging the units from unit group and creating nice special effects --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause Aqua_Burst_Caster to damage (Picked unit), dealing Aqua_Burst_Total_Damage damage of attack type Spells and damage type Unknown
          • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Other\CrushingWave\CrushingWaveDamage.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Moving the unit --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Pause Aqua_Burst_Caster
      • Unit - Move Aqua_Burst_Caster instantly to Aqua_Burst_Location
      • Unit - Unpause Aqua_Burst_Caster
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Playing a nice unit animation --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Animation - Play Aqua_Burst_Caster's birth animation
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect attached to the origin of Aqua_Burst_Caster using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing Leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Aqua_Burst_Location)
      • Custom script: call DestroyGroup(udg_Aqua_Burst_Damage_Group)

  • Napalm Strike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Napalm Strike
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Napalm_Strike_Caster = (Triggering unit)
      • Set Napalm_Strike_Location = (Target point of ability being cast)
      • Set Napalm_Strike_Owner = (Owner of Napalm_Strike_Caster)
      • Set Napalm_Strike_Ability_Level = (Level of (Ability being cast) for Napalm_Strike_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Napalm_Strike_Area_of_Effect = 225.00
      • Set Napalm_Strike_Base_Damage = 90.00
      • Set Napalm_Strike_Total_Damage = (Napalm_Strike_Base_Damage x (Real(Napalm_Strike_Ability_Level)))
      • Set Napalm_Strike_Dummy_Ability = Napalm Strike(dummy)
      • Set Napalm_Strike_Damage_Group = (Units within Napalm_Strike_Area_of_Effect of Napalm_Strike_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of Napalm_Strike_Caster)) E
      • For each (Integer A) from 1 to 25, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Napalm_Strike_Owner at Napalm_Strike_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Animation - Change (Last created unit) flying height to (20.00 x (Real((Integer A)))) at 0.00
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect attached to the chest of (Last created unit) using Abilities\Spells\Human\Feedback\SpellBreakerAttack.mdl
          • Special Effect - Destroy (Last created special effect)
      • Unit Group - Pick every unit in Napalm_Strike_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Damaging the Arera and creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause Napalm_Strike_Caster to damage (Picked unit), dealing Napalm_Strike_Total_Damage damage of attack type Spells and damage type Normal
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl
          • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Napalm_Strike_Location using Abilities\Spells\Other\Doom\DoomDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Napalm_Strike_Location using Objects\Spawnmodels\Other\NeutralBuildingExplosion\NeutralBuildingExplosion.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating and setting the dummy --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy for Napalm_Strike_Owner at Napalm_Strike_Location facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Napalm_Strike_Dummy_Ability to (Last created unit)
      • Unit - Set level of Napalm_Strike_Dummy_Ability for (Last created unit) to Napalm_Strike_Ability_Level
      • Unit - Order (Last created unit) to Human Blood Mage - Flame Strike Napalm_Strike_Location
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Napalm_Strike_Location)
      • Custom script: call DestroyGroup(udg_Napalm_Strike_Damage_Group)

  • Wound Poison
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Wound Poison
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting casting unit --------
      • Custom script: local unit a = GetTriggerUnit()
      • -------- Getting spell target --------
      • Custom script: local unit b = GetSpellTargetUnit()
      • -------- Getting ability level --------
      • Custom script: local integer c = GetUnitAbilityLevelSwapped(GetSpellAbilityId(), a)
      • -------- Getting loop start value --------
      • Custom script: local integer d = 1
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Inital base damage --------
      • Custom script: local real e = 60.
      • -------- Inital total damage --------
      • Custom script: local real f = (e*I2R(c))
      • -------- Base damage over time --------
      • Custom script: local real g = 5.
      • -------- Total damage over time --------
      • Custom script: local real h = (g*I2R(c))
      • -------- Duration between loops --------
      • Custom script: local real i = .5
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Damaging the unit and creating nice special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call UnitDamageTarget(a, b, f, true,false, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_UNKNOWN,WEAPON_TYPE_WHOKNOWS)
      • Custom script: call DestroyEffect (AddSpecialEffectTarget("Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl",b,"chest"))
      • Custom script: call DestroyEffect (AddSpecialEffectTarget("Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl",b,"origin"))
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Starting the loop --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: loop
      • Custom script: exitwhen GetBooleanOr(d > 20, GetUnitState(b, UNIT_STATE_LIFE) <= 0.405)
      • Custom script: call TriggerSleepAction(i)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Damaging the unit and creating nice special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call UnitDamageTarget(a, b, h, true, false, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_UNKNOWN,WEAPON_TYPE_WHOKNOWS)
      • Custom script: call DestroyEffect (AddSpecialEffectTarget("Objects\\Spawnmodels\\Other\\HumanBloodCinematicEffect\\HumanBloodCinematicEffect.mdl",b,"chest"))
      • Custom script: call DestroyEffect (AddSpecialEffectTarget("Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl",b,"chest"))
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: set d = d + 1
      • Custom script: endloop
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Nulling Locals --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: set a = null
      • Custom script: set b = null

  • Fire Wall
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fire Wall
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Fire_Wall_Caster = (Triggering unit)
      • Set Fire_Wall_Owner = (Owner of Fire_Wall_Caster)
      • Set Fire_Wall_Ability_Level = (Level of (Ability being cast) for Fire_Wall_Caster)
      • Set Fire_Wall_Location = (Target point of ability being cast)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Fire_Wall_Duration = 10.00
      • Set Fire_Wall_Distance = 70.00
      • Set Fire_Wall_Dummy_Ability = FireWall(dummy)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating and setting the dummy unit --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy(Fire Wall) for Fire_Wall_Owner at Fire_Wall_Location facing Default building facing degrees
      • Unit - Add a Fire_Wall_Duration second Generic expiration timer to (Last created unit)
      • Unit - Add Fire_Wall_Dummy_Ability to (Last created unit)
      • Unit - Set level of Fire_Wall_Dummy_Ability for (Last created unit) to Fire_Wall_Ability_Level
      • Unit - Order (Last created unit) to Night Elf Demon Hunter - Activate Immolation
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Fire_Wall_Location using Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • For each (Integer A) from 1 to 5, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Fire_Wall_Loop_Location = (Fire_Wall_Location offset by (Fire_Wall_Distance x (Real((Integer A)))) towards ((Facing of Fire_Wall_Caster) - 90.00) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy(Fire Wall) for Fire_Wall_Owner at Fire_Wall_Loop_Location facing Default building facing degrees
          • Unit - Add a Fire_Wall_Duration second Generic expiration timer to (Last created unit)
          • Unit - Add Fire_Wall_Dummy_Ability to (Last created unit)
          • Unit - Set level of Fire_Wall_Dummy_Ability for (Last created unit) to Fire_Wall_Ability_Level
          • Unit - Order (Last created unit) to Night Elf Demon Hunter - Activate Immolation
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect at Fire_Wall_Loop_Location using Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl
          • Special Effect - Destroy (Last created special effect)
          • Special Effect - Create a special effect at Fire_Wall_Loop_Location using Abilities\Spells\Human\Feedback\SpellBreakerAttack.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Fire_Wall_Loop_Location_2 = (Fire_Wall_Location offset by (Fire_Wall_Distance x (Real((Integer A)))) towards ((Facing of Fire_Wall_Caster) + 90.00) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy(Fire Wall) for Fire_Wall_Owner at Fire_Wall_Loop_Location_2 facing Default building facing degrees
          • Unit - Add a Fire_Wall_Duration second Generic expiration timer to (Last created unit)
          • Unit - Add Fire_Wall_Dummy_Ability to (Last created unit)
          • Unit - Set level of Fire_Wall_Dummy_Ability for (Last created unit) to Fire_Wall_Ability_Level
          • Unit - Order (Last created unit) to Night Elf Demon Hunter - Activate Immolation
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect at Fire_Wall_Loop_Location_2 using Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl
          • Special Effect - Destroy (Last created special effect)
          • Special Effect - Create a special effect at Fire_Wall_Loop_Location_2 using Abilities\Spells\Human\Feedback\SpellBreakerAttack.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call RemoveLocation(udg_Fire_Wall_Loop_Location)
          • Custom script: call RemoveLocation(udg_Fire_Wall_Loop_Location_2)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Fire_Wall_Location)

  • Shadowstep
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Shadowstep
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Shadowstep_Caster = (Triggering unit)
      • Set Shadowstep_Target = (Target unit of ability being cast)
      • Set Shadowstep_Ability_Level = (Level of (Ability being cast) for Shadowstep_Caster)
      • Set Shadowstep_Location = ((Position of Shadowstep_Target) offset by 125.00 towards (Facing of Shadowstep_Caster) degrees)
      • Set Shadowstep_Location_2 = (Position of Shadowstep_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Shadowstep_Loop_Number = 20
      • Set Shadowstep_Base_Damage = (Current movement speed of Shadowstep_Caster)
      • Set Shadowstep_Damage_Multiplier = 0.35
      • Set Shadowstep_Total_Damage = (Shadowstep_Base_Damage x (Shadowstep_Damage_Multiplier x (Real(Shadowstep_Ability_Level))))
      • Set Shadowstep_Calculation = ((Distance between Shadowstep_Location and Shadowstep_Location_2) / (Real(Shadowstep_Loop_Number)))
      • For each (Integer A) from 1 to Shadowstep_Loop_Number, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Shadowstep_Loop_Location = (Shadowstep_Location_2 offset by (Shadowstep_Calculation x (Real((Integer A)))) towards (Facing of Shadowstep_Caster) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy(Shadowstep) for (Owner of Shadowstep_Caster) at Shadowstep_Loop_Location facing Default building facing degrees
          • Unit - Add a 2.50 second Generic expiration timer to (Last created unit)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call RemoveLocation(udg_Shadowstep_Loop_Location)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Moving the caster --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Pause Shadowstep_Caster
      • Unit - Move Shadowstep_Caster instantly to Shadowstep_Location, facing (Facing of Shadowstep_Target) degrees
      • Unit - Unpause Shadowstep_Caster
      • Unit - Cause Shadowstep_Caster to damage Shadowstep_Target, dealing Shadowstep_Total_Damage damage of attack type Spells and damage type Unknown
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect attached to the origin of Shadowstep_Target using Abilities\Spells\Human\Invisibility\InvisibilityTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating and setting the floating text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Floating Text - Create floating text that reads ((String((Integer(Shadowstep_Total_Damage)))) + !) above Shadowstep_Target with Z offset 0.00, using font size 10.00, color (80.00%, 80.00%, 80.00%), and 0.00% transparency
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
      • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
      • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Shadowstep_Location)
      • Custom script: call RemoveLocation(udg_Shadowstep_Location_2)

  • Sinister Strike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Sinister Strike
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Sinister_Strike_Caster = (Triggering unit)
      • Set Sinister_Strike_Target = (Target unit of ability being cast)
      • Set Sinister_Strike_Ability_Level = (Level of (Ability being cast) for Sinister_Strike_Caster)
      • Set Sinister_Strike_Location = (Position of Sinister_Strike_Target)
      • Set Sinister_Strike_Owner = (Owner of Sinister_Strike_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Sinister_Strike_Dummy_Ability = Sinister Strike(dummy)
      • Set Sinister_Strike_Dummy_Ability2 = Sinister Strike(dummy_bonus)
      • Set Sinister_Strike_Atribute = (Agility of Sinister_Strike_Caster (Include bonuses))
      • Set Sinister_Strike_Damage_Factor = 2.00
      • Set Sinister_Strike_Total_Damage = (Sinister_Strike_Damage_Factor x ((Real(Sinister_Strike_Atribute)) x (Real(Sinister_Strike_Ability_Level))))
      • Set Sinister_Strike_Normal_Armor = (Sinister_Strike_Ability_Level + 2)
      • Set Sinister_Strike_Bonus_Armor = (Sinister_Strike_Ability_Level + 4)
      • Set Sinister_Strike_Base_Chance = 15.00
      • Set Sinister_Strike_Total_Chance = (Sinister_Strike_Base_Chance x (Real(Sinister_Strike_Ability_Level)))
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating a big special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • For each (Integer A) from 1 to 10, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect attached to the origin of Sinister_Strike_Target using Abilities\Spells\Undead\DeathandDecay\DeathandDecayTarget.mdl
          • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Damaging the Target --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Cause Sinister_Strike_Caster to damage Sinister_Strike_Target, dealing Sinister_Strike_Total_Damage damage of attack type Spells and damage type Unknown
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Checking for a chance --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Random real number between 1.00 and 100.00) Less than or equal to Sinister_Strike_Total_Chance
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Sinister_Strike_Owner at Sinister_Strike_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Sinister_Strike_Dummy_Ability2 to (Last created unit)
          • Unit - Set level of Sinister_Strike_Dummy_Ability for (Last created unit) to Sinister_Strike_Ability_Level
          • Unit - Order (Last created unit) to Neutral Alchemist - Acid Bomb Sinister_Strike_Target
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect attached to the origin of Sinister_Strike_Target using units\nightelf\SpiritOfVengeance\SpiritOfVengeance.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating floating text --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Floating Text - Create floating text that reads ((String((Integer(Sinister_Strike_Total_Damage)))) + ( / - + ((String(Sinister_Strike_Bonus_Armor)) + !))) above Sinister_Strike_Target with Z offset 0.00, using font size 10.00, color (40.00%, 0.00%, 50.00%), and 0.00% transparency
        • Else - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Sinister_Strike_Owner at Sinister_Strike_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Sinister_Strike_Dummy_Ability to (Last created unit)
          • Unit - Set level of Sinister_Strike_Dummy_Ability for (Last created unit) to Sinister_Strike_Ability_Level
          • Unit - Order (Last created unit) to Neutral Alchemist - Acid Bomb Sinister_Strike_Target
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating floating text --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Floating Text - Create floating text that reads ((String((Integer(Sinister_Strike_Total_Damage)))) + ( / - + ((String(Sinister_Strike_Normal_Armor)) + !))) above Sinister_Strike_Target with Z offset 0.00, using font size 10.00, color (40.00%, 0.00%, 50.00%), and 0.00% transparency
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting floating text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
      • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
      • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating floating text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Sinister_Strike_Location)

  • Ion Canon
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Ion Canon
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Ion_Canon_Caster = (Triggering unit)
      • Set Ion_Canon_Ability_Level = (Level of (Ability being cast) for Ion_Canon_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Ion_Canon_Distance = 50.00
      • Set Ion_Canon_Loop_Number = 25
      • Set Ion_Canon_Base_Damage = 45.00
      • Set Ion_Canon_Total_Damage = (Ion_Canon_Base_Damage x (Real(Ion_Canon_Ability_Level)))
      • Set Ion_Canon_Base_Mana_Burn = 30.00
      • Set Ion_Canon_Total_Mana_Burn = (Ion_Canon_Base_Mana_Burn x (Real(Ion_Canon_Ability_Level)))
      • Set Ion_Canon_AoE = 75.00
      • Set Ion_Canon_Location = ((Position of Ion_Canon_Caster) offset by 100.00 towards (Facing of Ion_Canon_Caster) degrees)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating and setting the dummy --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy(Ion Canon Start) for (Owner of Ion_Canon_Caster) at Ion_Canon_Location facing (Facing of Ion_Canon_Caster) degrees
      • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
      • For each (Integer A) from 1 to Ion_Canon_Loop_Number, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting a location --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Ion_Canon_Loop_Location = (Ion_Canon_Location offset by (Ion_Canon_Distance x (Real((Integer A)))) towards (Facing of Ion_Canon_Caster) degrees)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy(Ion Canon) for (Owner of Ion_Canon_Caster) at Ion_Canon_Loop_Location facing (Facing of Ion_Canon_Caster) degrees
          • Unit - Add Ion_Canon(dummy height trick) to (Last created unit)
          • Unit - Remove Ion_Canon(dummy height trick) from (Last created unit)
          • Animation - Change (Last created unit) flying height to 100.00 at 0.00
          • Unit - Turn collision for (Last created unit) Off
          • Unit - Add a (0.85 - (0.01 x (Real((Integer A))))) second Generic expiration timer to (Last created unit)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Setting the unit group --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Ion_Canon_Damage_Group = (Units within Ion_Canon_AoE of Ion_Canon_Loop_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of Ion_Canon_Caster)) Equal to True))))
          • Unit Group - Pick every unit in Ion_Canon_Damage_Group and do (Actions)
            • Loop - Actions
              • -------- ------------------------------------------------------------------------------------------------- --------
              • -------- Damaging the Arera, burning mana and creating special effects --------
              • -------- ------------------------------------------------------------------------------------------------- --------
              • Unit - Cause Ion_Canon_Caster to damage (Picked unit), dealing Ion_Canon_Total_Damage damage of attack type Spells and damage type Unknown
              • Unit - Set mana of (Picked unit) to ((Mana of (Picked unit)) - Ion_Canon_Total_Mana_Burn)
              • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Weapons\DragonHawkMissile\DragonHawkMissile.mdl
              • Special Effect - Destroy (Last created special effect)
              • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl
              • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call DestroyGroup(udg_Ion_Canon_Damage_Group)
          • Custom script: call RemoveLocation(udg_Ion_Canon_Loop_Location)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Ion_Canon_Location)

  • Holy Blessing
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Holy Blessing
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: local unit u = GetTriggerUnit()
      • Custom script: local unit t = GetSpellTargetUnit()
      • Custom script: local integer i = GetUnitAbilityLevelSwapped(GetSpellAbilityId(), u)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Heal base value --------
      • Custom script: local real r = 90.
      • -------- Heal total value --------
      • Custom script: local real h = r * I2R(i)
      • -------- Base duration --------
      • Custom script: local real w = 2.
      • -------- Total Duration --------
      • Custom script: local real w2 = w * i
      • -------- Special effects --------
      • Custom script: local string s = "Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl"
      • Custom script: local string s2 = "Abilities\\Spells\\Human\\DivineShield\\DivineShieldTarget.mdl"
      • -------- Attachment point --------
      • Custom script: local string a = "origin"
      • Custom script: local effect e
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Starting the spell effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Healing unit --------
      • Custom script: call SetWidgetLife (t, ( GetUnitStateSwap(UNIT_STATE_LIFE, t) + h))
      • -------- Making unit invulnerable --------
      • Custom script: call SetUnitInvulnerable (t, true)
      • -------- Creating special effect --------
      • Custom script: call DestroyEffect (AddSpecialEffectTarget(s , t, a))
      • -------- Creating special effect that will last as long as last duration --------
      • Custom script: set e = AddSpecialEffectTarget (s2, t, a)
      • -------- Waiting for the end of duration --------
      • Custom script: call PolledWait (w2)
      • -------- Making unit back vulnerable --------
      • Custom script: call SetUnitInvulnerable (t, false)
      • -------- Destroying special effect --------
      • Custom script: call DestroyEffect(e)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Nulling locals --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: set u = null
      • Custom script: set t = null
      • Custom script: set e = null

  • Earth Fury
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Earth Fury
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Earth_Fury_Caster = (Triggering unit)
      • Set Earth_Fury_Owner = (Owner of Earth_Fury_Caster)
      • Set Earth_Fury_Location = (Position of Earth_Fury_Caster)
      • Set Earth_Fury_Ability_Level = (Level of (Ability being cast) for Earth_Fury_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Earth_Fury_Dummy_Ability = Earth Fury(dummy)
      • Set Earth_Fury_Dummy_Ability_2 = Earth Fury(dummy frenzy)
      • Set Earth_Fury_Chance = 45.00
      • Set Earth_Fury_Base_Damage = 50.00
      • Set Earth_Fury_Bonus_Damage = 75.00
      • Set Earth_Fury_Total_Damage = (Earth_Fury_Base_Damage + (Earth_Fury_Bonus_Damage x (Real(Earth_Fury_Ability_Level))))
      • Set Earth_Fury_Base_Area_of_Effect = 125.00
      • Set Earth_Fury_AoE_Bouns = 75.00
      • Set Earth_Fury_Total_Area_of_Effec = (Earth_Fury_Base_Area_of_Effect + (Earth_Fury_AoE_Bouns x (Real(Earth_Fury_Ability_Level))))
      • Set Earth_Fury_Damage_Group = (Units within Earth_Fury_Total_Area_of_Effec of Earth_Fury_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of Earth_Fury_Owner) Equal to True))))
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- If/Then/Else checks for a chance --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Random real number between 1.00 and 100.00) Less than or equal to Earth_Fury_Chance
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for Earth_Fury_Owner at Earth_Fury_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Earth_Fury_Dummy_Ability to (Last created unit)
          • Unit - Set level of Earth_Fury_Dummy_Ability for (Last created unit) to Earth_Fury_Ability_Level
          • Unit - Order (Last created unit) to Night Elf Warden - Fan Of Knives
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy(Earth Fury) for Earth_Fury_Owner at Earth_Fury_Location facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add Earth_Fury_Dummy_Ability_2 to (Last created unit)
          • Unit - Set level of Earth_Fury_Dummy_Ability_2 for (Last created unit) to Earth_Fury_Ability_Level
          • Unit - Order (Last created unit) to Undead Necromancer - Unholy Frenzy Earth_Fury_Caster
        • Else - Actions
      • Unit Group - Pick every unit in Earth_Fury_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Damaging the Arera and creating special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause Earth_Fury_Caster to damage (Picked unit), dealing Earth_Fury_Total_Damage damage of attack type Spells and damage type Unknown
          • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
          • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Earth_Fury_Location using Objects\Spawnmodels\Undead\ImpaleTargetDust\ImpaleTargetDust.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Earth_Fury_Location using Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Earth_Fury_Location using Doodads\LordaeronSummer\Terrain\LoardaeronRockChunks\LoardaeronRockChunks0.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Earth_Fury_Location)
      • Custom script: call DestroyGroup(udg_Earth_Fury_Damage_Group)

  • Thunder Rage
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Thunder Rage
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Thunder_Rage_Caster = (Triggering unit)
      • Set Thunder_Rage_Ability_Level = (Level of (Ability being cast) for Thunder_Rage_Caster)
      • Set Thunder_Rage_Location = (Target point of ability being cast)
      • Set Thunder_Rage_Owner = (Owner of Thunder_Rage_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Thunder_Rage_Area_of_Effect = 225.00
      • Set Thunder_Rage_Mini_AoE = 85.00
      • Set Thunder_Rage_Base_Mini_Damage = 25.00
      • Set Thunder_Rage_Damage_Factor = 0.20
      • Set Thunder_Rage_Base_Unit_HP = 75.00
      • Set Thunder_Rage_Total_Mini_Damage = (Thunder_Rage_Base_Mini_Damage x (Real(Thunder_Rage_Ability_Level)))
      • Set Thunder_Rage_Unit_HP = (Thunder_Rage_Base_Unit_HP x (Real(Thunder_Rage_Ability_Level)))
      • Set Thunder_Rage_Total_Damage = (Thunder_Rage_Damage_Factor x (Real(Thunder_Rage_Ability_Level)))
      • Set Thunder_Rage_Damage_Group = (Units within Thunder_Rage_Area_of_Effect of Thunder_Rage_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of Thunder_Rage_Owner) Equal to True)))
      • -------- ------------------------------------------------------------------------------------------------- --------
      • For each (Integer A) from 1 to 25, do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating the dummies as a ligtning effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Thunder_Rage_Loop_Location = (Thunder_Rage_Location offset by (Random real number between 0.00 and 20.00) towards (Random angle) degrees)
          • Unit - Create 1 Dummy(Raging Thunder) for Thunder_Rage_Owner at Thunder_Rage_Loop_Location facing (Random angle) degrees
          • Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
          • Animation - Change (Last created unit) flying height to (30.00 x (Real((Integer A)))) at 0.00
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call RemoveLocation(udg_Thunder_Rage_Loop_Location)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Checking for units that gets instantly killed --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in Thunder_Rage_Damage_Group and do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Life of (Picked unit)) Less than or equal to Thunder_Rage_Unit_HP
            • Then - Actions
              • -------- ------------------------------------------------------------------------------------------------- --------
              • -------- Instantly killing picked units --------
              • -------- ------------------------------------------------------------------------------------------------- --------
              • Unit - Cause Thunder_Rage_Caster to damage (Picked unit), dealing 5000.00 damage of attack type Spells and damage type Normal
              • -------- ------------------------------------------------------------------------------------------------- --------
              • -------- Prewenting to explode heroes, that could bug in multiplayer games --------
              • -------- ------------------------------------------------------------------------------------------------- --------
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Picked unit) is A Hero) Equal to False
                • Then - Actions
                  • -------- ------------------------------------------------------------------------------------------------- --------
                  • -------- Setting locations, creating another smaller group and expolding killed units --------
                  • -------- ------------------------------------------------------------------------------------------------- --------
                  • Set Thunder_Rage_Location2 = (Position of (Picked unit))
                  • Set Thunder_Rage_Mini_Damage_Group = (Units within Thunder_Rage_Mini_AoE of Thunder_Rage_Location2 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of Thunder_Rage_Owner) Equal to True))))
                  • Unit - Remove (Picked unit) from the game
                  • -------- ------------------------------------------------------------------------------------------------- --------
                  • -------- Creating nice special effect --------
                  • -------- ------------------------------------------------------------------------------------------------- --------
                  • Special Effect - Create a special effect at Thunder_Rage_Location2 using Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Unit Group - Pick every unit in Thunder_Rage_Mini_Damage_Group and do (Actions)
                    • Loop - Actions
                      • -------- ------------------------------------------------------------------------------------------------- --------
                      • -------- Damaging the smaller area, as a result of corpse explosion --------
                      • -------- ------------------------------------------------------------------------------------------------- --------
                      • Unit - Cause Thunder_Rage_Caster to damage (Picked unit), dealing Thunder_Rage_Total_Mini_Damage damage of attack type Spells and damage type Normal
                      • -------- ------------------------------------------------------------------------------------------------- --------
                      • -------- Creating nice special effect --------
                      • -------- ------------------------------------------------------------------------------------------------- --------
                      • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Human\FlakCannons\FlakTarget.mdl
                      • Special Effect - Destroy (Last created special effect)
                      • -------- ------------------------------------------------------------------------------------------------- --------
                  • -------- ------------------------------------------------------------------------------------------------- --------
                  • -------- Clearing leaks --------
                  • -------- ------------------------------------------------------------------------------------------------- --------
                  • Custom script: call DestroyGroup(udg_Thunder_Rage_Mini_Damage_Group)
                  • Custom script: call RemoveLocation(udg_Thunder_Rage_Location2)
                  • -------- ------------------------------------------------------------------------------------------------- --------
                • Else - Actions
            • Else - Actions
              • -------- ------------------------------------------------------------------------------------------------- --------
              • -------- Damaging units from the unit group --------
              • -------- ------------------------------------------------------------------------------------------------- --------
              • Unit - Cause Thunder_Rage_Caster to damage (Picked unit), dealing ((Max life of (Picked unit)) x Thunder_Rage_Total_Damage) damage of attack type Spells and damage type Unknown
              • -------- ------------------------------------------------------------------------------------------------- --------
              • -------- Creating nice special effect --------
              • -------- ------------------------------------------------------------------------------------------------- --------
              • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Orc\LightningShield\LightningShieldBuff.mdl
              • Special Effect - Destroy (Last created special effect)
              • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Thunder_Rage_Location using Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Thunder_Rage_Location using Abilities\Spells\Undead\FreezingBreath\FreezingBreathMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Thunder_Rage_Location)
      • Custom script: call DestroyGroup(udg_Thunder_Rage_Damage_Group)

  • Beast Attack
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Beast Attack
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Beast_Attack_Caster = (Triggering unit)
      • Set Beast_Attack_Target = (Target unit of ability being cast)
      • Set Beast_Attack_Ability_Level = (Level of (Ability being cast) for Beast_Attack_Caster)
      • Set Beast_Attack_Location = (Position of Beast_Attack_Caster)
      • Set Beast_Attack_Location2 = (Position of Beast_Attack_Target)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Beast_Attack_Max_Life = (Max life of Beast_Attack_Caster)
      • Set Beast_Attack_Damage_Splitter = 8
      • Set Beast_Attack_Atribute = (Strength of Beast_Attack_Caster (Include bonuses))
      • Set Beast_Attack_Life_Damage = (Beast_Attack_Max_Life / (Real(Beast_Attack_Damage_Splitter)))
      • Set Beast_Attack_Atribute_Damage = ((Real(Beast_Attack_Atribute)) x (Real(Beast_Attack_Ability_Level)))
      • Set Beast_Attack_Total_Damage = (Beast_Attack_Life_Damage + Beast_Attack_Atribute_Damage)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Knockback Setings --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set KnockbackAngle = (Angle from Beast_Attack_Location to Beast_Attack_Location2)
      • Set KnockbackSpeed = 12.00
      • Set KnockbackDistance = 300.00
      • Hashtable - Save KnockbackSpeed as (Key speed) of (Key (Target unit of ability being cast)) in KnockbackTable
      • Hashtable - Save KnockbackAngle as (Key angle) of (Key (Target unit of ability being cast)) in KnockbackTable
      • Hashtable - Save KnockbackDistance as (Key distance) of (Key (Target unit of ability being cast)) in KnockbackTable
      • Unit - Pause Beast_Attack_Target
      • Unit - Turn collision for Beast_Attack_Target Off
      • Unit Group - Add Beast_Attack_Target to KnockbackUnits
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Damaging the target --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Cause Beast_Attack_Caster to damage Beast_Attack_Target, dealing Beast_Attack_Total_Damage damage of attack type Spells and damage type Unknown
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect attached to the hand, left of Beast_Attack_Caster using units\human\phoenix\phoenix.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect attached to the hand, right of Beast_Attack_Caster using units\human\phoenix\phoenix.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Crreating Floating Text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Floating Text - Create floating text that reads ((String((Integer(Beast_Attack_Total_Damage)))) + !) above Beast_Attack_Caster with Z offset 0.00, using font size 10.00, color (100.00%, 5.00%, 5.00%), and 0.00% transparency
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
      • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
      • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Beast_Attack_Location)
      • Custom script: call RemoveLocation(udg_Beast_Attack_Location2)

  • KnockbackUnits
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Leave this actions as they are/// You can add change special effects but that's it --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in KnockbackUnits and do (Actions)
        • Loop - Actions
          • Set KnockbackSpeed = (Load (Key speed) of (Key (Picked unit)) from KnockbackTable)
          • Set KnockbackAngle = (Load (Key angle) of (Key (Picked unit)) from KnockbackTable)
          • Set KnockbackDistance = (Load (Key distance) of (Key (Picked unit)) from KnockbackTable)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • KnockbackDistance Greater than 0.00
            • Then - Actions
              • Set Knockback_Loc1 = (Position of (Picked unit))
              • Set Knockback_Loc2 = (Knockback_Loc1 offset by KnockbackSpeed towards KnockbackAngle degrees)
              • Destructible - Pick every destructible within 175.00 of Knockback_Loc1 and do (Destructible - Kill (Picked destructible))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Terrain pathing at Knockback_Loc2 of type Walkability is off) Equal to True
                • Then - Actions
                  • Unit - Unpause Beast_Attack_Target
                  • Unit - Turn collision for Knockback_Target On
                  • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in KnockbackTable
                  • Unit Group - Remove (Picked unit) from KnockbackUnits
                • Else - Actions
                  • Unit - Move (Picked unit) instantly to Knockback_Loc2
                  • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Hashtable - Save (KnockbackDistance - KnockbackSpeed) as (Key distance) of (Key (Picked unit)) in KnockbackTable
                  • Custom script: call RemoveLocation(udg_Knockback_Loc1)
                  • Custom script: call RemoveLocation(udg_Knockback_Loc2)
            • Else - Actions
              • Unit - Unpause Beast_Attack_Target
              • Unit - Turn collision for Knockback_Target On
              • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in KnockbackTable
              • Unit Group - Remove (Picked unit) from KnockbackUnits

  • Desecration
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Desecration
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Desecration_Caster = (Triggering unit)
      • Set Desecration_Location = (Target point of ability being cast)
      • Set Desecration_Ability_Level = (Level of (Ability being cast) for Desecration_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Desecration_Area_of_Effect = 250.00
      • Set Desecration_Base_Damage = 20.00
      • Set Desecration_Level_Damage = (Desecration_Base_Damage x (Real(Desecration_Ability_Level)))
      • Set Desecration_Base_Heal = 10.00
      • Set Desecration_Level_Heal = (Desecration_Base_Heal x (Real(Desecration_Ability_Level)))
      • Set Desecration_Corpse_Group = (Units within Desecration_Area_of_Effect of Desecration_Location matching ((((Matching unit) is A structure) Equal to False) and (((Matching unit) is alive) Not equal to True)))
      • Set Desecration_Damage_Group = (Units within Desecration_Area_of_Effect of Desecration_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of Desecration_Caster)) Equal t
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in Desecration_Corpse_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Getting final calculations --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Set Desecration_Explosion_Location = (Position of (Picked unit))
          • Set Desecration_Corpse_Counter = (Number of units in Desecration_Corpse_Group)
          • Set Desecration_Total_Damage = (Desecration_Level_Damage x (Real(Desecration_Corpse_Counter)))
          • Set Desecration_Total_Heal = (Desecration_Level_Heal x (Real(Desecration_Corpse_Counter)))
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating nice special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect at Desecration_Explosion_Location using Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl
          • Special Effect - Destroy (Last created special effect)
          • Special Effect - Create a special effect at Desecration_Explosion_Location using Abilities\Weapons\AvengerMissile\AvengerMissile.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Removing unit, as we don't need it anymore --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Remove (Picked unit) from the game
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Clearing leaks --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Custom script: call RemoveLocation(udg_Desecration_Explosion_Location)
          • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in Desecration_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Damaging the units --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause Desecration_Caster to damage (Picked unit), dealing Desecration_Total_Damage damage of attack type Spells and damage type Unknown
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Desecration_Corpse_Counter Greater than 0
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating nice special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect attached to the origin of Desecration_Caster using Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the floating text --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Floating Text - Create floating text that reads (+ + (String((Integer(Desecration_Total_Heal))))) above Desecration_Caster with Z offset 0.00, using font size 10.00, color (40.00%, 0.00%, 50.00%), and 0.00% transparency
          • Floating Text - Change (Last created floating text): Disable permanence
          • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
          • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
          • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
          • -------- ------------------------------------------------------------------------------------------------- --------
        • Else - Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Desecration_Location using Abilities\Spells\Human\FlameStrike\FlameStrikeTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Desecration_Location using Objects\Spawnmodels\Undead\UDeathMedium\UDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Desecration_Location using Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Healing the caster --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Set life of Desecration_Caster to ((Life of Desecration_Caster) + Desecration_Total_Heal)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Resseting the counter --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Desecration_Corpse_Counter = 0
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Desecration_Location)
      • Custom script: call DestroyGroup(udg_Desecration_Corpse_Group)
      • Custom script: call DestroyGroup(udg_Desecration_Damage_Group)

  • Shadow Walk
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Shadow Walk
    • Actions
      • -------- Getting the caster --------
      • Custom script: local unit u = GetTriggerUnit()
      • -------- Getting owning player --------
      • Custom script: local player p = GetOwningPlayer(u)
      • -------- Getting lefel of an ability --------
      • Custom script: local integer i = GetUnitAbilityLevelSwapped(GetSpellAbilityId(),u)
      • -------- Getting ability raw code --------
      • Custom script: local integer s = 'A00U'
      • -------- Setting the base duration --------
      • Custom script: local real t1 = 4.
      • -------- Setting the total duration --------
      • Custom script: local real t2 = (t1*I2R(i))
      • -------- Setting the attachment point --------
      • Custom script: local string a = "chest"
      • -------- Setting the model path of the special effect --------
      • Custom script: local string e = "Abilities\\Spells\\Human\\Invisibility\\InvisibilityTarget.mdl"
      • -------- Removing NEGATIVE Buffs --------
      • Custom script: call UnitRemoveBuffs (u, false, true)
      • -------- Color values are Red, Green, Blue, Transperency --------
      • Custom script: call SetUnitVertexColor (u, 0, 0, 0, 125)
      • -------- Creating special effect --------
      • Custom script: call DestroyEffect (AddSpecialEffectTarget(e, u, a))
      • -------- Adding hidden abilities from the spell book --------
      • Custom script: call UnitAddAbility (u, s)
      • -------- Setting the level of the spell book --------
      • Custom script: call SetUnitAbilityLevelSwapped(s, u, i )
      • -------- Hidding the icon of the spell book --------
      • Custom script: call SetPlayerAbilityAvailable (p, s, false)
      • -------- Waiting for the end of effect --------
      • Custom script: call TriggerSleepAction(t2)
      • -------- Removing the spel lbook with it's abilities --------
      • Custom script: call UnitRemoveAbility (u, s)
      • -------- Making spell book ability available again --------
      • Custom script: call SetPlayerAbilityAvailable (p, s, true)
      • -------- Creating special effect --------
      • Custom script: call DestroyEffect (AddSpecialEffectTarget(e, u, a))
      • -------- Color values are Red, Green, Blue, Transperency --------
      • Custom script: call SetUnitVertexColor (u, 255, 255, 255, 255)
      • -------- nulling local --------
      • Custom script: set u = null

  • Razor Edge
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Razor Edge
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Razor_Edge_Caster = (Triggering unit)
      • Set Razor_Edge_Location = (Position of Razor_Edge_Caster)
      • Set Razor_Edge_Location2 = (Target point of ability being cast)
      • Set Razor_Edge_Ability_Level = (Level of (Ability being cast) for Razor_Edge_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Razor_Edge_Base_Damage = 7.00
      • Set Razor_Edge_Total_Damage = (Razor_Edge_Base_Damage x (Real(Razor_Edge_Ability_Level)))
      • Set Razor_Edge_Area_of_Effect = 200.00
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Knockback Setings --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set RE_Knock_Angle = (Angle from Razor_Edge_Location to Razor_Edge_Location2)
      • Set RE_Knock_Speed = 15.00
      • Set RE_Knock_Distance = 700.00
      • Hashtable - Save RE_Knock_Angle as (Key angle) of (Key (Triggering unit)) in RE_Knocktable
      • Hashtable - Save RE_Knock_Speed as (Key speed) of (Key (Triggering unit)) in RE_Knocktable
      • Hashtable - Save RE_Knock_Distance as (Key distance) of (Key (Triggering unit)) in RE_Knocktable
      • Hashtable - Save Handle OfRazor_Edge_Caster as (Key caster) of (Key (Triggering unit)) in RE_Knocktable
      • Unit - Pause Razor_Edge_Caster
      • Unit - Turn collision for Razor_Edge_Caster Off
      • Unit Group - Add Razor_Edge_Caster to RE_Knock_Group
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Razor_Edge_Location)
      • Custom script: call RemoveLocation(udg_Razor_Edge_Location2)

  • RE Knock
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Leave this actions as they are/// You can add change special effects but that's it --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in RE_Knock_Group and do (Actions)
        • Loop - Actions
          • Set RE_Knock_Angle = (Load (Key angle) of (Key (Picked unit)) from RE_Knocktable)
          • Set RE_Knock_Speed = (Load (Key speed) of (Key (Picked unit)) from RE_Knocktable)
          • Set RE_Knock_Distance = (Load (Key distance) of (Key (Picked unit)) from RE_Knocktable)
          • Set Razor_Edge_Caster = (Load (Key caster) of (Key (Picked unit)) in RE_Knocktable)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RE_Knock_Distance Greater than 0.00
            • Then - Actions
              • Set RE_Knock_Loc1 = (Position of (Picked unit))
              • Set RE_Knock_Loc2 = (RE_Knock_Loc1 offset by RE_Knock_Speed towards RE_Knock_Angle degrees)
              • Set Razor_Edge_Damage_Group = (Units within Razor_Edge_Area_of_Effect of RE_Knock_Loc1 matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of (Picked unit))) Equal to True))))
              • Destructible - Pick every destructible within 175.00 of RE_Knock_Loc1 and do (Destructible - Kill (Picked destructible))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Terrain pathing at RE_Knock_Loc2 of type Walkability is off) Equal to True
                • Then - Actions
                  • Unit - Unpause Razor_Edge_Caster
                  • Unit - Turn collision for Razor_Edge_Caster On
                  • Animation - Reset (Picked unit)'s animation
                  • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in RE_Knocktable
                  • Unit Group - Remove (Picked unit) from RE_Knock_Group
                • Else - Actions
                  • Unit - Move (Picked unit) instantly to RE_Knock_Loc2
                  • Animation - Play (Picked unit)'s attack, walk, stand, spin animation, using only Rare animations
                  • Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Unit Group - Pick every unit in Razor_Edge_Damage_Group and do (Actions)
                    • Loop - Actions
                      • Unit - Cause Razor_Edge_Caster to damage (Picked unit), dealing Razor_Edge_Total_Damage damage of attack type Spells and damage type Unknown
                      • Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                      • Special Effect - Destroy (Last created special effect)
                  • Hashtable - Save (RE_Knock_Distance - RE_Knock_Speed) as (Key distance) of (Key (Picked unit)) in RE_Knocktable
                  • Custom script: call RemoveLocation(udg_RE_Knock_Loc1)
                  • Custom script: call RemoveLocation(udg_RE_Knock_Loc2)
                  • Custom script: call DestroyGroup(udg_Razor_Edge_Damage_Group)
            • Else - Actions
              • Unit - Unpause Razor_Edge_Caster
              • Unit - Turn collision for Razor_Edge_Caster On
              • Animation - Reset (Picked unit)'s animation
              • Hashtable - Clear all child hashtables of child (Key (Picked unit)) in RE_Knocktable
              • Unit Group - Remove (Picked unit) from RE_Knock_Group


  • Psychic Rape
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Psychic Rape
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set PR_Caster = (Triggering unit)
      • Set PR_Target = (Target unit of ability being cast)
      • Set PR_Caster_Loc = (Position of PR_Caster)
      • Set PR_Target_Loc = (Position of PR_Target)
      • Set PR_Ability_Level = (Level of (Ability being cast) for PR_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set PR_Damage_Factor = 2.00
      • Set PR_Atribute = (Intelligence of PR_Caster (Include bonuses))
      • Set PR_Damage = (PR_Damage_Factor x ((Real(PR_Atribute)) x (Real(PR_Ability_Level))))
      • Set PR_Dummy_Ability = Psychic Rape (Dummy)
      • Set PR_Target_Mana = (Mana of PR_Target)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Checking the state of mana --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Mana of PR_Target) Less than or equal to PR_Damage
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Burns up the mana and creates floating text --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause PR_Caster to damage PR_Target, dealing PR_Target_Mana damage of attack type Spells and damage type Unknown
          • Floating Text - Create floating text that reads (- + (String((Integer(PR_Target_Mana))))) above PR_Target with Z offset 0.00, using font size 11.00, color (0.00%, 30.00%, 70.00%), and 0.00% transparency
        • Else - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Burns up the mana and creates floating text --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Cause PR_Caster to damage PR_Target, dealing PR_Damage damage of attack type Spells and damage type Unknown
          • Floating Text - Create floating text that reads (- + (String((Integer(PR_Damage))))) above PR_Target with Z offset 0.00, using font size 11.00, color (0.00%, 30.00%, 70.00%), and 0.00% transparency
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the floating text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
      • Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      • Floating Text - Change the lifespan of (Last created floating text) to 2.50 seconds
      • Unit - Set mana of PR_Target to ((Mana of PR_Target) - PR_Damage)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating nice special effect --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect attached to the origin of PR_Target using Abilities\Spells\Undead\Possession\PossessionMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Mana of PR_Target) Equal to 0.00
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for (Owner of PR_Caster) at PR_Target_Loc facing Default building facing degrees
          • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
          • Unit - Add PR_Dummy_Ability to (Last created unit)
          • Unit - Set level of PR_Dummy_Ability for (Last created unit) to PR_Ability_Level
          • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt PR_Target
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating nice special effect --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Special Effect - Create a special effect attached to the origin of PR_Target using Abilities\Spells\Undead\DeathCoil\DeathCoilSpecialArt.mdl
          • Special Effect - Destroy (Last created special effect)
        • Else - Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_PR_Target_Loc)
      • Custom script: call RemoveLocation(udg_PR_Caster_Loc)


  • Face of Void
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Face of Void
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set FoV_Caster = (Triggering unit)
      • Set FoV_Ability_Level = (Level of (Ability being cast) for FoV_Caster)
      • Set FoV_Location = (Target point of ability being cast)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set FoV_Base_AoE = 160.00
      • Set FoV_Bonus_AoE = 40.00
      • Set FoV_Base_Damage = 60.00
      • Set FoV_Total_AoE = (FoV_Base_AoE + (FoV_Bonus_AoE x (Real(FoV_Ability_Level))))
      • Set FoV_Total_Damage = (FoV_Base_Damage x (Real(FoV_Ability_Level)))
      • Set FoV_Damage_Group = (Units within FoV_Total_AoE of FoV_Location matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Owner of (Matching unit)) is an enemy of (Owner of FoV_Caster)) Equal to True))))
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Generating a unit group --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit Group - Pick every unit in FoV_Damage_Group and do (Actions)
        • Loop - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Creating and setting the dummy unit --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Create 1 Dummy for (Owner of FoV_Caster) at FoV_Location facing Default building facing degrees
          • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
          • Unit - Add Face of Void(dummy) to (Last created unit)
          • Unit - Set level of Face of Void(dummy) for (Last created unit) to FoV_Ability_Level
          • Unit - Order (Last created unit) to Human Sorceress - Activate Slow
          • Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
          • Unit - Cause FoV_Caster to damage (Picked unit), dealing FoV_Total_Damage damage of attack type Spells and damage type Unknown
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at FoV_Location using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at FoV_Location using Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at FoV_Location using Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at FoV_Location using Abilities\Spells\Items\AIil\AIilTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_FoV_Location)
      • Custom script: call DestroyGroup(udg_FoV_Damage_Group)


  • Impale
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Impale
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Impale_Caster = (Triggering unit)
      • Set Impale_Level = (Level of (Ability being cast) for Impale_Caster)
      • Set Impale_Owner = (Owner of Impale_Caster)
      • Set Impale_Target_Loc = (Target point of ability being cast)
      • Set Impale_Caster_Loc = (Position of Impale_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Impale_Dummy_AbilityI = Impale(dummy main)
      • Set Impale_Dummy_AbilityII = Impale(dummy)
      • Set Impale_Facing_Angle = (Angle from Impale_Caster_Loc to Impale_Target_Loc)
      • Set Impale_Dummy_Face = (Impale_Facing_Angle - 180.00)
      • Set Impale_Angle = 40.00
      • Set Impale_LocI = (Impale_Caster_Loc offset by 50.00 towards Impale_Dummy_Face degrees)
      • Set Impale_LocII = (Impale_Caster_Loc offset by 100.00 towards (Impale_Facing_Angle + Impale_Angle) degrees)
      • Set Impale_LocIII = (Impale_Caster_Loc offset by 100.00 towards (Impale_Facing_Angle - Impale_Angle) degrees)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating and setting the dummy unit --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Unit - Create 1 Dummy for Impale_Owner at Impale_LocI facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Impale_Dummy_AbilityI to (Last created unit)
      • Unit - Set level of Impale_Dummy_AbilityI for (Last created unit) to Impale_Level
      • Unit - Order (Last created unit) to Undead Crypt Lord - Impale Impale_Target_Loc
      • -------- ----------------------- --------
      • Unit - Create 1 Dummy for Impale_Owner at Impale_LocI facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Impale_Dummy_AbilityII to (Last created unit)
      • Unit - Set level of Impale_Dummy_AbilityII for (Last created unit) to Impale_Level
      • Unit - Order (Last created unit) to Undead Crypt Lord - Impale Impale_LocII
      • -------- ----------------------- --------
      • Unit - Create 1 Dummy for Impale_Owner at Impale_LocI facing Default building facing degrees
      • Unit - Add a 1.50 second Generic expiration timer to (Last created unit)
      • Unit - Add Impale_Dummy_AbilityII to (Last created unit)
      • Unit - Set level of Impale_Dummy_AbilityII for (Last created unit) to Impale_Level
      • Unit - Order (Last created unit) to Undead Crypt Lord - Impale Impale_LocIII
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect at Impale_LocII using Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect at Impale_LocIII using Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
      • Special Effect - Destroy (Last created special effect)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Clearing leaks --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Custom script: call RemoveLocation(udg_Impale_Target_Loc)
      • Custom script: call RemoveLocation(udg_Impale_LocI)
      • Custom script: call RemoveLocation(udg_Impale_LocII)
      • Custom script: call RemoveLocation(udg_Impale_LocIII)


  • Arcane Disruption
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Arcane Disruption
    • Actions
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Getting the Spell constants --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Arcane_Disruption_Caster = (Triggering unit)
      • Set Arcane_Disruption_Target = (Target unit of ability being cast)
      • Set Arcane_Disruption_Level = (Level of (Ability being cast) for Arcane_Disruption_Caster)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the Spell values --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Set Arcane_Disruption_Base_Mana = 70.00
      • Set Arcane_Disruption_Bonus_Mana = 50.00
      • Set Arcane_Disruption_Total_Mana = (Arcane_Disruption_Base_Mana + (Arcane_Disruption_Bonus_Mana x (Real(Arcane_Disruption_Level))))
      • Set Arcane_Disruption_Damage = (Arcane_Disruption_Total_Mana / 2.00)
      • -------- ------------------------------------------------------------------------------------------------- --------
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Owner of Arcane_Disruption_Target) is an enemy of (Owner of Arcane_Disruption_Caster)) Equal to True
        • Then - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Burning mana and damaging the target --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Set mana of Arcane_Disruption_Target to ((Mana of Arcane_Disruption_Target) - Arcane_Disruption_Total_Mana)
          • Unit - Cause Arcane_Disruption_Caster to damage Arcane_Disruption_Target, dealing Arcane_Disruption_Damage damage of attack type Spells and damage type Unknown
          • Floating Text - Create floating text that reads (- + ((String((Integer(Arcane_Disruption_Total_Mana)))) + (/ + (String((Integer(Arcane_Disruption_Damage))))))) above Arcane_Disruption_Target with Z offset 0.00, using font size 11.00, color (0.00%, 35.00%, 70.00%), and 0.00% transparency
        • Else - Actions
          • -------- ------------------------------------------------------------------------------------------------- --------
          • -------- Boosting up the mana and healing --------
          • -------- ------------------------------------------------------------------------------------------------- --------
          • Unit - Set mana of Arcane_Disruption_Target to ((Mana of Arcane_Disruption_Target) + Arcane_Disruption_Total_Mana)
          • Unit - Set life of Arcane_Disruption_Target to ((Life of Arcane_Disruption_Target) + Arcane_Disruption_Damage)
          • Floating Text - Create floating text that reads (+ + ((String((Integer(Arcane_Disruption_Total_Mana)))) + (/ + (String((Integer(Arcane_Disruption_Damage))))))) above Arcane_Disruption_Target with Z offset 0.00, using font size 11.00, color (0.00%, 35.00%, 70.00%), and 0.00% transparency
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Setting the floating text --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
      • Floating Text - Change the fading age of (Last created floating text) to 2.00 seconds
      • Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
      • -------- ------------------------------------------------------------------------------------------------- --------
      • -------- Creating special effects --------
      • -------- ------------------------------------------------------------------------------------------------- --------
      • Special Effect - Create a special effect attached to the origin of Arcane_Disruption_Target using Abilities\Spells\Other\Charm\CharmTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect attached to the origin of Arcane_Disruption_Target using Abilities\Spells\Items\AIil\AIilTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Special Effect - Create a special effect attached to the origin of Arcane_Disruption_Target using Abilities\Spells\Undead\OrbOfDeath\OrbOfDeathMissile.mdl
      • Special Effect - Destroy (Last created special effect)



Changelog

v1.0:
-Uploaded

v1.1:
-Updated[26.5.2009]
-Added Spells:
+Fire Wall
+Napalm Strike
+Sinister Strike
+Shadowstep
+Wound Poison
+Holy Blessing
+Ion Canon
-Added "Hero Edit" System

v1.1a
-fixed a typo in Sinister Strike

v1.2 updated [13.8.2009]
-Added Spells:
+Thunder Rage
+Shadow Walk
+Beast Attack
+Earth Fury
+Desecration
+Razor Edge
-Added Systems:
+Item System
-A bit changed terrain
-Hero Tavern added
-Shops Added
-Many many, stuff for gameplay added (for better testing experience)

v1.2a
-added a little condition in RE Knock trigger, that reduces the spam of SFX (thanks to Rmx)

v1.2b
-removed those units from the map
-some texts dispay a bit faster

v1.2c[October 2009]
-Fixed some ability tooltips (a few spelling mistakes)
-Replaced "default" hero tootips with a bit custom ones
-A few "game" actions added

v1.2d[29. Nov 2009]
-Fixed periodic triggers, from now on they are no longer "on" all the time
-Also fixed a possible "bug" with "pause unit action"

v1.3[27.Feb 2010]
-added 4 spells
+Face of Void
+Arcane Disruption
+Impale
+Psychic Rape
-Added Donation system
-added 2 new heroes
+Archamge
+Anubis
-slightly changed terrain
-other minor updates




Credits
Dark_Dragon (helping me so many times with coding)
Wymlord (for providing a simple hashtable knockback)
Deuterium (helping with ideas, checking the code)
Rmx (helping with ideas, checking the code)
Kingz (helping with ideas, checking the code)
Nerovesper (helping with ideas, checking the code)
baassee (helping with ideas, checking the code)
Eccho (just because he's awesome :p)
PsychoNerdial (supporting the whole thing)
hvo-busterkomo (beeing an awesome mod)
Hanky (also for being awesome)
Megafyr (I don't remember, but he helped in someway with that items)
If i forgot to mention someone, please let me know and I'll addy you on the list =)


Have Fun!

~Berz

Keywords:
fire, arrow, stun, water, slam, power, holy, poison, strike, shadow, item, system, edge, blade, rage, fury, canon, evasion, explosion, dead, lightning
Contents

Simple Spell Pack [SSP] v1.3 (Map)

Reviews
Moderator
Approved a century later. Review here 18:04, 3rd Jun 2009 hvo-busterkomo: Effects were simple, yet pleasing visually. Leak free, MUI, configurable, and well documented. I'd like to give this a 5/5, but the GUI really brings it down....
  1. danu7z

    danu7z

    Joined:
    Feb 18, 2009
    Messages:
    2
    Resources:
    0
    Resources:
    0
    How can i open the map.The world editor tales "this map has been saved by a more recent version of the editor.It may contain data which are not supported in this version".Can anyone tell me how to open the map? pm plz



    Thanks all
     
    Last edited: Aug 24, 2009
  2. calex3

    calex3

    Joined:
    Mar 2, 2009
    Messages:
    285
    Resources:
    3
    Spells:
    3
    Resources:
    3
    man! you need new patch! and you can open map too without new patch just click yes!
     
  3. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    Get the latest patch ;)
     
  4. Deuterium

    Deuterium

    Joined:
    Mar 17, 2009
    Messages:
    1,301
    Resources:
    2
    Spells:
    1
    Tutorials:
    1
    Resources:
    2
    Don't think so... BZK used Hashtables as I remember...
     
  5. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    Yep, hashtables, so he'll need a latest patch.
     
  6. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    As stated 5 times before get the latest patch...
     
  7. mjllonir

    mjllonir

    Joined:
    May 31, 2009
    Messages:
    432
    Resources:
    3
    Spells:
    3
    Resources:
    3
    Hey Berzerker,

    I was looking through your commands in this map, and I saw you made a long and complicated code for the movement speed of one unit. I've managed to make the whole thing in one line, although very simple and perhaps noobish, but still gives you the same result in the end.

    • speed check
      • Events
        • Player - Player 1 (Red) types a chat message containing -spd as An exact match
    • -------- Of course, repeat the event for every player --------
      • Conditions
      • Actions
        • Unit Group - Pick every unit in (Units owned by (Triggering player) matching (((Matching unit) is A Hero) Equal to True)) and do (Actions)
          • Loop - Actions
            • Game - Display to (Player group((Triggering player))) the text: ((The movement speed of + (Name of (Picked unit))) + ( is + (String((Current movement speed of (Picked unit))))))


    Please tell me why yyou made a long code for something that could've been three lines. Perhaps it will enlighten me :).

    If you want to see it for yourself, here's the map :).
     

    Attached Files:

  8. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    Because your leaks and mine doesn't, and yours only supports one player.
    Simple as that ;)
     
  9. mjllonir

    mjllonir

    Joined:
    May 31, 2009
    Messages:
    432
    Resources:
    3
    Spells:
    3
    Resources:
    3
    Could someone please explain leaking to me? I still don't understand it fully? What does it do?
     
  10. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
  11. Deuterium

    Deuterium

    Joined:
    Mar 17, 2009
    Messages:
    1,301
    Resources:
    2
    Spells:
    1
    Tutorials:
    1
    Resources:
    2
    awwww I'm flattered *shy face* :p

    Well simple said, I made the tutorial in my signature to avoid repeating all this over and over again - specially since I'm a spell reviewer. So just check it out and click on "Leaks" in the bookmark :)
     
  12. refi

    refi

    Joined:
    Aug 15, 2009
    Messages:
    13
    Resources:
    0
    Resources:
    0
    Very good job! I only saw, that there isn't Ring Of Protection +5, so I can't get one item, and some recipes can't be bought.
     
  13. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    Of course there is ring of protection +5 you have to make one...
    Written 3 times "some items doesn't need a recipe"
     
  14. Z3roOx

    Z3roOx

    Joined:
    Jan 3, 2009
    Messages:
    37
    Resources:
    0
    Resources:
    0
    Can anyone help me with Shadow Walk?
    I want to import it but it doesnt work
    i copied all 8 spells for it
    Shadow Walk
    Shadow Walk (hide trick)
    Shadow Walk (evasion) Level 1
    Shadow Walk (evasion) Level 2
    Shadow Walk (evasion) Level 3
    Shadow Walk (magic resistance) Level 1
    Shadow Walk (magic resistance) Level 2
    Shadow Walk (magic resistance) Level 3

    And then i copied the trigger and fixed the condition but it doesnt work.
    My hero gets black and transparent with all effects but he doesnt get evasion and magic resistance
    And good job for those other spells :)
     
    Last edited: Sep 18, 2009
  15. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    You have to put those spells into spellbook. "shadow walk (hide trick)" fill the spell list.
    Set them so that they fit to the level.

    Like this:
     

    Attached Files:

  16. Z3roOx

    Z3roOx

    Joined:
    Jan 3, 2009
    Messages:
    37
    Resources:
    0
    Resources:
    0
    Still doesnt work, i deleted the trigger and copied it again and put those 6 spells with the correct lvl's in the spellbook
     
    Last edited: Sep 18, 2009
  17. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    Check the rawcode, go to object editor and press "ctrl+d" spells raw code should be "A00U"

    • Shadow Walk
      • Events
        • Unit - A unit Starts the effect of an ability
      • Conditions
        • (Ability being cast) Equal to Shadow Walk
      • Actions
        • -------- Getting the caster --------
        • Custom script: local unit u = GetTriggerUnit()
        • -------- Getting owning player --------
        • Custom script: local player p = GetOwningPlayer(u)
        • -------- Getting lefel of an ability --------
        • Custom script: local integer i = GetUnitAbilityLevelSwapped(GetSpellAbilityId(),u)
        • -------- Getting ability raw code --------
    • --------------CHECK IF THIS RAW CODE IS TH SAME AS IT IS IN OBJECT EDITOR-------------------
      • Custom script: local integer s = 'A00U'
      • -------- Setting the base duration --------
      • Custom script: local real t1 = 4.
      • -------- Setting the total duration --------
      • Custom script: local real t2 = (t1*I2R(i))
      • -------- Setting the attachment point --------
      • Custom script: local string a = "chest"
      • -------- Setting the model path of the special effect --------
      • Custom script: local string e = "Abilities\\Spells\\Human\\Invisibility\\InvisibilityTarget.mdl"
      • -------- Removing NEGATIVE Buffs --------
      • Custom script: call UnitRemoveBuffs (u, false, true)
      • -------- Color values are Red, Green, Blue, Transperency --------
      • Custom script: call SetUnitVertexColor (u, 0, 0, 0, 125)
      • -------- Creating special effect --------
      • Custom script: call DestroyEffect (AddSpecialEffectTarget(e, u, a))
      • -------- Adding hidden abilities from the spell book --------
      • Custom script: call UnitAddAbility (u, s)
      • -------- Setting the level of the spell book --------
      • Custom script: call SetUnitAbilityLevelSwapped(s, u, i )
      • -------- Hidding the icon of the spell book --------
      • Custom script: call SetPlayerAbilityAvailable (p, s, false)
      • -------- Waiting for the end of effect --------
      • Custom script: call TriggerSleepAction(t2)
      • -------- Removing the spel lbook with it's abilities --------
      • Custom script: call UnitRemoveAbility (u, s)
      • -------- Making spell book ability available again --------
      • Custom script: call SetPlayerAbilityAvailable (p, s, true)
      • -------- Creating special effect --------
      • Custom script: call DestroyEffect (AddSpecialEffectTarget(e, u, a))
      • -------- Color values are Red, Green, Blue, Transperency --------
      • Custom script: call SetUnitVertexColor (u, 255, 255, 255, 255)
      • -------- nulling local --------
      • Custom script: set u = null


    If raw code is not equal to "A00U" then change.
     
  18. Z3roOx

    Z3roOx

    Joined:
    Jan 3, 2009
    Messages:
    37
    Resources:
    0
    Resources:
    0
    Ok thank you this was the problem :D
    It works now :D
     
  19. -Berz-

    -Berz-

    Joined:
    Mar 5, 2008
    Messages:
    3,203
    Resources:
    123
    Icons:
    111
    Packs:
    1
    Skins:
    1
    Spells:
    10
    Resources:
    123
    NP, feel free to ask if you get any more problems ;)
     
  20. Atami

    Atami

    Joined:
    Oct 9, 2008
    Messages:
    109
    Resources:
    0
    Resources:
    0
    simple, its the best spellpack, ive ever seen.