Shop Plugin

A flexible shop system for Minecraft servers

5,90k

Shop Plugin

ShopPlugin

A flexible shop system for Minecraft servers with advanced features like NBT support, potions, and automatic restock system.

Modrinth Downloads

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

ADS