StAcK3D_ActR StAcK3D_ActR

slows stack bug PROOF

slows stack bug PROOF

ok so i heard that there is a cap for slowing effects, i am not sure but i think it is up to 30%.

here is a picture of me as rook(dead). we versed regulus and oak, i had no boots of speed:

as you can see, i have shrapnel mines, pentinence and maim all in effect on me

here are the calculations:

5.4 movement speed(rooks base speed) - 30% for shrapnel mines(5.4*0.3 = 1.62) = 3.78movement speed

3.78 - 10%(3.78*0.1 =0.378) for maim(full level) = 3.402

3.402 - 16%(3.402*0.16 = 0.54432) for pentinence(full level) = 2.85768

2.85768- 10%(2.85768*0.1 = 0.285768) for surge of faith(first level) icon didnt show up for slow for some reason either  = 2.571912 i assume this is rounded to the 2.6 value

please correct me if i have made any errors, and let me know what the slowing cap is(if there is one).

77,833 views 42 replies
Reply #26 Top

Fix please GPG/Stardock :D

Reply #27 Top

Ok, assuming I am reading this all right, I have found the issue.

There is indeed a 33% movement speed reduction cap, but they got it wrong.

function MoveMult( unit, buffName )
    local moveSpeed = BuffCalculate(unit, buffName, 'MoveMult', unit:GetBlueprint().Physics.MaxSpeed)
    local itemSlowCap = unit.MoveSlowCap

    if moveSpeed < itemSlowCap then
        moveSpeed = itemSlowCap
    end

    # Cap both min speed and max speed
    local minSpeed = unit:GetMaxSpeed() * 0.66 <------------------ 1
    local maxSpeed = 14

    if moveSpeed > maxSpeed then
        moveSpeed = maxSpeed
    elseif moveSpeed < minSpeed then
        moveSpeed = minSpeed
    end

    unit.Sync.MovementSpeed = moveSpeed

    # Figure out what the percent change is from the unit's base speed
    # We use that multiplier to figure out how much to increase/decrease the move

    local val = moveSpeed / unit:GetBlueprint().Physics.MaxSpeed

    unit.Sync.MoveBoost = val * 100 - 100

    unit:SetSpeedMult(val) <----------------- 2
    unit:SetAccMult(val)
    unit:SetTurnMult(val)
    #LOG('*BUFF: Unit ', repr(unit:GetEntityId()), ' buffed speed/accel/turn mult to ', repr(val))
end

The first line I point to above is supposed to get the unit's max speed and multiply by 0.66 to set the lower end of the cap. Unfortunately, this is the GetMaxSpeed() function:

    GetMaxSpeed = function(agent)
        local speed = agent:GetBlueprint().Physics.MaxSpeed
        local speedMult = agent:GetSpeedMult()  <-------------------- 3
        return speed * speedMult
    end,

See where it gets the Speed Multiplier (#3). Well, that multiplier is updated by marked line #2. This defeats the whole cap. Every time a players speed gets reduced it updates the multiplier. This multiplier is then used when determining the units max speed when you apply another debuff.

Reply #28 Top

So does this actually create a bug that slows you more than it is supposed to?  Or is the bug that it just ignores the so called cap completely.

Reply #29 Top

Ignores the cap completely.

Reply #30 Top

I swear there is some other bug regarding the way slows are applied.  Today as Rook a regulus hit me with a mark and maim (and wyrmskin) along with some other slows while I was fleeing.  The wyrmskin and shrapnel mines and mark wore off, so I heart of lifed myself and went back at him.  He marked me again and attacked, putting maim on me.  After placing a tower it tripped the mark.  Suddenly I could not move at ALL.  Like he was literally walking in place.  After treading water for a few seconds I died and the 2 debuffs showing while dead were mark and maim.

So I think something is weird with the way the debuffs are being applied.

Reply #31 Top

Quoting Makerz, reply 25
Wait this is news?
I knew this from day one ... man shoulda posted. Not hard to figure out .
 
End of Makerz's quote

 

Way to contribute to the thread.

 

Sorian, in what file did you find that code?

Reply #32 Top

MoveMult() is in lua\sim\buffaffects.lua

GetMaxSpeed() is in lua\sim\forgeunit.lua

 

If their intention was to make it so no one debuff can reduce a players speed by more than 33%, they sort of succeeded. Otherwise, this is a bug and they need to change it so:

local minSpeed = unit:GetMaxSpeed() * 0.66

is

local minSpeed = unit:GetBlueprint().Physics.MaxSpeed * 0.66

 

Also, according to the code movement rate debuffs are added together (ie 2 5% debuffs affecting a unit with a move rate of 6 would now have a move rate of 5.4).

Reply #33 Top
I swear there is some other bug regarding the way slows are applied. Today as Rook a regulus hit me with a mark and maim (and wyrmskin) along with some other slows while I was fleeing. The wyrmskin and shrapnel mines and mark wore off, so I heart of lifed myself and went back at him. He marked me again and attacked, putting maim on me. After placing a tower it tripped the mark. Suddenly I could not move at ALL. Like he was literally walking in place. After treading water for a few seconds I died and the 2 debuffs showing while dead were mark and maim.

So I think something is weird with the way the debuffs are being applied.
End of quote

Maxed mark of betrayer slows movement by 60% and wyrmskin is 15, maim maxed is also 15%. Together they would have reduced your movementspeed by 90%. Since you where the rook, with 5.4 movement speed, reduced by 90% it would be 0.54.

How is this a bug if it appeared you where moving in place? it appears it works as intended. It would only last for 3 seconds though, at which time you could still use skills/teleport away/attack or whatever.

Compare this to your level 3 boulder roll on that same rook, it stuns for 2.5 seconds. During which time you are unable to do anything at all. It also interrupts whatever you where doing. This is much worse, no? and its also from just one skill.
Reply #34 Top

I have heard rumors of people hitting negative move speed. :thumbsdown:

Reply #35 Top

Quoting dgl-DalzK, reply 1
Fix please GPG/Stardock
End of dgl-DalzK's quote

 

NO WAY.

 

Us Regulus players need this gigantic speed reduction to have better chance to throw mines at our enemies' feet!

Reply #36 Top

Also, according to the code movement rate debuffs are added together (ie 2 5% debuffs affecting a unit with a move rate of 6 would now have a move rate of 5.4).
End of quote

See now that's strange.  Aren't they *supposed* to be multiplicative?  You can easily get negative movespeed if this is true.  Regulus mines + mark does it with one hero.

Maxed mark of betrayer slows movement by 60% and wyrmskin is 15, maim maxed is also 15%. Together they would have reduced your movementspeed by 90%. Since you where the rook, with 5.4 movement speed, reduced by 90% it would be 0.54.
End of quote

Wyrmskin wasn't on when I experienced the water treading, it would have shown as a debuff when I was dead if it was.  Just mark and maim should max to 75% by the above logic (assuming he had maxed maim which I doubt) and that's 1/4 speed, not "don't move at all" speed.  My completely random guess is that somehow movespeed debuffs are getting stacked inside other debuffs and not wearing off properly.

Reply #37 Top

I've seen a regulus / torch bearer team that managed to slow a target so much that they didn't appear to be moving.  They'd play the animation for walking but they were making almost no progress... it was the treading water effect mentioned earlier in the thread.

Reply #38 Top

Quoting InfiniteVengeance, reply 11

Also, according to the code movement rate debuffs are added together (ie 2 5% debuffs affecting a unit with a move rate of 6 would now have a move rate of 5.4).
See now that's strange.  Aren't they *supposed* to be multiplicative?  You can easily get negative movespeed if this is true.  Regulus mines + mark does it with one hero.


Maxed mark of betrayer slows movement by 60% and wyrmskin is 15, maim maxed is also 15%. Together they would have reduced your movementspeed by 90%. Since you where the rook, with 5.4 movement speed, reduced by 90% it would be 0.54.
Wyrmskin wasn't on when I experienced the water treading, it would have shown as a debuff when I was dead if it was.  Just mark and maim should max to 75% by the above logic (assuming he had maxed maim which I doubt) and that's 1/4 speed, not "don't move at all" speed.  My completely random guess is that somehow movespeed debuffs are getting stacked inside other debuffs and not wearing off properly.
End of InfiniteVengeance's quote

Well, if the debuff cap worked than it would not be an issue.

Either way, the code is bugged. It does not work as an overall cap and does not work as a per debuff cap either. In fact, depending on what order the debuffs land on a character the results will be different.

Reply #39 Top

ignore me! (haven't figured out how to delete posts)

Reply #40 Top

prevents my ass

plus  stacked i believe  u forgot another debuff in the speed depart ment  

mark of the betrayer  fucks u over  and reg can stop u by him self  pentence isn't needed when  reg has betrayer

Reply #41 Top

plus stacked i believe u forgot another debuff in the speed depart ment
End of quote

mark of the betrayer wasnt used on me in the OP picture

Reply #42 Top

i know that is why i said it  u forget to get them on u   next time u should