Shop Plugin
A flexible shop system for Minecraft servers
Shop Plugin
ShopPlugin
A flexible shop system for Minecraft servers with advanced features like NBT support, potions, and automatic restock system.
Save 20% on your next order with my code: moritxius-a-6421
<a href="https://zap-hosting.com/moritxius?voucher=moritxius-a-6421"><img src="https://zap-hosting.com/interface/download/images.php?type=affiliate&id=451886" alt="ZAP-Hosting Gameserver and Webhosting"></a>
Features
- 🏪 Tab Completion - Create unlimited shops with individual names - 🎨 Tab Completion - Shops can have beautiful, colored display names - ⚡ Tab Completion - Items with custom names and enchantments - 🧪 Tab Completion - Easy creation of potion trades with all effects - 🔄 Tab Completion - Trades become available again after configurable time - 🔐 Tab Completion - Control over shop access and management - 💾 Tab Completion - All shops are automatically saved - 📋 Tab Completion - Full auto-completion for all commands
Installation
1. Download the `shopplugin-*.jar` file 2. Place it in your `plugins/` folder 3. Restart the server 4. The plugin automatically creates the `plugins/ShopPlugin/shops/` folder
Commands
Basic Commands (for all players)
``` /shop <shopname> - Opens a shop /shop list - Shows all available shops /shop info - Plugin information ```
Admin Commands (requires `shopplugin.admin` permission)
``` /shop create <shopname> [display_name] - Creates a new shop /shop addtrade <shop> <input> <amount> <output> <amount> [max_uses] - Adds a trade /shop addpotion <shop> <input> <amount> <potion_type> [max_uses] - Adds a potion trade /shop addtradeadvanced <shop> <input> <amount> <output> <amount> [max_uses] [input_name] [output_name] [input_enchants] [output_enchants] [input_potion] [output_potion] - Advanced trade creation /shop removetrade <shopname> <trade_index> - Removes a trade /shop rename <shopname> <new_display_name> - Changes the display name /shop trades <shopname> - Shows all trades in a shop /shop remove <shopname> - Deletes a shop /shop potions - Shows all available potion types /shop restock <shopname> [hours] - Sets restock interval ```
Permissions
```yaml shopplugin.admin: true # Full access to all shop management functions shopplugin.use.*: true # Access to all shops shopplugin.use.<shopname>: true # Access to specific shop ```
Examples
Create a simple shop
``` /shop create general "§6General Shop" ```
Add basic trade
``` /shop addtrade general DIAMOND 1 DIAMOND_SWORD 1 10 ```
Add potion trade
``` /shop addpotion general EMERALD 2 HEALING 5 /shop addpotion general GOLD_INGOT 1 HEALING:UPGRADED 3 /shop addpotion general DIAMOND 1 REGENERATION:EXTENDED 1 ```
Add advanced trade with NBT
``` /shop addtradeadvanced general DIAMOND 1 DIAMOND_SWORD 1 10 "&bMagical Diamond" "&cFire Sword" "" "FIRE_ASPECT:2,SHARPNESS:5" ```
Set restock interval
``` /shop restock general 12 # Every 12 hours /shop restock vip 6 # Every 6 hours ```
Potion Types
Available Base Potions:
- `HEALING` - Instant Health - `HARMING` - Instant Damage - `REGENERATION` - Regeneration - `POISON` - Poison - `STRENGTH` - Strength - `WEAKNESS` - Weakness - `SPEED` - Speed - `SLOWNESS` - Slowness - `JUMP` - Jump Boost - `FIRE_RESISTANCE` - Fire Resistance - `WATER_BREATHING` - Water Breathing - `INVISIBILITY` - Invisibility - `NIGHT_VISION` - Night Vision
Modifiers:
- `:EXTENDED` - Longer duration - `:UPGRADED` - Stronger effect (Level II)
Examples:
- `HEALING:UPGRADED` - Healing II - `SPEED:EXTENDED` - Speed with longer duration - `REGENERATION:UPGRADED` - Regeneration II
Enchantments
Enchantments are specified in the format `ENCHANTMENT:LEVEL`, multiple separated by comma:
``` "SHARPNESS:5,FIRE_ASPECT:2,UNBREAKING:3" ```
Common Enchantments:
- `SHARPNESS` - Sharpness - `FIRE_ASPECT` - Fire Aspect - `UNBREAKING` - Unbreaking - `EFFICIENCY` - Efficiency - `FORTUNE` - Fortune - `SILK_TOUCH` - Silk Touch - `PROTECTION` - Protection - `THORNS` - Thorns
Restock System
The plugin features an automatic restock system:
- Persistent: 24 hours - Persistent: Individually adjustable per shop - Persistent: Trades are checked and restocked when opening the shop - Persistent: Restock times are saved and survive server restarts
How it works:
1. When a trade reaches its maximum uses, it's marked as "sold out" 2. After the configured restock time expires, the trade becomes available again 3. The check occurs every time a player opens the shop
Configuration
Shops are automatically saved in `plugins/ShopPlugin/shops/` as YAML files. Each shop has its own file with the following format:
```yaml display-name: "§6My Shop" restock-hours: 24 trades: - input-material: DIAMOND input-amount: 1 output-material: DIAMOND_SWORD output-amount: 1 max-uses: 10 output-display-name: "&cFire Sword" output-enchantments: "FIRE_ASPECT:2,SHARPNESS:5" restock-times: 0: 1640995200000 ```
Troubleshooting
Shop won't open
- Check the permission `shopplugin.use.<shopname>` or `shopplugin.use.*` - Make sure the shop exists with `/shop list`
Trades don't work
- Check material names (must be exact) - Use `/shop trades <shopname>` to see all trades
Potions have no effects
- Make sure you use `POTION`, `SPLASH_POTION` or `LINGERING_POTION` as material - Check the potion type with `/shop potions`
Support
For problems or questions: 1. Check server logs for error messages 2. Make sure all permissions are set correctly 3. Use `/shop info` to get plugin information