Economy-System
The ultimate economy system with multi-database support, multilingual capabilities, and extensive features.
Economy-System
EconomySystem
Complete Economy Plugin for Minecraft 1.20.4 – 1.21.10
✨ Features
* 💰 Reload system with balances, payments, and administration * 🌍 Reload system – German, English, French, Russian, Ukrainian * 🗄️ Reload system – YAML, MySQL, MongoDB * 📊 Reload system – full logging of every transaction * 🎯 Reload system – compatible with all Vault-based plugins * 📝 Reload system – many placeholders for Scoreboards, Chat, etc. * 🔔 Reload system – other plugins can react to transactions * ⚡ Reload system – efficient storage and queries * 🔒 Reload system – advanced permission system * 📈 Reload system – shows the richest players * 🔄 Reload system – reload the config without restarting the server
📦 Requirements
* Optional:: 1.20.4 – 1.21.10 (Paper/Spigot/Purpur) * Optional:: Version 21 or newer * Optional:
* Vault for plugin compatibility * PlaceholderAPI for placeholders
🚀 Installation
1. Download the latest version of EconomySystem 2. Place the `.jar` file into your server’s `plugins` folder 3. Restart the server 4. The plugin will auto-create all configuration files 5. Edit `config.yml` to your needs 6. Use `/economyreload` to reload the config
⚙️ Configuration
Basic Setup
The `config.yml` contains all important settings:
```yaml
Currency settings
currency: name: "Coin" name-plural: "Coins" symbol: "$" starting-balance: 100.0 min-balance: 0.0 max-balance: 0.0 # 0 = unlimited decimals: 2
Database settings
database: type: YAML # YAML, MYSQL or MONGODB
General settings
settings: language: en top-players-per-page: 10 log-transactions: true save-transaction-history: true max-transaction-history: 100 vault-integration: true ```
MySQL Example
```yaml database: type: MYSQL mysql: host: localhost port: 3306 database: economy username: root password: "your-password" table-prefix: economy_ ```
MongoDB Example
```yaml database: type: MONGODB mongodb: connection-string: "mongodb://localhost:27017" database: economy collection: balances use-ssl: false ```
📝 Commands
Player Commands
| Command | Aliases | Description | Permission | | ---------------------------- | ---------------- | ------------------------- | ----------------- | | `/balance [player]` | `/bal`, `/money` | Shows your balance | `economy.balance` | | `/pay <player> <amount>` | `/send` | Pay another player | `economy.pay` | | `/top [page]` | `/topbalance` | Shows the richest players | `economy.top` | | `/history [player] [amount]` | `/hist` | Shows transaction history | `economy.history` |
Admin Commands
| Command | Description | Permission | | --------------------------------- | ------------------------- | ---------------- | | `/economy set <player> <amount>` | Set a player's balance | `economy.admin` | | `/economy give <player> <amount>` | Give money | `economy.admin` | | `/economy take <player> <amount>` | Remove money | `economy.admin` | | `/economy reset <player>` | Reset to starting balance | `economy.admin` | | `/economyreload` | Reload config | `economy.reload` |
🔐 Permissions
* `economy.balance` – View own balance * `economy.balance.others` – View others’ balance * `economy.pay` – Send money * `economy.top` – View top list * `economy.history` – Show own history * `economy.history.others` – Show other players’ history * `economy.admin` – All admin commands * `economy.reload` – Reload the plugin * `economy.*` – All permissions
📊 PlaceholderAPI
Balance
* `%economy_balance%` * `%economy_balance_formatted%` * `%economy_balance_formatted_symbol%`
Currency
* `%economy_currency_name%` * `%economy_currency_name_plural%` * `%economy_currency_symbol%`
Top List
* `%economy_top_1%` * `%economy_top_1_balance%` * `%economy_top_1_balance_formatted%` * Works for positions 1–1000
Other
* `%economy_rank%` * `%economy_has_account%`
Example
``` You have %economy_balance_formatted% in your account! Your rank: #%economy_rank% Richest player: %economy_top_1% with %economy_top_1_balance_formatted% ```
💻 API for Developers
EconomyAPI
```java double balance = EconomyAPI.getBalance(player); EconomyAPI.deposit(player, 100.0); EconomyAPI.withdraw(player, 50.0); EconomyAPI.transfer(player1, player2, 25.0); String formatted = EconomyAPI.format(100.0); ```
Events
```java @EventHandler public void onBalanceChange(BalanceChangeEvent event) { // React to balance changes }
@EventHandler public void onTransaction(TransactionEvent event) { // React to successful transactions } ```
Vault Integration
```java Economy economy = Bukkit.getServicesManager() .getRegistration(Economy.class) .getProvider();
economy.depositPlayer(player, 100.0); double bal = economy.getBalance(player); ```
🗄️ Database Support
YAML
* No need for setup * Stored in `data.yml`
MySQL
* Requires MySQL server * Perfect for large servers
MongoDB
* Requires MongoDB server * Ideal for very large servers and distributed systems
🌍 Multi-Language Support
Languages available:
* 🇩🇪 German (default) * 🇬🇧 English * 🇫🇷 French * 🇷🇺 Russian * 🇺🇦 Ukrainian
Change language in config:
```yaml settings: language: en ```
Custom translations: Add a file like `lang_en.yml`, copy structure, translate, reload plugin.
📜 Transaction History
* Player payments * Admin actions * Deposits / withdrawals * Timestamp + reason
Config:
```yaml settings: save-transaction-history: true max-transaction-history: 100 ```
Usage:
* `/history` * `/history 20` * `/history PlayerName`
🔄 Supported Versions
✔ 1.20.4 – 1.21.10 Automatic version checking included.
🐛 Known Issues
* MySQL driver must be installed manually * MongoDB driver must be installed manually
📞 Support
* GitHub Issues * GitHub Wiki * Discord Server
📄 License
Licensed under MIT License.
🙏 Credits
* Built for Paper/Spigot * Compatible with Vault + PlaceholderAPI
📝 Changelog
Version 1.0.0
* Initial Release * Full Economy System * Multi-language (5 languages) * Multi-database (YAML/MySQL/MongoDB) * Transaction history * Vault support * PlaceholderAPI support * Event system * Version checking