βοΈ Configuration Reference β config.yml
This documentation explains each setting and its effect within the config.yml of ProgressiveUnlock.
π§ General Settings
mode: xp
Defines whether the plugin is in xp mode (XP-based progression) or farming mode (item-collection based progression).
πͺ Debug & Updates
debug.enabled: false
Enables or disables debug logging. Useful for development or troubleshooting.
update.check_interval_minutes: 180
Interval (in minutes) at which the plugin checks for updates.
βοΈ Core Settings
settings.enchantUnlockedItems: true
If true, unlocked recipes are visually enchanted (shimmer effect) in /unlockmenu.
settings.showLockedRecipeMessage: true
If true, locked recipes are visible in the crafting menu with a lock indication.
settings.sendLockedRecipeMessage: true
If true, a chat message is sent when the player tries to craft a locked item.
π§ͺ Unlock Checks
These settings control when and how the plugin checks if the player has access to tools, blocks, projectiles, etc.
checkUnlocked.onInteract
- check: trueβ Check if the tool used during interaction is unlocked.
- sendMessage: trueβ Notify the player if itβs not unlocked.
- survivalModeOnly: trueβ Only enforce this in Survival mode.
checkUnlocked.onPlace
- check: falseβ Block placement is not checked by default.
- sendMessage: falseβ No message is sent if blocked.
- survivalModeOnly: trueβ Only applies in Survival mode.
checkUnlocked.onBreak
- check: trueβ Check if broken block is unlocked.
- sendMessage: falseβ No message by default.
- survivalModeOnly: trueβ Applies only in Survival.
checkUnlocked.onArmorEquip
- check: trueβ Check if player is allowed to equip a piece of armor.
- sendMessage: trueβ Notify if armor is locked.
- survivalModeOnly: trueβ Only in Survival.
checkUnlocked.onProjectile
Each type of projectile can be checked individually:
- arrows,- trident,- snowball,- xpbottle,- egg,- ender_pearl- check: trueβ Enforces unlock requirement.
- sendMessage: trueβ Sends a denial message.
- survivalModeOnly: trueβ Applies only in Survival.
 
checkUnlocked.onPortal
- end,- netherportals:- check: trueβ Player must unlock portal access.
- sendMessage: trueβ Message shown when blocked.
- survivalModeOnly: falseβ Applies in all modes.
 
checkUnlocked.onPotion
- check: trueβ Checks if potion effect is unlocked.
- sendMessage: trueβ Sends a warning if not.
checkUnlocked.onEntityActions
- check: trueβ Verifies if entity interaction (e.g., shearing, trading) is allowed.
- sendMessage: true
- survivalModeOnly: false
checkUnlocked.onPickup
- check: trueβ Prevents pickup of items that arenβt unlocked.
- sendMessage: true
- survivalModeOnly: false
π§βπ€βπ§ XP Groups
If you want to add player/group into multiplier group, just set permission progressiveunlock.group.vip
Groups.VIP
- name: VIP groupβ Display name of the group.
- multiplier: 1.1β Players in this group earn 10% more XP.
π§Ύ Command Aliases
aliases.playerxp
Alternative commands for /playerxp:
- xplevel
- exp
- xperience
- playerXP
- farmingaliases.unlockmenu
Alternative commands for /unlockmenu:
- crafting
- unlock㪠Messages
These are shown to players during various events and situations:
playerXP: "&aYou are level {level}..."
levelUp: "&2 Congratulations!..."
noItemsCollected: "&c No items collected yet."
unlockPackHeader: "&b Needed items for unlock pack {pack}"
...- Placeholders like {level},{xp},{nextXP},{item},{current},{required}dynamically insert values.
- Each message corresponds to plugin actions such as unlocking items, crafting denied, tool restrictions, level-up messages, portal access, potion locks, etc.
π§ GUI Menu Labels
These are texts shown inside the /unlockmenu GUI:
unlockedRecipes: "&eUnlocked Recipes - Page {page}"
searchItems: "&2Search"
nextPage: "&2Next page"
previousPage: "&2Previouss page"
...- Includes labels for search input, locked/unlocked indicators, and level/pack info.
β Summary
This config file controls:
- Plugin mode (XP or Farming)
- Behavior of unlock checks
- Messaging and GUI
- Command aliases
- XP multipliers for permission groups
Make sure to reload the plugin after any config changes using /pu reload  or restarting the server.