• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Heroic's Strike (v1.2)

  • Like
Reactions: Imadori
Presentation


This is the most recent work of my authorship. I hope it likes and you can give the feedback (with suggestions, subjects, you criticize and reputation) on this and my other works in Hive Work Shop.
Well, the name of this spell was inspired in Heroic Strike of the warlike class but it doesn't possess the same function and it is not copy.
Besides, it is the spell of only objective and of physical combat, I indicate for units of combat melee.
Features


  • MUI
  • LeakLess
  • Easy to use
  • GUI/Triggers
  • Easy to configure
ChangeLogs


Current version (1.2)

  • Icon - In the old version, I said that I altered the icon but I committed an error, in this version it was really altered the icon (BTNShockWave.blp).
  • Triggers - Some alterations in Triggers (variables and explanations on more commands).
  • Description - Alterations in the description for the current version.
  • Unit - Small alterations in Dummy.
  • Documentation - Added ChangeLogs.

Old version (1.1)

  • Floating Text - Now, it is possible to choose the colors for the visualized flotation texts when the spell is used.If the spell causes the critical strike, the damage points and cure caused will be shown increased of their points and "!" (exclamation).
  • Descriptions - Small modifications in relation to current version (1.1).
  • Icon - Altered Icon (for BTNShockWave.blp)
Spell’s Function


Caster combines the forces and dexterity to punish the enemy.
During this attack, it can causes critical strike that it stuns the target.
If with this spell Caster kills an unit, the health it will be recovered by the portion of the caused damage.

  • Cast Range: 100 (Melee).
  • Critical Strike's Chance: Agility divided by 4/3/2/1.
  • Damage (normal): 125%-160%/180%-230%/275%-315%/320%-360% of the forces.
  • Damage (critical strike): 1%/2%/3%/4% (of Caster's Health + Normal Damage).
  • Duration (Stun): 1/2/3/4 seconds.
  • Heal: 15%/30%/45%/60% of the damage (normal or critical strike).
  • CoolDown: 10/8/6/4 seconds.
  • ManaCost: 120/155/190/225 points.
  • For agility and force, attributes bonus is included.
Spell's triggers


In this version, i added some comments explaining certain commands. I hope it helps.
See the triggers clicking in the options "Click to ".


[trigger=Setup]
Heroic s Strike Setup
Events
Map initialization
Conditions
Actions
-------- Necessary ability to activate the functions of the spell: --------
Set HK_Ability_Hero = Heroic's Strike
-------- Ability to stun target: --------
Set HK_Ability_Stun = Heroic's Strike (Stun)
-------- ----------------------------------------------------------- --------
-------- Chance for the spell to cause Critical Strike: --------
Set HK_Chance[1] = 4
Set HK_Chance[2] = 3
Set HK_Chance[2] = 2
Set HK_Chance[4] = 1
-------- The indexes indicate (respectively), the level of each ability and the property in the functions for Trigger. --------
-------- ----------------------------------------------------------- --------
-------- Damage critical been caused the chance is TRUE: --------
Set HK_Damage_Critical[1] = 0.01
Set HK_Damage_Critical[2] = 0.02
Set HK_Damage_Critical[3] = 0.03
Set HK_Damage_Critical[4] = 0.04
-------- The values above (HK_Damage_Critical) they are equal to 1%/2%/3%/4% of Caster's health. --------
-------- ----------------------------------------------------------- --------
-------- Multiply the values above for the force of Caster (+ bonus) to discover the minimum damage (without the addition of critical strike). --------
Set HK_Damage_Min[1] = 1.25
Set HK_Damage_Min[2] = 1.80
Set HK_Damage_Min[3] = 2.75
Set HK_Damage_Min[4] = 3.20
-------- ----------------------------------------------------------- --------
-------- Multiply the values above for the force of Caster (+ bonus) to discover the maximum damage (without the addition of critical strike). --------
Set HK_Damage_Max[1] = 1.60
Set HK_Damage_Max[2] = 2.30
Set HK_Damage_Max[3] = 3.15
Set HK_Damage_Max[4] = 3.60
-------- ----------------------------------------------------------- --------
-------- If Caster kills an unit with this spell, use the values below to recover the health of the same: --------
Set HK_Heal_Max[1] = 0.15
Set HK_Heal_Max[2] = 0.30
Set HK_Heal_Max[3] = 0.45
Set HK_Heal_Max[4] = 0.60
-------- The values above are equal to 15%/30%/45% and 60% of the caused total damage (damage normal or critical strike). --------
-------- ----------------------------------------------------------- --------
-------- Name of the models used for the creation of special effects: --------
-------- ----------------------------------------------------------- --------
-------- Used model when the spell causes dizziness in the Target: --------
Set HK_Model_Name[1] = Abilities\Weapons\PhoenixMissile\Phoenix_Missile.mdl
-------- Model used to create the special effect in the weapon of Caster: --------
Set HK_Model_Name[2] = Abilities\Spells\Orc\Shockwave\ShockwaveMissile.mdl
-------- Model used to create the special effect in the target when the spell DOESN'T cause critical strike: --------
Set HK_Model_Name[3] = Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
-------- Model used for special effect when the spell recovers the points of Caster's health: --------
Set HK_Model_Name[4] = Abilities\Spells\Undead\DeathCoil\DeathCoilSpecialArt.mdl
-------- ----------------------------------------------------------- --------
-------- Name used to determine in that it leaves of the body of the unit that the special effect will be created: --------
Set HK_Model_Target[1] = chest
Set HK_Model_Target[2] = weapon
Set HK_Model_Target[3] = origin
Set HK_Model_Target[4] = origin
-------- ----------------------------------------------------------- --------
-------- The arrays of HK_Model_Name and HK_Model_Target should be compatible in index. --------
-------- If the indexes are NOT compatible, will be possibility of errors. --------
-------- ----------------------------------------------------------- --------
-------- Mark the boolean below as TRUE to visualize flotation texts: --------
Set HK_Text_On = True
-------- In case the opposite, mark her as FALSE. --------
-------- ----------------------------------------------------------- --------
-------- Size of the flotation text: --------
Set HK_Text_Size = 11.00
-------- Orientation angle: --------
Set HK_Text_Angle = 90.00
-------- Use the variable below (HK_Text_Color) to determine the color of the flotation text: --------
-------- Red (color used for punishment): --------
Set HK_Text_Color[1] = |cffFF2B2B
-------- Green (color used for heal Caster): --------
Set HK_Text_Color[2] = |cff80FF80
-------- ----------------------------------------------------------- --------
-------- You want choose other colors? Then visit Hive WorkShop and seek in the section " Tools ". --------
-------- ----------------------------------------------------------- --------
-------- Maximum life of the flotation text: --------
Set HK_Text_LifeSpan = 2.00
-------- Maximum time that you can see each created message: --------
Set HK_Text_FadingAge = 1.50
-------- ----------------------------------------------------------- --------
-------- Attack type and damage used to punish the target: --------
Set HK_Type_Attack = Hero
Set HK_Type_Damage = Force
-------- Type of Dummy that will be used for the stun's effects: --------
Set HK_Type_Dummy = Dummy
-------- ----------------------------------------------------------- --------
-------- Dummy's position: --------
Set HK_Loc = (Center of (Playable map area))
-------- Don't worry about the necessary distance for Dummy to stun the target. The ability that she possesses is used for any distance. --------
-------- ----------------------------------------------------------- --------
-------- Create the Dummy: --------
Unit - Create 1 HK_Type_Dummy for Neutral Passive at HK_Loc facing Default building facing degrees
-------- Add the immobilization ability for Dummy: --------
Unit - Add HK_Ability_Stun to (Last created unit)
-------- ----------------------------------------------------------- --------
-------- See that it is NOT necessary to set the level of the ability for Dummy in this Trigger. --------
-------- ----------------------------------------------------------- --------
-------- Dummy (responsible unit for immobilizing the target): --------
Set HK_Dummy = (Last created unit)
-------- ----------------------------------------------------------- --------
-------- Destroy/Remove any point's leaks: --------
Custom script: call RemoveLocation (udg_HK_Loc)
-------- ----------------------------------------------------------- --------
-------- To reduce the leg that can cause Trigger, use the following custom script: --------
Custom script: call DestroyTrigger (GetTriggeringTrigger())
[/trigger]



[trigger=Cast]
Heroic s Strike Cast
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to HK_Ability_Hero
Actions
-------- ----------------------------------------------------------- --------
-------- Spell's Caster: --------
Set HK_Caster = (Triggering unit)
-------- Spell's Target: --------
Set HK_Target = (Target unit of ability being cast)
-------- ----------------------------------------------------------- --------
-------- Level of Spell for Caster: --------
Set HK_Level = (Level of HK_Ability_Hero for HK_Caster)
-------- Attribute (included bonus) of agility of Caster: --------
Set HK_Attribute_Agiity = (Agility of HK_Caster (Include bonuses))
-------- Attribute (included bonus) of strenght of Caster: --------
Set HK_Attribute_Force = (Strength of HK_Caster (Include bonuses))
-------- ----------------------------------------------------------- --------
-------- Chance to cause critical strike: --------
Set HK_Chance[0] = (HK_Attribute_Agiity / HK_Chance[HK_Level])
-------- ----------------------------------------------------------- --------
-------- In the next stages, they are defined the points that this spell will cause of punishment and cure. --------
-------- ----------------------------------------------------------- --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Random integer number between 1 and 100) Less than or equal to HK_Chance[0]
Then - Actions
-------- ----------------------------------------------------------- --------
-------- In case Critical Strike chance happens well happened ... --------
-------- ----------------------------------------------------------- --------
-------- Damage: --------
Set HK_Damage_Total = (((Random real number between HK_Damage_Min[HK_Level] and HK_Damage_Max[HK_Level]) x (Real(HK_Attribute_Force))) + (HK_Damage_Critical[HK_Level] x (Life of HK_Caster)))
-------- ----------------------------------------------------------- --------
-------- The variable below contains the message of the caused points of damage (critical strike) in the target. --------
Set HK_Text_Display[1] = ((HK_Text_Color[1] + - ) + ((String((Integer(HK_Damage_Total)))) + !|r))
-------- ----------------------------------------------------------- --------
-------- How would the message appear? In the following way (example): - 451! --------
-------- ----------------------------------------------------------- --------
-------- Set heal points if this spell kills the Target: --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HK_Damage_Total Greater than (Life of HK_Target)
Then - Actions
-------- Heal total: --------
Set HK_Heal_Total = (HK_Heal_Max[HK_Level] x HK_Damage_Total)
-------- ----------------------------------------------------------- --------
-------- The variable below contains the message on the cure points (critical strike) caused by the spell: --------
Set HK_Text_Display[2] = ((HK_Text_Color[2] + + ) + ((String((Integer(HK_Heal_Total)))) + !|r))
-------- ----------------------------------------------------------- --------
-------- How would the message appear? In the following way (example): + 230! --------
-------- ----------------------------------------------------------- --------
-------- Create special effects: --------
-------- Created special effect when the spell recovers the Caster's Health: --------
Special Effect - Create a special effect attached to the HK_Model_Target[4] of HK_Caster using HK_Model_Name[4]
Special Effect - Destroy (Last created special effect)
-------- Heal the Caster: --------
Unit - Set life of HK_Caster to ((Life of HK_Caster) + HK_Heal_Total)
Else - Actions
-------- In case this spell doesn't kill the target, configure the variable below as FALSE (0.00): --------
Set HK_Heal_Total = 0.00
-------- Special effects: --------
-------- Special effect created in the target when the spell causes critical strike: --------
Special Effect - Create a special effect attached to the HK_Model_Target[1] of HK_Target using HK_Model_Name[1]
Special Effect - Destroy (Last created special effect)
-------- ----------------------------------------------------------- --------
-------- Set the level of the stun ability for Dummy: --------
Unit - Set level of HK_Ability_Stun for HK_Dummy to HK_Level
-------- Order that Dummy works the ability: --------
Unit - Order HK_Dummy to Human Mountain King - Storm Bolt HK_Target
-------- ----------------------------------------------------------- --------
-------- DON'T FORGET! The cast order in the action above should be equivalent the order of the ability that Dummy possesses. --------
-------- In case the opposite, there WON'T BE daze effect. --------
Else - Actions
-------- ----------------------------------------------------------- --------
-------- In case Critical Strike chance doesn't happen: --------
-------- ----------------------------------------------------------- --------
-------- Damage: --------
Set HK_Damage_Total = ((Random real number between HK_Damage_Min[HK_Level] and HK_Damage_Max[HK_Level]) x (Real(HK_Attribute_Force)))
-------- The variable below contains the message of the caused points of damage (normal) in the target. --------
Set HK_Text_Display[1] = ((HK_Text_Color[1] + - ) + (String((Integer(HK_Damage_Total)))))
-------- How would the message appear? In the following way (example): - 170 --------
-------- Set heal points if this spell kills the Target: --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HK_Damage_Total Greater than (Life of HK_Target)
Then - Actions
-------- Heal total: --------
Set HK_Heal_Total = (HK_Heal_Max[HK_Level] x HK_Damage_Total)
-------- ----------------------------------------------------------- --------
-------- The variable below contains the message on the cure points (normal) caused by the spell: --------
Set HK_Text_Display[2] = ((HK_Text_Color[2] + + ) + (String((Integer(HK_Heal_Total)))))
-------- ----------------------------------------------------------- --------
-------- How would the message appear? In the following way (example): + 419 --------
-------- ----------------------------------------------------------- --------
-------- Special effects: --------
-------- Created special effect when the spell recovers the Caster's Health: --------
Special Effect - Create a special effect attached to the HK_Model_Target[4] of HK_Caster using HK_Model_Name[4]
Special Effect - Destroy (Last created special effect)
-------- Heal Caster: --------
Unit - Set life of HK_Caster to ((Life of HK_Caster) + HK_Heal_Total)
Else - Actions
-------- In case this spell doesn't kill the target, configure the variable below as false (0.00): --------
Set HK_Heal_Total = 0.00
-------- Special effects: --------
-------- Special effect created in the target when the spell causes normal damage: --------
Special Effect - Create a special effect attached to the HK_Model_Target[3] of HK_Target using HK_Model_Name[3]
Special Effect - Destroy (Last created special effect)
-------- --------
-------- In case the option of visualizing flotation texts is activated... --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HK_Text_On Equal to True
Then - Actions
-------- The Group of Players below is the Player that will see the flotation texts, in the case, he/she is the Player that controls Caster: --------
Set HK_Text_Player = (Player group((Owner of HK_Caster)))
-------- ----------------------------------------------------------- --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
HK_Heal_Total Greater than 0.00
Then - Actions
-------- Flotation text that indicates the caused points of cure: --------
Floating Text - Create floating text that reads HK_Text_Display[2] above HK_Caster with Z offset 0.00, using font size HK_Text_Size, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
Floating Text - Hide (Last created floating text) for (All players)
Floating Text - Show (Last created floating text) for HK_Text_Player
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to HK_Text_LifeSpan seconds
Floating Text - Change the fading age of (Last created floating text) to HK_Text_FadingAge seconds
Floating Text - Set the velocity of (Last created floating text) to 100.00 towards HK_Text_Angle degrees
Else - Actions
-------- ----------------------------------------------------------- --------
-------- Flotation text that indicates the caused points of punishment: --------
Floating Text - Create floating text that reads HK_Text_Display[1] above HK_Target with Z offset 0.00, using font size HK_Text_Size, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
Floating Text - Hide (Last created floating text) for (All players)
Floating Text - Show (Last created floating text) for HK_Text_Player
Floating Text - Change (Last created floating text): Disable permanence
Floating Text - Change the lifespan of (Last created floating text) to HK_Text_LifeSpan seconds
Floating Text - Change the fading age of (Last created floating text) to HK_Text_FadingAge seconds
Floating Text - Set the velocity of (Last created floating text) to 100.00 towards HK_Text_Angle degrees
-------- ----------------------------------------------------------- --------
-------- Destroy/Remove any leak(s): --------
Custom script: call DestroyForce(udg_HK_Text_Player)
Custom script: set udg_HK_Text_Player = null
Else - Actions
-------- Special effect created in the Caster's weapon: --------
Special Effect - Create a special effect attached to the HK_Model_Target[2] of HK_Caster using HK_Model_Name[2]
Special Effect - Destroy (Last created special effect)
-------- ----------------------------------------------------------- --------
-------- Finally, punish the Target: --------
Unit - Cause HK_Caster to damage HK_Target, dealing HK_Damage_Total damage of attack type HK_Type_Attack and damage type HK_Type_Damage
-------- ----------------------------------------------------------- --------
[/trigger]

How to Import


To import this spell in any map (your World Editor should be compatible or superior the version 1.26.... the rest i forgot) it is necessary to copy the triggers and custom objects and to put in the map.
Being:

  • Trigger - Paste "Heroic's Strike" from Trigger Editor.
  • Abilities - "Heroic's Strike (Hero)" and "Heroic's Strike (Stun)" from Object Editor.
  • Unit - Dummy from Object Editor. Don't forget to export and to import for the map, the model of Dummy (Dummy.mdl) that is in Import Manager.

Tip: Enable the option: Automatically create unknown variables while pasting trigger dates (Go to: File>Preferences>General in your Warcraft III World Editor). This way, it won't be necessary to copy all the variables one for one.
Credits


  • I thank Hive WorkShop.
  • Moderator of this resource.
  • I thank you for the kindness, dowload and for everything! Thank you for participating in my work.
Contact


  • Doubts?
  • Critical?
  • Subjects?
  • Suggestions?
  • Find a bug/error?
  • Difficulties in the import?

For any subject, i recommend that you sends her for me, in this page, in my profile or for a pm (private message). I insist on helping.
Request


If it uses my spell in your map (project, work...) doesn't forget to do the kindness of thanking to me for the developed work.
If it can, i ask that it rewards with reputation, in that way I can reward the favor.
Please, don't stop visiting my page for more resources and contacts.
Keywords:
Spell , Target Objetc , Losam , Heroic
Contents

Heroic's Strike (v1.1) (Map)

Reviews
Heroic's Strike v1.2 | Reviewed by Maker | 24th Jul 2013 APPROVED A leakless an MUI spell [tr] You could cut down the amount of lines, you have repeated actions Don't create strings of show text is false

Moderator

M

Moderator


Heroic's Strike v1.2 | Reviewed by Maker | 24th Jul 2013
APPROVED


126248-albums6177-picture66521.png


  • A leakless an MUI spell
126248-albums6177-picture66523.png


  • You could cut down the amount of lines, you have repeated actions
  • Don't create strings of show text is false
[tr]
 
  • Floating Text - Create floating text that reads HK_Text_Display[2] above HK_Caster with Z offset 0.00, using font size HK_Text_Size, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
  • Floating Text - Hide (Last created floating text) for (All players)
  • Floating Text - Show (Last created floating text) for HK_Text_Player
  • Floating Text - Change (Last created floating text): Disable permanence
  • Floating Text - Change the lifespan of (Last created floating text) to HK_Text_LifeSpan seconds
  • Floating Text - Change the fading age of (Last created floating text) to HK_Text_FadingAge seconds
  • Floating Text - Set the velocity of (Last created floating text) to 100.00 towards HK_Text_Angle degrees
Must set (last created floating text) and 100.00s
 
Level 11
Joined
Mar 27, 2011
Messages
293
  • Floating Text - Create floating text that reads HK_Text_Display[2] above HK_Caster with Z offset 0.00, using font size HK_Text_Size, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
  • Floating Text - Hide (Last created floating text) for (All players)
  • Floating Text - Show (Last created floating text) for HK_Text_Player
  • Floating Text - Change (Last created floating text): Disable permanence
  • Floating Text - Change the lifespan of (Last created floating text) to HK_Text_LifeSpan seconds
  • Floating Text - Change the fading age of (Last created floating text) to HK_Text_FadingAge seconds
  • Floating Text - Set the velocity of (Last created floating text) to 100.00 towards HK_Text_Angle degrees
Must set (last created floating text) and 100.00s

Why?
 
Top