Spellpack Wild Axes, Chronosphere, Macropyre, Borrowed Time & Beast Rage

NetherHawk

New Member
Reaction score
26
Not as fantastic as Dota's though

This spellpack contains: BurrowStrike, Leap, Overgrowth, Corrosive Skin, Doppelwalk, Macropyre, Wild Axes, Beast Rage, Burrowed Time, Chronosphere, Time Lapse--still checking for errors and Primal Roar.


I felt that the dota spell index was nice and decided to add on some spell's, if my tirggering is ok i would like to add on some other's i have made =]

*Changed the terrain of the map, boosted the creeps hp so they dont die too fast. =/

Wild Axes
Lauches 2 axes forward, each unit may only be damaged twice.

*Code Removed*

How to slow the axes down: Basically the forward path is divided into 25 parts by WildAxe_Distance/25, so if u would like the axe to slow down then change WildAxe_Interval to for e.g WildAxe_Distance/50

By doing so u need to adjust the WildAxe_Counters to <=20, <=40 <=60 >60 in the WildAxe Movement trigger.

Since we are halving the speed of the axes, we need to halve the rate of change of angle

hence, change Unit - Move WildAxe_Dummy[1] instantly to (WildAxe_Dummy_Loc_1 offset by WildAxe_Interval towards ((WildAxe_Angle + 40.00) - (4.00 x WildAxe_Tilt[1])) degrees) to Unit - Move WildAxe_Dummy[1] instantly to (WildAxe_Dummy_Loc_1 offset by WildAxe_Interval towards ((WildAxe_Angle + 40.00) - (2.00 x WildAxe_Tilt[1])) degrees) There are 6 instances of this in the map so be careful.

Lastly, we need to set the default value of Tilt2 to 20 instead of 10. Have fun editing.

p.s. i will make an edit when i get home so that speed is proportional to distance on the return bit>< i excluded it at first as my hero walked faster than the axes and never made it home.

Chronosphere
Stops time in a particular space

Code:
Chronosphere
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Chronosphere 
    Actions
        Set Chronosphere_Caster = (Triggering unit)
        Set Chronosphere_Target_Loc = (Target point of ability being cast)
        Unit - Create 1 Chronosphere Dummy for (Owner of Chronosphere_Caster) at Chronosphere_Target_Loc facing Default building facing degrees
        Set Chronospere_Dummy = (Last created unit)
        Animation - Change Chronospere_Dummy's vertex coloring to (0.00%, 0.00%, 100.00%) with 0.00% transparency
        Unit Group - Pick every unit in (Units within 250.00 of (Position of Chronospere_Dummy) matching ((((Matching unit) is in Chronosphere_Group) Equal to False) and ((Matching unit) Not equal to Chronosphere_Caster))) and do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        ((Picked unit) is sleeping) Equal to True
                    Then - Actions
                        Unit - Wake up (Picked unit)
                    Else - Actions
                        Do nothing
                Animation - Change (Picked unit)'s animation speed to 0.00% of its original speed
                Unit - Pause (Picked unit)
                Unit Group - Add (Picked unit) to Chronosphere_Group
        Countdown Timer - Start Chronospere_Timer as a One-shot timer that will expire in (4.00 + (2.00 x (Real((Level of Chronosphere  for Chronosphere_Caster))))) seconds
        Trigger - Turn on Chronosphere Add Units <gen>
        Wait 0.62 seconds
        Animation - Change Chronospere_Dummy's animation speed to 0.00% of its original speed

Code:
Chronosphere Add Units
    Events
        Time - Every 0.25 seconds of game time
    Conditions
    Actions
        Unit Group - Pick every unit in (Units within 250.00 of (Position of Chronospere_Dummy) matching ((((Matching unit) is in Chronosphere_Group) Equal to False) and ((Matching unit) Not equal to Chronosphere_Caster))) and do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        ((Picked unit) is sleeping) Equal to True
                    Then - Actions
                        Unit - Wake up (Picked unit)
                    Else - Actions
                        Do nothing
                Animation - Change (Picked unit)'s animation speed to 0.00% of its original speed
                Unit - Pause (Picked unit)
                Unit Group - Add (Picked unit) to Chronosphere_Group

Code:
End Chronosphere
    Events
        Time - Chronospere_Timer expires
    Conditions
    Actions
        Trigger - Turn off Chronosphere Add Units <gen>
        Unit - Remove Chronospere_Dummy from the game
        Unit Group - Pick every unit in Chronosphere_Group and do (Actions)
            Loop - Actions
                Unit - Unpause (Picked unit)
                Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
        Custom script:   set bj_wantDestroyGroup = true
        Unit Group - Remove all units from Chronosphere_Group
        Custom script:   call RemoveLocation(udg_Chronosphere_Target_Loc)
        Set Chronosphere_Caster = No unit


Macropyre
Burns all units in a path

Code:
Macropyre
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Macropyre 
    Actions
        Set Macropyre_Caster = (Triggering unit)
        Set Macropyre_Caster_Loc = (Position of Macropyre_Caster)
        Set Macropyre_Target_Loc = (Target point of ability being cast)
        Set Macropyre_Angle = (Angle from Macropyre_Caster_Loc to Macropyre_Target_Loc)
        Set Macropyre_Loop = (2 + (Level of Macropyre  for Macropyre_Caster))
        Wait 0.05 seconds
        For each (Integer Macropyre_A) from 1 to Macropyre_Loop, do (Actions)
            Loop - Actions
                Set Macropyre_Temp_Loc[Macropyre_A] = (Macropyre_Caster_Loc offset by (-100.00 + (200.00 x (Real(Macropyre_A)))) towards Macropyre_Angle degrees)
                Unit - Create 1 Macropyre Dummy for (Owner of Macropyre_Caster) at Macropyre_Caster_Loc facing Default building facing degrees
                Set Macropyre_Dummy[Macropyre_A] = (Last created unit)
                Unit - Order Macropyre_Dummy[Macropyre_A] to Human Blood Mage - Flame Strike Macropyre_Temp_Loc[Macropyre_A]
                Wait 0.50 seconds
        Wait 3.00 seconds
        For each (Integer Macropyre_B) from 1 to Macropyre_Loop, do (Actions)
            Loop - Actions
                Unit - Remove Macropyre_Dummy[Macropyre_B] from the game
        Custom script:   call RemoveLocation(udg_Macropyre_Caster_Loc)
        Custom script:   call RemoveLocation(udg_Macropyre_Target_Loc)
        Custom script:   call RemoveLocation(udg_Macropyre_Temp_Loc[1])
        Custom script:   call RemoveLocation(udg_Macropyre_Temp_Loc[2])
        Custom script:   call RemoveLocation(udg_Macropyre_Temp_Loc[3])
        Custom script:   call RemoveLocation(udg_Macropyre_Temp_Loc[4])
        Custom script:   call RemoveLocation(udg_Macropyre_Temp_Loc[5])

Burrowed Time
Saves the hero from death =x

Code:
Burrowed Time Get Caster
    Events
        Unit - A unit Learns a skill
    Conditions
        (Learned Hero Skill) Equal to Burrowed Time 
    Actions
        Set BurrowedTime_Caster = (Triggering unit)
        Trigger - Add to Burrowed Time <gen> the event (Unit - BurrowedTime_Caster Takes damage)
        Trigger - Turn off (This trigger)

Code:
Burrowed Time
    Events
    Conditions
        (Life of BurrowedTime_Caster) Less than 400.00
    Actions
        Unit - Order BurrowedTime_Caster to Orc Troll Berserker - Berserk

Beast Rage
When the hero attacks the same unit consecutively, its attack speed is enhanced. Otherwise, it drops to a lower rage counter.

Code:
Beast Rage
    Events
        Unit - A unit Learns a skill
    Conditions
        (Learned Hero Skill) Equal to Beast Rage 
    Actions
        Set BeastRage_Caster = (Triggering unit)
        Trigger - Turn on Beast Rage Charge up <gen>
        Wait 0.02 seconds
        Unit - Add Beast Rage Effect  to BeastRage_Caster
        Unit - Set level of Beast Rage Effect  for BeastRage_Caster to 1
        Trigger - Turn off (This trigger)
Code:
Beast Rage Charge up
    Events
        Unit - A unit Is attacked
    Conditions
        (Attacking unit) Equal to BeastRage_Caster
    Actions
        Set BeastRage_PrimaryTarget = (Attacked unit)
        Set BeastRage_Effect_LevelJump = (Level of Beast Rage  for BeastRage_Caster)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Level of Beast Rage Effect  for BeastRage_Caster) Equal to 1
            Then - Actions
                Unit - Set level of Beast Rage Effect  for BeastRage_Caster to (BeastRage_Effect_LevelJump + 1)
                Special Effect - Create a special effect attached to the overhead of BeastRage_Caster using Abilities\Spells\Undead\ReplenishMana\ReplenishManaCasterOverhead.mdl
                Special Effect - Destroy (Last created special effect)
            Else - Actions
                Unit - Set level of Beast Rage Effect  for BeastRage_Caster to ((Level of Beast Rage Effect  for BeastRage_Caster) + BeastRage_Effect_LevelJump)
                Special Effect - Create a special effect attached to the overhead of BeastRage_Caster using Abilities\Spells\Undead\ReplenishMana\ReplenishManaCasterOverhead.mdl
                Special Effect - Destroy (Last created special effect)
        Trigger - Turn off (This trigger)
        Trigger - Turn on Beast Rage Secondary Target <gen>
Code:
Beast Rage Secondary Target
    Events
        Unit - A unit Is attacked
    Conditions
        (Attacking unit) Equal to BeastRage_Caster
    Actions
        Set BeastRage_SecondaryTarget[BR] = (Attacked unit)
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                BeastRage_SecondaryTarget[BR] Equal to BeastRage_PrimaryTarget
            Then - Actions
                Unit - Set level of Beast Rage Effect  for BeastRage_Caster to ((Level of Beast Rage Effect  for BeastRage_Caster) + BeastRage_Effect_LevelJump)
                Set BR = (BR + 1)
                Special Effect - Create a special effect attached to the overhead of BeastRage_Caster using Abilities\Spells\Undead\ReplenishMana\ReplenishManaCasterOverhead.mdl
                Special Effect - Destroy (Last created special effect)
            Else - Actions
                Set BeastRage_PrimaryTarget = BeastRage_SecondaryTarget[BR]
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Level of Beast Rage Effect  for BeastRage_Caster) Equal to BeastRage_Effect_LevelJump
                    Then - Actions
                        Unit - Set level of Beast Rage Effect  for BeastRage_Caster to 1
                        Special Effect - Create a special effect attached to the overhead of BeastRage_Caster using Abilities\Spells\Undead\ReplenishHealth\ReplenishHealthCasterOverhead.mdl
                        Special Effect - Destroy (Last created special effect)
                    Else - Actions
                        Unit - Set level of Beast Rage Effect  for BeastRage_Caster to ((Level of Beast Rage Effect  for BeastRage_Caster) / 2)
                        Special Effect - Create a special effect attached to the overhead of BeastRage_Caster using Abilities\Spells\Undead\ReplenishHealth\ReplenishHealthCasterOverhead.mdl
                        Special Effect - Destroy (Last created special effect)
                Set BR = 1

I added special effects to see if your rage counter increases or decreases, u can remove it easily by deleting the special effects stuff. Also, u can adjust the rate of increase by adjusting the AS% increase in Beast Rage Effect ; not Beast Rage

Burrow Strike
The sand king burrows out of sight impaling all above him.
I thought this was gonna be easy... i was horribly wrong.

Code:
Burrow Strike
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Burrow Strike 
    Actions
        Set BurrowStrike_Caster = (Triggering unit)
        Set BurrowStrike_Caster_Loc = (Position of BurrowStrike_Caster)
        Set BurrowStrike_Target_Loc = (Target point of ability being cast)
        Set BurrowStrike_Angle = (Angle from BurrowStrike_Caster_Loc to BurrowStrike_Target_Loc)
        Set BurrowStrike_Distance = (Distance between BurrowStrike_Caster_Loc and BurrowStrike_Target_Loc)
        Set BurrowStrike_Level = (Integer((BurrowStrike_Distance / 50.00)))
        Unit - Create 1 Burrowed Strike Dummy for (Owner of BurrowStrike_Caster) at BurrowStrike_Caster_Loc facing BurrowStrike_Angle degrees
        Set BurrowStrike_Dummy = (Last created unit)
        Unit - Set level of Burrow Strike Effect  for BurrowStrike_Dummy to (BurrowStrike_Level - 1)
        Wait 0.20 seconds
        Selection - Remove BurrowStrike_Caster from selection for (Owner of BurrowStrike_Caster)
        Unit - Pause BurrowStrike_Caster
        Unit - Hide BurrowStrike_Caster
        Unit - Order BurrowStrike_Dummy to Undead Crypt Lord - Impale BurrowStrike_Target_Loc
        Wait 0.50 seconds
        Unit - Move BurrowStrike_Caster instantly to BurrowStrike_Target_Loc
        Unit - Unpause BurrowStrike_Caster
        Unit - Unhide BurrowStrike_Caster
        Selection - Add BurrowStrike_Caster to selection for (Owner of BurrowedTime_Caster)
        Wait 0.40 seconds
        Custom script:   set bj_wantDestroyGroup = true
        Unit Group - Pick every unit in (Units within 1000.00 of BurrowStrike_Caster_Loc matching (((Matching unit) has buff Burrow Strike ) Equal to True)) and do (Actions)
            Loop - Actions
                Unit - Create 1 Burrowed Strike Stun Dummy for (Owner of BurrowStrike_Dummy) at (Position of (Picked unit)) facing Default building facing degrees
                Set BurrowStrike_Stun_Dummy[BS] = (Last created unit)
                Unit - Set level of Burrow Strike Stun  for BurrowStrike_Stun_Dummy[BS] to (Level of Burrow Strike  for BurrowStrike_Caster)
                Unit - Add a 0.75 second Generic expiration timer to BurrowStrike_Stun_Dummy[BS]
                Unit - Order BurrowStrike_Stun_Dummy[BS] to Human Mountain King - Storm Bolt (Picked unit)
                Set BS = (BS + 1)
        Unit - Remove BurrowStrike_Dummy from the game
        Custom script:   call RemoveLocation(udg_BurrowStrike_Target_Loc)
        Custom script:   call RemoveLocation(udg_BurrowStrike_Caster_Loc)
        Set BurrowStrike_Caster = No unit
        Set BurrowStrike_Dummy = No unit
        Set BurrowStrike_Angle = 0.00
        Set BurrowStrike_Distance = 0.00
        Set BurrowStrike_Level = 0
        Set BS = 1

If you want to have a longer impale distance, for example 1000, set the levels of Burrow Strike Effect to 1000/50. If you change the air time or wave duration ( in mine 0.5 each) make sure the total wait times in the function add up at least to the new total air+wave time but not more than 1sec or the stun would not work appropriately. In the trigger there is a 0.5 and 0.5 wait time so they add up to 1.0 which is ( 0.5 + 0.5 ) .

*Fixed a stun bug with Burrow Strike

Overgrowth
Causes an overgrowth of vines in an area entangling all units caught within 300 AoE rendering them unable to attack or move.

Code:
Overgrowth
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Overgrowth 
    Actions
        Set Overgrowth_Caster = (Triggering unit)
        Set Overgrowth_Caster_Loc = (Position of Overgrowth_Caster)
        Custom script:   set bj_wantDestroyGroup = true
        Unit Group - Pick every unit in (Units within 300.00 of Overgrowth_Caster_Loc matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is A ground unit) Equal to True) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is Magic Immune) Equal to  and do (Actions)
            Loop - Actions
                Unit - Create 1 Overgrowth Dummy for (Owner of Overgrowth_Caster) at (Position of (Picked unit)) facing Default building facing degrees
                Set Overgrowth_Dummy[Overgrowth] = (Last created unit)
                Unit - Add a 0.75 second Generic expiration timer to Overgrowth_Dummy[Overgrowth]
                Unit - Set level of Overgrowth Effect  for Overgrowth_Dummy[Overgrowth] to (Level of Overgrowth  for Overgrowth_Caster)
                Unit - Order Overgrowth_Dummy[Overgrowth] to Night Elf Keeper Of The Grove - Entangling Roots (Picked unit)
                Set Overgrowth = (Overgrowth + 1)
        Wait ((Real((Level of Overgrowth  for Overgrowth_Caster))) + 2.00) seconds
        Set Overgrowth = 1
        Custom script:   call RemoveLocation (udg_Overgrowth_Caster_Loc)
        Set Overgrowth_Caster = No unit

Very easy to implement and change the duration and damage. Adjusting values should be done in the dummy spell Overgrowth Effect.

*Fixed a bug where i forgot to level up the Overgrowth effect.

Corrosive Skin
The Viper coats its body in a toxic venom. Any unit that attacks the Viper will be poisoned reducing their movement and attack speeds. This venomous shield also reduces any incoming magical damage.

Code:
Corrosive Skin start
    Events
        Unit - A unit Learns a skill
    Conditions
        (Learned Hero Skill) Equal to Corrosive Skin 
    Actions
        Set NetherDrake = (Triggering unit)
        Trigger - Turn on Corrosive Skin <gen>

Code:
Corrosive Skin
    Events
        Unit - A unit Is attacked
    Conditions
        (Attacked unit) Equal to NetherDrake
    Actions
        Set CorrosiveSkin_Target = (Attacking unit)
        Unit - Create 1 Corrosive Skin Dummy for (Owner of NetherDrake) at (Position of (Attacking unit)) facing Default building facing degrees
        Set CorrosiveSkin_Dummy = (Last created unit)
        Unit - Set level of Corrosive Skin Poison  for CorrosiveSkin_Dummy to (Level of Corrosive Skin  for NetherDrake)
        Unit - Order CorrosiveSkin_Dummy to Attack CorrosiveSkin_Target
        Unit - Add a 1.00 second Generic expiration timer to CorrosiveSkin_Dummy

Very easy to understand. You can modify the damage the poison deals and the magical protection by adjusting in Corrosive Skin Poison and Corrisive Skin abilities respectively.

*Fixed a missing buff

DoppelWalk
The Phantom Lancer confuses his enemies by creating a double and walking off invisible.

Code:
Doppelwalk
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Doppelwalk 
    Actions
        Set Doppelwalk_Caster = (Triggering unit)
        Custom script:   call SetUnitPathing(udg_Doppelwalk_Caster, false)
        Set Doppelwalk_Caster_Loc = (Position of Doppelwalk_Caster)
        Unit - Create 1 Doppelwalk Dummy for (Owner of Doppelwalk_Caster) at Doppelwalk_Caster_Loc facing Default building facing degrees
        Set Doppelwalk_Dummy[1] = (Last created unit)
        Unit - Create 1 Doppelwalk Dummy for (Owner of Doppelwalk_Caster) at Doppelwalk_Caster_Loc facing Default building facing degrees
        Set Doppelwalk_Dummy[2] = (Last created unit)
        Unit - Create 1 Doppelwalk Dummy for (Owner of Doppelwalk_Caster) at Doppelwalk_Caster_Loc facing Default building facing degrees
        Set Doppelwalk_Dummy[3] = (Last created unit)
        Hero - Create Doppelwalk Illusion and give it to Doppelwalk_Dummy[1]
        Unit - Pause Doppelwalk_Caster
        Unit - Add a 1.00 second Generic expiration timer to Doppelwalk_Dummy[1]
        Unit - Add a 1.00 second Generic expiration timer to Doppelwalk_Dummy[3]
        Unit - Add a 1.00 second Generic expiration timer to Doppelwalk_Dummy[2]
        Unit - Order Doppelwalk_Dummy[2] to Human Sorceress - Invisibility Doppelwalk_Caster
        Hero - Order Doppelwalk_Dummy[1] to use (Item carried by Doppelwalk_Dummy[1] of type Doppelwalk Illusion) on Doppelwalk_Caster
        Unit - Order Doppelwalk_Dummy[3] to Orc Shaman - Bloodlust Doppelwalk_Caster
        Custom script:   call RemoveLocation (udg_Doppelwalk_Caster_Loc)
        Unit - Unpause Doppelwalk_Caster
        Wait 1.00 seconds
        Custom script:   call SetUnitPathing(udg_Doppelwalk_Caster, true)

Leap
Mirana and her FrostSaber tiger leaps into battle while enjoying a boost in attack and movement speeds.

Code:
Leap
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Leap 
    Actions
        Set Leap_Caster = (Triggering unit)
        Set Leap_Angle = (Facing of Leap_Caster)
        Set Leap_Horizontal_Distance = ((300.00 + (100.00 x (Real((Level of Leap  for Leap_Caster))))) / 40.00)
        Set Leap_Vertical_Distance = (300.00 / 40.00)
        Set Leap_Caster_FlyingHeight = 0.00
        Unit - Add Crow Form to Leap_Caster
        Unit - Remove Crow Form from Leap_Caster
        Unit - Pause Leap_Caster
        Custom script:   call SetUnitPathing(udg_Leap_Caster, false)
        Countdown Timer - Start Leap_Timer as a Repeating timer that will expire in 0.03 seconds
        Trigger - Turn on Leap Movement <gen>

Code:
Leap Movement
    Events
        Time - Leap_Timer expires
    Conditions
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Leap_Counter Less than or equal to 20
            Then - Actions
                Set Leap_Caster_FlyingHeight = ((Current flying height of Leap_Caster) + Leap_Vertical_Distance)
                Set Leap_Caster_Loc = (Position of Leap_Caster)
                Unit - Move Leap_Caster instantly to (Leap_Caster_Loc offset by Leap_Horizontal_Distance towards Leap_Angle degrees)
                Animation - Change Leap_Caster flying height to Leap_Caster_FlyingHeight at (Leap_Vertical_Distance / 0.03)
                Custom script:   call RemoveLocation(udg_Leap_Caster_Loc)
                Set Leap_Counter = (Leap_Counter + 1)
            Else - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Leap_Counter Less than or equal to 40
                    Then - Actions
                        Set Leap_Caster_FlyingHeight = ((Current flying height of Leap_Caster) - Leap_Vertical_Distance)
                        Set Leap_Caster_Loc = (Position of Leap_Caster)
                        Unit - Move Leap_Caster instantly to (Leap_Caster_Loc offset by Leap_Horizontal_Distance towards Leap_Angle degrees)
                        Animation - Change Leap_Caster flying height to Leap_Caster_FlyingHeight at (Leap_Vertical_Distance / 0.03)
                        Custom script:   call RemoveLocation(udg_Leap_Caster_Loc)
                        Set Leap_Counter = (Leap_Counter + 1)
                    Else - Actions
                        Countdown Timer - Pause Leap_Timer
                        Custom script:   call SetUnitPathing(udg_Leap_Caster, true)
                        Unit - Unpause Leap_Caster
                        Set Leap_Horizontal_Distance = 0.00
                        Set Leap_Caster_FlyingHeight = 0.00
                        Set Leap_Counter = 1
                        Selection - Add Leap_Caster to selection
                        Set Leap_Caster_Loc = (Position of Leap_Caster)
                        Unit - Create 1 Leap Dummy for (Owner of Leap_Caster) at Leap_Caster_Loc facing Default building facing degrees
                        Set Leap_Dummy = (Last created unit)
                        Unit - Add a 1.50 second Generic expiration timer to Leap_Dummy
                        Unit - Set level of Leap Speed Bonus  for Leap_Dummy to (Level of Leap  for Leap_Caster)
                        Unit - Order Leap_Dummy to Orc Shaman - Bloodlust Leap_Caster
                        Custom script:   call RemoveLocation(udg_Leap_Caster_Loc)
                        Trigger - Turn off (This trigger)

Kind of same as my WildAXe triggers, if you want her to leap faster, lower the amout the Leap_Horizontal_Distance is divided by. For example, Set Leap_Horizontal_Distance = ((300.00 + (100.00 x (Real((Level of Leap for Leap_Caster))))) / 20.00) instead of Set Leap_Horizontal_Distance = ((300.00 + (100.00 x (Real((Level of Leap for Leap_Caster))))) / 40.00). You would have to change the rate of increase of fling height, and Leap_Vertical_Distance accordingly too. Since i changed it to 20, the conditions would be changed to <= to 10 and <= to 20. Have fun!

Time Lapse
Transports the caster back in time restoring hp, mp and location. Does not reset cooldown.

Primal Roar
I've done my best to make it look alike to dota's effects and all. Sometimes the units are pushed the wrong way. If you can spot my errors please tell me. =]

Code:
Primal Roar
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Primal Roar 
    Actions
        Set PrimalRoar_Caster = (Triggering unit)
        Set PrimalRoar_Caster_Loc = (Position of PrimalRoar_Caster)
        Set PrimalRoar_Target = (Target unit of ability being cast)
        Set PrimalRoar_Target_Loc = (Target point of ability being cast)
        Set PrimalRoar_Angle = (Angle from PrimalRoar_Caster_Loc to PrimalRoar_Target_Loc)
        For each (Integer PrimalRoar) from 1 to 4, do (Actions)
            Loop - Actions
                Set PrimalRoar_Temp_Loc[PrimalRoar] = (PrimalRoar_Caster_Loc offset by (200.00 x (Real(PrimalRoar))) towards PrimalRoar_Angle degrees)
                Unit - Create 1 Primal Roar Effect Dummy for (Owner of PrimalRoar_Caster) at PrimalRoar_Temp_Loc[PrimalRoar] facing Default building facing degrees
                Set PrimalRoar_Effect_Dummy[PrimalRoar] = (Last created unit)
                Unit - Add a 1.00 second Generic expiration timer to PrimalRoar_Effect_Dummy[PrimalRoar]
                Unit - Create 1 Primal Roar Dummy for (Owner of PrimalRoar_Caster) at PrimalRoar_Temp_Loc[PrimalRoar] facing Default building facing degrees
                Set PrimalRoar_Dummy[PrimalRoar] = (Last created unit)
                Animation - Change PrimalRoar_Dummy[PrimalRoar] prop window angle to -180.00
                Unit - Set level of Primal Roar Slow Effect  for PrimalRoar_Dummy[PrimalRoar] to (Level of Primal Roar  for PrimalRoar_Caster)
                Unit - Add a 1.00 second Generic expiration timer to PrimalRoar_Dummy[PrimalRoar]
                Unit - Order PrimalRoar_Dummy[PrimalRoar] to Human Mountain King - Thunder Clap
        Wait 0.35 seconds
        Unit Group - Pick every unit in (Units in (Playable map area) matching ((((Matching unit) is A structure) Equal to False) and (((((Matching unit) is alive) Equal to True) and (((Matching unit) has buff Primal Roar (Slow)) Equal to True)) and (((Matching unit) Not equal to PrimalRoar_Target) and do (Actions)
            Loop - Actions
                Custom script:   call SetUnitPathing(GetEnumUnit(), false)
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        PrimalRoar_Angle Greater than 90.00
                        PrimalRoar_Angle Less than or equal to 270.00
                    Then - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                (Angle from PrimalRoar_Caster_Loc to (Position of (Picked unit))) Greater than or equal to PrimalRoar_Angle
                            Then - Actions
                                Unit Group - Add (Picked unit) to PrimalRoar_Right_Group
                            Else - Actions
                                Unit Group - Add (Picked unit) to PrimalRoar_Left_Group
                    Else - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                ((Angle from PrimalRoar_Caster_Loc to (Position of (Picked unit))) Greater than or equal to (PrimalRoar_Angle + 180.00)) or ((Angle from PrimalRoar_Caster_Loc to (Position of (Picked unit))) Less than PrimalRoar_Angle)
                            Then - Actions
                                Unit Group - Add (Picked unit) to PrimalRoar_Left_Group
                            Else - Actions
                                Unit Group - Add (Picked unit) to PrimalRoar_Right_Group
                Unit - Create 1 Primal Roar Dummy for (Owner of PrimalRoar_Caster) at (Position of (Picked unit)) facing Default building facing degrees
                Unit - Add a 0.90 second Generic expiration timer to (Last created unit)
                Unit - Set level of Primal Roar Damage  for (Last created unit) to (Level of Primal Roar  for PrimalRoar_Caster)
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Owner of (Picked unit)) Equal to (Owner of PrimalRoar_Caster)
                    Then - Actions
                        Do nothing
                    Else - Actions
                        Unit - Order (Last created unit) to Special Archimonde - Finger Of Death (Picked unit)
        Countdown Timer - Start PrimalRoar_Timer as a Repeating timer that will expire in 0.03 seconds
        Unit - Order PrimalRoar_Caster to Attack PrimalRoar_Target
        Custom script:   call RemoveLocation (udg_PrimalRoar_Caster_Loc)
        Custom script:   call RemoveLocation (udg_PrimalRoar_Target_Loc)
        Custom script:   call RemoveLocation (udg_PrimalRoar_Temp_Loc[1])
        Custom script:   call RemoveLocation (udg_PrimalRoar_Temp_Loc[2])
        Custom script:   call RemoveLocation (udg_PrimalRoar_Temp_Loc[3])
        Custom script:   call RemoveLocation (udg_PrimalRoar_Temp_Loc[4])

Code:
Primal Roar Move Units
    Events
        Time - PrimalRoar_Timer expires
    Conditions
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                PrimalRoar_Counter Less than 40
            Then - Actions
                Set PrimalRoar_Counter = (PrimalRoar_Counter + 1)
                Unit Group - Pick every unit in PrimalRoar_Right_Group and do (Actions)
                    Loop - Actions
                        Unit - Move (Picked unit) instantly to ((Position of (Picked unit)) offset by 12.00 towards (PrimalRoar_Angle + 90.00) degrees)
                        Special Effect - Create a special effect attached to the origin of (Picked unit) using Objects\Spawnmodels\Undead\ImpaleTargetDust\ImpaleTargetDust.mdl
                        Special Effect - Destroy (Last created 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)
                Unit Group - Pick every unit in PrimalRoar_Left_Group and do (Actions)
                    Loop - Actions
                        Unit - Move (Picked unit) instantly to ((Position of (Picked unit)) offset by 12.00 towards (PrimalRoar_Angle - 90.00) degrees)
                        Special Effect - Create a special effect attached to the origin of (Picked unit) using Objects\Spawnmodels\Undead\ImpaleTargetDust\ImpaleTargetDust.mdl
                        Special Effect - Destroy (Last created 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)
            Else - Actions
                Unit Group - Pick every unit in PrimalRoar_Left_Group and do (Actions)
                    Loop - Actions
                        Custom script:   call SetUnitPathing(GetEnumUnit(), true)
                Unit Group - Pick every unit in PrimalRoar_Right_Group and do (Actions)
                    Loop - Actions
                        Custom script:   call SetUnitPathing(GetEnumUnit(), true)
                Countdown Timer - Pause PrimalRoar_Timer
                Set PrimalRoar_Counter = 0
                Set PrimalRoar_Angle = 0.00
                Custom script:   set bj_wantDestroyGroup = true
                Unit Group - Remove all units from PrimalRoar_Right_Group
                Custom script:   set bj_wantDestroyGroup = true
                Unit Group - Remove all units from PrimalRoar_Left_Group

Editing this skill would be somewhat similar to that of Leap and WildAxes, i used the same method. Employed stricter conditions >> Re - uploaded due to a funny angle issue owing to the fact 90degrees is north >.>

Import Difficulties: Medium

Tinki3 Rocks!!----

Note: Please report any bugs =]
If you really hate the fact these spells arnt MUI, try out implementing Uareanoob's MUI GUI system in this map. It should work. I havnt got about learning it, but it look wonderful.


Removed map for adjustments to meet guidelines.
Moved to another thread.
 

~GaLs~

† Ғσſ ŧħə ѕαĸε Φƒ ~Ğ䣚~ †
Reaction score
180
Well, posting the code isnt that hard..
You could just right click the trigger name inside the trigger then click Copy As Text.
Then paste it here inside a code tag.

Code Tag ---> [noparse]
Code:
You Code Here
[/noparse]

And also post screenshot up ...It will greatly increase your spell's reputation.

+repu, for every spell makerz.

Edit - LoL!!
Your axe was so cute~ I like It.
How to correctly submit a resource.
 

rodead

Active Member
Reaction score
42
i shall test it out and see if i like it what a few minutes and i edit my post.

Edit: LOL gals i completlly understand you rofl
+rep for the spell it looks nice. for me but i don't play dota so what i say could be wrong
 

Trollvottel

never aging title
Reaction score
262
well there are very many(much?) leaks and i think a rule for submitting spells is that the triggers are leakless.

but its a nice spell, so if you remove the leaks +rep
 
Reaction score
456
Code:
        Unit - Create 1 Wild Axe Dummy for (Owner of WildAxe_Caster) at [COLOR="#ff0000"](Position of WildAxe_Caster)[/COLOR]facing WildAxe_Angle degrees
        Set WildAxe_Dummy[1] = (Last created unit)
        Unit - Create 1 Wild Axe Dummy for (Owner of WildAxe_Caster) at [COLOR="Red"](Position of WildAxe_Caster)[/COLOR] facing WildAxe_Angle degrees

Spell Initialization trigger. Also the unit groups leak in the other trigger.
 
Reaction score
456
In the first trigger you have already a variable for the caster's location, why not to use it when you create the units?

In the other trigger you could fix the group leaks by using the following code before picking the units.. ( I suppose..)

Code:
set bj_wantDestroyGroup = true
 

NetherHawk

New Member
Reaction score
26
i failed many times with the axes flying all over the map creating mass deforestation ><! hahas thanks alot =]
 

~GaLs~

† Ғσſ ŧħə ѕαĸε Φƒ ~Ğ䣚~ †
Reaction score
180
>>i failed many times with the axes flying all over the map creating mass deforestation ><! hahas thanks alot =]
LoL, that laugh my ass off!

Try and post a screen shot up!
 

Naminator

Coming Back To Life
Reaction score
76
Great job!. And great add to the index. +rep for this. The only left here, is the description of the spell. You forgot to describe the ability in the map. Tell me you make this and will added to the index.
 

trigger_newb

Active Member
Reaction score
3
wow its great
but is there a way to slow it down
because it the spells in dota were these fast
it would be a bit too easy?
 

Naminator

Coming Back To Life
Reaction score
76
Making the timer more high. But in DotA the axes move slower if the target point it's close, a formula for that could work, here it will take a little time if it's close, only if you raise the timer.
 

emjlr3

Change can be a good thing
Reaction score
395
that code was had on the eyes, ug
 

NetherHawk

New Member
Reaction score
26
oh>< but its mainly repetitive, just changing the angles >< but were there leaks? i dont understand what wantdestroygroupbj thingy does. why would it leak if i exclude it.

i found a problem though, my parabolic path stops slightly short of the targeted point.

@naminator: i'll update it when i get home from school
 

Naminator

Coming Back To Life
Reaction score
76
NetherHawk. Please complete the description of Wild Axes in the map. If you are going to post Chronosphere, put the codes too. Tell when is done.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top