Players can now get xp reward for advancements completions!
List of all advancements:
story/root - Minecraft - Start of the game
story/mine_stone - Stone Age - Mine stone with your new pickaxe
story/upgrade_tools - Getting an Upgrade - Construct a better pickaxe
story/smelt_iron - Acquire Hardware - Smelt an iron ingot
story/obtain_armor - Suit Up - Protect yourself with a piece of iron armor
story/lava_bucket - Hot Stuff - Fill a bucket with lava
story/iron_tools - Isn’t It Iron Pick - Make an iron pickaxe
story/deflect_arrow - Not Today, Thank You - Deflect an arrow with a shield
story/form_obsidian - Ice Bucket Challenge - Obtain obsidian
story/mine_diamond - Diamonds! - Acquire diamonds
story/enter_the_nether - We Need to Go Deeper - Build, light, and enter a Nether portal
story/shiny_gear - Cover Me with Diamonds - Diamond armor saves lives
story/enchant_item - Enchanter - Enchant an item at an Enchanting Table
story/cure_zombie_villager - Zombie Doctor - Cure a zombie villager
story/follow_ender_eye - Eye Spy - Follow an Eye of Ender
story/enter_the_end - The End? - Enter the End dimension
nether/root - Nether - Bring summer clothes
nether/return_to_sender - Return to Sender - Destroy a Ghast with its own fireball
nether/find_bastion - Those Were the Days - Enter a Bastion Remnant
nether/obtain_ancient_debris - Hidden in the Depths - Obtain ancient debris
nether/fast_travel - Subspace Bubble - Use the Nether to travel 7 km in the Overworld
nether/find_fortress - A Terrible Fortress - Break your way into a Nether Fortress
nether/obtain_crying_obsidian - Who is Cutting Onions? - Obtain crying obsidian
nether/distract_piglin - Oh Shiny - Distract Piglins with gold
nether/ride_strider - This Boat Has Legs - Ride a Strider with a Warped Fungus on a Stick
nether/uneasy_alliance - Uneasy Alliance - Rescue a Ghast from the Nether and kill it in the Overworld
nether/use_lodestone - Country Lode, Take Me Home - Use a Lodestone to locate a target
nether/netherite_armor - Cover Me in Debris - Get a full suit of Netherite armor
nether/explore_nether - Hot Tourist Destinations - Explore all Nether biomes
nether/summon_wither - Spooky Scary Skeleton - Summon the Wither
nether/brew_potion - Local Brewery - Brew a potion
nether/create_beacon - Bring Home the Beacon - Construct and place a beacon
nether/all_potions - A Furious Cocktail - Have every potion effect applied
nether/all_effects - How Did We Get Here? - Have every effect applied at the same time
end/root - The End - Enter the End
end/kill_dragon - Free the End - Kill the Ender Dragon
end/dragon_egg - The Next Generation - Hold the Dragon Egg
end/enter_end_gateway - Remote Getaway - Escape the End island using an End Gateway
end/find_end_city - The City at the End of the Game - Find an End City
end/elytra - Sky’s the Limit - Find Elytra
end/respawn_dragon - The End... Again... - Respawn the Ender Dragon
adventure/root - Adventure - Adventure time!
adventure/voluntary_exile - Voluntary Exile - Kill a raid captain
adventure/kill_a_mob - Monster Hunter - Kill any hostile monster
adventure/trade - What a Deal! - Successfully trade with a Villager
adventure/honey_block_slide - Sticky Situation - Slide down a honey block
adventure/ol_betsy - Ol’ Betsy - Shoot a crossbow
adventure/sleep_in_bed - Sweet Dreams - Sleep in a bed to change your respawn point
adventure/hero_of_the_village - Hero of the Village - Successfully defend a village from a raid
adventure/throw_trident - A Throwaway Joke - Throw a trident
adventure/shoot_arrow - Take Aim - Shoot something with a bow and arrow
adventure/kill_all_mobs - Monsters Hunted - Kill one of every hostile monster
adventure/totem_of_undying - Postmortal - Use a Totem of Undying to cheat death
adventure/summon_iron_golem - Hired Help - Summon an Iron Golem to help defend a village
adventure/two_birds_one_arrow - Two Birds, One Arrow - Kill two Phantoms with one arrow
adventure/whos_the_pillager_now - Who’s the Pillager Now? - Give a Pillager a taste of their own medicine
adventure/arbalistic - Arbalistic - Kill five different mobs with one crossbow shot
adventure/adventuring_time - Adventuring Time - Discover every Overworld biome
adventure/very_very_frightening - Very Very Frightening - Strike a Villager with lightning
adventure/sniper_duel - Sniper Duel - Kill a Skeleton from at least 50 meters away
adventure/bullseye - Bullseye - Hit the bullseye of a Target block from at least 30 meters away
xpMode.yml:
Code (Text):
xpRewards:
default: # default amount for unspecified blocks/entities
breakBlock: 1
placeBlock: 1
killMob: 10
tradeWithVillager: 5
craftItem: 2
# rules of specific items, mobs, blocks..
specific:
blocks: # block breaking
EMERALD_ORE: 20
DIAMOND_ORE: 30
GOLD_ORE: 15
IRON_ORE: 10
COAL_ORE: 5
ANCIENT_DEBRIS: 40
mobs: # mob killing
SKELETON: 12
CREEPER: 30
ENDERMAN: 30
WITHER: 100
ENDER_DRAGON: 400
trades: # trading with villagers with specific profession
FARMER: 10
LIBRARIAN: 15
WEAPONSMITH: 20
crafting: # item crafting
BEACON: 100
ENCHANTING_TABLE: 50
GOLDEN_APPLE: 20
TOTEM_OF_UNDYING: 150
advancements:
end/root:
reward: 100
message: "%prefix% &d You received %xp% XP for reaching the End!"
nether/root:
reward: 75
message: "%prefix% &c You received %xp% XP for entering the Nether!"
end/kill_dragon:
reward: 200
message: "%prefix% &6 You received %xp% XP for defeating the Ender Dragon!"
story/mine_diamond:
reward: 30
message: "%prefix% &6You just received %xp% XP for mining your first diamonds!"
story/iron_tools:
reward: 40
message: "%prefix% &You got your first iron tools! enjoy extra %xp% XP"
- Improved VIP groups for increased multiplier.
config.yml:
Code (Text):
Groups:
MiniVIP:
name: MiniVIP
multiplier: 1.2 # XP multiplier
VIP:
name: VIP group
multiplier: 1.5 # XP multiplier
VIP+:
name: VIP group
multiplier: 1.8 # XP multiplier
MegaVIP:
name: MegaVIP group
multiplier: 1 # XP multiplier
- fixed default example xpmode.yml files - there was invalid yaml
- added command /pu reload that reloads all configuration files.
- Added new config values and player head into /unlockmenu
Code (Text):
settings:
menu:
# Inventory positions in /unlockmenu.
# Keep values between 45 and 53.
positions:
filters: 50
search: 48
head: 49
arrow-previous: 45
arrow-next: 53
- Added new command /pu configure. This will enable admin mode and allows player to click on any item in inventory to show information about item and set requirement directly from game! Supports both materials and custom items and doesn't require server restart!
Requires permission progressiveunlock,configure
- All config messages now supports {prefix} and prefix is editable in config.
- Added missing trident, gravel and iron_armor into example configs
Added new command /pu configure. This will enable admin mode and allows player to click on any item in inventory to show information about item and set requirement directly from game! Supports both materials and custom items and doesn't require server restart!
- Custom items are now shown in /unlockmenu and in search results. You can search for them by material and name.
- Converted XP from int to float. It means you are now allowed to use values below 1 in XP rewards - for example 0.5. Database column will be updated automatically, please check log if everything changed correctly.
- Improved fetch check from database to ensure data are always loaded correctly.
- fixed mysql bug
- added automatic function to migrate from mysql to yml if database is disabled in config.
Added custom items! You can now define requirements for specific items based on their name and lore. By default, all items are unlocked. If you want to restrict access to specific custom items, simply define them here.
This works with
any custom items created by
any plugin, as long as they are defined correctly.
Enjoy!
Code (YAML):
items:
exampleItem: #Any unique ID. No spaces, no special characters, only numbers and letters. material: WOODEN_PICKAXE
name: "&bExample item"#Ingame name of item ingame. Without _ and | lore: "&aThis is example item with requirement"#Ingame name of item ingame. Without _ and | lockedUntil: "level3"#Name of level or pack where item is unlocked. # Test this item ingame! # /give <player> wooden_pickaxe 1 name:&bExample_item lore:&aThis_is_example_item_with_requirement
Players are now able to filter shown items in /unlockmenu. They may select if they want to see craftables, blocks and materials. This function can be find under /unlockmenu - hopper next to the search sign. These filters don't affect search results
- PlaceHolderAPI Support! We now support two variables:
%progressiveunlock_xp%
%progressiveunlock_level%
Fixed a bug that could cause XP to reset when using the unsafe /reload command — we still recommend avoiding the use of reload!
Added a new check for item pickup.
ProgressiveUnlock can now check if a player has unlocked portals. To allow portal use, add 'NETHER_PORTAL' and 'END_PORTAL.' This is also configurable in config.
ProgressiveUnlock can now run commands when a player reaches a new level or unlocks a new pack. You can reward players with prizes, kits, or even add them to permission groups or grant specific permissions! This is configurable for each level or pack individually."
Added DEBUG mode to make setting up the plugin easier. You can enable debug mode in the config
. Debug mode should only be used for testing and configuring the plugin. If any action is blocked,
debug mode will tell you the reason and how to fix it. Simply enable debug and try playing as a normal player for a while—the plugin will provide instructions. Please
disable debug mode once you're done.OP is required, and if
"survival mode only" is enabled for specific actions, you must also be in survival mode.
Added DEBUG mode to make setting up the plugin easier. You can enable debug mode in the config. Debug mode should only be used for testing and configuring the plugin. If any action is blocked, debug mode will tell you the reason and how to fix it. Simply enable debug and try playing as a normal player for a while - the plugin will provide instructions. Please disable debug mode once you're done. OP is required, and if "survival mode only" is enabled for specific actions, you must also be in survival mode.
Added a Survival Mode checker. Placing, breaking, and interacting can now be blocked exclusively in Survival mode.
Fixed a broken config auto-updater. New values should be added automatically, but to ensure everything is correct, check the example from Spigot and compare it.
Added a Survival Mode checker. Placing, breaking, and interacting can now be blocked exclusively in Survival mode.
Fixed a broken config auto-updater. New values should be added automatically, but to ensure everything is correct, check the example from Spigot and compare it.
The plugin can now check if a player has unlocked the block they are mining or placing, or the tool they are currently using. This check can be done with or without sending a message to the player. Fully configurable in config!
Added new config values and messages for these functions.
Added an update checker. There is no auto-updater yet for security reasons, but you will receive a notification if a new version is available. All configurations will be automatically updated with new entries if any are added after you download the new version of the plugin!
New config value (xpmode.yaml)
options.allowUnlimitedXP - allow/disable XP on max level
- Fixed duplicate messages. We can now handle packets to detect the use of the crafting book. However, this update now requires ProtocolLib, so make sure to download it.
- Fixed missing colors in some messages.
- Added new messages to the config.
- Fixed the "unlimited levels" issue and added a check for the max level — players will still earn XP even if they are at the max level.
- Added player names to playerData. We recommend resetting playerData.
- removed forgotten debug messages from console
- Major changes in config