-
Notifications
You must be signed in to change notification settings - Fork 7
Item Profiles
Rudra edited this page Jan 2, 2026
·
1 revision
Item profiles define which items can level up and link them to trigger, reward, and display profiles.
plugins/LevelTools/item_profiles.yml
profiles:
profile_id:
materials:
- DIAMOND_PICKAXE
- IRON_PICKAXE
trigger_profile: block_mining
reward_profile: tools
display_profile: default
max_level: 100| Option | Description | Required |
|---|---|---|
materials |
List of item materials | Yes |
trigger_profile |
ID from trigger_profiles.yml | Yes |
reward_profile |
ID from reward_profiles.yml | Yes |
display_profile |
ID from display_profiles.yml | Yes |
max_level |
Maximum level for these items | Yes |
level_xp_formula |
Override global XP formula | No |
extends |
Inherit from another profile | No |
Each material can only belong to ONE item profile. If the same material appears in multiple profiles, LevelTools will fail to load and log an error.
# This will cause an error:
pickaxes:
materials:
- DIAMOND_PICKAXE # Duplicate!
special_pickaxes:
materials:
- DIAMOND_PICKAXE # Error: already in pickaxes profilepickaxes:
materials:
- WOODEN_PICKAXE
- STONE_PICKAXE
- IRON_PICKAXE
- GOLDEN_PICKAXE
- DIAMOND_PICKAXE
- NETHERITE_PICKAXE
trigger_profile: block_mining
reward_profile: tools
display_profile: default
max_level: 100axes:
materials:
- WOODEN_AXE
- STONE_AXE
- IRON_AXE
- GOLDEN_AXE
- DIAMOND_AXE
- NETHERITE_AXE
trigger_profile: block_mining
reward_profile: tools
display_profile: default
max_level: 100shovels:
materials:
- WOODEN_SHOVEL
- STONE_SHOVEL
- IRON_SHOVEL
- GOLDEN_SHOVEL
- DIAMOND_SHOVEL
- NETHERITE_SHOVEL
trigger_profile: block_mining
reward_profile: tools
display_profile: default
max_level: 100swords:
materials:
- WOODEN_SWORD
- STONE_SWORD
- IRON_SWORD
- GOLDEN_SWORD
- DIAMOND_SWORD
- NETHERITE_SWORD
trigger_profile: combat
reward_profile: swords
display_profile: default
max_level: 100bows:
materials:
- BOW
- CROSSBOW
trigger_profile: combat
reward_profile: bows
display_profile: default
max_level: 100fishing_rods:
materials:
- FISHING_ROD
trigger_profile: fishing
reward_profile: fishing_rods
display_profile: default
max_level: 50Use extends to inherit settings from another profile, then override specific options.
profiles:
pickaxes:
materials:
- WOODEN_PICKAXE
- STONE_PICKAXE
- IRON_PICKAXE
- GOLDEN_PICKAXE
- DIAMOND_PICKAXE
trigger_profile: block_mining
reward_profile: tools
display_profile: default
max_level: 100
netherite_pickaxes:
extends: pickaxes
materials:
- NETHERITE_PICKAXE
max_level: 150 # Override max levelThe netherite_pickaxes profile inherits trigger_profile, reward_profile, and display_profile from pickaxes, but has its own materials and max level.
Override the global level_xp_formula for specific item types:
legendary_swords:
materials:
- NETHERITE_SWORD
trigger_profile: combat
reward_profile: swords
display_profile: default
max_level: 200
level_xp_formula: "500 + {current_level} * 250" # Harder to levelFirst, create a trigger profile in trigger_profiles.yml:
profiles:
farming:
type: BLOCK_BREAK
xp_modifier:
default:
min: 1.0
max: 2.0
filter:
type: WHITELIST
list:
- "WHEAT"
- "POTATOES"
- "CARROTS"Then create a reward profile in reward_profiles.yml:
profiles:
hoes:
levels:
5:
- "enchant2 efficiency 1"
10:
- "enchant2 fortune 1"
20:
- "enchant2 efficiency 3"
30:
- "enchant2 fortune 2"Finally, add the item profile in item_profiles.yml:
profiles:
hoes:
materials:
- WOODEN_HOE
- STONE_HOE
- IRON_HOE
- GOLDEN_HOE
- DIAMOND_HOE
- NETHERITE_HOE
trigger_profile: farming
reward_profile: hoes
display_profile: default
max_level: 50profiles:
tridents:
materials:
- TRIDENT
trigger_profile: combat
reward_profile: tridents # Create in reward_profiles.yml
display_profile: default
max_level: 75profiles:
shields:
materials:
- SHIELD
trigger_profile: right_click_block # Custom trigger
reward_profile: shields
display_profile: minimal
max_level: 30