[FORGE/FABRIC] Armor Curve
Modby TheRealJackiecrazy
Adjust the armor scaling and degradation formulae for mobs and players.
Description
Important notice:
If you see an error like this:
Description: Rendering overlay
java.lang.ArithmeticException: Division undefined
at java.math.BigDecimal.divide(BigDecimal.java:1741) ~[?:1.8.0_51] {}
at com.udojava.evalex.Expression$6.eval(Expression.java:587) ~[?:2.3] {re:classloading}
at com.udojava.evalex.AbstractOperator$1.eval(AbstractOperator.java:72) ~[?:2.3] {re:classloading}
Look in your config for the denominators, and wrap them with a MAX(x, 1) statement, so damage/max becomes damage/MAX(max, 1), for instance.
Did you know that, by Minecraft's damage formulae, iron to diamond effectively doubles your health?
Did you know that leather to iron is 8 points in difference, yet it doesn't hold a candle to iron to diamond in terms of effective health increase?
Did you know that it's possible to survive almost 100 points of damage in vanilla, with full prot netherite and resistance?
Did you know that armor doesn't obey the basic law of diminishing marginal utility?
That's what inspired me to make this. Armor effectiveness is adjusted so that the more armor you have, the less every extra armor point adds to your total protection. Due to how meaninglessly complicated armor toughness is, it has been removed as a direct mechanic; as compensation, armor values have been slightly lowered. Leather provides roughly 40% protection, iron gives 60%, and diamond gives 66%. Protection enchantments have been similarly nerfed to 66% max, so full protection diamond only nets you 89% rather than 96% reduction. Instead of toughness acting directly on arbitrary armor damage reduction, however, an extra layer of calculations have been added, which (by default) greatly decreases any damage over 40 points according to your armor toughness. These are configurable, see below.
Armor degrades. Low durability decreases the attributes of that specific piece of armor, so a half-broken helmet will drop your armor less than a half-broken chestplate. This is also configurable.
The config is structured such that you can input a formula (with parsing provided by EvalEx) and it'll work off that. Available variables for "armor" and "toughness" are "armor", "damage", and "toughness"; for "enchantments", variables are "damage" and "enchant", and for degradation it's "remaining" and "max". For instance, you could disable degradation by setting the formula to "1", replicate the vanilla formula with a little math, or multiply the damage by armor so everything hits harder the more you wear! Fun stuff.
Since EvalEx is also used by Apotheosis, there are two forge versions for players with and without the mod; make sure you grab the right one. This is no longer necessary!
Recommended Gear
AffiliateHardware and extras that pair well with this mod.
As an Amazon Associate I earn from qualifying purchases.
Similar Mods
Recipe Essentials[Forge/Fabric]
Recipe Essentials improves recipe processing, item comparisons, and the vanilla recipe book
RFTools Builder
RFTools addon mod adding the builder, shield system and much more
ChoiceTheorem's Overhauled Village
Enhances and creates new villages and pillager outposts, that perfectly fit into your Minecraft world.
Falling Leaves (NeoForge/Forge)
Falling Leaves from trees
Noisium (archived)
Optimises worldgen performance for a better gameplay experience.
Forestry
Bringing bees, butterflies and more trees. as well as eco-friendly energy production and mail to Minecraft.