• GPT AI

    Откройте бесплатно AI технологии GPT-4 mini, Gemini, и FusionBrain для эффективной работы и взаимодействия с клиентами.

    Перейти в бота
    MinePluginCheck

    Наши алгоритмы проверяют плагины Minecraft на наличие хаков. Защитите свой сервер с помощью нашего Telegram-бота уже сегодня!

    Перейти в бота

Plugin Shop EcoShop [v1.30.6]

EcoShop
Short Description:
Самый продвинутый из когда-либо созданных плагинов для серверных магазинов
303
3,718
  • Like
Reactions:168 users

Latest updates

v1.30.6

- Исправлено damage_twice (спасибо OfTeN!).

1.30.5

- add_enchant, remove_enchant и has_enchant теперь поддерживают зачарования из датапаков

v1.30.4

- has_skill_level теперь поддерживает AuraSkills
Read more...
Supports version
  1. 1.17.✘
  2. 1.18.✘
  3. 1.19.✘
  4. 1.20.✘
  5. 1.21.✘
Official page
https://www.spigotmc.org/resources/106529/
Documentation
https://plugins.auxilor.io/ecoshop/
Source code
https://github.com/Auxilor/EcoShop
1702120358869

Для работы плагина необходим ECO

Описание плагина EcoShop:​

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

Особенности плагина EcoShop:​

EcoShop создает мощные серверные магазины с интуитивным графическим интерфейсом. Создавайте столько магазинов, сколько вам нужно, и как только они открыты, вы просто выбираете категорию, выбираете предмет и количество, никогда не прибегая к громоздким командам. Покупайте и продавайте предметы, несколько стеков, а затем настраивайте каждый аспект меню по своему вкусу.

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

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

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

EcoShop обладает лучшей поддержкой пользовательских предметов среди всех плагинов магазинов, когда-либо созданных. Поддерживаются все плагины в вашем арсенале, включая EcoItems, Oraxen, ItemsAdder, Denizen, EcoArmor, MMOItems, Executable Items и многие другие. И, что еще важнее, вы можете указывать зачарования, имена и любой другой метатег. И, конечно же, вы можете продавать команды, разрешения и все, что вам нужно.

Команды и права плагина EcoShop:​

/ecoshop reload - Перезагрузить плагин
Разрешение: ecoshop.command.reload

/ecoshop resetbuys - Сбрасывает количество раз, которое игрок купил предмет
Разрешение: ecoshop.command.resetbuys

Общее использование: /ecoshop resetbuys <игрок> <ид>

/sell - Открывает графический интерфейс продажи
Разрешение: ecoshop.command.sell

/sell hand/all/handall - Продает предметы напрямую
Разрешения: ecoshop.command.sell.hand, ecoshop.command.sell.all, ecoshop.command.sell.handall

Другие команды и разрешения
У каждого магазина есть своя команда, которую вы указываете в конфиге, и у них есть разрешение ecoshop.open.<id>, например, /shop будет иметь разрешение ecoshop.open.shop.

Если вы хотите, чтобы покупка/продажа предмета требовала разрешения, то узлами разрешения будут ecoshop.buy.<id> и ecoshop.sell.<id>. По умолчанию это разрешение есть у всех игроков.

Как сделать магазин в EcoShop:​

Конфиг по умолчанию в EcoShop​

Конфиги по умолчанию можно найти здесь: GitHub

Как добавлять магазины EcoShop​

EcoShop позволяет вам создавать столько магазинов, сколько вы хотите, и вы создаете каждый из них, создавая новый .yml файл в директории /shops/. Просто добавляйте и удаляйте конфигурации, как вы хотите добавлять и удалять магазины.

Пример конфигурации магазина в EcoShop​

EcoShop поставляется с примером конфигурации магазина, который все объясняет
_example.yml:
# ID магазина - это имя файла .yml,
# например, donator.yml имеет ID donator
# Магазины можно размещать в любом месте в этой папке,
# включая подпапки, если вы хотите организовать конфигурации магазинов
# _example.yml не загружается.

title: Демо-Магазин # Заголовок GUI.
command: demoshop # Команда для открытия магазина.

forwards-arrow: # Стрелка для переключения между страницами. Если на последней странице, она не будет отображаться.
  item: arrow name:"&fСледующая страница"
  row: 6
  column: 6

backwards-arrow: # Стрелка для переключения между страницами. Если на первой странице, она не будет отображаться.
  item: arrow name:"&fПредыдущая страница"
  row: 6
  column: 4

buy-broadcasts: # Опции для оповещений о покупках
  enabled: true # Если покупки в этом магазине должны транслироваться на сервер, полезно для /buy меню.
  message: "&b&lМагазин Кристаллов&r &8»&r %player%&r&f купил &r%item%&r&fиз магазина &bМагазин Кристаллов ❖&f!" # Используйте %player%, %item%, и %amount%
  sound: # Звук оповещения, удалите этот раздел, если вы не хотите звука.
    sound: ui_toast_challenge_complete
    pitch: 1.5
    volume: 2

click-sound: # Звук, воспроизводимый при нажатии на значок в этом магазине, удалите этот раздел, если вы не хотите звука.
  sound: block_stone_button_click_on # Звук https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Sound.html
  pitch: 1 # Высота тона (0.5 - 2)
  volume: 1

buy-sound: # Звук, воспроизводимый при покупке чего-то в этом магазине, удалите этот раздел, если вы не хотите звука.
  sound: entity_player_levelup
  pitch: 2
  volume: 1

sell-sound: # Звук, воспроизводимый при продаже чего-то в этом магазине, удалите этот раздел, если вы не хотите звука.
  sound: block_amethyst_block_place
  pitch: 1.5
  volume: 1

# Магазины могут работать двумя способами.

# Вы можете либо сделать магазин, содержащий список категорий, либо сделать магазин одной
# категорией, на которую вы мгновенно переходите (для магазинов с одной страницей, например, магазин яйца спауна босса)

# Если вы хотите магазин с одной страницей, используйте direct-category для связи его прямо с категорией
# direct-category: example_category

# Если вы хотите обычный магазин, содержащий несколько категорий, используйте эти опции здесь
rows: 3
pages: # Все страницы в GUI предпросмотра. Вы можете добавить столько страниц, сколько хотите.
  - page: 1
    mask: # Заполнительные предметы для украшения
      items: # Добавьте столько предметов, сколько хотите
        - gray_stained_glass_pane # Предмет 1
        - black_stained_glass_pane # Предмет 2
      pattern:
        - "222222222"
        - "211111112"
        - "211000112"
        - "211000112"
        - "211111112"
        - "222222222"
    categories: # Где разместить категории в GUI
      - id: example # ID категории
        row: 3 # Ряд
        column: 3 # Колонка
      - id: example_2
        row: 4
        column: 6

    # Пользовательские слоты GUI; см. здесь, как это сделать: https://plugins.auxilor.io/all-plugins/custom-gui-slots
    custom-slots: [ ]

Как создать категорию EcoShop:​

Что такое категория в EcoShop?​

Категории - это способ организации магазинов. Предметы продаются/покупаются в категориях, это собственно и есть "магазин". В примере конфига вы видели, как магазины могут быть либо порталом к куче категорий, либо, наоборот, просто прямой ссылкой на категорию.

Конфиг по умолчанию в EcoShop​

Конфиги по умолчанию можно найти здесь: GitHub

Как добавлять категории в EcoShop​

Это работает так же, как добавление или удаление магазинов. Просто создайте или удалите .yml-файлы в директории /categories/, а затем ссылайтесь на них в магазине, в котором вы хотите их разместить.

Одна категория может быть в стольких магазинах, сколько вы захотите! EcoShop умный, он знает, в каком магазине вы открыли категорию, поэтому любые звуки / трансляции из магазина, из которого вы пришли, будут работать, даже если 2 магазина имеют одну и ту же категорию.

Пример настройки категории в EcoShop​

EcoShop поставляется с примером конфигурации категории, который все объясняет
_example.yml:
# ID категории - это имя файла .yml,
# например, trails.yml имеет ID trails
# Категории можно размещать в любом месте в этой папке,
# включая подпапки, если вы хотите организовать конфигурации категорий
# _example.yml не загружается.

item: diamond_sword name:"&fПример Категории" # Предмет, отображаемый в магазине.
lore: [ ] # Лор предмета, отображаемого в магазине.
# permission: ecoshop.category.permission1 # (Необязательно) Разрешение, необходимое для доступа/использования категории.

# Опции для GUI категории.
gui:
  rows: 6 # Количество строк (1-6).
  title: "Демо Категория" # Заголовок GUI.

  # Опции навигации, скрыты, если на первой/последней странице.
  forwards-arrow:
    item: arrow name:"&fСледующая страница"
    row: 6
    column: 6
  backwards-arrow:
    item: arrow name:"&fПредыдущая страница"
    row: 6
    column: 4

  # Добавьте столько страниц, сколько хотите, добавив их в этот список
  pages:
    - page: 1
      mask:
        items: # Материал фона
          - gray_stained_glass_pane
          - black_stained_glass_pane
        pattern: # 0 для пустоты, 1 для первого элемента, 2 для второго элемента и так далее
          - "222222222"
          - "211111112"
          - "211111112"
          - "211111112"
          - "211111112"
          - "222222222"

      # Пользовательские слоты GUI; см. здесь, как это сделать: https://plugins.auxilor.io/all-plugins/custom-gui-slots
      custom-slots: [ ]

    - page: 2
      mask:
        items:
          - gray_stained_glass_pane
          - black_stained_glass_pane
        pattern:
          - "222222222"
          - "211111112"
          - "211111112"
          - "211111112"
          - "211111112"
          - "222222222"


items:
  - id: enchanted_diamond # ID предмета, не отображается игрокам.

    # Предмет для покупки/продажи. Должен иметь количество один, поэтому 'stone 16' не будет разрешено.
    # https://plugins.auxilor.io/all-plugins/the-item-lookup-system
    item: ecoitems:enchanted_diamond

    # (Необязательно) Пользовательское отображаемое имя, по умолчанию наследуется от предмета GUI.
    name: "&b&k!!&r <gradient:#2193b0>Зачарованный Алмаз</gradient:#6dd5ed>&r &b&k!!"

    # Опции для покупки предмета, см. здесь:
    # https://plugins.auxilor.io/all-plugins/prices
    buy:
      value: 500 - (%player_rank% * 25)
      type: coins
      display: "$%value%"

      amount: 8 # (Необязательно) Количество быстрой покупки / покупки по умолчанию. По умолчанию 1, если не указано.
      max-at-once: 16 # (Необязательно) Максимальное количество, которое можно купить одновременно. По умолчанию бесконечность, если не указано.

      buy-message: # (Необязательно) Введите сообщения для отправки игроку при покупке этого конкретного предмета. Все равно будет отправлено 'bought-item/bought-multiple' из lang.yml
        - "&6Спасибо за покупку этого конкретного предмета"

    # Опции для продажи предмета, см. здесь:
    # https://plugins.auxilor.io/all-plugins/prices
    sell:
      value: 100 + (%player_rank% * 25)
      type: coins
      display: "$%value%"

      require: "%player_rank% > 1" # (Необязательно) Это выражение должно быть истинным, чтобы можно было продать этот предмет.

      # Условия, которые должны быть выполнены для продажи этого предмета.
      # См. здесь: https://plugins.auxilor.io/effects/configuring-a-condition
      conditions: [ ]

      sell-command: # (Необязательно) Введите команды, которые должны выполняться при продаже игроком предметов. Вы можете использовать заполнители %player% и %amount%
        - "give %player% stone %amount%"
      sell-message: # (Необязательно) Введите сообщения для отправки игроку при продаже этого конкретного предмета. Все равно будет отправлено 'sold-item/sold-multiple' из lang.yml
        - "&6Спасибо за продажу этого конкретного предмета"
    gui:
      column: 4 # Как далеко слева направо (1-9).
      row: 3 # Как далеко вверх или вниз (1-6).
      page: 1 # Страница.

  - id: iron_rank

    commands: # Команды для выполнения. Вы можете использовать заполнители %player% и %amount%.
      - lp user %player% parent set iron

    buy:
      value: "%ecomc_iron_price%"
      type: crystals
      display: "&b%value% Кристаллы ❖"

      require: "%ecomc_iron_price% >= 0" # (Необязательно) Это выражение должно быть истинным, чтобы можно было купить предмет.

      limit: 1 # (Необязательно) Максимальное количество раз, которое каждый игрок может купить этот предмет, по умолчанию бесконечность.

    gui:
      display: # Этот предмет отображается в GUI. Если вы продаете предмет, это по умолчанию предмет сам по себе.
        item: diamond_chestplate
        lore:
          - "&fКупите &7&lЖЕЛЕЗО&r&f ранг, чтобы получить"
          - "&fследующие преимущества:"
          - " &8»&f &eПримерный Перк"
      column: 5 # Колонка.
      row: 3 # Ряд.
      page: 2 # Страница.

  - id: do_something_cool

    # Эффекты при покупке игроком предмета.
    # См. здесь: https://plugins.auxilor.io/effects/configuring-an-effect
    effects: []

    buy:
      value: 65
      type: crystals
      display: "&b%value% Кристаллы ❖"

      # Условия, которые должны быть выполнены для покупки этого предмета.
      # См. здесь: https://plugins.auxilor.io/effects/configuring-a-condition
      conditions: [ ]

    gui:
      display:
        item: nether_star
        lore:
          - "&fКупите меня, чтобы сделать что-то классное!"
      column: 6 # Колонка.
      row: 3 # Ряд.
      page: 2 # Страница.

  - id: valkyrie_egg

    item: ecobosses:valkyrie_spawn_egg

    buy:
      value: 76850
      type: coins
      display: "&a$%value%"

      max-at-once: 1 # Если вы хотите пропустить выбор количества в GUI, установите max-at-once на 1, чтобы щелчок мгновенно купил.

    # Вместо того чтобы предмет был доступен для покупки и продажи, вы можете иметь
    # два варианта покупки (Покупка - это щелчок левой кнопкой мыши, Альт-Покупка - щелчок правой кнопкой мыши).
    # limit / max-at-once и т. д. наследуются от вариантов покупки.
    alt-buy:
      value: 65
      type: crystals
      display: "&b%value% Кристаллы ❖"

      # Условия, которые должны быть выполнены для покупки этого предмета.
      # См. здесь: https://plugins.auxilor.io/effects/configuring-a-condition
      conditions: [ ]

    gui:
      display:
        lore: # Вы можете наследовать предмет и просто добавить свой собственный дополнительный лор для отображения дополнительной информации.
          - ""
          - "&fПримерный Лор"
          - ""
        bottom-lore: # Вы также можете добавить лор, который будет размещен под другим лором (например, цена, информация о быстрой покупке/продаже и т. д.)
          - ""
          - "&e&oЛевый клик, чтобы купить за деньги,"
          - "&e&oПравый клик, чтобы купить за &bКристаллы ❖&e&o!"
      column: 7 # Как далеко слева направо (1-9).
      row: 3 # Как далеко вверх или вниз (1-6).
      page: 1 # Страница.

      show-quick-buy-sell: false # (Необязательно) отключить текст быстрой покупки / продажи.

Как сделать предмет в EcoShop:​

Что такое предметы в EcoShop?​

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

Как сделать один?​

Простой предмет купли-продажи
Начнем с самого простого предмета - если вы создаете стандартный магазин купли-продажи, то большинство ваших предметов будут выглядеть именно так:
YAML:
id: cooked_mutton
item: cooked_mutton

buy:
  type: coins
  value: 20
  display: $%value%
  amount: 32

sell:
  type: coins
  value: 10
  display: $%value%

gui:
  column: 4
  row: 1
  page: 1

Давайте разберем каждый раздел:​

id: Это внутренний идентификатор предмета. Игроки его не видят, но важно использовать уникальный ID для каждого предмета во всех ваших магазинах.

item (предмет): Это собственно предмет, который мы продаем. Он поддерживает пользовательские предметы, зачарования, пользовательские названия, суммы, рефоржи и так далее - подробнее читайте здесь.

buy (купить): Если вы хотите, чтобы ваш предмет можно было купить, здесь вы указываете цену покупки. Подробнее о ценах читайте здесь, их важно понимать при создании предметов.

buy.amount: Это необязательная функция, в которой вы указываете количество предметов по умолчанию для быстрой покупки, а также количество предметов по умолчанию при открытии меню выбора количества покупки. Вы по-прежнему указываете значение только одного предмета - это просто для того, чтобы задать количество покупок по умолчанию.

sell (продать): Работает так же, как и покупка, только теперь это цена продажи.

gui: Это настройки того, как предмет будет отображаться в категории. Строка - сверху вниз, столбец - слева направо, а страницы не требуют пояснений.

Командные предметы в EcoShop​

Иногда вы хотите выполнить команду, когда игрок покупает предмет, вместо того чтобы дать ему реальный предмет (или одновременно с ним). Сейчас на серверах очень распространено использование нескольких валют и перемещение таких вещей, как ранги, во внутриигровые магазины, так что давайте посмотрим, как это можно сделать с помощью EcoShop.

Конечно, вы не можете продать команду, так что они предназначены только для покупки.
YAML:
id: iron_rank

command: # Я изменил commands: на command: потому что это не работает с "s"
  - lp user %player% parent set iron

buy:
  value: "%ecomc_iron_price%"
  type: crystals
  display: "&b%value% Кристаллы ❖"

  require: "%actions_iron_buy_is_met%"

  limit: 1

alt-buy:
  value: "%ecomc_iron_crystal_price%"
  type: crystals
  display: "&b%value% Кристаллы ❖"

  conditions: [ ]

gui:
  display:
    item: diamond_chestplate
    lore:
      - "&fКупите &7&lЖЕЛЕЗО&r&f ранг, чтобы получить"
      - "&fследующие преимущества:"
      - " &8»&f &eПримерный Перк"
    bottom-lore:
      - "&e&oЛевый клик, чтобы купить за деньги,"
      - "&e&oПравый клик, чтобы купить за &bКристаллы ❖&e&o!"
  column: 5 # Колонка.
  row: 3 # Ряд.
  page: 2 # Страница.

  show-quick-buy-sell: false

commands: Это команды, которые будут выполнены, когда игрок покупает предмет. Вы можете использовать заполнители %player% и %amount%.

buy.value: Вы можете использовать заполнители в значениях! Разрешено любое заполнение PlaceholderAPI. И это еще лучше - вы можете также выполнять математические операции. Например, %player_y% * 100 - cos(%player_x%) тоже будет полностью допустимым. Это, конечно, довольно странная цена, но это возможно.

buy.require: Это математическое выражение, которое должно быть выполнено, чтобы разрешить покупку этого предмета. Например, вы можете использовать %player_xp% >= 300.

buy.conditions: Условия, которые должны быть выполнены для покупки этого предмета. Прочтите здесь для получения дополнительной информации!

buy.limit: Максимальное количество раз, которое игрок может купить этот предмет.

alt-buy: Это второй вариант покупки, который можно использовать, щелкнув правой кнопкой мыши по предмету. Допустим, у вас есть двойная валютная система, вы можете сделать, чтобы щелчок левой кнопкой стоил деньги, а щелчок правой кнопкой стоил кристаллы, или вы можете сделать, чтобы щелчок левой кнопкой стоил золотые слитки, а щелчок правой кнопкой - изумруды.

gui.display: Это предмет, который отображается игрокам в магазине. У команд нет автоматического отображения предмета, поэтому его нужно указать. Вы также можете указать пользовательский отображаемый предмет, если продаете предметы, но это не обязательно. Вы также можете необязательно указать лор и нижний лор, где нижний лор отображается под вещами, такими как цена покупки, быстрые опции покупки и т.д.

gui.show-quick-buy-sell: По умолчанию быстрый лор для покупки / продажи отображается на предметах. Если вы не хотите этого для этого предмета, вы можете отключить это здесь.

Предметы с эффектами в EcoShop​

Вместо того чтобы использовать только команды, EcoShop также имеет полный доступ к системе эффектов, так что вы можете запускать эффекты, когда игрок покупает предмет, или даже просто поместить сами эффекты в магазин.

Как и команды, они не продаются.
YAML:
id: my_effect_item

effects: [ ]

buy:
  value: 65
  type: crystals
  display: "&b%value% Кристаллы ❖"

gui:
  display:
    item: nether_star
    lore:
      - "&fКупите меня, чтобы сделать что-то крутое!"
  column: 6 # Колонка.
  row: 3 # Ряд.
  page: 2 # Страница.

  show-quick-buy-sell: false
effects: Это эффекты, которые запускаются, когда игрок покупает предмет. Читайте здесь, чтобы узнать больше!

Дополнительные опции​

Есть несколько дополнительных опций, которые не показаны в примерах выше. Если вы хотите изучить все возможные варианты, они показаны в категории примеров

Установка плагина EcoShop:​

Для работы плагина необходим ECO
  1. Скачайте плагин.
  2. Выключите сервер
  3. Переместите файл .jar в папку /plugins/ вашего сервера.
  4. Запустите сервер.
  5. Готово.

Author

bobobo

More resources from bobobo

BorderPlus
BorderPlus
Позволяет вашим игрокам самим расширять границы мира с помощью валюты или предметов.
Lands - Land claim plugin
Lands - Land claim plugin
Многофункциональный GUI, налоги, настройки, флаги, простота использования, титулы, награды, и т.д.
Chest Protect
Chest Protect
Защита сундуков, дверей, печей, всех блоков, графический интерфейс, флаги, экономика, фулл настройка
AdvancedMobs
AdvancedMobs
Добавьте 20+ новых мобов в свой мир ⭐ Без ресурспака ⭐ Случайные спавны ⭐ Стак мобов и спавнеров
LPX
LPX
Защищает ваш сервер от эксплойтов краш-пакетов
Markets
Markets
Маркеты - это совершенно новый взгляд на традиционные магазины, принадлежащие игрокам
Mythic Dungeons DEV BUILD's
Mythic Dungeons DEV BUILD's
Предварительные сборки плагина MythicDungeons
Crucible or MythicCrucible DEV BUILDS
Crucible or MythicCrucible DEV BUILDS
Девверсия плагина MythicCrucible (или Crucible)
Model Engine Premium 4.x
Model Engine Premium 4.x
Создание и управление модоподобными моделями сущностей без каких-либо модов.
AdvancedEnchantments
AdvancedEnchantments
200+ кастомных чар - таблица чар и поддержка наковальни - 20+ предметов
QUARRY - Карьер для сервера Майнкрафт
QUARRY - Карьер для сервера Майнкрафт
- Руда, древесина, рыба, растения, мобы, шерсть, булыжник | GUI, бустеры, топливо, магазины, звуки!
Spartan Anti-Cheat
Spartan Anti-Cheat
Античит с машинным обучением для Minecraft.
TopBottom