i already got DDS don't know what to do with itGrab a DDS system, should do most of the work for you.
Probably a dozen old threads with very similar requests too.
Not quite good with DDS can you tell me what i have to do with it?Not sure I understand what you mean but you can try this :
Don't use a unit takes damage use a DDS like Chaosy said.
Test
Events
Unit - Archimonde 0001 <gen> Takes Damage
Conditions
(Damage source) Equal to Paladin 0000 <gen>
Actions
Set Stack = (Stack + 1)
Unit - Set level of BONUS DAMAGE for (Damage source) to Stack
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Stack Equal to 8
Then - Actions
Set Stack = 0
Else - Actions
Not sure I understand what you mean but you can try this :
Don't use a unit takes damage use a DDS like Chaosy said.
Test
Events
Unit - Archimonde 0001 <gen> Takes Damage
Conditions
(Damage source) Equal to Paladin 0000 <gen>
Actions
Set Stack = (Stack + 1)
Unit - Set level of BONUS DAMAGE for (Damage source) to Stack
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Stack Equal to 8
Then - Actions
Set Stack = 0
Else - Actions
Not quite good with DDS can you tell me what i have to do with it?and what do you mean use A DDS instead of unit takes damage
I opened the DDS Thread can't seem to understand the basics.Wouldn't it be better to just keep the stack at maximum instead of resetting the stack count?
DDS means Damage Detection System. For GUI users, this is preferred over a simple specific unit takes damage event, since DDS usually automate the process (of event registration) for you.
Which DDS are you using?I opened the DDS Thread can't seem to understand the basics.
Damage Detection System such as this one : Damage Engine 5.5.0.0Not quite good with DDS can you tell me what i have to do with it?and what do you mean use A DDS instead of unit takes damage
The OP said he wants the passive to stack up to 8 times and then it will reset to 0, unless I misunderstood something...Wouldn't it be better to just keep the stack at maximum instead of resetting the stack count?
Damage Detection System such as this one : Damage Engine 5.5.0.0
The OP said he wants the passive to stack up to 8 times and then it will reset to 0, unless I misunderstood something...
Test
Events
Game - DamageEvent becomes Equal to 1.00
Conditions
(DamageEventSource) Equal to Some Unit
Actions
yes i want it to stack to 8 and stay there how is that possible? until the unit is deadDamage Detection System such as this one : Damage Engine 5.5.0.0
The OP said he wants the passive to stack up to 8 times and then it will reset to 0, unless I misunderstood something...
Test
Events
Game - DamageEvent becomes Equal to 1.00
Conditions
(DamageEventSource) Equal to Some Unit
Actions
or until the attacker switch unit he resets the stackyes i want it to stack to 8 and stay there how is that possible? until the unit is dead
explain like im fiveIncinerate ability.
no way to stop? so what then?Each attack will have bonus damage. On the first attack it adds a small bonus, on second even more, third even more, etc.
So if your hero deals 50 damage without the ability, when he gets this ability he will do:
50 + damage bonus ---> 1st attack,
50 + damage bonus*2 ---> 2nd attack,
50 + damage bonus*3 ---> 3rd attack.
etc.
Well, I just forgot that ability has no limit on bonus damage...so there's actually no way to stop it at 8th stack.
This spell has a stack limit : Triggered Incinerate v1.2no way to stop? so what then?
furbolgFrenzyHits = 0
furbolgFrenzyTarget = 0
furbolgFrenzyTimer = NewTimer()
furbolgFrenzyBonusDmg = 0
furbolgFrenzyBonusMultiplier = 0.10
local Furbolg_Frenzy_f = function()
furbolgFrenzyHits = furbolgFrenzyHits + 1
ReleaseTimer(furbolgFrenzyTimer)
furbolgFrenzyTimer = NewTimer()
TimerStart(furbolgFrenzyTimer,3.0,false,function()
furbolgFrenzyTarget = 0
furbolgFrenzyHits = 0
furbolgFrenzyBonusDmg = 0
ReleaseTimer()
end)
-- additional hits checking stored target:
if (furbolgFrenzyHits > 1 and furbolgFrenzyTarget == udg_DamageEventTarget) then
-- only allow up to 100% bonus damage:
if (furbolgFrenzyBonusDmg < 1.0) then
-- starts on 2nd attack, so subtract first (furbolgFrenzyBonusMultiplier):
furbolgFrenzyBonusDmg = furbolgFrenzyHits*furbolgFrenzyBonusMultiplier - furbolgFrenzyBonusMultiplier
end
UnitDamageTargetBJ(udg_DamageEventSource,udg_DamageEventTarget,udg_DamageEventAmount*furbolgFrenzyBonusDmg,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL)
-- if first hit, start timer and set target:
else
furbolgFrenzyTarget = udg_DamageEventTarget
furbolgFrenzyHits = 1
furbolgFrenzyBonusDmg = 0
end
end
yesPretty sure he just wants something like Troll Warlord's Fervor in dota, but instead of attack speed it's attack damage.
Each attack on the same target adds a stack for X seconds (or forever?). Each stack adds damage.
Switching targets sets the stacks to 0 and removes the bonus damage.
Correct?
yeah... i don't know jass or luaYou sure do post a lot, VeldrisYou should try searching and experimenting, would help build your skillset.
I currently have an ability in my project that does this. It increases attack damage by 10%, up to a maximum of 100%. Resets on target switch or if 3.0 sec elapses without refreshing. Uses Bribe's damage engine and timer utils (event = udg_DamageEventModifier) but you could reference the code for rebuilding in GUI:
Lua:furbolgFrenzyHits = 0 furbolgFrenzyTarget = 0 furbolgFrenzyTimer = NewTimer() furbolgFrenzyBonusDmg = 0 furbolgFrenzyBonusMultiplier = 0.10 local Furbolg_Frenzy_f = function() furbolgFrenzyHits = furbolgFrenzyHits + 1 ReleaseTimer(furbolgFrenzyTimer) furbolgFrenzyTimer = NewTimer() TimerStart(furbolgFrenzyTimer,3.0,false,function() furbolgFrenzyTarget = 0 furbolgFrenzyHits = 0 furbolgFrenzyBonusDmg = 0 ReleaseTimer() end) -- additional hits checking stored target: if (furbolgFrenzyHits > 1 and furbolgFrenzyTarget == udg_DamageEventTarget) then -- only allow up to 100% bonus damage: if (furbolgFrenzyBonusDmg < 1.0) then -- starts on 2nd attack, so subtract first (furbolgFrenzyBonusMultiplier): furbolgFrenzyBonusDmg = furbolgFrenzyHits*furbolgFrenzyBonusMultiplier - furbolgFrenzyBonusMultiplier end UnitDamageTargetBJ(udg_DamageEventSource,udg_DamageEventTarget,udg_DamageEventAmount*furbolgFrenzyBonusDmg,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL) -- if first hit, start timer and set target: else furbolgFrenzyTarget = udg_DamageEventTarget furbolgFrenzyHits = 1 furbolgFrenzyBonusDmg = 0 end end