
Depo
Depo is a Minecraft plugin that automatically detects and installs missing plugin dependencies from trusted sources, making server setup faster and hassle-free. It ensures your plugins always have what they need to run smoothly.
The Endex 1.5.3 | Dynamic Market & Addons [1.20.1 - 1.21.x]
Bring a living economy to your server. Prices move with player demand and supply, with a slick Market GUI, timed events, optional web dashboard, virtual holdings system, and an addon framework.
The Endex is a dynamic economy plugin that brings realistic market mechanics to your Minecraft server. Prices fluctuate based on player trading activity, server-wide item storage, and random market events.
🆕 Version 1.5.3 Highlights:
- PlaceholderAPI Support — 30+ placeholders for scoreboards, holograms, and other plugins
- Update Checker — Automatic notifications when new versions are available
- GUI Customization — Full layout, colors, and slot position customization
- Command Aliases — Create custom command shortcuts like /shop → /market
- Optimized World Scanner — Intelligent chunk caching with dirty tracking
💰 Dynamic Pricing
Prices react to demand/supply with configurable sensitivity, EMA smoothing, and per-item min/max caps.
🌍 World Storage Scanner
Prices adapt to global item quantities across ALL server storage. Abundant items drop in price; scarce items rise.
📦 Virtual Holdings
Buy items into virtual storage with average cost tracking and profit/loss display. Withdraw when ready.
🖥️ Market GUI
Beautiful interface with categories, search, sorting, quick buy/sell buttons, and real-time price charts.
📸 Screenshots
⚡ Market Events
Time-boxed price multipliers (Ore Rush, Market Crash, etc.) with server broadcasts.
🌐 Web Dashboard
Optional REST API with live updates, charts, item icons, and trading from your browser.
🔌 Addon Framework
Extensible API for custom addons with command routing and web integration.
📬 Delivery System
Overflow protection when inventory or holdings are full. Claim items anytime.
🔗 PlaceholderAPI Support
30+ placeholders for scoreboards, holograms, tab lists, and more. Display prices, trends, holdings, leaderboards, and market stats anywhere.
/endex help - Show help menu
/endex version - Display plugin version
/market - Open market GUI
/market buy <item> <amt> - Purchase items
/market sell <item> <amt>- Sell items
/market price <item> - Check current price
/market top - View top traded items
/market holdings - View your virtual holdings
/market withdraw <item> - Withdraw items to inventory
/market withdraw all - Withdraw everything
/market delivery list - View pending deliveries
/market delivery claim - Claim delivered items
/market delivery gui - Open delivery GUI
/market invest buy <item> <amount>
/market invest list
/market invest redeem-all
/market event list - View active events
/market event <name> - Start an event (admin)
/market event end <name> - End an event (admin)
/market event clear - Clear all events (admin)
theendex.market - Access market GUI (default: true)
theendex.buy - Purchase items (default: true)
theendex.sell - Sell items (default: true)
theendex.holdings - Access holdings system (default: true)
theendex.withdraw - Withdraw from holdings (default: true)
theendex.invest - Use investments (default: true)
theendex.admin - Admin commands (default: op)
endex.web.trade - Web dashboard trading
endex.web.admin - View other players' holdings
📋 Requirements
- Server: Paper/Spigot 1.20.1 - 1.21.x
- Java: 17 or higher
- Economy: Vault + Economy plugin (EssentialsX, CMI, etc.)
💾 Storage Options
- YAML (default) or SQLite database
- Automatic backups and safe reloads
- CSV price history export
Configuration Highlights
Virtual Holdings:
holdings:
enabled: true
max-per-player: 10000
max-materials-per-player: 100
mode: VIRTUAL
World Storage Scanner:
price-world-storage:
enabled: true
scan-interval-seconds: 300
sensitivity: 0.01
global-baseline: 1000
containers:
chests: true
barrels: true
shulker-boxes: true
anti-manipulation:
per-chunk-item-cap: 10000
per-material-chunk-cap: 5000
min-tps: 18.0
Inventory-aware pricing:
price-inventory:
enabled: true
sensitivity: 0.02
per-player-baseline: 64
max-impact-percent: 10.0
Web combined holdings:
web:
roles:
default: TRADER
trader-permission: endex.web.trade
admin-view-permission: endex.web.admin
holdings:
inventory:
enabled: true
include-enderchest: false
cache-seconds: 15
Compatibility
- Server: Paper/Spigot 1.20.1 to 1.21.x
- Java: 17 runtime
- Economy: Vault (soft dependency)
Data & Reliability
- YAML storage in the plugin folder by default; optional SQLite database
- Periodic backups and orderly saves; safe reload reschedules tasks cleanly
- Atomic CSV export to
plugins/TheEndex/history - Holdings operations use atomic transactions to prevent duplication exploits
API & Addons
- Public API service for other plugins:
org.lokixcz.theendex.api.EndexAPI - Addon loader with command routing and aliasing
- Customizable Web UI override (
web.custom.*) – export default index.html and modify
Changelog
📜 Full Changelog
New in 1.5.3:
- PlaceholderAPI Integration: 30+ placeholders for prices, trends, holdings, leaderboards, and stats
- Update Checker: Automatic notifications on startup and OP join when updates available
- GUI Customization: Per-GUI config files for layout, colors, slot positions, and categories
- Command Aliases: Create custom shortcuts (e.g.,
/shop→/market) via commands.yml - Full documentation available at https://lokixcz-plugins.kagsystems.tech/
New in 1.5.2:
- Optimized World Storage Scanner: Complete rewrite with intelligent chunk caching and dirty tracking
- Chunk-level caching with configurable expiry — 80-90% reduction in redundant scanning
- Event-driven dirty tracking — only re-scans chunks where containers were modified
- Disk persistence for cache data across server restarts
- GUI Fix (MC 1.21+): Fixed critical bug where market items could be taken and clicks weren't registering
- UUID-based GUI state tracking replaces unreliable title matching
New in 1.5.1:
- World Storage Scanner: Prices now react to ALL items stored on your server (chests, barrels, shulker boxes, etc.)
- Global item tracking for true server-wide scarcity economics
- Anti-manipulation protection: per-chunk caps, per-material limits, suspicious activity logging
- TPS-aware throttling: scanner skips if server is under load
- Double chest deduplication prevents double-counting
- Nested shulker content scanning (items inside shulkers in chests)
- Configurable container types and world exclusions
New in 1.5.0:
- Virtual Holdings System: Complete redesign where purchased items go into virtual holdings instead of inventory
- Holdings GUI: New panel showing all holdings with quantity, avg cost, current price, and profit/loss
- Holdings Commands:
/market holdingsto view,/market withdraw <item> [amount]to claim items - Web UI Withdraw: Withdraw buttons on each holding row plus "Withdraw All" button
- Minecraft 1.21 Support: Full compatibility with Minecraft 1.21.x servers
- New permissions:
theendex.holdingsandtheendex.withdraw(both default: true) - Configurable limits:
holdings.max-per-player(default 10,000) andholdings.max-materials-per-player(default 100)
New in 1.4.0:
- Virtual Delivery System: overflow purchases now enter a pending delivery queue
- Delivery Commands:
/market delivery list|claim|claim-all|gui - Web + API updates: new
/api/deliveriesendpoints - Fixed buy loop issue on 1.20.1 servers
New in 1.3.x:
- Inventory capacity checked before charging; oversized orders capped
- Security hardening: removed reflective access, session token moved to Authorization header
- Hashed API token support via
web.api.token-hashes(SHA-256)
See CHANGELOG.md for full release notes.
⚠️ Disclaimer
This plugin was created with the help of AI. While thoroughly tested, please expect potential bugs or issues. Report problems on Discord or GitHub.


