BetterSmithing Guide
A concise walkthrough for server owners to configure and use the BetterSmithing plugin. The plugin automatically registers smithing-table upgrades for armor/tools based on your config and the materials available on your server version.
What the Plugin Does
- Scans your server’s
Materiallist for leather, wooden, stone, copper, iron, golden, and diamond tools/armor (swords, spears, shovels, pickaxes, axes, hoes, helmets, chestplates, leggings, boots). - Builds upgrade recipes for each tier pair you define in the config, matching items by suffix (e.g.,
WOODEN_SWORD→STONE_SWORD). - Uses modern Smithing Transform recipes when supported (1.20+); falls back to legacy SmithingRecipe on older versions.
- Optionally requires a smithing template item if your server version enforces templates.
Installation
- Drop the plugin jar into
plugins/and start the server once. - Edit the generated config at
plugins/BetterSmithing/config.ymlon the server. - Reload or restart the server to apply changes.
Configuration
The defaults live in src/main/resources/config.yml. Key options:
Template
template: COAL
- Set to the smithing template item required by your server version (e.g.,
NETHERITE_UPGRADE_SMITHING_TEMPLATE). - If your server mandates templates and this is missing/invalid, recipes will be skipped and a warning is logged.
- Set to
AIRto allow legacy behavior on older versions that do not require templates.
Tiers
Each tier maps to the tier it can be upgraded into and the consumable item for the upgrade. Leave upgrade_to or upgrade_item blank to disable that tier.
tiers:
leather:
upgrade_to: golden
upgrade_item: gold_ingot
wooden:
upgrade_to: stone
upgrade_item: stone
stone:
upgrade_to: copper
upgrade_item: copper_ingot
copper:
upgrade_to: iron
upgrade_item: iron_ingot
golden:
upgrade_to: iron
upgrade_item: iron_ingot
iron:
upgrade_to: diamond
upgrade_item: diamondHow it works:
- The plugin looks up the tool/armor sets for both the source and target tiers. If either set is empty on your server version, that upgrade path is skipped with a log warning.
upgrade_itemmust be a valid BukkitMaterial; otherwise the path is skipped with a warning.- Items are paired by the shared suffix, so every matching item (e.g., all helmets) gets its own smithing recipe.
Supported tool/armor types
SWORD, SPEAR, SHOVEL, PICKAXE, AXE, HOE, HELMET, CHESTPLATE, LEGGINGS, BOOTS
Example: Custom Path
If you want wooden → iron directly and disable everything else:
template: NETHERITE_UPGRADE_SMITHING_TEMPLATE
tiers:
wooden:
upgrade_to: iron
upgrade_item: iron_ingot
stone:
upgrade_to: ""
upgrade_item: ""
leather:
upgrade_to: ""
upgrade_item: ""
copper:
upgrade_to: ""
upgrade_item: ""
golden:
upgrade_to: ""
upgrade_item: ""
iron:
upgrade_to: ""
upgrade_item: ""Troubleshooting
- Missing recipes on 1.20+: Ensure
templateis set to a valid smithing template material. - A tier is skipped: Check server logs for warnings about unknown tiers, empty tier sets (not available on your MC version), or invalid
upgrade_itemmaterials. - No commands appear: This plugin only registers recipes; there are no player or admin commands.
Last updated on