You really think I'm gonna throw away my finely crafted formula in favor of yours, crude? It is like it is to avoid absurd situation where armor with shitty resistance, if equipped with enough items, will be better than armor custom-built to withstand a certain kind of damage; how much mileage do you really expect from fitting plate mail with barbed stockings? Or putting a crude gas mask on top of a decent 50% gas mask provided by armor? The answer, the difference should be negligible at best, and this is what this script allows. This hard floor is needed to keep things sane. The only solution, actually, is for you to deal with it.
Can you provide an example, where an armor with shitty resistance becomes better than a specialized armor, due to items? Also, I don't know about you but, the kind of air I breathe, it doesn't matter which gas mask the air came through, the filtration should be the same. If the mask is a part of the outfit, or if I'm holding one onto my face, the filtration should be the same, no?
Anyway, the problem remains. Currently, the items are lying to players since the resists that they provide don't match their descriptions (Floating Sandbags say they cut the damage in half, but they only reduce it by a quarter).
Here's some alternative solutions:
- Write different descriptions: Instead of saying "The shawl reduces the effects of Cold damage by 1/4, up to 50% final Resistance", say "At 250 Cold resist, the shawl will reduce it to 200". "At 100 Cutting resist, Shepherd's Staff will reduce it to 90". "At 100 Plasma Resist, Floating Sandbags will reduce it to 75", so you provide an example where the formula is applied on the most common armor resist value.
- Add a stacking penalty. Change the script so that when stacking occurs, a larger penalty is added. The first item has normal effect, the second item has only half effect, the third item has only a third, and so on.
- Make the resist application customizable. Change the script by adding a new per-item variable, for instance, RESIST_MODE, which allows you to specify the way in which the resists for this item is applied. Basically, this would allow you to use a different formula for each item. For instance, you could write a formula where an item has only half the effect if the resist is below a certain value, or you could write a formula that makes your current resist worse, or a formula where resists change by a static value instead of multiplication (a lighter in a blizzard won't have any effect, but it would warm you up on a cold day), etc.