Home›Java›Mods›The Endex | Dynamic Stock Market for Minecraft [1.20.1 - 1.21.11] Multi Language Support!
ModsJava
The Endex | Dynamic Stock Market for Minecraft [1.20.1 - 1.21.11] Multi Language Support!
The Endex 1.5.8-JAN80235 | Dynamic Market & Addons [1.20.1 - 1.21.x] Bring a living economy to your server. Prices move with player demand and supply…
⬇ Download on Spigot
The Endex 1.5.8-JAN80235 | 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.8-JAN80235 Highlights:
• ️ Anti-Exploit Protection — 4-layer defense system blocks infinite money exploits!
• 6% Buy/Sell Spread — Creates friction cost that prevents profitable arbitrage loops!
• 60-Second Sell Cooldown — Blocks instant buy→sell flipping after purchases!
• Price Mean Reversion — Pulls manipulated prices back to base during idle periods!
• Config Auto-Update — Automatically migrates old configs while preserving your settings!
• Zero Performance Impact — All protections use <0.01% CPU overhead!
What's Protected:
✅ Buy-Sell Arbitrage — Can't buy low and sell high for instant profit
✅ Price Manipulation — Prices drift back to normal when manipulation stops
✅ Instant Flipping — Must wait 60s after buying before selling
✅ Your Economy — Fair, balanced gameplay for all players
Previous Version Features (1.5.8-JAN70109):
• Shop Editor Fixes — Delete Category and Save Changes buttons now work properly!
• Language Files — Added missing shop-editor translations to Korean, Russian, Portuguese, and Chinese!
• Permissions Fix — Added missing permission nodes: endex.shop.editor, endex.shop.admin, endex.web.trade, endex.web.admin
Earlier 1.5.8 Features:
• Category Creation Fix — Fixed "Create Category" dialog not responding to clicks!
• Inflation System — New configurable inflation/deflation system with per-category rates!
• Market Items Manager — New editor button to view/edit all market items in one place!
• Price Editor Fix — Fixed vanilla item price editing in the market editor!
• Admin Commands Fixed — /market remove, disable, setbase, setmin, setmax now persist properly!
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.
Spoiler: 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.
bStats Metrics
Anonymous usage statistics to help improve the plugin.
Code (Text):
/endex help - Show help menu
/endex version - Display plugin version
/market - Open market GUI
/shop - Alias for /market
/m, /trade, /exchange - Additional market aliases
/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 sellholdings <item> <amt> - Sell directly from holdings
/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)
# Namespaced commands also work:
/endex:shop, /endex:market, /endex:m
Code (Text):
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.shop.editor - Shop editor GUI access (default: op)
endex.shop.admin - Admin actions in custom shops (default: op)
endex.web.trade - Web dashboard trading (default: true)
endex.web.admin - View other players' holdings (default: op)
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:
Code (Text):
holdings:
enabled: true
max-per-player: 10000
max-materials-per-player: 100
mode: VIRTUAL
Code (Text):
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
Code (Text):
price-inventory:
enabled: true
sensitivity: 0.02
per-player-baseline: 64
max-impact-percent: 10.0
Code (Text):
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
Spoiler: Full Changelog
New in 1.5.8-JAN70109:
• Shop Editor Delete Category: Fixed "Delete Category" button which was showing "coming soon" instead of deleting
• Shop Editor Save Changes: Fixed "Save Changes" button which was only playing sound without saving
• Language Files: Added complete shop-editor section (~60 keys) to Korean, Russian, Portuguese, and Chinese language files
• Missing Permissions: Added endex.shop.editor, endex.shop.admin, endex.web.trade, endex.web.admin to plugin.yml
New in 1.5.8-JAN60132:
• Shop Editor Category Fix: Fixed "Create Category" dialog in the shop editor not responding to clicks
• Clicking compass (Filter mode) or chest (Manual mode) icons now properly creates new categories
• Added CREATE_CATEGORY state tracking and proper click handling flow
• Categories now persist immediately to shop YAML config files
New in 1.5.7-dec1038:
• Polish Language Support: Complete Polish (Polski) translation for plugin and documentation
• Config Translations Auto-Extract: 10 language configs now auto-extract to plugins/TheEndex/config_translations/ on first run
• Optimized Default Configuration: Ships with minimal resource usage settings by default
• World storage scanning DISABLED by default (easily re-enabled for full features)
• Inventory-based pricing DISABLED by default
• Save-on-each-update DISABLED by default (reduced disk I/O)
• Update interval increased to 120 seconds (was 60)
• Prominent optimization guide added to top of config.yml
New in 1.5.7-dec1022:
• Web Dashboard Translation: Google Translate integration for 26+ languages
• GUI Bug Fix: Fixed ArrayIndexOutOfBoundsException when middle-clicking items in market details
• Performance Indicators: Config options now show [PERF: LOW/MEDIUM/HIGH] impact tags
• Translated Configs: Pre-translated config files in 9 languages (Chinese, Spanish, French, German, Japanese, Korean, Portuguese, Russian, Arabic)
• Market GUI: Increased details inventory size from 27 to 36 slots to fix button placement
New in 1.5.7:
• Sell from Holdings: Sell items directly from virtual holdings without withdrawing to inventory first
• Arclight/Hybrid Server Compatibility: Fixed plugin recognition, SLF4J logging, ServiceLoader, and clickable chat links
• Market GUI: Item details now shows "Inventory: X | Holdings: Y" with new sell buttons (slots 33 & 35)
• Custom Shop GUI: Vanilla items can now be sold from holdings when inventory is insufficient
• Web API: New POST /api/sell-holdings endpoint for web dashboard selling
• New Command: /market sellholdings <material> <amount>
New in 1.5.6:
• Minecraft 1.20.1+ Compatibility: Lowered api-version from '1.21' to '1.20' to restore support for 1.20.1+ servers (Arclight, etc.)
• In-Game Layout Editor: Complete visual GUI editor for custom shop layouts — no config editing required!
• Custom Items Support: Add any material as decoration with personalized names and lores
• 5 Editor Modes: Place Category, Place Decoration, Place Button, Edit Slot, Remove Slot
• Right-Click Editing: Customize item names and lores via chat prompts
• Real-Time Preview: See changes instantly before saving
• One-Click Save: Save layouts directly to shop config file
• Custom Category Icons: Categories display custom names/lores in /market
New in 1.5.5:
• Economy Plugin Compatibility: Fixed "Economy unavailable" error with late-loading economy plugins (SimpleEconomy, etc.)
• Added delayed retry (2 seconds) for economy provider detection
• Economy plugins that register with Vault after TheEndex loads are now properly detected
• Added common economy plugins to softdepend list to improve load order
New in 1.5.4:
• bStats Metrics: Plugin analytics with custom charts (storage mode, shop mode, web UI, holdings, item count)
• Custom Shop Enhancements: Holdings button (slot 45) and Sort button (slot 53) in category pages
• Filter-Based Categories: Auto-populate shop categories using material filters instead of manual item lists
• Default GUI Improvements: Removed Amount button, Sort moved to slot 49, cleaner layout
• Fixed: Hotbar interaction no longer blocked while GUI is open
• Fixed: Sort order now correctly shows highest prices/changes first (descending)
• Fixed: Holdings button in Custom Shop now properly opens holdings panel
• Fixed: /ex market command respects shop.mode config setting
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 holdings to 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.holdings and theendex.withdraw (both default: true)
• Configurable limits: holdings.max-per-player (default 10,000) and holdings.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/deliveries endpoints
• 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.
• Shop Editor Delete Category: Fixed "Delete Category" button which was showing "coming soon" instead of deleting
• Shop Editor Save Changes: Fixed "Save Changes" button which was only playing sound without saving
• Language Files: Added complete shop-editor section (~60 keys) to Korean, Russian, Portuguese, and Chinese language files
• Missing Permissions: Added endex.shop.editor, endex.shop.admin, endex.web.trade, endex.web.admin to plugin.yml
New in 1.5.8-JAN60132:
• Shop Editor Category Fix: Fixed "Create Category" dialog in the shop editor not responding to clicks
• Clicking compass (Filter mode) or chest (Manual mode) icons now properly creates new categories
• Added CREATE_CATEGORY state tracking and proper click handling flow
• Categories now persist immediately to shop YAML config files
New in 1.5.7-dec1038:
• Polish Language Support: Complete Polish (Polski) translation for plugin and documentation
• Config Translations Auto-Extract: 10 language configs now auto-extract to plugins/TheEndex/config_translations/ on first run
• Optimized Default Configuration: Ships with minimal resource usage settings by default
• World storage scanning DISABLED by default (easily re-enabled for full features)
• Inventory-based pricing DISABLED by default
• Save-on-each-update DISABLED by default (reduced disk I/O)
• Update interval increased to 120 seconds (was 60)
• Prominent optimization guide added to top of config.yml
New in 1.5.7-dec1022:
• Web Dashboard Translation: Google Translate integration for 26+ languages
• GUI Bug Fix: Fixed ArrayIndexOutOfBoundsException when middle-clicking items in market details
• Performance Indicators: Config options now show [PERF: LOW/MEDIUM/HIGH] impact tags
• Translated Configs: Pre-translated config files in 9 languages (Chinese, Spanish, French, German, Japanese, Korean, Portuguese, Russian, Arabic)
• Market GUI: Increased details inventory size from 27 to 36 slots to fix button placement
New in 1.5.7:
• Sell from Holdings: Sell items directly from virtual holdings without withdrawing to inventory first
• Arclight/Hybrid Server Compatibility: Fixed plugin recognition, SLF4J logging, ServiceLoader, and clickable chat links
• Market GUI: Item details now shows "Inventory: X | Holdings: Y" with new sell buttons (slots 33 & 35)
• Custom Shop GUI: Vanilla items can now be sold from holdings when inventory is insufficient
• Web API: New POST /api/sell-holdings endpoint for web dashboard selling
• New Command: /market sellholdings <material> <amount>
New in 1.5.6:
• Minecraft 1.20.1+ Compatibility: Lowered api-version from '1.21' to '1.20' to restore support for 1.20.1+ servers (Arclight, etc.)
• In-Game Layout Editor: Complete visual GUI editor for custom shop layouts — no config editing required!
• Custom Items Support: Add any material as decoration with personalized names and lores
• 5 Editor Modes: Place Category, Place Decoration, Place Button, Edit Slot, Remove Slot
• Right-Click Editing: Customize item names and lores via chat prompts
• Real-Time Preview: See changes instantly before saving
• One-Click Save: Save layouts directly to shop config file
• Custom Category Icons: Categories display custom names/lores in /market
New in 1.5.5:
• Economy Plugin Compatibility: Fixed "Economy unavailable" error with late-loading economy plugins (SimpleEconomy, etc.)
• Added delayed retry (2 seconds) for economy provider detection
• Economy plugins that register with Vault after TheEndex loads are now properly detected
• Added common economy plugins to softdepend list to improve load order
New in 1.5.4:
• bStats Metrics: Plugin analytics with custom charts (storage mode, shop mode, web UI, holdings, item count)
• Custom Shop Enhancements: Holdings button (slot 45) and Sort button (slot 53) in category pages
• Filter-Based Categories: Auto-populate shop categories using material filters instead of manual item lists
• Default GUI Improvements: Removed Amount button, Sort moved to slot 49, cleaner layout
• Fixed: Hotbar interaction no longer blocked while GUI is open
• Fixed: Sort order now correctly shows highest prices/changes first (descending)
• Fixed: Holdings button in Custom Shop now properly opens holdings panel
• Fixed: /ex market command respects shop.mode config setting
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 holdings to 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.holdings and theendex.withdraw (both default: true)
• Configurable limits: holdings.max-per-player (default 10,000) and holdings.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/deliveries endpoints
• 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.
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.20, 1.20.6, 1.21
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
The Endex | Dynamic Stock Market for Minecraft [1.20.1 - 1.21.11] Multi Language Support! is a free Minecraft Java mod. Compatible with Minecraft 1.20, 1.20.6, 1.21. Downloaded 559 times (via Spigot). Download it and open it directly in the game.