Fundamental change to attributes
Attributes of weapons should be separated into "base attributes" and "attribute modifiers" just like it is with the player.
Base attributes on weapons overwrite the base attribute of the player when hold/equiped on the specified slot, and then get modified by all currently active modifiers.
That way the mechanic is more consistent and gives more freedom for map makers to include "custom" weapons. The way it is now, the modifiers applied by default on "non modified weapons" with their semi-responsive descriptions are weird. Achieving the same "5 attack damage" and "1.6 attack speed" on a default 1.16 stone sword with attribute modifiers displays "+4 attack damage" and "-2.4 attack speed" which is confusing (+- based on what?), and modifying the base attributes of the player is hard to do dynamicly as well as can break core behaviour (base <2.5 attack speed makes unmodified swords unusable).
With this change, weapons could have (and properly display) a fixed base damage/speed/reach (hard coded or nbt driven) alongside actual "modifiers" giving +/- attributes, allowing for more, easier and more user friendly "custom" weapons, without modifying the players fist behaviour. With custom recipes (based on hardcoded base attributes per item type) custom weapons could also be upgraded (e.g. stone -> iron) and become stronger while keeping their custom attributes and without relying on enchantments, which they currently do not due to modifiers overwriting hardcoded "base modifiers".
Please sign in to leave a comment.