Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
First of all, you'll customize the ability 'Item Attack Speed Bonus (Greater)' in Object Editor, create a custom ability from it and modify it like this :
![]()
Now you'll to trigger, detecting the first attack, you'll give the new ability to the hero, and with the second attack, increase the ability's level to 2 and adding a timer from the first attack, and when it ends remove the ability.
Try it , if you fail, I will try to make one for you (it's really easy though)
If I get up early enough tomorrow, I will make a video on how to set it up. Meanwhile, I have install instructions on the Damage Engine main page.
Rage

Events


Unit - A unit Is attacked

Conditions

Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




((Triggering unit) has buff Rage ) Equal to True



Then - Actions




Unit - Add Rage Passive to (Triggering unit)




Trigger - Turn on Rage Passive <gen>



Else - Actions
Rage Passive

Events


Unit - A unit Is attacked

Conditions

Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




((Triggering unit) has buff Rage ) Equal to True



Then - Actions




Unit - Increase level of Rage Passive for (Triggering unit)




Countdown Timer - Start Rage_timer as a One-shot timer that will expire in 10.00 seconds



Else - Actions
Rage Timer

Events


Time - Rage_timer expires

Conditions

Actions


Trigger - Turn off Rage Passive <gen>
Nope. "Triggering unit" in your trigger reference the target unit being attacked. Also "Range timer" will turn "Rage passive" off in 10 seconds, but "Rage" will turn "Rage passive back on as soon as a unit is attacked again.
It is next to impossible to make this kind of ability working properly without a damage detection system because wc3 editor doesn't support on-damage triggers. It only supports a damage event for a pre-defined static unit
Here is that tutorial, kraken: http://youtu.be/bVJGtaGAbBE
I can install it but I have no idea how to use it.
OnDamage

Events


Game - PDD_damageEventTrigger becomes Equal to 1.00

Conditions

Actions


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




PDD_damageType Equal to PDD_PHYSICAL



Then - Actions




-------- Actions for PHYSICAL damage --------




-------- Block all physical damage from the Archmage --------




If (All Conditions are True) then do (Then Actions) else do (Else Actions)





If - Conditions






PDD_source Equal to Archmage 0001 <gen>





Then - Actions






Set PDD_amount = 0.00





Else - Actions




-------- Let the Blademaster heal 50 hitpoints on every attack --------




If (All Conditions are True) then do (Then Actions) else do (Else Actions)





If - Conditions






PDD_source Equal to Blademaster 0000 <gen>





Then - Actions






Set PDD_amount = -50.00





Else - Actions




Game - Display to (All players) for 10.00 seconds the text: ((Name of PDD_source) + ( damages + ((Name of PDD_target) + ( with damage: + (|cffff0000 + (String(PDD_amount)))))))




-------- End of Actions for PHYISCAL damage --------



Else - Actions




If (All Conditions are True) then do (Then Actions) else do (Else Actions)





If - Conditions






PDD_damageType Equal to PDD_SPELL





Then - Actions






-------- Actions for SPELL damage --------






-------- Double all spell damage from the Mountain King --------






If (All Conditions are True) then do (Then Actions) else do (Else Actions)







If - Conditions








PDD_source Equal to Mountain King 0002 <gen>







Then - Actions








Set PDD_amount = (2.00 x PDD_amount)







Else - Actions






Game - Display to (All players) for 10.00 seconds the text: ((Name of PDD_source) + ( damages + ((Name of PDD_target) + ( with damage: + (|cff6495ed + (String(PDD_amount)))))))






-------- End of Actions for SPELL damage --------





Else - Actions






-------- Actions for CODE damage --------






Game - Display to (All players) for 10.00 seconds the text: ((Name of PDD_source) + ( damages + ((Name of PDD_target) + ( with damage: + (|cff32cd32 + (String(PDD_amount)))))))






-------- End of Actions for CODE damage --------


-------- Reflect 50 damage from the Kodo back on the damage source --------


If (All Conditions are True) then do (Then Actions) else do (Else Actions)



If - Conditions




PDD_target Equal to Kodo Beast 0006 <gen>



Then - Actions




Custom script: call UnitDamageTargetEx(udg_PDD_target, udg_PDD_source, 50.0, true, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_UNIVERSAL, null)



Else - Actions
You will also want to use a DDS that detects physical damage, and not the "unit is attacked" event. The attack-event can be triggered too easily by spamming the stop button without actually attacking.
https://www.hiveworkshop.com/forums/spells-569/gui-damage-engine-v3-5-4-1-a-201016/
kraken, I made this video yesterday. It covers it more in-depth. You will want the audio turned on for this one so you can hear what I'm saying:
And NightSkyAurora, that is PDD which used different variables from DamageEngine. I cover why I recommend Damage Engine in the video above if you are interested.
Game - AfterDamageEvent becomes Equal to 1.00
IsDamageSpell Equal to False
(Unit-type of DamageEventSource) Equal to Paladin
Game - Display to (All players) the text: ((Name of DamageEventSource) + now has increased attack speed.)
