šInformation
Highly optimized, feature-packed, and unique Experience Management plugin.
Enhance your server with a comprehensive EXP system featuring a versatile shop, level-buying options, and XP withdrawal capabilities. The plugin includes paginated levels, leaderboards, and customizable XP placeholders, providing a rich experience for both administrators and players. Admins benefit from advanced management tools, while players can unlock rewards, track their progress, and engage with a dynamic XP-driven environment.
Highlights:
Versatile EXP Shop: Customize and manage an extensive shop for XP-related purchases.
Level-Buying System: Allow players to buy levels directly, adding a new dimension to progression.
XP Withdrawal: Enable players to withdraw XP for flexibility in managing their experience.
Paginated Levels: Organize levels into pages for better navigation and management.
Leaderboards: Display XP and level rankings to motivate competition and track top players.
Custom XP Placeholders: Utilize customizable placeholders for displaying XP-related information.
Advanced Admin Tools: Provide administrators with robust tools for managing the XP system.
Player Rewards and Progress Tracking: Offer rewards and enable players to monitor their progress effectively.
Short Showcase Video
PlaceholderAPI Support
You must have PlaceholderAPI installed on your Minecraft Server for these Placeholders to register, but you can format/display EXP in 3 different ways to the player.
%tideeconomy_raw% ā Will return the raw, unformatted integer (Example: 1000000)
%tideeconomy_comma% ā Will return the formatted exp in a comma-format (Example: 1,000,000)
%tideeconomy_formatted% ā Returns the exp in roman-numeral-decimal format. (1k, 10k, 100k, 1M)
Commands
Arguments wrapped in diamonds <arg>
are required for the command to run properly. Arguments wrapped in square braces[arg]
are treated as optional
Admin Commands (Permission: tideexperience.admin
)
/experience give <player> <amount>
Gives the player a specified amount of experience
/experience givelevel <player> <amount>
Gives the player a specified amount of experience levels
/experience take <player> <amount>
Takes a specified amount of experience from a player
/experience takelevel <player> <amount>
Takes a specified amount of experience levels from a player
/experience set <player> <amount>
Sets the player's experience to the specified amount
/experience setlevel <player> <amount>
Sets the player's experience level to the specified amount
/experience reload
Reloads the TideExperience plugin and refreshes config values.
Player Commands (Permission: None unless specified
)
/experience [player]
Retrieves how much experience you have if no player was specified, otherwise it will retrieve the specified player's experience.
/experience withdraw <amount> or /expbottle <amount>
Both of these commands will withdraw an amount of Experience that the command sender has into a redeemable voucher.
/experience exptop
Opens the experience top menu
/experience expleveltop
Opens the experience level top menu
/experience shop
Opens the main exp shop menu
/levels
Opens the level roadmap menu for the player
/levels top
Opens the level roadmap top menu
Default Configuration Files
Experience Bottle Config File
item:
material: "EXPERIENCE_BOTTLE"
name: "&5&l(!) &dExperience Bottle &7(Right-Click)"
lore:
- " "
- "&dInformation"
- "&d&lā &7Stored: &f%exp%"
- "&d&lā &7From: &f%player%"
- " "
- "&7&o(( Right-Click to redeem this exp note! ))"
Commands Config File
commands:
"bottle-command":
base-command-name: "xpbottle"
aliases:
- "expbottle"
- "tidexpbottle"
- "tideexpbottle"
sub-commands: {}
"levels-command":
base-command-name: "levels"
aliases:
- "level"
- "tidelevel"
- "tidelevels"
sub-commands:
"top":
base-alias: "top"
aliases: []
"experience-command":
base-command-name: "experience"
aliases:
- "exp"
- "xp"
- "tideexperience"
- "tideexp"
- "te"
- "xperience"
sub-commands:
"shop":
base-alias: "shop"
aliases: []
"help":
base-alias: "help"
aliases: []
"reload":
base-alias: "reload"
aliases: []
"exptop":
base-alias: "exptop"
aliases: []
"expleveltop":
base-alias: "expleveltop"
aliases: []
"give":
base-alias: "give"
aliases:
- "add"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te give <player> <amount>"
"take":
base-alias: "take"
aliases:
- "subtract"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te take <player> <amount>"
"set":
base-alias: "set"
aliases:
- "sum"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te set <player> <amount>"
"give-level":
base-alias: "givelevel"
aliases:
- "addlevel"
- "givelvl"
- "addlvl"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te givelevel <player> <amount>"
"take-level":
base-alias: "takelevel"
aliases:
- "sublevel"
- "sublvl"
- "takelvl"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te takelevel <player> <amount>"
"set-level":
base-alias: "setlevel"
aliases:
- "sumlevel"
- "sumlvl"
- "setlvl"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te setlevel <player> <amount>"
"withdraw":
base-alias: "withdraw"
aliases:
- "bottle"
- "xpbottle"
- "expbottle"
not-enough-args:
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Invalid arguments! Proper usage: &c/te withdraw <amount>"
Levels Config File
levels:
"one":
weight: 1
cost-in-exp: 100
commands:
- "give %player% diamond 1"
claimed-item:
enchanted: true
material: "LEATHER"
name: "&a&lCLAIMED"
lore: [ ]
locked-item:
material: "BARRIER"
name: "&c&lLEVEL &4&lONE &8(&7Locked&8)"
lore:
- " "
- "&cInformation"
- "&c&lā &7Cost: &f100 EXP"
- "&c&lā &7Progress: &f%exp%&7/&f100 &8[&f%bar%&8]"
- " "
- "&cRewards"
- "&c&lā &71x Diamond"
- " "
- "&7&o(( You need &f&o100 exp&7&o to unlock this level ))"
ready-item:
material: "LIME_DYE"
name: "&a&lLEVEL &2&lONE &8(&7Purchase&8)"
lore:
- " "
- "&aInformation"
- "&a&lā &7Cost: &f100 EXP"
- "&a&lā &7Progress: &fClick to buy"
- " "
- "&aRewards"
- "&a&lā &71x Diamond"
- " "
- "&7&o(( Click to purchase this level for &f&o100 exp&7&o! ))"
"two":
weight: 2
cost-in-exp: 500
commands:
- "give %player% emerald 1"
claimed-item:
enchanted: true
material: "LEATHER"
name: "&a&lCLAIMED"
lore: [ ]
locked-item:
material: "BARRIER"
name: "&c&lLEVEL &4&lTWO &8(&7Locked&8)"
lore:
- " "
- "&cInformation"
- "&c&lā &7Cost: &f100 EXP"
- "&c&lā &7Progress: &f%exp%&7/&f100 &8[&f%bar%&8]"
- " "
- "&cRewards"
- "&c&lā &71x Emerald"
- " "
- "&7&o(( You need &f&o100 exp&7&o to unlock this level ))"
ready-item:
material: "LIME_DYE"
name: "&a&lLEVEL &2&lTWO &8(&7Purchase&8)"
lore:
- " "
- "&aInformation"
- "&a&lā &7Cost: &f100 EXP"
- "&a&lā &7Progress: &fClick to buy"
- " "
- "&aRewards"
- "&a&lā &71x Emerald"
- " "
- "&7&o(( Click to purchase this level for &f&o100 exp&7&o! ))"
menus:
"level-menu":
title: "&8&lLEVELS MENU"
rows: 3
level-slots: [ 10, 11, 12, 13, 14, 15, 16 ]
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
next-page-item:
slot: 24
material: "SPECTRAL_ARROW"
name: "&8&lNext &7&lPage &8(&f%page%&8)"
lore:
- "&8Informational Item"
- "&7"
- "&8&lINFORMATION:"
- "&7- &8&lPage: &f%page%"
- "&7"
previous-page-item:
slot: 20
material: "TIPPED_ARROW"
potion-type: "INSTANT_HEAL"
hide-flags: true
name: "&8&lPrevious &7&lPage &8(&f%page%&8)"
lore:
- "&8Informational Item"
- "&7"
- "&8&lINFORMATION:"
- "&7- &8&lPage: &f%page%"
- "&7"
Shops Config File
open-first: "main-menu" #Will open the categories menu first, you can also set this to another shop.
main-menu:
title: "&8&lCATEGORIES"
rows: 3
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
categories:
"static":
slot: 12
open:
material: "LIME_DYE"
name: "&aStatic Shop &7(Open)"
lore: [ ]
closed:
material: "RED_DYE"
name: "&cStatic Shop &7(Closed)"
lore: [ ]
"rotating":
slot: 14
open:
material: "LIME_DYE"
name: "&aRotating Shop &7(Open)"
lore: [ ]
closed:
material: "RED_DYE"
name: "&cRotating Shop &7(Closed)"
lore: [ ]
shops:
"static":
title: "&8&lSTATIC"
rows: 3
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
open-time: "1/28/2022 17:30:00"
rotating: false
items:
"diamond":
slot: 13
price: 10
material: "DIAMOND"
name: "&bDiamond &7(10 exp)"
lore: []
commands:
- "give %player% diamond 1"
"rotating":
title: "&8&lROTATING"
rows: 3
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
"light_gray":
material: "LIGHT_GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "10-16"
open-time: "1/28/2022 17:30:00"
rotating: true
rotating-time: 30 #In Seconds
item-slots: [10,11,12,13,14,15,16]
items:
"diamond":
price: 10
material: "DIAMOND"
name: "&bDiamond &7(10 exp)"
lore: []
commands:
- "give %player% diamond 1"
"emerald":
price: 10
material: "EMERALD"
name: "&aEmerald &7(10 exp)"
lore: []
commands:
- "give %player% emerald 1"
rotating-item:
slot: 18
material: "CLOCK"
name: "&eRotating in &f%time%&e."
lore: []
Leaderboards/Top Menus Config File
exp-top:
enabled: true
interval: 60
exp-levels-top:
enabled: true
interval: 60
levels-top:
enabled: true
interval: 60
menus:
"exp-top-menu":
title: "&8&lEXP TOP"
rows: 3
top-slots: [ 10,11,12,13,14,15,16 ]
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
invalid-item:
material: "PLAYER_HEAD"
skull: "MHF_Question"
name: "&c???"
lore: [ ]
valid-item:
material: "PLAYER_HEAD"
skull: "%player%"
name: "&5&l[&d&l!&5&l] &d%player% &7(#%rank%)"
lore:
- "&7&o(( &f&o%player%&7&o has &f&o%amount%x&7&o exp! ))"
stats-item:
slot: 26
material: "PLAYER_HEAD"
skull: "%player%"
name: "&5&l[&d&l!&5&l] &d%player% &7(#%rank%)"
lore:
- "&7&o(( You currently have &f&o%amount%x&7&o exp! ))"
"exp-level-top-menu":
title: "&8&lEXP LEVEL TOP"
rows: 3
top-slots: [ 10,11,12,13,14,15,16 ]
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
invalid-item:
material: "PLAYER_HEAD"
skull: "MHF_Question"
name: "&c???"
lore: [ ]
valid-item:
material: "PLAYER_HEAD"
skull: "%player%"
name: "&5&l[&d&l!&5&l] &d%player% &7(#%rank%)"
lore:
- "&7&o(( &f&o%player%&7&o has &f&o%amount%x&7&o exp level(s)! ))"
stats-item:
slot: 26
material: "PLAYER_HEAD"
skull: "%player%"
name: "&5&l[&d&l!&5&l] &d%player% &7(#%rank%)"
lore:
- "&7&o(( You currently have &f&o%amount%x&7&o exp level(s)! ))"
"level-top-menu":
title: "&8&lLEVEL TOP"
rows: 3
top-slots: [ 10,11,12,13,14,15,16 ]
borders:
"gray":
material: "GRAY_STAINED_GLASS_PANE"
name: " "
lore: [ ]
slots:
- "0-26"
invalid-item:
material: "PLAYER_HEAD"
skull: "MHF_Question"
name: "&c???"
lore: [ ]
valid-item:
material: "PLAYER_HEAD"
skull: "%player%"
name: "&3&l[&b&l!&3&l] &b%player% &7(#%rank%)"
lore:
- "&7&o(( &f&o%player%&7&o has &f&o%amount%x&7&o level(s)! ))"
stats-item:
slot: 26
material: "PLAYER_HEAD"
skull: "%player%"
name: "&3&l[&b&l!&3&l] &b%player% &7(#%rank%)"
lore:
- "&7&o(( You currently have &f&o%amount%x&7&o level(s)! ))"
Messages Config File
messages:
"reloaded":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have successfully reloaded &bTideExperience&7 in &b%time%ms&7."
"purchased":
sound:
enabled: true
value: "ORB_PICKUP"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have successfully purchased &b%item%&7 for &b%cost%&7 exp."
"rotated": # This is a broadcast
sound:
enabled: true
value: "ORB_PICKUP"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7The &b%shop%&7 shop has just rotated it's items!"
"admin-help":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&f&m----------------------------------"
- " "
- "&b&lTech&3&lTide &7ā &bExperience Admin Help"
- "&7&oCarefully crafted with expertise by &f&oindustry leaders&7&o."
- " "
- "&7<> = Required"
- "&7[] = Optional"
- " "
- "&b&lCommands"
- "&b&lā &7/te [player]"
- "&b&lā &7/te give <player> <amount>"
- "&b&lā &7/te take <player> <amount>"
- "&b&lā &7/te set <player> <amount>"
- "&b&lā &7/te givelevel <player> <amount>"
- "&b&lā &7/te takelevel <player> <amount>"
- "&b&lā &7/te setlevel <player> <amount>"
- "&b&lā &7/te withdraw <amount>"
- "&b&lā &7/te reload"
- " "
- "&f&m----------------------------------"
"player-help":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&f&m----------------------------------"
- " "
- "&b&lTech&3&lTide &7ā &bExperience Help"
- "&7&oCarefully crafted with expertise by &f&oindustry leaders&7&o."
- " "
- "&7<> = Required"
- "&7[] = Optional"
- " "
- "&b&lCommands"
- "&b&lā &7/te [player]"
- "&b&lā &7/te withdraw <amount>"
- " "
- "&f&m----------------------------------"
"invalid-player":
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7You have specified a(n) &cinvalid player&7."
"invalid-amount":
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7You have specified a(n) &cinvalid amount&7."
"invalid-args-bottle":
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7Incorrect arguments! &c/xpbottle <amount>&7 is the correct usage."
"not-enough-exp":
sound:
enabled: true
value: "FIZZ"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&c&lTech&4&lTide &f&lā &7You do not have &cenough exp&7 to perform this action."
"experience-balance":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have &b%exp%&7 exp. &f&o(&b&o%level% &7&olvl(s)&f&o)"
"experience-balance-other":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &b%player%&7 has &b%exp%&7 exp. &f&o(&b&o%level% &7&olvl(s)&f&o)"
"given-experience-to-player":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have given &b%player% %amount%&7 exp. Their new balance is &b%new-balance%&7 exp."
"received-experience":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have been given &b%amount%&7 exp by &b%player%&7. Your new balance is &b%new-balance%&7 exp."
"taken-experience-from-player":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have took &b%amount%&7 exp from &b%player%&7. Their new balance is &b%new-balance%&7 exp."
"lost-experience":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have had &b%amount%&7 exp taken by &b%player%&7. Your new balance is &b%new-balance%&7 exp."
"set-experience-for-player":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have set &b%player%'s&7 exp to &b%amount%&7."
"experience-set":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7Your exp has been set to &b%amount%&7 by &b%player%&7."
"given-level-to-player":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have given &b%player% %amount%&7 exp level(s) they are now level &b%new-balance%&7."
"received-level":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have been given &b%amount%&7 exp level(s) by &b%player%&7. You are now level &b%new-balance%&7."
"taken-level-from-player":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have took &b%amount%&7 exp level(s) from &b%player%&7. Their new level is &b%new-balance%&7 exp."
"lost-level":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have had &b%amount%&7 exp level(s) taken by &b%player%&7. You are now level &b%new-balance%&7."
"set-level-for-player":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have set &b%player%'s&7 exp level to &b%amount%&7."
"level-set":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7Your exp level has been set to &b%amount%&7 by &b%player%&7."
"withdrawn-experience":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have withdrawn &b%amount%x&7 exp. Your new exp balance is &b%new-balance%&7."
"redeemed-exp-bottle":
sound:
enabled: true
value: "BLOCK_NOTE_PLING"
volume: 1
pitch: 1
message:
enabled: true
value:
- "&b&lTech&3&lTide &f&lā &7You have redeemed an exp bottle and received &b%amount%&7 exp. Your new balance is &b%new-balance%&7 exp."
"exp-top-updating":