← Назад к ресурсам

EzEconomy

Modern, fast, and flexible Vault economy provider for Minecraft servers. Supports YML, MySQL, SQLite, MongoDB, and custom storage. Multi-currency, async caching, and robust permissions for any server size.

Modrinth economy game-mechanics

Описание

**EzEconomy** is a modern, fast, and flexible Vault economy provider for Minecraft servers. Supports YML, MySQL, SQLite, MongoDB, and custom storage. Multi-currency, async caching, and robust permissions for any server size. Proven to be to 50x faster then other populair economy plugins. ![EzEconomy Icon](https://i.ibb.co/jvx09srX/ez-economy-plugin-header.png) **Available languages**: English, Español, Nederlands, 中国人, Français [![ez economy plugin documentation button](https://i.ibb.co/dskCvgLP/documentation-button-1.png)](https://github.com/ez-plugins/EzEconomy/blob/main/README.md) [![ez economy plugin support button](https://i.ibb.co/Wpy2w1cH/support-button-1.png)](https://discord.gg/yWP95XfmBS) --- ## ★ Our key economy features EzEconomy is built for performance, flexibility, and ease of use. Highlights include: - **Vault API compatible**: Works with any Vault-based plugin - **YML, MySQL, SQLite, MongoDB, or custom storage**: Flexible, production-ready storage options - **Thread-safe**: Robust error handling and concurrency - **Multi-currency support**: Optional, per-player, fully configurable - **Async caching**: Optimized for large servers - **Comprehensive commands**: `/balance`, `/eco`, `/baltop`, `/bank`, `/pay`, `/currency` - **Granular permissions**: Per-command and per-bank action --- ## ⚡ Commands - **/balance**: View your balance - **/balance **: View another player's balance (`ezeconomy.balance.others`) - **/eco **: Admin control (`ezeconomy.eco`) - **/eco gui**: Show balance GUI - **/baltop [amount]**: Show top balances - **/bank ...**: Bank management (`ezeconomy.bank.*`) - **/pay **: Pay another player (`ezeconomy.pay`) - **/currency [currency]**: Set or view your preferred currency (`ezeconomy.currency`) - **/ezeconomy cleanup**: Remove orphaned player data (`ezeconomy.admin`) - **/ezeconomy daily reset**: Reset all daily rewards (`ezeconomy.admin`) - **/ezeconomy reload**: Reload plugin configuration (`ezeconomy.admin`) - **/ezeconomy reload messages**: Reload only the message file (`ezeconomy.admin`) - **/ezeconomy database info**: Show database connection info (`ezeconomy.admin`) - **/ezeconomy database test**: Test the database connection (`ezeconomy.admin`) - **/ezeconomy database reset**: Reset all database tables (DANGEROUS) (`ezeconomy.admin`) - **/tax**: Removed — tax functionality moved to EzTax (https://modrinth.com/plugin/eztax) --- ## 🛡️ Permissions - `ezeconomy.balance.others`: View other players' balances - `ezeconomy.eco`: Use /eco admin command - `ezeconomy.pay`: Use /pay command - `ezeconomy.currency`: Use /currency command - `ezeconomy.admin`: Use /ezeconomy admin commands (cleanup, reload, database, daily reset) - **Bank Permissions**: - `ezeconomy.bank.create`: Create a new bank - `ezeconomy.bank.delete`: Delete a bank - `ezeconomy.bank.balance`: View bank balance - `ezeconomy.bank.deposit`: Deposit to a bank - `ezeconomy.bank.withdraw`: Withdraw from a bank - `ezeconomy.bank.addmember`: Add a member to a bank - `ezeconomy.bank.removemember`: Remove a member from a bank - `ezeconomy.bank.info`: View bank info - `ezeconomy.bank.admin`: All bank admin actions --- ## ⚙️ Configuration Example ### `config.yml` (Only global settings): ```yaml storage: yml multi-currency: enabled: false default: "dollar" currencies: dollar: display: "Dollar" symbol: "$" decimals: 2 euro: display: "Euro" symbol: "€" decimals: 2 # Tax configuration has been removed from EzEconomy and moved to EzTax. # EzTax on Modrinth: https://modrinth.com/plugin/eztax conversion: dollar: euro: 0.95 gem: 0.01 euro: dollar: 1.05 gem: 0.012 gem: dollar: 100 euro: 80 ``` ### `config-yml.yml` (YML storage settings): ```yaml yml: file: balances.yml per-player-file-naming: uuid data-folder: data ``` ### `config-mysql.yml` (MySQL storage settings): ```yaml mysql: host: localhost port: 3306 database: ezeconomy username: root password: password table: balances ``` ### `config-sqlite.yml` (SQLite storage settings): ```yaml sqlite: file: ezeconomy.db table: balances banksTable: banks ``` ### `config-mongodb.yml` (MongoDB storage settings): ```yaml mongodb: uri: mongodb://localhost:27017 database: ezeconomy collection: balances banksCollection: banks ``` --- ## ⬇️ Installation 1. Place `EzEconomy.jar` in your plugins folder 2. Configure `config.yml` and the appropriate `config-*.yml` file for your storage type 3. Restart your server --- ## 🔗 Integration - EzEconomy automatically registers as a Vault provider - No extra setup required for Vault-compatible plugins - **PlaceholderAPI support**: - Use placeholders in chat, scoreboard, and other plugins: - `%ezeconomy_balance%` – Your balance - `%ezeconomy_balance_%` – Your balance in a specific currency (e.g., `%ezeconomy_balance_euro%`) - `%ezeconomy_bank_%` – Balance of a specific bank - `%ezeconomy_top_1%` – Top 1 player balance (replace 1 with rank) - `%ezeconomy_currency%` – Your preferred currency - Works with all PlaceholderAPI-compatible plugins --- ## 🛠️ Developer: Custom Storage Providers EzEconomy supports custom storage backends (YML, MySQL, SQLite, MongoDB, or your own)! You can implement your own provider for any database or storage system. **How to add a custom provider:** 1. Implement the `StorageProvider` interface in your plugin or module. 2. Register your provider before EzEconomy loads: ```java EzEconomy.registerStorageProvider(new YourProvider(...)); ``` 3. Only one provider can be registered. If set, EzEconomy will use it instead of YML/MySQL. 4. See the [full StorageProvider reference](../api/storage-provider.md) for required methods and implementation details. This allows you to use SQLite, MongoDB, Redis, or any other system for player balances and banks! --- ## Performance benchmark #### Economy Benchmark Summary | Plugin | Version | Storage | Redis | Status | Run time (s) | Deposit avg (ms) | Withdraw avg (ms) | Balance/Has avg (ms) | RAM avg (MiB) | RAM peak (MiB) | ? vs EzEconomy baseline | |---|---|---|---|---|---:|---:|---:|---:|---:|---:|---:| | essentialsx | 2.21.1 | file | off | ok | 1.021 | 0.483072 | 0.276326 | 0.005248 | 465.76 | 466.50 | N/A | | ezeconomy | 3.1.2 | mysql | off | ok | 0.090 | 0.008794 | 0.007697 | 0.004436 | 415.20 | 415.50 | 1.00x deposit | | ezeconomy | 3.1.2 | mysql | on | ok | 0.098 | 0.012991 | 0.008751 | 0.004505 | 405.67 | 406.02 | 1.48x deposit | | ezeconomy | 3.1.2 | sqlite | off | ok | 0.034 | 0.008090 | 0.003718 | 0.003299 | 420.58 | 420.78 | 1.00x deposit | | ezeconomy | 3.1.2 | sqlite | on | ok | 0.036 | 0.007114 | 0.004541 | 0.003127 | 447.34 | 447.37 | 0.88x deposit | | xconomy | 2.26.3 | mysql | off | ok | 0.547 | 0.164429 | 0.129993 | 0.191681 | 465.28 | 467.52 | 18.70x deposit | | xconomy | 2.26.3 | sqlite | off | ok | 0.290 | 0.109194 | 0.061594 | 0.080283 | 428.20 | 430.39 | 13.50x deposit | #### Bank Operation Benchmarks | Plugin | Version | Storage | Redis | Status | Run time (s) | BankDeposit avg (ms) | BankWithdraw avg (ms) | BankBalance/Has avg (ms) | RAM avg (MiB) | RAM peak (MiB) | |---|---|---|---|---|---:|---:|---:|---:|---:|---:| | essentialsx | 2.21.1 | file | off | skipped (Vault bank API not supported by this economy provider) | N/A | N/A | N/A | N/A | N/A | N/A | | ezeconomy | 3.1.2 | mysql | off | ok | 3.330 | 1.225967 | 1.153788 | 0.567417 | 449.95 | 458.75 | | ezeconomy | 3.1.2 | mysql | on | ok | 3.090 | 1.122824 | 1.078041 | 0.516253 | 440.06 | 448.27 | | ezeconomy | 3.1.2 | sqlite | off | ok | 2.126 | 0.960253 | 0.838308 | 0.061351 | 463.86 | 469.28 | | ezeconomy | 3.1.2 | sqlite | on | ok | 1.864 | 0.827309 | 0.747836 | 0.064934 | 490.66 | 496.37 | | xconomy | 2.26.3 | mysql | off | skipped (Vault bank API not supported by this economy provider) | N/A | N/A | N/A | N/A | N/A | N/A | | xconomy | 2.26.3 | sqlite | off | skipped (Vault bank API not supported by this economy provider) | N/A | N/A | N/A | N/A | N/A | N/A | --- ## ❓ Support - For help, join our [community Discord](https://discord.gg/yWP95XfmBS) --- ## 🔗 Related Plugins - [⭐ EzAuction: Buy Orders, Advanced GUI, Show Shop Price](https://modrinth.com/plugin/ezauction) - [⚠️ EzShops: Dynamic Shops GUI, Player Shops, Sell Hand/Inv](https://modrinth.com/plugin/ezshops) [![Try the other Minecraft plugins in the EzPlugins series](https://i.ibb.co/PzfjNjh0/ezplugins-try-other-plugins.png)](https://modrinth.com/collection/Q98Ov6dA)