MrUltimateShop v1.0.0

Ultimate shop plugin for Minecraft servers - tested on version 1.21.6!

About the Plugin

MrUltimateShop is a comprehensive shop plugin that provides advanced trading features for Minecraft servers with extensive customization options.

Features

  • Dynamic Shop Loading System
  • Custom Items API Support
  • Sell GUI with Inventory Management
  • Buy/Sell Menu System
  • Player-Owned Chest Shops
  • Team Management System
  • Holographic Price Displays
  • World-Specific Shop Settings
  • Comprehensive Logging System
  • Feature Toggle System
  • Vault Economy Integration
  • Tab Completion Support
  • Multi-Language Support
  • Extensive Permission System
  • API for Plugin Developers
  • Configurable Shop Categories
  • Sound Effects & Visual Feedback
Shop Menu Preview
Sell GUI Preview

Commands

Player Commands

/shop - Open the main shop menu

/mus shop - Open the main shop menu (alternative)

/mus help - Show help information

Admin Commands

/mus reload - Reload configuration and message files

/mus list - List all available shops

Sell Commands

/sell hand - Sell item in hand

/sell all - Sell all sellable items in inventory

/sell gui - Open sell GUI interface

Chest Shop Commands

/cshop create - Create a new chest shop

/cshop give [player] - Give shop creation item

/cshop team invite <player> [role] - Invite player to shop team

/cshop team remove <player> - Remove player from shop team

/cshop team list - List all team members

/cshop team global-invite <player> [role] - Add player to ALL shops

/cshop team global-remove <player> - Remove player from ALL shops

Shop Categories

Available Shop Categories

  • Blocks - Building blocks and construction materials
  • Decorations - Decorative items and furniture
  • Colored Blocks - Wool, concrete, terracotta and more
  • Tools & Weapons - Equipment and combat gear
  • Spawners - Mob spawners and related items
  • Ores - Raw materials and precious metals
  • Miscellaneous - Various useful items
  • Custom Items - Support for custom items from other plugins

πŸͺ Chest Shop System

Overview

MrUltimateShop features a comprehensive Player-Owned Chest Shop System that allows players to create and manage their own shops with advanced features including team collaboration, holographic displays, and integrated economy management.

Key Features

  • Player-Owned Shops – Create personal shops on any allowed block type
  • Team Management System – Invite team members with role-based permissions
  • Holographic Price Displays – Real-time price and stock information
  • Custom Inventory System – Enhanced storage with vanilla hopper compatibility
  • Tax System – Configurable transaction fees for server economy
  • Comprehensive GUI Management – Easy-to-use interfaces for all operations
  • Session-Based Trading – Secure transaction handling
  • Permission-Based Limits – Configurable shop limits per player

Shop Creation

Players can create chest shops in multiple ways:

  • Command Creation: /cshop create while looking at an allowed block
  • Item Placement: Place special shop items on allowed blocks
  • Allowed Blocks: CHEST, BARREL, SHULKER_BOX (configurable)

Team Management Features

Global Team System:

  • Add members to ALL your shops at once
  • Automatic inheritance for new shops
  • Consistent access control across your shop network

Shop-Specific Teams:

  • Add members to individual shops
  • Fine-grained access control
  • Perfect for specialized or temporary access

Team Roles:

  • Owner – Full control over shop settings and team management
  • Editor – Access to shop inventory and basic operations
  • Supplementer – Limited access for inventory management only

Advanced Features

  • Distance Validation – Shops must be 2+ blocks apart (configurable)
  • Smart Item Returns – Get shop item back when destroying item-created shops
  • Realistic Item Display – Items display as floating entities with animations
  • Persistent Holograms – Glass blocks and items remain visible until destruction
  • Hopper Integration – Automatic item transfer with vanilla mechanics
  • Comprehensive Logging – Track all shop activities and transactions

API System

Developer API Features

  • Item Price Methods - Get buy/sell prices for any ItemStack
  • Item Availability - Check if items can be bought or sold
  • Player Inventory - Calculate total sell value of inventory
  • Custom Item Registry - Register custom items from other plugins
  • Shop Integration - Programmatically interact with shop system
  • Event Handling - Listen to buy/sell events

API Examples

Getting Item Prices
// Get sell price for an item
ItemStack item = new ItemStack(Material.DIAMOND, 1);
double sellPrice = MrUltimateShopAPI.getItemStackPriceSell(item);

// Get buy price for an item
double buyPrice = MrUltimateShopAPI.getItemStackPriceBuy(item);

// Check if item can be sold/bought
boolean canSell = MrUltimateShopAPI.canSellItem(item);
boolean canBuy = MrUltimateShopAPI.canBuyItem(item);
Custom Item Registration
// Register a single custom item
ItemStack customItem = new ItemStack(Material.DIAMOND_SWORD);
ItemMeta meta = customItem.getItemMeta();
meta.setDisplayName("Β§6Legendary Sword");
customItem.setItemMeta(meta);

MrUltimateShopAPI.registerItem("MyPlugin", "legendary_sword", customItem);

// Use in shop config as: Material: "MyPlugin:legendary_sword"
Custom Item Provider Implementation
public class MyCustomItemProvider implements CustomItemProvider {
    
    @Override
    public String getPluginName() {
        return "MyPlugin";
    }
    
    @Override
    public ItemStack getCustomItem(String itemName) {
        switch (itemName) {
            case "magic_wand":
                ItemStack wand = new ItemStack(Material.STICK);
                ItemMeta meta = wand.getItemMeta();
                meta.setDisplayName("Β§dMagic Wand");
                wand.setItemMeta(meta);
                return wand;
            default:
                return null;
        }
    }
    
    @Override
    public boolean hasCustomItem(String itemName) {
        return "magic_wand".equals(itemName);
    }
    
    @Override
    public String[] getAvailableItems() {
        return new String[]{"magic_wand"};
    }
}

// Register the provider
MrUltimateShopAPI.registerItemProvider(new MyCustomItemProvider());
Maven Dependency
<repository>
    <id>mrneznamy-releases</id>
    <url>https://depency.mrneznamy.eu/repository/maven-releases/</url>
</repository>

<dependency>
    <groupId>eu.mrneznamy</groupId>
    <artifactId>MrUltimateShop</artifactId>
    <version>1.0.0</version>
    <scope>provided</scope>
</dependency>

Permissions

Player Permissions

mrultimateshop.use - Basic permission to use MrUltimateShop

mrultimateshop.shop - Permission to use shop

Chest Shop Permissions

mrultimateshop.cshop - Access to chest shop system

mrultimateshop.cshop.create - Create chest shops

mrultimateshop.cshop.team - Manage shop teams

mrultimateshop.limit.NUMBER - Set shop limit per player

Admin Permissions

mrultimateshop.reload - Permission to reload configuration

mrultimateshop.cshop.give - Give shop items to players

mrultimateshop.admin - Full admin access to MrUltimateShop

mrultimateshop.* - Gives access to all commands

Economy Integration

Vault Economy Support

MrUltimateShop integrates seamlessly with Vault economy systems:

  • Automatic currency detection and formatting
  • Configurable currency symbols and number formats
  • Support for all major economy plugins
  • Transaction logging and history
  • Balance checking and validation

Economy Integration

  • Vault API - Universal economy support
  • Any Vault-compatible economy plugin - Automatic detection
  • Configurable currency symbols - Custom formatting
  • Transaction validation - Balance checking

Current Item Providers

  • MrSellChests - Boosts, Sell Chests

Configuration

Key Configuration Features

  • Dynamic shop loading system
  • World-specific shop settings
  • Configurable logging system
  • Feature toggle controls
  • Multi-language support via messages.yml
  • Vault economy integration settings
  • Sound effects and GUI customization
  • Custom item API configuration
  • Automatic configuration validation