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: 564

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
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1
  • The Helper The Helper:
    New recipe is another summer dessert Berry and Peach Cheesecake - https://www.thehelper.net/threads/recipe-berry-and-peach-cheesecake.194169/
  • The Helper The Helper:
    I think we need to add something to the bottom of the front page that shows the Headline News forum that has a link to go to the News Forum Index so people can see there is more news. Do you guys see what I am saying, lets say you read all the articles on the front page and you get to the end and it just ends, no kind of link for MOAR!

      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