This mod lets you earn Proficiency for valid upgradeable items by doing things such as:
You can upgrade items in an anvil with the required proficiency and levels, as well as the necessary material(s).
Upgrades can be reset by combining with Crying Obsidian (configurable).
You can Limit Break items by combining two of the same item that have maxed base upgrades, so two times with 5 slots both need 5 upgrades, and the resulting item is the left item with 5+1 slots. This can only be performed once. (configurable)
There is also a new Potion Effect, "Mastery", which increases the new "Mastery' attribute (gearupgrades:mastery) by 0.25 per level. This multiplies all basic proficiency-gaining methods, excluding usage in Anvils.
You can also make any item grant proficiency by adding a "Mastery" (double) tag to an item's Tag, which works similarly to repairing items in anvils.
Included is an example datapack and resourcepack to give you some basic ideas on how to set things up.
refinements/name.json
id: String, internal name for the upgrade, the string stored in NBT to access the data
key: String, localization key
incompat: String List, id of upgrades this is incompatible with (bidirectional), if incompatible with itself, it can be applied only once
type: String List, entries must either be an UpgradeType (built-in grouping) or an item registry name
- Valid UpgradeTypes:
- armor > ArmorItem
- head > ArmorItem that equips to Head slot
- chest > ArmorItem that equips to Chest slot
- legs > ArmorItem that equips to Legs slot
- feet > ArmorItem that equips to Feet slot
- shield > ShieldItem
- melee_weapon > SwordItem or AxeItem or TridentItem
- sword > SwordItem
- axe > AxeItem
- ranged_weapon > BowItem or CrossbowItem or TridentItem
- bxbow > BowItem or CrossbowItem
- bow > BowItem
- xbow > CrossbowItem
- trident > TridentItem
- digger > DiggerItem (axe, hoe, pickaxe, shovel)
- digger_only > DiggerItem, excluding AxeItem
- curios > any curio (auto-detects slots for attributes based on slots curio fits)
- curios:slot > curios that have this slot (auto-detects slots for attributes)
proficiency_cost: Integer, proficiency required to upgrade
anvil_levels: Integer, amount of XP Levels used when upgrading (optional, default: 5)
material: String, (tag or registry name) material used in Anvil right slot when upgrading
material_count: Integer, how many of the Material is needed to upgrade (optional, default: 1)
allowed_steps: Integer List, what upgrade 'step' this upgrade can be applied during
color: String, Chat Formatting Color (optional, default: white)
- valid ChatFormatting Colors:
- aqua
- black
- blue
- dark_aqua
- dark_blue
- dark_gray
- dark_green
- dark_purple
- dark_red
- gold
- gray
- green
- light_purple
- red
- white
- yellow
bonuses: RefinedBonus List
- property > String, Attribute registry name
- amount > Double, attribute modifier value
- operation > String: "addition", "multiply_base", "multiply_total"
- slots > String List: what slot(s) the attribute modifier is active in (optional, default: ["minecraft:mainhand"]) (if UpgradeType is curio, slots is ignored and auto-detected) (if UpgradeType is ArmorItem and this is blank, defaults to appropriate armor slot)
- valid slots:
- "minecraft:mainhand"
- "minecraft:offhand"
- "minecraft:head"
- "minecraft:chest"
- "minecraft:legs"
- "minecraft:feet"
Example:
{
"id": "storming",
"key": "refinement.misc.storming",
"incompat": ["obliterating"],
"type": ["minecraft:nether_star"],
"proficiency_cost": 100,
"material": "minecraft:nether_star",
"material_count": 8,
"anvil_levels": 30,
"bonuses": [
{
"property": "minecraft:generic.attack_damage",
"amount": 5,
"operation": "addition",
"slots": ["minecraft:mainhand"]
},
{
"property": "minecraft:generic.movement_speed",
"amount": 0.1,
"operation": "multiply_base",
"slots": ["minecraft:mainhand", "minecraft:offhand"]
},
{
"property": "minecraft:generic.armor",
"amount": 0.1,
"operation": "multiply_base",
"slots": ["minecraft:offhand"]
},
{
"property": "minecraft:generic.armor_toughness",
"amount": 0.1,
"operation": "multiply_base",
"slots": ["minecraft:offhand"]
}
],
"allowed_steps": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
"color": "light_purple"
}
{
"id": "speedy",
"key": "refinement.curio.speedy",
"type": ["curios:necklace"],
"proficiency_cost": 5,
"material": "#forge:ingots/gold",
"material_count": 2,
"bonuses": [
{
"property": "minecraft:generic.movement_speed",
"amount": 0.02,
"operation": "multiply_base"
}
],
"allowed_steps": [1, 2],
"color": "aqua"
}