Speed Stacking Adjustment
Posted: Mon Dec 17, 2012 9:09 am
Because it bothers me that you can stack speed buffs to get insanely high speeds, due to them adding cumulatively, I've made an addon that makes them add non-cumulatively.
As an example of what happens we shall look at a Rampage combined with a Movement infusion. +200% movement speed from the Rampage and +800% movement speed from Movement infusion.
A quick look at the numbers suggests you will end up with +1000% movement speed, which is nice to have.
But the game doesn't come to the same figure, it gives you +2600% movement speed.
This sort of cumulative addition of bonusses also applies to multiple sources of physical/magical/mental attack speed, but not to global movement speed, which has a mess of rules of its own.
I suspect this cumulative addition of global speed buffs caused a change to be done to how global speed modifiers are treated, the intent appears to have been to make only the latest effect apply. Over time it looks like this has been messed up a bit, with global speed modifiers being applied in different ways in the code. The end result is that some modifiers don't stack, some stack non-cumulatively and some stack cumulatively.
This addon attempts to standardise how speed modifiers work, so that global isn't treated differently to other speeds.
It also makes most modifiers stack non-cumulatively, and to stop Darkgod worrying, it also stops any speed from reaching 0.
A side effect of this addon, is that all actors are less likely to be extremely fast or extremely slow.
Three abilities have been left as applying directly to the base speed, these will stack cumulatively with all other modifiers to them. They are: Yeek - Quickened (Yeeks have a hard time already), UberDex - Windtouched Speed (Its supposed to be Uber) and Mobility - Strider (doesn't do much anyway).
Also the same effect from different sources will still not stack. eg. Haste
And Zero Gravity and movement through doomed darkness not affected. Due to them altering energy costs.
I've tested it a bit, but I haven't used the lua console and kept getting killed.
I might have missed a few speed modifiers and I'm pretty sure equipable items are still on the old system with this.
As an example of what happens we shall look at a Rampage combined with a Movement infusion. +200% movement speed from the Rampage and +800% movement speed from Movement infusion.
A quick look at the numbers suggests you will end up with +1000% movement speed, which is nice to have.
But the game doesn't come to the same figure, it gives you +2600% movement speed.
This sort of cumulative addition of bonusses also applies to multiple sources of physical/magical/mental attack speed, but not to global movement speed, which has a mess of rules of its own.
I suspect this cumulative addition of global speed buffs caused a change to be done to how global speed modifiers are treated, the intent appears to have been to make only the latest effect apply. Over time it looks like this has been messed up a bit, with global speed modifiers being applied in different ways in the code. The end result is that some modifiers don't stack, some stack non-cumulatively and some stack cumulatively.
This addon attempts to standardise how speed modifiers work, so that global isn't treated differently to other speeds.
It also makes most modifiers stack non-cumulatively, and to stop Darkgod worrying, it also stops any speed from reaching 0.
A side effect of this addon, is that all actors are less likely to be extremely fast or extremely slow.
Three abilities have been left as applying directly to the base speed, these will stack cumulatively with all other modifiers to them. They are: Yeek - Quickened (Yeeks have a hard time already), UberDex - Windtouched Speed (Its supposed to be Uber) and Mobility - Strider (doesn't do much anyway).
Also the same effect from different sources will still not stack. eg. Haste
And Zero Gravity and movement through doomed darkness not affected. Due to them altering energy costs.
I've tested it a bit, but I haven't used the lua console and kept getting killed.

I might have missed a few speed modifiers and I'm pretty sure equipable items are still on the old system with this.