▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
GUIShop

GUIShop

GUIShop - мощный плагин для создания удобных GUI-магазинов на серверах Minecraft. Полная замена табличкам и сундукам с продвинутой настройкой цен, предметов и динамической экономикой.

Оцените первым
4.4K
8

GUIShop v9.4.3c

Лучший плагин магазина с графическим интерфейсом для серверов Minecraft

Полностью совместим с Paper/Spigot/Folia/Bukkit 1.13 - 1.21.11


Зачем нужен GUIShop?

Если вы когда-нибудь мучились с магазинами на табличках или сундуках - вы знаете, как это больно. Баги с дублированием предметов, путаница с ценами, невозможность нормально оформить ассортимент. GUIShop решает все эти проблемы раз и навсегда. Это полноценный магазин с красивым интерфейсом в виде инвентаря, где игроки просто кликают по предметам, а админы настраивают всё через удобное меню.

Плагин подходит для любых серверов - от классического выживания до мини-игр. Он работает с Vault и любой экономикой, а если у вас нет отдельного плагина на экономику - можно включить встроенную.


Ключевые возможности

  • Интуитивный GUI - игроки видят товары как в обычном сундуке, никаких команд
  • Многостраничные магазины - хоть 100 страниц с товарами
  • Динамическое ценообразование - цены меняются от спроса и предложения (опционально)
  • Отображение стоимости - прямо в описании предмета видно, за сколько его можно продать (требуется PacketEvents)
  • Редактор предметов через GUI - меняй цены, названия, зачарования прямо в игре
  • Перетаскивание предметов - просто двигай мышкой товары в магазине
  • Командные предметы - продавай команды (например, покупка ранга)
  • Поддержка кастомных предметов - зачарованные книги, зелья, фейерверки, спаунеры, головы игроков
  • Разрешения на каждый предмет - ограничь доступ к определённым товарам
  • PlaceholderAPI - используй плейсхолдеры в названиях и описаниях
  • Логирование транзакций - всегда знаешь кто что купил

Команды

Для игроков

/shop, /buy          - Открыть магазин
/sell                - Открыть меню продажи
/value, /val         - Узнать цену предмета в руке

Для администраторов

/gs reload           - Перезагрузить конфиги
/gs edit             - Режим редактирования главного меню
/gs edit menu        - То же самое
/gs edit transaction - Редактировать GUI транзакций
/gs edit [shop]      - Редактировать конкретный магазин
/gs edit [shop] [page] - Редактировать страницу магазина
/gs parsemob <type>  - Проверить тип моба для спаунера
/gs toggleworth      - Включить/выключить отображение стоимости (для себя)
/gs iteminfo         - Показать полную информацию о предмете в руке

Команды экономики (если включена внутренняя экономика)

Игроки:

/bal, /balance       - Баланс
/pay <игрок> <сумма>  - Перевести деньги
/togglepay           - Вкл/выкл уведомления о платежах

Админы:

/gs eco give/take/set/reset <игрок> <сумма>

Все суммы поддерживают сокращения: 1k, 1.5M, 100B.


Права доступа (Permissions)

guishop.use          - Доступ к магазину (по умолчанию: op)
guishop.shop.*       - Доступ ко всем товарам (по умолчанию: op)
guishop.shop.<shop>.<item> - Доступ к конкретному товару
guishop.reload       - Перезагрузка плагина (по умолчанию: op)
guishop.creator      - Режим редактирования (по умолчанию: op)
guishop.value        - Доступ к /value (по умолчанию: true)
guishop.sell         - Доступ к /sell (по умолчанию: true)
guishop.admin        - Полный доступ (по умолчанию: op)

Настройка конфигов

GUIShop использует несколько файлов:

  • config.yml - основные настройки
  • shops.yml - товары и их расположение
  • menu.yml - главное меню
  • messages.yml - все сообщения (можно изменить под себя)
  • worth.yml - настройка отображения стоимости предметов

Пример настройки одного товара:

shops:
  Blocks:
    pages:
      Page0:
        '0':
          type: SHOP              # Тип: SHOP, COMMAND, SHOP_SHORTCUT, DUMMY, BLANK
          id: STONE               # ID предмета
          buy-price: 10.0         # Цена покупки (false чтобы отключить)
          sell-price: 5.0         # Цена продажи (false чтобы отключить)
          shop-name: '&7Stone'    # Название в магазине
          buy-name: '&7Stone'     # Название при покупке
          shop-lore:
            - '&fОбычный строительный блок'
          enchantments: 'DURA:1 SHARP:2'
          quantity: 64            # Количество в стаке
          permission: 'shop.vip'  # Необязательное разрешение

Редактор предметов через GUI

Самая крутая фишка GUIShop - ты можешь настраивать всё прямо в игре без редактирования YAML.

  1. Войди в режим создания: /gs edit (для меню) или /gs edit <название_магазина>
  2. Левый клик - перетаскивай предметы между инвентарём и магазином
  3. Правый клик или Shift+клик по предмету - открывается редактор этого предмета
  4. Меняй цены через чат или выбирай из списков (зачарования, зелья и т.д.)
  5. Изменения сохраняются автоматически при закрытии инвентаря.

В редакторе можно настроить:

  • Цены покупки/продажи (с поддержкой сокращений 1k, 1.5M)
  • Тип предмета (SHOP/COMMAND/SHOP_SHORTCUT/DUMMY)
  • Отображаемое имя и имя при покупке
  • Описание (lore)
  • Зачарования через визуальный выбор
  • Зелья (тип, длительность, усилитель)
  • Фейерверки (форма взрыва, цвета)
  • Тип моба для спаунера (выбор из списка существ)
  • Команды при покупке
  • Разрешения на предмет
  • Количество в стаке.

Система отображения стоимости (Worth Display)

Показывает цену продажи прямо в описании предмета у игрока в инвентаре. Работает через пакеты - реальные предметы не меняются. Требование: плагин PacketEvents. Пример настройки worth.yml:

enabled: true
format: "&7Стоимость: &a%worth%"
position: BOTTOM
add-blank-line: true
only-show-sellable: true
not-sellable-format: "&7Стоимость: &cНе продаётся"
hide-armor-slots: true

Можно скрывать стоимость в определённых инвентарях или для предметов с определёнными названиями.


Продвинутые типы предметов

Командные предметы (Command Items)

Продают выполнение команд при покупке. Поддерживаются плейсхолдеры: {PLAYER_NAME}, {PLAYER_UUID}, {PLAYER_WORLD}, {PLAYER_BALANCE}. Пример:

type: COMMAND
id: NETHER_STAR
shop-name: '&6VIP Ранг'
buy-price: 10000
sudo: false          # false = от консоли, true = от имени игрока
commands:
  - 'lp user {PLAYER_NAME} parent set vip'
  - 'broadcast {PLAYER_NAME} купил VIP!'

Зачарованные книги

type: SHOP
id: ENCHANTED_BOOK
buy-price: 1000
enchantments: 'SHARP:5 FIRE_ASPECT:2'

Зелья (обычные, взрывные, туманные)

Настраиваются через секцию potion-info:

type: SHOP
id: POTION / SPLASH_POTION / LINGERING_POTION
potion-info:
  type: SPEED       # Эффект (SPEED, HEALING и т.д.)
  splash: false     # Взрывное?
  lingering: false  # Туманное?
  extended: true    # Увеличенная длительность?
  upgraded: false   # Усиленное?

Спаунеры мобов (любой тип)

type: SHOP
id: SPAWNER
mob-type: ZOMBIE    # Проверить через /gs parsemob <type>
buy-price: 50000
shop-name: '&6Спаунер зомби'

Фейерверки с настройкой формы и цветов.

Головы игроков по UUID или Base64 текстуре.


Статистика и PlaceholderAPI

GUIShop отслеживает статистику каждого игрока:

  • Всего потрачено денег / заработано.
  • Количество купленных/проданных предметов.
  • Топ-3 самых покупаемых/продаваемых предметов. Плейсхолдеры для использования в скорбордах и чате: %guishop_total_spent%, %guishop_total_earned%, %guishop_items_bought%, %guishop_top_bought_1% и другие.

Динамическое ценообразование (Dynamic Pricing)

Встроенная система спроса и предложения:

  • Когда игроки покупают товар - цена растёт.
  • Когда продают - цена падает.
  • Со временем цены возвращаются к базовым. Настраивается в dynamicpricing.yml:
dynamic-pricing: true   # Включить в config.yml тоже нужно.
price-change-per-item: 0.01    # Изменение на 1% за каждую единицу товара.
max-price-multiplier: 2.0      # Максимум 200% от базовой цены.
normilazation-rate: 0.001      # Скорость возврата к норме.
normilazation-interval: 300    # Интервал в секундах.

Можно задавать разные параметры для конкретных предметов и даже связывать цены связанных предметов (например, алмазный блок влияет на цену алмазов).

API для разработчиков (кратко)

GUIShop предоставляет Java API для интеграции:

// Проверить можно ли продать предмет?
boolean canSell = GUIShopAPI.canBeSold(itemStack);
// Получить цену покупки/продажи для стака.
getBuyPrice(itemStack, quantity); getSellPrice(...);
// Продать предметы программно.
sellItems(player, SellType.COMMAND, items);
etc.

Полная документация по API доступна на вики проекта.

Зависимости и установка

Обязательно: Vault (для экономики). Опционально: любой плагин экономики (EssentialsX и т.п.) ИЛИ можно включить встроенную экономику GUIShop; PacketEvents (для отображения стоимости); PlaceholderAPI. GUIShop полностью поддерживает Folia! Установка:

  1. Скачай плагин GUIShop.jar и помести в папку plugins.
  2. Установи Vault и плагин экономики (или включи внутреннюю экономику).
  3. При желании установи PacketEvents и PlaceholderAPI.
  4. Перезапусти сервер.
  5. Настрой магазины в plugins/GUIShop/shops.yml или через /gs edit. y6. Используй /gs reload для применения изменений. y--- yЕсли вы администрируете сервер Minecraft и хотите избавиться от громоздких табличек и багов с сундуками - скачайте плагин GUIShop. Это действительно удобный инструмент как для администраторов, так и для игроков.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

26.2.x26.1.x1.21.x1.20.x1.19.x1.18.x1.17.x1.16.x1.15.x1.14.x1.13.x

Платформы

Поддерживаемые окружения

Сервер

Ссылки

Детали

Лицензия:
Опубликован:8 месяцев назад
Обновлён:6 дней назад
Главная