[Suggestion]: Anvils should consume XP, not Levels
AlgebraManiacABC opened this issue · 0 comments
Mod Loader (Optional)
⸺
Minecraft Version(s) (Optional)
1.21.5
Mod Version(s) (Optional)
21.5.0
Suggestion (Required)
Many mods through Minecraft's history which touch anvil logic make this significant, yet well-received, change.
As it stands now (how vanilla works):
An anvil job costing 4 levels subtracts 4 from the player's level count. No ifs, ands, or buts. If the player had 100 levels (30970xp) and performed this job, they would lose 2878xp and have 96 levels. However, if the player had 4 levels (40 xp), the job would cost them 40xp. It is a burden for players with high levels, and even with mods that allow xp transfer, there is a lot of back and forth (between the player and an XP storage item/block) for the thrifty player.
This is excessive and unnecessary. There is no benefit from this discrepancy, and it only acts as a burden. Instead...
How it should be:
An anvil job costing 4 levels subtracts 40xp from any player performing that job, regardless of player level (so long as they have the overall xp for the job).
Above and beyond: If you make it a configurable Boolean! Something like anvilsCostLevels.
How would this be implemented?
First off, please refer to the Minecraft Wiki page on Experience if you need a refresher on what's going on.
Second off, you will likely need to override the xp-reducing method, if not already done. Then it's just a simple matter of checking the config and subtracting either levels or xp! Voilà!
Thanks for your consideration :)