-
XP Bottle Creation — Convert your XP into storable bottles via `/xpbottle <amount>`
- ️
Easy Redemption — Right-click a bottle to instantly absorb its XP
-
Cooldown System — Configurable cooldown to prevent spam
-
Protected Bottles — Bottles are returned to the player on death instead of dropping
-
Customizable Bottles — Full control over material, name, lore, glow and hex colors
-
Sound Effects — Configurable sounds on withdraw and redeem
- ️
Database Support — H2 (embedded) or MySQL via HikariCP
-
ItemsAdder Integration — Optional support for custom items
-
Admin Commands — Give bottles to players and reload config
-
Configurable Messages — Full lang.yml with hex color & MiniMessage support
- /xpbottle <amount> — Withdraw XP into a bottle | Permission: xpbottle.use
- /xpbottle give <player> <amount> — Give XP bottle(s) to a player | Permission: xpbottle.give
- /xpbottle reload — Reload the plugin configuration | Permission: xpbottle.reload
- /xpbottle help — Display the help message
- /xp — View your current level and total XP | Permission: xp.view
- xpbottle.use — Use /xpbottle to withdraw XP (default: true)
- xpbottle.give — Give bottles to other players (default: op)
- xpbottle.reload — Reload the configuration (default: op)
- xp.view — Use /xp to view level and XP (default: true)
- %exp% — Amount of XP stored in the bottle
- %signer% — Name of the player who created the bottle
- %amount% — Number of bottles
- %time% — Remaining cooldown time in seconds
- %player% — Target player name
- %level% — Player's current level
- %xp% — Player's total XP
Code (Text):
prefix: "<gradient:#DFE600:#FF791A><bold>XpBottle</bold></gradient> &7» "
database:
type: h2 # h2 or mysql
host: localhost
port: 3306
name: xpbottle
user: root
password: ""
number-formatting:
mode: 0
formatted: '#,###'
short: en_US
update-notifier:
enabled: true
on-join: true
notify-console: true
xpbottle:
min-exp: 10
max-exp: 1000000000
conversion-rate: 0.1
cooldown: 10
drop: false
protected-bottles: true
bottle:
tooltip_style: "tooltip:tooltip/name"
# itemsadder_id: 'namespace:name_id'
material: EXPERIENCE_BOTTLE
name: "&#F2EC27&lʙᴏᴛᴛʟᴇ ᴅ'ᴇxᴘᴇʀɪᴇɴᴄᴇ"
lore:
- ""
- "&7xᴘ : &f%exp%"
- "&7ᴘʀᴏᴘʀɪᴇᴛᴀɪʀᴇ : &f%signer%"
- ""
- "&#F2EC27ᴄʟɪᴄᴋ ᴅʀᴏɪᴛ &7| &7use the bottle"
glow: false
sound:
redeem:
sound: "ENTITY_PLAYER_LEVELUP"
enabled: true
withdraw:
sound: "ENTITY_COW_DEATH"
enabled: false
- ItemsAdder — Enable use-itemsadder: true to use a custom item instead of the vanilla bottle
- MySQL — Switch database.type to mysql and fill in your credentials for multi-server setups