Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
RealInvest – Banking & Stock Market for Paper 1.21
⚠️ BETA WARNING
This plugin is currently in beta and has not been thoroughly tested. It may contain bugs, instabilities, or unfinished features. Do not use on production servers unless you are prepared for potential issues. Use at your own risk.
Right now this project is closed‑source. I plan to release the code later.
RealInvest brings a full-featured banking system with unique IBAN accounts and a dynamic stock market to your Minecraft server. Built for Paper 1.21 and Vault, it lets players create bank accounts, deposit/withdraw money, transfer funds, and trade stocks with prices that change based on the issuer’s real‑time wealth.
✨ Features
🏦 Banking System
- Create personal bank accounts with a unique IBAN (e.g.,
RI123456789012) - Deposit and withdraw money directly from your Vault economy balance
- Transfer funds between IBANs (configurable fee)
- Authorize other players with
VIEWorMANAGEpermissions on your accounts - List all your accounts and check balances
- Fully YAML‑based data storage (bankdata.yml)
📈 Stock Market
- Players can create their own stocks with a ticker (e.g.,
AAPL,RIOT) - Set total shares and initial price (price limits configurable)
- Buy shares from the issuer (money goes to issuer’s pocket)
- Sell shares back to the issuer (issuer must have enough funds)
- Dynamic pricing – stock price = base price × (current issuer wealth / reference wealth)
- Price drivers: can use bank balance only or bank + pocket money
- Automatic price updates every X minutes (configurable)
🔌 Integrations
- Vault – required for economy handling
- PlaceholderAPI – dozens of placeholders for bank balances, IBANs, top rankings, stock prices, and share amounts
🛠️ Commands & Permissions
Detailed permission nodes for fine‑grained control (see plugin.yml). Defaults give most players access to basic commands; ops get management rights.
🌍 Configurable Messages (New)
- All player-facing messages are now stored in
messages.yml– you can edit colors, wording, and even create translations without touching the code. - A custom prefix can be set in
config.yml(default&6[RealInvest] &r), making it easy to change the plugin’s chat tag.
📋 Commands
/bank
/bank create – create a new account (cost configurable)
/bank list [player] – list your accounts (or another’s with permission)
/bank balance [iban] – show balance of an account
/bank deposit <iban> <amount> – deposit from your pocket into the account
/bank withdraw <iban> <amount> – withdraw from account to your pocket
/bank transfer <toIban> <amount> [fromIban] – transfer between accounts
/bank adduser <iban> <player> <view/manage> – grant access
/bank removeuser <iban> <player> – revoke access
/stock
/stock create <ticker> <totalShares> <price> – create a new stock
/stock buy <ticker> <amount> – buy shares at current price
/stock sell <ticker> <amount> – sell shares at current price
/stock info <ticker> – view stock details and real-time price
/stock portfolio [player] – view your (or another’s) holdings
📊 PlaceholderAPI Expansion
Identifier: realinvest
| Placeholder | Description |
|---|---|
%realinvest_bank_balance% |
Total sum of all your bank accounts (comma‑formatted) |
%realinvest_bank_balance_plain% |
Same as above but with plain decimal (no commas) |
%realinvest_bank_balance_<IBAN>% |
Balance of a specific IBAN |
%realinvest_bank_balance_<IBAN>_plain% |
Same as above, plain format |
%realinvest_bank_iban% |
IBAN of your first account |
%realinvest_top_bank_<rank>_name% |
Player name at that rank (by total bank balance) |
%realinvest_top_bank_<rank>_balance% |
Bank balance at that rank |
%realinvest_top_bank_<rank>_balance_plain% |
Plain format balance at that rank |
%realinvest_stock_shares_<ticker>% |
Number of shares you own of a stock |
%realinvest_stock_price_<ticker>% |
Current price of a stock (comma‑formatted) |
%realinvest_stock_price_<ticker>_plain% |
Current price (plain decimal) |
⚙️ Configuration (config.yml) (Last Updated on Version beta-1.1)
# RealInvest Configuration
# All messages can be edited in messages.yml
prefix: "&6[RealInvest] &r"
update-check-interval: 30 # minutes
update-check-unit: minutes
bank:
creation-cost: 1000.0
max-accounts-per-player: 3
iban-prefix: "RI"
transfer-fee: 0.0
stock:
creation-cost: 5000.0
max-stocks-per-player: 5
minimum-price: 1.0
maximum-price: 1000000.0
price-driver: bank # "bank" or "total"
update-interval-minutes: 1
All message texts are in messages.yml – edit colors and wording freely.
🔒 Permissions (excerpt)
| Permission | Default | Description |
|---|---|---|
realinvest.bank.create |
true | Create bank accounts |
realinvest.bank.use |
true | Use basic bank commands |
realinvest.bank.transfer |
true | Transfer funds |
realinvest.bank.manage |
op | Add/remove authorized users |
realinvest.bank.viewothers |
op | View other players’ accounts |
realinvest.stock.create |
true | Create a stock |
realinvest.stock.buy |
true | Buy shares |
realinvest.stock.sell |
true | Sell shares |
realinvest.stock.portfolio |
true | View portfolios |
realinvest.stock.viewothers |
op | View others’ portfolios |
realinvest.update.notify |
op | Receive update notifications |
📦 Dependencies
- Required: Vault or VaultUnlocked with an economy plugin (e.g., EssentialsX, CMI, etc.)
- Optional: PlaceholderAPI – for placeholders
🧪 Beta Status
RealInvest is currently in early beta. The code has been tested only in basic scenarios. You may encounter:
- Data loss or corruption (always make backups!)
- Performance issues with many stocks/accounts
- Unexpected price calculations
- Missing features or incomplete commands
Please report bugs on the issue tracker. Use on production servers at your own risk.
RealInvest – bring real‑world investing and banking to your Minecraft world. Create a thriving economy with IBAN accounts, dynamic stock prices, and full integration with Vault & PlaceholderAPI.


