• 🏆 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!

Creating "Heroic Strike" Trigger Spell

Status
Not open for further replies.
Level 18
Joined
Feb 19, 2009
Messages
800
Howdy! I'm working on a map (you can find it in my sig if you wanna try it out) where one of the heroes has a "Heroic Strike" ability. To get it to work, I copied one of the skills from Blizzard's "Extreme Candy War" map. It was converted from the Warrior's "Mortal Blow" skill.

  • Heroic Strike
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Heroic Strike
    • Actions
      • Set TempReal = 0.00
      • Sound - Play WarriorMortalBlow <gen> at 100.00% volume, located at (Position of (Triggering unit)) with Z offset 0.00
      • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (Real(((Strength of (Triggering unit) (Include bonuses)) x 5))) damage of attack type Hero and damage type Normal
      • Set TempReal = (Real(((Strength of (Triggering unit) (Include bonuses)) x 5)))
      • Set TempFloatText = (Last created floating text)
Now, the only problem is, this skill has just a single level. The hero hits for damage equal to 5x his strength. What I want to do is alter the skill so that it does progressively more damage as the hero levels it. First 3x, then 5x, then 7x.

Can anybody help me do that? Is it relatively simple or rather complex/
 
Level 12
Joined
Jan 2, 2016
Messages
973
  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing ((Real((Strength of (Triggering unit) (Include bonuses)))) x (1.00 + (2.00 x (Real((Level of Heroic Strike for (Triggering unit))))))) damage of attack type Hero and damage type Normal
By the way, you can remove "Set TempReal =0.00"
"Set TempReal(Real....))"
and "Set TempFloadText = ..."
if your trigger truly looks like this
 
Level 25
Joined
Sep 26, 2009
Messages
2,377
I advice doing
  • Set tempReal = (calculation wereElf posted here)
  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing tempReal damage of attack type Hero and damage type Normal
Then use DDS (damage detection system) to detect the damage the target took and show the value of damage taken.
Right now you would be showing incorrect values in the floating text. Hero damage is reduced/increased by various types of armor, yet you do not include that in the calcuation, nor do you include the damage reduction of armor value.

For example your hero would deal 280 damage. You display 280 damage, however the actual damage taken (due to armor type and armor value) is only 220. So you showed incorrect value of damage done.
 
Level 18
Joined
Feb 19, 2009
Messages
800
  • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing ((Real((Strength of (Triggering unit) (Include bonuses)))) x (1.00 + (2.00 x (Real((Level of Heroic Strike for (Triggering unit))))))) damage of attack type Hero and damage type Normal
By the way, you can remove "Set TempReal =0.00"
"Set TempReal(Real....))"
and "Set TempFloadText = ..."
if your trigger truly looks like this

Thank you so much! You're my hero, you know that?
 
Status
Not open for further replies.
Top