
An accurate experience point-based economy system for PaperMC 1.18.1+!


Introduction
No more invisible currencies!
Tired of currencies that you have to use commands to check? Want your players to be able to get richer just by playing the game? Experience Economy might be for you!
Key Features
- Supports offline player accounts
- Choose between points, levels, and per-hundred points economy modes
- Reflects experience spent at the Enchantment Table and Anvil
- Can save accounts as YAML or in a MySQL database
- Set a minimum starting balance for new players
- Options to manage experience bottles
- Robust command set for use and moderation
Notes for Use
- Fractional currency is only supported for the PER_HUNDRED economy type. LEVELS economy cannot support fractional currency due to scaling
- Requires Vault
Metrics
This plugin uses bStats to collect some analytics about your current system setup and plugin configuration. You can see the metrics collected here: https://bstats.org/plugin/bukkit/Experience%20Economy/14015#!
Metrics collection is optional. If you installed a previous version of the plugin, you are already opted-out of metrics collection. If you want to opt-out on version 1.1.0 or higher, set the "metrics" option in the configuration file to "false", or comment or remove the line. Thanks!
Configuration
# Database Settings: Set this to connect to a MySQL database for account storage.
# If Enabled is set to false, then file storage will be used instead.
mysql:
# Whether the MySQL server backend should be enabled.
# Defaults to false.
enabled: false
# The MySQL server IP or hostname.
# Defaults to "localhost".
hostname: localhost
# The MySQL server port.
# Defaults to 3306.
port: 3306
# The name of the database to use.
# Defaults to "spigot".
database: spigot
# The MySQL user ID.
# Defaults to "root".
userID: root
# The MySQL user password.
# Defaults to "password".
password: password
# Options for the MySQL connection. Represented as key-value pairs.
flags:
- allowReconnect: false
useSSL: false
# Optional prefix for any created table's names.
# Useful if you are only using a single database for multiple plugins.
# Defaults to "xpeco".
tablePrefix: xpeco
# The initial account balance for new player accounts.
# Defaults to zero.
startingBalance: 0
# The locale to use while translating chat messages.
# Defaults to "en_US".
locale: en_US
# The economy method to use.
# Defaults to "POINTS". Valid values are "POINTS", "LEVELS", and "PER_HUNDRED" (case insensitive)
economyMethod: points
# Experience Bottle options
experienceBottleOptions:
# Whether experience bottle management should be enabled.
# Defaults to false.
enabled: false
# A block material that will allow the user to fill experience bottles if they right-click it with an empty bottle.
# List of valid values: https://papermc.io/javadocs/paper/1.18/org/bukkit/Material.html#enum-constant-summary
# Defaults to air. If set to air, this functionality will be disabled.
fillInteractBlock: enchanting_table
# Whether bottles should never be thrown or not.
# Players can always opt to use XP bottles instead of throwing them by sneaking.
# Defaults to true.
throwBottles: true
# The default number of experience points per bottle.
# Defaults to 10 points.
pointsPerBottle: 7
# Refunds thrown bottles
# Defaults to false
refundThrownBottles: false
# Whether to show debug output in the console.
# Defaults to false.
debug: false
Permissions
Commands
/add
- Adds an amount to a player's balance
- Usage:
/add AMOUNT [PLAYER]
- Aliases:
/balance
- Displays a user's account balance
- Usage:
/balance [PLAYER]
- Aliases:
/deduct
- Deducts a given amount from a player's balance
- Usage:
/deduct AMOUNT [PLAYER]
- Aliases:
- remove
- removebal
- removebalance
- deductbal
- deductbalance
/experience
- Queries a player's experience balance
- Usage:
/experience [PLAYER]
- Aliases:
/pay
- Pays another player an amount from the sender's balance. Cannot be executed via console
- Usage:
/pay PLAYER AMOUNT
/setbalance
- Sets a player's account balance to a desired value.
- Usage:
/setbalance AMOUNT [PLAYER]
- Aliases:
syncxp
- Synchronizes a player's account balance with their XP level
- Usage:
/syncxp [PLAYER]
transfer
- Transfers balances from one player to another.
- Usage:
/transfer AMOUNT PLAYER RECIPIENT
xpeconomy
- Performs various tasks for the xpeconomy plugin
- Usage:
/xpeconomy {about|add|balance|deduct|experience|help|pay|reload|set|sync|transfer} [ARGS...]
- Aliases:
Issues?
If you encounter any issues with the plugin, report them on the GitHub issue tracker. Select a template and fill out the required sections please!