Get Support, request a new feature, or want to report a bug? Then feel free to head on over to my discord! https://discord.gg/V3htVPGUGd
Features
- Fully GUI-Based: All player interactions with the shop are done through easy-to-use graphical interfaces.
- Vault Economy Support: Integrates with your server's existing economy plugin via Vault for all transactions.
- Categorized Shops: Organize your items into custom categories for easy browsing.
- Pagination: Supports large shops and categories with intuitive page navigation.
- Interactive Buying GUI: Players can select quantities to buy with +/- buttons and confirm or decline purchases.
- Selling Interface: Allows players to sell items from their inventory that are configured in the shop.
- Item Search: Players can search for specific items across all shop categories.
- Price Information: Players can quickly check the buy and sell prices of any item.
- Custom Item Support: Easily add items with custom names, lore, and NBT data to your shop.
- Admin Management Commands: A suite of commands for administrators to manage shop categories, items, and prices directly.
- GUI Protection: Prevents players from taking items directly from shop GUIs.
- Wishlist System: Add items to your personal wishlist with
/shop wishlist <item>to track them. - Sell All Items: Sell all sellable items at once with
/shop sellall. - Dynamic Pricing: Prices fluctuate based on demand with dynamic pricing system.
- Category Permissions: Restrict access to certain categories based on player permissions.
- Discount System: Apply percentage discounts to purchases based on player permissions.
- Auction House: Full auction house system accessible via
/auctionhouseor/ah.
Player Commands
-
/shop- Description: Opens the main shop GUI, displaying all available categories.
- Aliases:
/s
-
/shop balance- Description: Displays your current balance in the server's economy.
-
/shop reload- Description: Reloads the plugin's configuration files and shop data. (Requires permission)
-
/shop price <item>- Description: Shows the buy and sell price information for a specified item.
-
/shop browse <category>- Description: Opens the shop GUI directly to a specific category.
-
/shop search <item>- Description: Opens a GUI displaying all items matching your search term across all categories.
-
/shop sell- Description: Opens an interface where you can sell items from your inventory that are configured in the shop.
-
/shop wishlist <item>- Description: Adds an item to your personal wishlist that notifies you when the price drops.
-
/shop sellall- Description: Sells all sellable items in your inventory at once with a confirmation prompt.
-
/auctionhouseor/ah- Description: Opens the auction house GUI where you can browse, buy, and sell items at auction.
Admin Commands
-
/shopadmin- Description: Base command for all administrative shop functions.
- Aliases:
/sa
-
/auctionhouse sell <price> <amount>- Description: Sell the item in your hand at the specified price and amount in the auction house.
- Aliases:
/ah sell <price> <amount>
-
/shopadmin reload- Description: Reloads all shop configuration files (
shop.ymlandcustom_items.yml).
- Description: Reloads all shop configuration files (
-
/shopadmin add <category> <item_identifier> <buy_price> <sell_price>- Description: Adds a new item to a specified shop category. The
item_identifiercan be a standard Minecraft material name or the ID of a custom item you've registered.
- Description: Adds a new item to a specified shop category. The
-
/shopadmin remove <category> <item_identifier>- Description: Removes an item from a specified shop category.
-
/shopadmin setprice <category> <item_identifier> <new_buy_price> <new_sell_price>- Description: Changes the buy and sell prices for an existing item within a category.
-
/shopadmin createcategory <name> <icon_material> <slot_number>- Description: Creates a new shop category with a given name, icon, and its position in the main shop GUI.
-
/shopadmin deletecategory <name>- Description: Deletes an entire shop category and all items within it.
Custom Item Commands
/customitem add <id>- Description: Registers the item you are currently holding in your main hand as a custom item with a unique identifier (
id). This allows you to add items with custom names, lore, and NBT data to your shop.
- Description: Registers the item you are currently holding in your main hand as a custom item with a unique identifier (
Permissions
-
economyshop999.admin- Description: Grants access to all
/shopadminand/customitemcommands. - Default: Operators (op)
- Description: Grants access to all
-
economyshop999.reload- Description: Allows use of the
/shop reloadcommand. - Default: Operators (op)
- Description: Allows use of the
-
economyshop999.category.<category_name>- Description: Grants access to a specific shop category when category permissions are enabled.
- Default: None (all players can access all categories by default)
-
economyshop999.category.*- Description: Grants access to all shop categories when category permissions are enabled.
- Default: None
-
economyshop999.discount.vip- Description: Grants VIP discount percentage on purchases when discount system is enabled.
- Default: None
-
economyshop999.discount.member- Description: Grants member discount percentage on purchases when discount system is enabled.
- Default: None
Configuration
Upon first run, a folder named EconomyShop999 will be created in your server's plugins directory. Inside, you will find:
-
shop.yml:- This file is where you define your shop's categories and the items within them. It uses a clear YAML structure.
- Each category has a
name,icon(Minecraft material name),slot(position in the main GUI), and a list ofitems. - Items are defined using the format:
ITEM_IDENTIFIER BUY_PRICE SELL_PRICE.ITEM_IDENTIFIERcan be a standard Minecraft material name (e.g.,STONE,DIAMOND_SWORD) or theidof a custom item registered via/customitem add.BUY_PRICEis the price players pay to buy the item. Set to-1to make an item unpurchasable.SELL_PRICEis the price players receive for selling the item. Set to-1to make an item unsellable.
-
custom_items.yml:- This file stores the serialized data of any custom items you register using the
/customitem addcommand. You typically won't need to edit this file manually.
- This file stores the serialized data of any custom items you register using the
-
auction.yml:- This file stores all active auction data. It's automatically generated and managed by the plugin.
-
wishlist.yml:- This file stores player wishlist data. It's automatically generated and managed by the plugin.
Advanced Configuration Options
Additional configuration options are available within the shop.yml file:
dynamic-pricing.enabled: Enables dynamic pricing that fluctuates based on item demand.dynamic-pricing.multiplier: Maximum percentage adjustment for dynamic pricing (default: 0.05 for 5%).dynamic-pricing.base-demand: Base demand threshold for 0% price change (default: 100).category-permissions.enabled: Enables permission-based category access restrictions.discounts.enabled: Enables discount system for specific player groups.discounts.vip: Discount percentage for VIP players (default: 0.10 for 10%).discounts.member: Discount percentage for member players (default: 0.05 for 5%).bank-interest.enabled: Enables or disables the bank interest system.bank-interest.percentage: Percentage interest rate applied to bank accounts (default: 0.01 for 1%).bank-interest.interval-hours: Time interval between interest applications (default: 24 hours).
All Versions
+ Add Version- Added player-owned shop system allowing players to create and manage their own shops
- Added kit system with starter kits, daily kits, and VIP kits
- Added fuzzy search for shop items with partial name matching
- Added bulk buy and sell with shift-click support in GUIs
- Added subcategory support for shop organization
- Added holographic leaderboards for top balances, buyers, and sellers
- Added PlaceholderAPI integration for shop statistics placeholders
### Bug Fixes
- Fixed dynamic pricing multiplier not respecting minimum bounds on price adjustments
- Fixed auction ID generation collision risk under high server load
- Fixed missing enforcement of maximum auctions per player limit
- Fixed potential concurrent modification when selling all inventory items
- Fixed daily rewards saving to config on every player join causing performance issues
- Fixed missing default discount values in configuration
- Fixed leaderboard commands throwing errors when no transaction data exists
- Fixed buy GUI discount calculation applying to total instead of unit price
- Fixed bank interest applying to offline players incorrectly
- Fixed expired auction returns accumulating indefinitely for offline players
- Fixed adjusted prices not validating against negative values
- Fixed auction duration inconsistency between config and constants
- Fixed custom item loading not handling missing config sections properly
- Fixed Vault economy bank support incomplete implementation
- Fixed daily reward timestamps causing config bloat over time
- Fixed A Bug That Was Preventing The Shop From Working
#### /auctionhouse claim
- Claim expired or unsold auction returns on demand
- Works alongside automatic returns on join
#### /auctionhouse sell <price> <amount> [stacks]
- List multiple stacks in one command
- Creates one auction per stack at the same price
### New Features
#### Category Browse Filters
- Filter a category by material type
- Filter a category by price range using min/max values
### Bug Fixes
#### Auction System
- Expired auctions now return items to sellers (online or via claim)
- Fixed item loss when inventory was full during auction returns
- Reduced the chance of duplicate auction IDs
#### Shop & GUI
- Category layouts now respect configured GUI slots
- Selling discounts now apply to actual payouts
- Search and sell GUIs ignore clicks from the player inventory
- Dynamic pricing now updates buy/sell prices correctly
#### Economy
- Prevented negative bank deposits and withdrawals
- Custom items now reload correctly with shop data
### Permissions Added
- No new permissions added in this release
### Configuration Defaults
| Setting | Default Value |
|---------|---------------|
| Starting Balance | $100.00 |
| Daily Reward (Base) | $50.00 |
| Daily Reward (VIP) | $100.00 |
| Daily Reward (Premium) | $150.00 |
| Min Sell Price | $0.01 |
| Max Buy Price | $1,000,000.00 |
| Auction Min Price | $1.00 |
| Auction Max Price | $10,000,000.00 |
| Transaction History Max | 100 entries |
| History Page Size | 10 entries |
| Auction Duration | 48 hours |
| Bank Interest Rate | 1% |
| Bank Interest Interval | 24 hours |
- Fixed a bug that was causing purchasing to fail
#### /shop history [page]
- View your personal transaction history
- Shows all purchases and sales with timestamps
- Displays item name, quantity, price, and transaction type
- Paginated view with configurable page size
- Shows total amount spent and total amount earned
- Color-coded transactions (red for purchases, green for sales)
#### /shop top [balance|buy|sell]
- View server leaderboards
- Three leaderboard types available:
balance- Top 10 richest players (default)buy- Top 10 players by total purchasessell- Top 10 players by total sales- Displays player names with their stats
- Ranked from 1-10
#### /ah cancel [all|<auction_id>]
- Cancel your active auction listings
- Use
/ah cancel allto cancel all your auctions at once - Use
/ah cancel <id>to cancel a specific auction by its ID - Returns items directly to your inventory
- Shows confirmation message with number of cancelled auctions
### New Configuration Options
#### Price Limits System
- Prevent economy exploits with price boundaries
- Configurable minimum sell price
- Configurable maximum buy price
- Separate limits for auction house listings
- Can be enabled/disabled via config
- Protects against price manipulation
#### New Player Starting Balance
- Give new players money when they first join
- Configurable starting amount (default: $100)
- Customizable welcome message with color codes
- Supports placeholders: %player%, %balance%
- Automatic account creation on first join
#### Daily Login Rewards
- Reward players for logging in each day
- Configurable base reward amount
- Permission-based bonus amounts:
- VIP players get higher rewards
- Premium players get the highest rewards
- 24-hour cooldown between rewards
- Automatic reward distribution on join
#### config.yml
- Complete configuration file with all options
- Fully documented with explanations
- Organized sections with headers
- Command and permission reference included
- Default values for all settings
### Bug Fixes
#### Auction System
- Fixed auction items not being returned when cancelled
- Fixed seller not receiving money for offline sales
- Fixed expired auctions still being purchasable
- Fixed auction ID not displaying in GUI
#### Economy System
- Fixed balance not updating immediately after transactions
- Fixed bank interest not applying correctly after restart
- Fixed negative balance exploit prevention
#### GUI System
- Fixed page navigation in search results
- Fixed category permission checks not working
- Fixed discount display formatting
- Fixed sell GUI not refreshing after sale
#### Configuration
- Fixed config not creating default values
- Fixed reload command not reloading all managers
- Fixed custom items not persisting after reload
### Permissions Added
#### Daily Rewards
economyshop999.dailyreward.vip- Receive VIP daily reward amounteconomyshop999.dailyreward.premium- Receive premium daily reward amount
#### Transaction History
economyshop999.shop.history- View personal transaction historyeconomyshop999.shop.top- View server leaderboards
#### Auction Management
economyshop999.auction.cancel- Cancel own auctions
#### Tax Exemption
economyshop999.tax.exempt- Exempt from transaction taxes
#### Cooldown Bypass
economyshop999.cooldown.bypass- Bypass transaction cooldowns
### Configuration Defaults
| Setting | Default Value |
|---------|---------------|
| Starting Balance | $100.00 |
| Daily Reward (Base) | $50.00 |
| Daily Reward (VIP) | $100.00 |
| Daily Reward (Premium) | $150.00 |
| Min Sell Price | $0.01 |
| Max Buy Price | $1,000,000.00 |
| Auction Min Price | $1.00 |
| Auction Max Price | $10,000,000.00 |
| Transaction History Max | 100 entries |
| History Page Size | 10 entries |
| Auction Duration | 48 hours |
| Bank Interest Rate | 1% |
| Bank Interest Interval | 24 hours |
- Updated The Description** -Updated the description to be more descriptive and state more features including all the new ones
- Built-in Economy System:** EconomyShop999 now includes its own comprehensive economy system. It manages player balances directly and integrates seamlessly with Vault, allowing other plugins to utilize EconomyShop999's economy without requiring a separate economy plugin.
- Persistent Player Balances:** Player balances are now automatically saved and loaded, ensuring that all money is retained across server restarts.
### Fixed
- Plugin Startup Crash:** Resolved an issue that caused the plugin to crash during server startup, ensuring stable operation from the moment it's enabled.
- Enhanced Vault Compatibility:** The plugin's integration with Vault has been fully refined, addressing previous compatibility issues and ensuring smooth interaction with other Vault-dependent plugins.