Spellpack Custom v1 [Kamadon]

popo80000

New Member
Reaction score
20
Custom v1 The Karma Knight [Kamadon]


-This is a custom spell pack.
-Leakless,GUI, MUI and Lagless
-Import Difficulty : EASY

Abilities:
Karma Strike
Attacks a specific target multiple times with tremendous speed, dealing extra damage and stun for 0.2 seconds for each attack.
Damage will increase by 5% for each attack. Lasts for 10 seconds.
Level 1 - 3 Instances, 20% initial addition damage.
Level 2 - 3 Instances, 30% initial addition damage.
Level 3 - 4 Instances, 40% initial addition damage.
Level 4 - 5 Instances, 50% initial addition damage.
KarmaStrike.jpg

Trigger:
  • Karma Strike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Karma Strike
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in KarmaStrike_UnitGroup) Greater than 0
        • Then - Actions
          • Unit Group - Pick every unit in KarmaStrike_UnitGroup and do (Actions)
            • Loop - Actions
              • Set KarmaStrike_CustomValue = (Custom value of (Picked unit))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Casting unit) Equal to KarmaStrike_Caster[KarmaStrike_CustomValue]
                • Then - Actions
                  • Unit - Remove Karma Strike buff from KarmaStrike_Caster[KarmaStrike_CustomValue]
                  • Unit Group - Remove KarmaStrike_Caster[KarmaStrike_CustomValue] from KarmaStrike_CheckGroup
                  • Unit - Remove (Picked unit) from the game
                  • Unit Group - Remove (Picked unit) from KarmaStrike_UnitGroup
                • Else - Actions
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Casting unit) is in KarmaStrike_CheckGroup) Not equal to True
        • Then - Actions
          • Set KarmaStrike_Counts = (KarmaStrike_Counts + 1)
          • Set KarmaStrike_Caster[KarmaStrike_Counts] = (Casting unit)
          • Set KarmaStrike_Target[KarmaStrike_Counts] = (Target unit of ability being cast)
          • Set KarmaStrike_Level[KarmaStrike_Counts] = (Level of Karma Strike for KarmaStrike_Caster[KarmaStrike_Counts])
          • Set KarmaStrike_DamageRate[1] = 0.20
          • Set KarmaStrike_DamageRate[2] = 0.30
          • Set KarmaStrike_DamageRate[3] = 0.40
          • Set KarmaStrike_DamageRate[4] = 0.50
          • Set KarmaStrike_Damage[KarmaStrike_Counts] = KarmaStrike_DamageRate[KarmaStrike_Level[KarmaStrike_Counts]]
          • Set KarmaStrike_Number[1] = 3.00
          • Set KarmaStrike_Number[2] = 3.00
          • Set KarmaStrike_Number[3] = 4.00
          • Set KarmaStrike_Number[4] = 5.00
          • Set KarmaStrike_NumberCounts[KarmaStrike_Counts] = 0.00
          • Set KarmaStrike_CasterLoc = (Position of KarmaStrike_Caster[KarmaStrike_Counts])
          • Unit - Create 1 Dummy for (Owner of KarmaStrike_Caster[KarmaStrike_Counts]) at KarmaStrike_CasterLoc facing Default building facing degrees
          • Unit - Add Karma Strike Speed to (Last created unit)
          • Unit - Order (Last created unit) to Orc Shaman - Bloodlust KarmaStrike_Caster[KarmaStrike_Counts]
          • Unit - Set the custom value of (Last created unit) to KarmaStrike_Counts
          • Unit - Order KarmaStrike_Caster[KarmaStrike_Counts] to Attack KarmaStrike_Target[KarmaStrike_Counts]
          • Unit Group - Add (Last created unit) to KarmaStrike_UnitGroup
          • Unit Group - Add KarmaStrike_Caster[KarmaStrike_Counts] to KarmaStrike_CheckGroup
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (KarmaStrike_Target[KarmaStrike_Counts] is in KarmaStrike_DamageGroup) Not equal to True
            • Then - Actions
              • Unit Group - Add KarmaStrike_Target[KarmaStrike_Counts] to KarmaStrike_DamageGroup
              • Trigger - Add to Karma Strike Extra Damage <gen> the event (Unit - KarmaStrike_Target[KarmaStrike_Counts] Takes damage)
            • Else - Actions
          • Custom script: call RemoveLocation (udg_KarmaStrike_CasterLoc)
        • Else - Actions
Trigger:
  • Karma Strike Effects
    • Events
      • Unit - A unit Is attacked
    • Conditions
      • ((Attacking unit) has buff Karma Strike ) Equal to True
    • Actions
      • Unit Group - Pick every unit in KarmaStrike_UnitGroup and do (Actions)
        • Loop - Actions
          • Set KarmaStrike_CustomValue = (Custom value of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Attacking unit) Equal to KarmaStrike_Caster[KarmaStrike_CustomValue]
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (KarmaStrike_Caster[KarmaStrike_CustomValue] has buff Karma Strike ) Equal to True
                • Then - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Attacked unit) Not equal to KarmaStrike_Target[KarmaStrike_CustomValue]
                    • Then - Actions
                      • Unit - Remove Karma Strike buff from KarmaStrike_Caster[KarmaStrike_CustomValue]
                      • Unit Group - Remove KarmaStrike_Caster[KarmaStrike_CustomValue] from KarmaStrike_CheckGroup
                      • Unit - Remove (Picked unit) from the game
                      • Unit Group - Remove (Picked unit) from KarmaStrike_UnitGroup
                    • Else - Actions
                • Else - Actions
                  • Unit - Remove (Picked unit) from the game
                  • Unit Group - Remove (Picked unit) from KarmaStrike_UnitGroup
                  • Unit Group - Remove KarmaStrike_Caster[KarmaStrike_CustomValue] from KarmaStrike_CheckGroup
            • Else - Actions
Trigger:
  • Karma Strike Extra Damage
    • Events
    • Conditions
      • ((Damage source) has buff Karma Strike ) Equal to True
    • Actions
      • Unit Group - Pick every unit in KarmaStrike_UnitGroup and do (Actions)
        • Loop - Actions
          • Set KarmaStrike_CustomValue = (Custom value of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Damage source) Equal to KarmaStrike_Caster[KarmaStrike_CustomValue]
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Attacked unit) Equal to KarmaStrike_Target[KarmaStrike_CustomValue]
                • Then - Actions
                  • Unit - Cause (Picked unit) to damage KarmaStrike_Target[KarmaStrike_CustomValue], dealing ((Damage taken) x KarmaStrike_Damage[KarmaStrike_CustomValue]) damage of attack type Hero and damage type Normal
                  • Floating Text - Create floating text that reads (+ + (String(((Damage taken) x KarmaStrike_Damage[KarmaStrike_CustomValue])))) above KarmaStrike_Target[KarmaStrike_CustomValue] with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                  • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                  • Floating Text - Change (Last created floating text): Disable suspend state
                  • Floating Text - Change (Last created floating text): Disable permanence
                  • Floating Text - Change the fading age of (Last created floating text) to 2.50 seconds
                  • Floating Text - Change the lifespan of (Last created floating text) to 3.50 seconds
                  • Set KarmaStrike_Damage[KarmaStrike_CustomValue] = (KarmaStrike_Damage[KarmaStrike_CustomValue] + 0.05)
                  • Special Effect - Create a special effect attached to the weapon of KarmaStrike_Caster[KarmaStrike_CustomValue] using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Special Effect - Create a special effect attached to the chest of KarmaStrike_Target[KarmaStrike_CustomValue] using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                  • Special Effect - Destroy (Last created special effect)
                  • Set KarmaStrike_Point = (Position of KarmaStrike_Caster[KarmaStrike_CustomValue])
                  • Unit - Create 1 Dummy for (Owner of KarmaStrike_Caster[KarmaStrike_CustomValue]) at KarmaStrike_Point facing Default building facing degrees
                  • Unit - Add Karma Strike Stun to (Last created unit)
                  • Unit - Order (Last created unit) to Human Mountain King - Storm Bolt KarmaStrike_Target[KarmaStrike_CustomValue]
                  • Unit - Add a 1.80 second Generic expiration timer to (Last created unit)
                  • Custom script: call RemoveLocation (udg_KarmaStrike_Point)
                  • Set KarmaStrike_NumberCounts[KarmaStrike_CustomValue] = (KarmaStrike_NumberCounts[KarmaStrike_CustomValue] + 1.00)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • KarmaStrike_NumberCounts[KarmaStrike_CustomValue] Greater than or equal to KarmaStrike_Number[KarmaStrike_Level[KarmaStrike_CustomValue]]
                    • Then - Actions
                      • Unit Group - Remove KarmaStrike_Caster[KarmaStrike_CustomValue] from KarmaStrike_CheckGroup
                      • Unit - Remove Karma Strike buff from KarmaStrike_Caster[KarmaStrike_CustomValue]
                      • Unit - Remove (Picked unit) from the game
                      • Unit Group - Remove (Picked unit) from KarmaStrike_UnitGroup
                    • Else - Actions
                • Else - Actions
            • Else - Actions
Trigger:
  • Karma Strike Death
    • Events
      • Unit - A unit Dies
    • Conditions
    • Actions
      • Unit Group - Pick every unit in KarmaStrike_UnitGroup and do (Actions)
        • Loop - Actions
          • Set KarmaStrike_CustomValue = (Custom value of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Dying unit) Equal to KarmaStrike_Target[KarmaStrike_CustomValue]
            • Then - Actions
              • Unit - Remove Karma Strike buff from KarmaStrike_Caster[KarmaStrike_CustomValue]
              • Unit Group - Remove KarmaStrike_Caster[KarmaStrike_CustomValue] from KarmaStrike_CheckGroup
              • Unit - Remove (Picked unit) from the game
              • Unit Group - Remove (Picked unit) from KarmaStrike_UnitGroup
            • Else - Actions

Elite Berserker
When health hits below 60%, Kamadon will gains additional health regeneration.
Level 1 - Regenerates health at a rate of 10% strength per second.
Level 2 - Regenerates health at a rate of 20% strength per second.
Level 3 - Regenerates health at a rate of 30% strength per second.
Level 4 - Regenerates health at a rate of 40% strength per second.
EliteBerserker.jpg

Trigger:
  • Elite Berserker
    • Events
      • Unit - A unit Learns a skill
    • Conditions
      • (Learned Hero Skill) Equal to Elite Berserker
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Learning Hero) is in EliteBerserker_CheckGroup) Not equal to True
        • Then - Actions
          • Unit Group - Add (Learning Hero) to EliteBerserker_CheckGroup
          • Set EliteBerserker_Counts = (EliteBerserker_Counts + 1)
          • Unit - Set the custom value of (Learning Hero) to EliteBerserker_Counts
          • Set EliteBerserker_Colour[EliteBerserker_Counts] = 100.00
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Elite Berserker Regeneration <gen> is on) Not equal to True
            • Then - Actions
              • Set EliteBerserker_Rate[1] = 0.05
              • Set EliteBerserker_Rate[2] = 0.10
              • Set EliteBerserker_Rate[3] = 0.15
              • Set EliteBerserker_Rate[4] = 0.20
              • Trigger - Turn on Elite Berserker Regeneration <gen>
            • Else - Actions
        • Else - Actions
Trigger:
  • Elite Berserker Regeneration
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
    • Actions
      • Unit Group - Pick every unit in EliteBerserker_CheckGroup and do (Actions)
        • Loop - Actions
          • Set EliteBerserker_CustomValue = (Custom value of (Picked unit))
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Percentage life of (Picked unit)) Less than or equal to 60.00
            • Then - Actions
              • Set EliteBerserker_Level = (Level of Elite Berserker for (Picked unit))
              • Unit - Set life of (Picked unit) to ((Life of (Picked unit)) + ((Real((Strength of (Picked unit) (Include bonuses)))) x EliteBerserker_Rate[EliteBerserker_Level]))
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • EliteBerserker_Colour[EliteBerserker_CustomValue] Greater than 0.00
                • Then - Actions
                  • Set EliteBerserker_Colour[EliteBerserker_CustomValue] = (EliteBerserker_Colour[EliteBerserker_CustomValue] - 8.00)
                  • Animation - Change (Picked unit)'s vertex coloring to (100.00%, EliteBerserker_Colour[EliteBerserker_CustomValue]%, EliteBerserker_Colour[EliteBerserker_CustomValue]%) with 0.00% transparency
                • Else - Actions
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • EliteBerserker_Colour[EliteBerserker_CustomValue] Less than 100.00
                • Then - Actions
                  • Set EliteBerserker_Colour[EliteBerserker_CustomValue] = (EliteBerserker_Colour[EliteBerserker_CustomValue] + 16.00)
                  • Animation - Change (Picked unit)'s vertex coloring to (100.00%, EliteBerserker_Colour[EliteBerserker_CustomValue]%, EliteBerserker_Colour[EliteBerserker_CustomValue]%) with 0.00% transparency
                • Else - Actions

Karma Reverse
Each attack by opponents will gives a chance to create a powerful replicate of themselves which lasts for 18 seconds.
Replicate deals 100% damage but takes 400% damage during combat.
Level 1 - 10% chance, maximum of 3 replicate can be created.
Level 2 - 12% chance, maximum of 4 replicate can be created.
Level 3 - 14% chance, maximum of 5 replicate can be created.
Level 4 - 16% chance, maximum of 6 replicate can be created.
Basically, this is just creating replicate of the attacker (non allied).
KarmaReverse.jpg

Trigger:
  • Karma Reverse Start
    • Events
      • Unit - A unit Learns a skill
    • Conditions
      • (Learned Hero Skill) Equal to Karma Reverse
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • ((Learning Hero) is in KarmaReverse_UnitGroup) Not equal to True
        • Then - Actions
          • Unit Group - Add (Learning Hero) to KarmaReverse_UnitGroup
          • Trigger - Add to Karma Reverse <gen> the event (Unit - (Learning Hero) Is attacked)
          • Set KarmaReverse_Percentage[1] = 10
          • Set KarmaReverse_Percentage[2] = 12
          • Set KarmaReverse_Percentage[3] = 14
          • Set KarmaReverse_Percentage[4] = 16
          • Set KarmaReverse_Number[1] = 3
          • Set KarmaReverse_Number[2] = 4
          • Set KarmaReverse_Number[3] = 5
          • Set KarmaReverse_Number[4] = 6
        • Else - Actions
Trigger:
  • Karma Reverse
    • Events
    • Conditions
      • ((Attacked unit) is an illusion) Not equal to True
      • ((Attacking unit) belongs to an enemy of (Owner of (Attacked unit))) Equal to True
      • ((Attacked unit) has buff Karma Reverse ) Equal to True
      • ((Attacked unit) is in KarmaReverse_UnitGroup) Equal to True
    • Actions
      • Set KarmaReverse_RandomInteger = (Random integer number between 1 and 100)
      • Set KarmaReverse_Level = (Level of Karma Reverse for (Attacked unit))
      • Set KarmaReverse_Check = (Units in (Playable map area) matching (((Owner of (Matching unit)) Equal to (Owner of (Attacked unit))) and (((Matching unit) is an illusion) Equal to True)))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • And - All (Conditions) are true
            • Conditions
              • (Number of units in KarmaReverse_Check) Less than KarmaReverse_Number[KarmaReverse_Level]
              • KarmaReverse_RandomInteger Less than or equal to KarmaReverse_Percentage[KarmaReverse_Level]
        • Then - Actions
          • Set KarmaReverse_Point[1] = (Position of (Attacking unit))
          • Unit - Create 1 Dummy for (Owner of (Attacked unit)) at KarmaReverse_Point[1] facing Default building facing degrees
          • Unit - Add Karma Reverse Illusion to (Last created unit)
          • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852274, GetAttacker())
          • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
          • Unit - Order (Summoned unit) to Attack (Attacking unit)
          • Special Effect - Create a special effect attached to the origin of (Attacking unit) using Abilities\Spells\Items\AIil\AIilTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • Custom script: call RemoveLocation (udg_KarmaReverse_Point[1])
        • Else - Actions
      • Custom script: call DestroyGroup (udg_KarmaReverse_Check)

Thrust
Thrusts himself forward, knocking down all nearby unit causing them to takes damage and slow movement speed by 50% for 2 seconds.
Once the thrusting is stop, it will deals damage and stun all nearby opponent for 1 second.
Level 1 - 60 initial damage, 20 accumulation damage.
Level 2 - 90 initial damage, 40 accumulation damage.
Level 3 - 120 initial damage, 60 accumulation damage.
Thrust.jpg
Code:
Thrust
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Thrust 
    Actions
        Set Thrust_Counts = (Thrust_Counts + 1)
        Set Thrust_Caster[Thrust_Counts] = (Casting unit)
        Set Thrust_Point[1] = (Position of Thrust_Caster[Thrust_Counts])
        Set Thrust_Point[2] = (Target point of ability being cast)
        Set Thrust_Angle[Thrust_Counts] = (Angle from Thrust_Point[1] to Thrust_Point[2])
        Set Thrust_Level[Thrust_Counts] = (Level of Thrust  for Thrust_Caster[Thrust_Counts])
        Set Thrust_Distance[Thrust_Counts] = (Distance between Thrust_Point[1] and Thrust_Point[2])
        Set Thrust_DistanceTravel[Thrust_Counts] = 0.00
        Set Thrust_Speed[Thrust_Counts] = 35.00
        Set Thrust_UnitCount[Thrust_Counts] = 0
        Set Thrust_Damage[1] = 20
        Set Thrust_Damage[2] = 40
        Set Thrust_Damage[3] = 60
        Set Thrust_OriginalDamage[1] = 60
        Set Thrust_OriginalDamage[2] = 90
        Set Thrust_OriginalDamage[3] = 120
        Unit - Turn collision for Thrust_Caster[Thrust_Counts] Off
        Unit - Create 1 Dummy for (Owner of Thrust_Caster[Thrust_Counts]) at Thrust_Point[1] facing Default building facing degrees
        Unit - Set the custom value of (Last created unit) to Thrust_Counts
        Unit Group - Add (Last created unit) to Thrust_MoveGroup
        Animation - Play Thrust_Caster[Thrust_Counts]'s spell animation
        Custom script:   call RemoveLocation (udg_Thrust_Point[1])
        Custom script:   call RemoveLocation (udg_Thrust_Point[2])
        Trigger - Turn on Thrust Move <gen>
[/wc3]
[COLOR="Red"]The trigger has been editted slightly to prevent effects spamming. This is not the editted trigger.[/COLOR]
[wc3]
Thrust Move
    Events
        Time - Every 0.02 seconds of game time
    Conditions
    Actions
        Unit Group - Pick every unit in Thrust_MoveGroup and do (Actions)
            Loop - Actions
                Set Thrust_CustomValue = (Custom value of (Picked unit))
                Set Thrust_Point[3] = (Position of Thrust_Caster[Thrust_CustomValue])
                Set Thrust_Point[4] = (Thrust_Point[3] offset by Thrust_Speed[Thrust_CustomValue] towards Thrust_Angle[Thrust_CustomValue] degrees)
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Thrust_DistanceTravel[Thrust_CustomValue] Less than (Thrust_Distance[Thrust_CustomValue] - 250.00)
                    Then - Actions
                        Animation - Play Thrust_Caster[Thrust_CustomValue]'s attack animation
                        Set Thrust_Point[5] = (Thrust_Point[4] offset by 200.00 towards Thrust_Angle[Thrust_CustomValue] degrees)
                        Special Effect - Create a special effect at Thrust_Point[5] using Abilities\Spells\NightElf\Taunt\TauntCaster.mdl
                        Special Effect - Destroy (Last created special effect)
                        Custom script:   call RemoveLocation (udg_Thrust_Point[5])
                    Else - Actions
                Destructible - Pick every destructible within 120.00 of Thrust_Point[4] and do (Actions)
                    Loop - Actions
                        Destructible - Kill (Picked destructible)
                Custom script:   call SetUnitX( udg_Thrust_Caster[udg_Thrust_CustomValue], GetLocationX( udg_Thrust_Point[4] ) )
                Custom script:   call SetUnitY( udg_Thrust_Caster[udg_Thrust_CustomValue], GetLocationY( udg_Thrust_Point[4] ) )
                Set Thrust_Speed[Thrust_CustomValue] = (Thrust_Speed[Thrust_CustomValue] - 0.25)
                Set Thrust_DistanceTravel[Thrust_CustomValue] = (Thrust_DistanceTravel[Thrust_CustomValue] + Thrust_Speed[Thrust_CustomValue])
                Set Thrust_UnitGroup[1] = (Units within 150.00 of Thrust_Point[4] matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of Thrust_Caster[Thrust_CustomValue])) Equal to True))))
                Unit Group - Pick every unit in Thrust_UnitGroup[1] and do (Actions)
                    Loop - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                ((Picked unit) is in Thrust_DamagedGroup[Thrust_CustomValue]) Not equal to True
                            Then - Actions
                                Unit Group - Add (Picked unit) to Thrust_DamagedGroup[Thrust_CustomValue]
                                Unit - Cause Thrust_Caster[Thrust_CustomValue] to damage (Picked unit), dealing (Real(Thrust_Damage[Thrust_Level[Thrust_CustomValue]])) damage of attack type Hero and damage type Normal
                                Set Thrust_UnitCount[Thrust_CustomValue] = (Thrust_UnitCount[Thrust_CustomValue] + 1)
                                Set Thrust_Point[8] = (Position of (Picked unit))
                                Unit - Create 1 Dummy for (Owner of Thrust_Caster[Thrust_CustomValue]) at Thrust_Point[8] facing Default building facing degrees
                                Unit - Add Thrust Slow to (Last created unit)
                                Unit - Order (Last created unit) to Neutral Pandaren Brewmaster - Drunken Haze (Picked unit)
                                Unit - Add a 1.60 second Generic expiration timer to (Last created unit)
                                Custom script:   call RemoveLocation (udg_Thrust_Point[8])
                            Else - Actions
                        Set Thrust_Point[6] = (Position of (Picked unit))
                        Set Thrust_KnockBackAngle = (Angle from Thrust_Point[4] to Thrust_Point[6])
                        Set Thrust_Point[7] = (Thrust_Point[6] offset by 5.00 towards Thrust_KnockBackAngle degrees)
                        Destructible - Pick every destructible within 100.00 of Thrust_Point[7] and do (Actions)
                            Loop - Actions
                                Destructible - Kill (Picked destructible)
                        Unit - Move (Picked unit) instantly to Thrust_Point[7]
                        Special Effect - Create a special effect at Thrust_Point[7] using Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl
                        Special Effect - Destroy (Last created special effect)
                        Custom script:   call RemoveLocation (udg_Thrust_Point[6])
                        Custom script:   call RemoveLocation (udg_Thrust_Point[7])
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Thrust_DistanceTravel[Thrust_CustomValue] Greater than or equal to Thrust_Distance[Thrust_CustomValue]
                    Then - Actions
                        Special Effect - Create a special effect attached to the origin of Thrust_Caster[Thrust_CustomValue] using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
                        Special Effect - Destroy (Last created special effect)
                        Special Effect - Create a special effect attached to the origin of Thrust_Caster[Thrust_CustomValue] using Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl
                        Special Effect - Destroy (Last created special effect)
                        Special Effect - Create a special effect attached to the origin of Thrust_Caster[Thrust_CustomValue] using Abilities\Spells\Other\Doom\DoomDeath.mdl
                        Special Effect - Destroy (Last created special effect)
                        Destructible - Pick every destructible within 250.00 of Thrust_Point[4] and do (Actions)
                            Loop - Actions
                                Destructible - Kill (Picked destructible)
                        Set Thrust_UnitGroup[2] = (Units within 250.00 of Thrust_Point[4] matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of Thrust_Caster[Thrust_CustomValue])) Equal to True))))
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                (Number of units in Thrust_UnitGroup[2]) Greater than 0
                            Then - Actions
                                Floating Text - Create floating text that reads (String((Thrust_OriginalDamage[Thrust_Level[Thrust_CustomValue]] + (Thrust_Damage[Thrust_Level[Thrust_CustomValue]] x Thrust_UnitCount[Thrust_CustomValue])))) above Thrust_Caster[Thrust_CustomValue] with Z offset 0.00, using font size 15.00, color (100.00%, 0.00%, 0.00%), and 0.00% transparency
                                Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
                                Floating Text - Change (Last created floating text): Disable suspend state
                                Floating Text - Change (Last created floating text): Disable permanence
                                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 3.00 seconds
                            Else - Actions
                        Unit Group - Pick every unit in Thrust_UnitGroup[2] and do (Actions)
                            Loop - Actions
                                Set Thrust_Point[9] = (Position of (Picked unit))
                                Unit - Create 1 Dummy for (Owner of Thrust_Caster[Thrust_CustomValue]) at Thrust_Point[9] facing Default building facing degrees
                                Unit - Add Thrust Stun to (Last created unit)
                                Unit - Order (Last created unit) to Human Mountain King - Storm Bolt (Picked unit)
                                Unit - Add a 1.80 second Generic expiration timer to (Last created unit)
                                Unit - Cause Thrust_Caster[Thrust_CustomValue] to damage (Picked unit), dealing ((Real(Thrust_OriginalDamage[Thrust_Level[Thrust_CustomValue]])) + ((Real(Thrust_Damage[Thrust_Level[Thrust_CustomValue]])) x (Real(Thrust_UnitCount[Thrust_CustomValue])))) damage of attack type Hero and damage type Normal
                                Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl
                                Special Effect - Destroy (Last created special effect)
                                Custom script:   call RemoveLocation (udg_Thrust_Point[9])
                        Unit - Turn collision for Thrust_Caster[Thrust_CustomValue] On
                        Unit - Remove (Picked unit) from the game
                        Unit Group - Remove (Picked unit) from Thrust_MoveGroup
                        Custom script:   call DestroyGroup (udg_Thrust_UnitGroup[2])
                        Custom script:   call DestroyGroup (udg_Thrust_DamagedGroup[udg_Thrust_CustomValue])
                    Else - Actions
                Custom script:   call RemoveLocation (udg_Thrust_Point[3])
                Custom script:   call RemoveLocation (udg_Thrust_Point[4])
                Custom script:   call DestroyGroup (udg_Thrust_UnitGroup[1])
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Number of units in Thrust_MoveGroup) Equal to 0
            Then - Actions
                Trigger - Turn off (This trigger)
            Else - Actions
[/wc3]
[/spoiler]
Enjoy!
Tell me if there are any leaks or problems with my spellpack. Thanks in advance!:P
Other DotA spell packs made by me:P :
Priestess of the Moon - [URL="http://www.thehelper.net/forums/showthread.php?p=1103833#post1103833"]http://www.thehelper.net/forums/showthread.php?p=1103833#post1103833[/URL]
Spiritbreaker - [URL="http://www.thehelper.net/forums/showthread.php?p=1104452#post1104452"]http://www.thehelper.net/forums/showthread.php?p=1104452#post1104452[/URL]
Stealth Assassin and Axe - [URL="http://www.thehelper.net/forums/showthread.php?p=1106997#post1106997"]http://www.thehelper.net/forums/showthread.php?p=1106997#post1106997[/URL]
Storm Spirit - [URL="http://www.thehelper.net/forums/showthread.php?p=1107700#post1107700"]http://www.thehelper.net/forums/showthread.php?p=1107700#post1107700[/URL]
Tidehunter - [URL="http://www.thehelper.net/forums/showthread.php?p=1125148#post1125148"]http://www.thehelper.net/forums/showthread.php?p=1125148#post1125148[/URL]

Custom spell packs made by me:
[COLOR="Red"]This is currently the only one.[/COLOR]
 

Attachments

  • Custom 1 [Kamadon].w3x
    50.6 KB · Views: 560

BlackRose

Forum User
Reaction score
239
Add a description to the spells. A random image doesn't help. [ wc3 ] tags help better than [ code], easier to read.
 

kingkingyyk3

Visitor (Welcome to the Jungle, Baby!)
Reaction score
216
Karma Strike -> Common spell. Add some effects will helps.

Thrust -> Effects spamming. Create an effect every 0.02s is too much. Added 5 ticks in it, it will be more eye-friendly. Change your period too 0.03 or 0.04 too. 0.02 will give processor more task. =P

Karma Reverse -> It does not have nice eye candy, basically I can't see any effect even it is triggered.
P/S : Have you add the event to it?
Trigger:
  • Karma Reverse
    • Events
    • Conditions
      • ((Attacked unit) is an illusion) Not equal to (!=) True
      • ((Attacking unit) belongs to an enemy of (Owner of (Attacked unit))) Equal to (==) True
      • ((Attacked unit) has buff Karma Reverse ) Equal to (==) True
      • ((Attacked unit) is in KarmaReverse_UnitGroup) Equal to (==) True
    • Actions
      • Set KarmaReverse_RandomInteger = (Random integer number between 1 and 100)
      • Set KarmaReverse_Level = (Level of Karma Reverse for (Attacked unit))
      • Set KarmaReverse_Check = (Units in (Playable map area) matching (((Owner of (Matching unit)) Equal to (==) (Owner of (Attacked unit))) and (((Matching unit) is an illusion) Equal to (==) True)))
        • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • Multiple ConditionsAnd - All (Conditions) are true
              • Conditions
                • (Number of units in KarmaReverse_Check) Less than (&lt;) KarmaReverse_Number[KarmaReverse_Level]
                • KarmaReverse_RandomInteger Less than or equal to (&lt;=) KarmaReverse_Percentage[KarmaReverse_Level]
          • Then - Actions
            • Set KarmaReverse_Point[1] = (Position of (Attacking unit))
            • Unit - Create 1 Dummy for (Owner of (Attacked unit)) at KarmaReverse_Point[1] facing Default building facing (270.0) degrees
            • Unit - Add Karma Reverse Illusion to (Last created unit)
            • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852274, GetAttacker())
            • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Unit - Order (Summoned unit) to Attack (Attacking unit)
            • Special Effect - Create a special effect attached to the origin of (Attacking unit) using Abilities\Spells\Items\AIil\AIilTarget.mdl
            • Special Effect - Destroy (Last created special effect)
            • Custom script: call RemoveLocation (udg_KarmaReverse_Point[1])
          • Else - Actions
      • Custom script: call DestroyGroup (udg_KarmaReverse_Check)


Elite Berserker -> Nice concept, but simply turning hero's vertex color only is too plain for me.

Continue your spell! I believe it will be approved.
 

popo80000

New Member
Reaction score
20
Karma Strike -> Common spell. Add some effects will helps.

Thrust -> Effects spamming. Create an effect every 0.02s is too much. Added 5 ticks in it, it will be more eye-friendly. Change your period too 0.03 or 0.04 too. 0.02 will give processor more task. =P

Karma Reverse -> It does not have nice eye candy, basically I can't see any effect even it is triggered.
P/S : Have you add the event to it?
Trigger:
  • Karma Reverse
    • Events
    • Conditions
      • ((Attacked unit) is an illusion) Not equal to (!=) True
      • ((Attacking unit) belongs to an enemy of (Owner of (Attacked unit))) Equal to (==) True
      • ((Attacked unit) has buff Karma Reverse ) Equal to (==) True
      • ((Attacked unit) is in KarmaReverse_UnitGroup) Equal to (==) True
    • Actions
      • Set KarmaReverse_RandomInteger = (Random integer number between 1 and 100)
      • Set KarmaReverse_Level = (Level of Karma Reverse for (Attacked unit))
      • Set KarmaReverse_Check = (Units in (Playable map area) matching (((Owner of (Matching unit)) Equal to (==) (Owner of (Attacked unit))) and (((Matching unit) is an illusion) Equal to (==) True)))
        • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • Multiple ConditionsAnd - All (Conditions) are true
              • Conditions
                • (Number of units in KarmaReverse_Check) Less than (&lt;) KarmaReverse_Number[KarmaReverse_Level]
                • KarmaReverse_RandomInteger Less than or equal to (&lt;=) KarmaReverse_Percentage[KarmaReverse_Level]
          • Then - Actions
            • Set KarmaReverse_Point[1] = (Position of (Attacking unit))
            • Unit - Create 1 Dummy for (Owner of (Attacked unit)) at KarmaReverse_Point[1] facing Default building facing (270.0) degrees
            • Unit - Add Karma Reverse Illusion to (Last created unit)
            • Custom script: call IssueTargetOrderById(bj_lastCreatedUnit, 852274, GetAttacker())
            • Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
            • Unit - Order (Summoned unit) to Attack (Attacking unit)
            • Special Effect - Create a special effect attached to the origin of (Attacking unit) using Abilities\Spells\Items\AIil\AIilTarget.mdl
            • Special Effect - Destroy (Last created special effect)
            • Custom script: call RemoveLocation (udg_KarmaReverse_Point[1])
          • Else - Actions
      • Custom script: call DestroyGroup (udg_KarmaReverse_Check)
Elite Berserker -> Nice concept, but simply turning hero's vertex color only is too plain for me.

Continue your spell! I believe it will be approved.

For Karma Reverse, you have to look at the 1st trigger. I add the unit into the event from the 1st trigger.
As for Thrust, i will change it. Currently, i still can't find any good effects for it.
For Karma Strike, i feel that the effects are alright.
Elite Berserker -> I can't find any good effect for it beside changing the colour. It would be good if you could suggest some.
Thanks for your suggestions! :D

BlackRose: The reason why i uses
Code:
 instead of [wc3] is because there are many triggers to post and they are long. [code] can help me to shorten it by compressing them so that it will take up lesser space but [wc3] doesn't.
I will add the descriptions of the spells.
Thanks! :)
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top