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).
Fix please GPG/Stardock
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.
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.
Ignores the cap completely.
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.
Way to contribute to the thread.
Sorian, in what file did you find that code?
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).
I have heard rumors of people hitting negative move speed.
NO WAY.
Us Regulus players need this gigantic speed reduction to have better chance to throw mines at our enemies' feet!
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.
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.
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.
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.
ignore me! (haven't figured out how to delete posts)
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
mark of the betrayer wasnt used on me in the OP picture
i know that is why i said it u forget to get them on u next time u should
There are many great features available to you once you register, including:
Sign in or Create Account