Custom Merchant NPC

Custom Merchant NPC

Spawn and configure merchant NPCs entirely in-game — set items, prices, currency, and auto-restock with a command

794.0 загрузок
Обновлён 10 дней назад

Скриншоты

Описание

Обычный торговец

Превратите любой NPC в торговца с обычным магазином. Нет конфигурационных файлов, нет редактора активов — только /merchant, ссылка на существующий NPC, и вы настроены.

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


Как это работает

  • Спаун NPC с использованием творческих инструментов
  • Заморозить его с помощью инструмента Entity (рекомендуется)
  • Посмотрите на NPC и запустите /merchant
  • Нажмите «Связаться с NPC», чтобы подключить данные продавца к этому NPC.
  • Настройка контента магазина и анимации

Вы можете редактировать уже существующий торговый в творческом просто глядя на них и нажимая F

Игроки подходят к подключенному NPC, нажимают F, и магазин открывается.

Валютная система использует фактические предметы из вашего инвентаря (не горячий бар). Если вы устанавливаете Fire Essence в качестве валюты, а товар стоит 50, игрокам нужно 50 Fire Essence в своем инвентаре, чтобы купить его.


NPC анимация

После подключения вы можете выбрать анимацию для своего торгового NPC. Список анимации автоматически выявляется из модели NPC. Выберите «Sleep», «Idle», «Sit» или любую доступную анимацию — она сохраняется при перезапуске сервера.

<!> Обновление с 1.2.3 до 1.2.4 Предупреждение! <!>

  • Npc нерестится 2 раза, если вы разгрузите и загрузите кусок, удалите оба, это должно произойти только в первый раз, когда это сделано, тогда данные должны быть обновлены до 1.2.4 и не повторяться снова.

Автозавод

Вы можете установить таймер пополнения запасов (в минутах) при настройке продавца. Акции пополняются автоматически в режиме реального времени, поэтому, если вы устанавливаете 60 минут, магазин пополняет запасы каждый час, даже если никто не подключен к Интернету. Когда предметы не в наличии, игроки видят «Restocks in: Xh Xm» вместо кнопки покупки.

Если вам нужно немедленно все пополнить: /restockmerchant


Редактирование торговцев

Переключитесь в режим Creative и нажмите F на любом торговце, чтобы открыть экран редактирования. Оттуда вы можете:

  • Добавлять, редактировать или удалять элементы
  • Изменить интервал пополнения или заставить пополнить
  • Измените анимацию NPC
  • Удалить торговца полностью

командование

торговец - Открытие торгового застройщика (OP only)

/restockmerchant — Force restock all merchants (только OP)


Доступные валюты

Любой элемент можно использовать в качестве валюты — просто перетащите его в валютный слот при настройке элемента.

Дефолт — это огненная сущность


Хорошо знать

  • Данные сохраняются в JSON и сохраняются при перезапуске
  • Магазин UI показывает зеленые цены, когда вы можете себе что-то позволить, красные, когда вы не можете.
  • NPC идентифицируются UUID, поэтому они сохраняются даже после мировой перезагрузки.
  • Связанные NPC сохраняют свою первоначальную модель и внешний вид — меняется только взаимодействие.

Что дальше?

  • Перевод?
  • Совместимость «Ecotale»

Знать вопрос

  • Вы не можете поставить NPC Dialog & NPC Quests на NPC.
  • "Авария - CustomUI Командование не может установить ценность. Выберите: #InventoryGrid.Slots после обновления: переместите / удалите элемент из вашего инвентаря, чтобы «освежить» его, сделайте это пару раз, и он должен работать снова

Changelog:

1.1.4 Новая система связи

  • Полная переработка: связать продавцов с существующими NPC вместо того, чтобы создавать новые
  • Анимационный выбор с настойчивостью
  • Улучшенный UI
  • <!> Вы можете стереть своего торговца!

v1.2.3 - Полный пересмотр пользовательского интерфейса

v1.2.2 - Регулятор проверяет каждые 30 секунд и при необходимости возрождает NPC

v1.2.1 — Исправление проблемы NPC despawn


v1.2.4 - Dr1mS

Показать оригинальное описание (English)

CustomMerchant

Turn any NPC into a merchant with a custom shop. No config files, no Asset Editor — just /merchant, link to an existing NPC, and you're set.

I made this because I wanted a simple way to add shops to my server without editing JSON files every time I needed to change a price. Everything happens through a UI: link to any NPC, pick your items, set prices, choose your currency, and configure the animation.


How it works

  • Spawn an NPC using the Creative Tools
  • Freeze it with the Entity Tool (recommended)
  • Look at the NPC and run /merchant
  • Click "Link to NPC" to connect the merchant data to that NPC
  • Configure the shop content and animation

You can edit already existed merchant in creative just by looking them and pressing F

Players walk up to the linked NPC, press F, and the shop opens.

The currency system uses actual items from your inventory (not hotbar). If you set Fire Essence as currency and an item costs 50, players need 50 Fire Essences in their inventory to buy it.


NPC animations

Once linked, you can choose an animation for your merchant NPC. The animation list is automatically detected from the NPC's model. Select "Sleep", "Idle", "Sit", or any available animation — it persists through server restarts.

<!> Update from 1.2.3 to 1.2.4 warning ! <!>

  • Npc will spawn 2 time if you unload and load the chunk, delete both, this should happen only the first time it's done, then the data should be update to 1.2.4 and not happen again

Auto-restock

You can set a restock timer (in minutes) when configuring a merchant. Stock refills automatically based on real time, so if you set 60 minutes the shop restocks every hour even if nobody's online. When items are out of stock, players see "Restocks in: Xh Xm" instead of the buy button.

If you need to restock everything immediately: /restockmerchant


Editing merchants

Switch to Creative mode and press F on any merchant to open the edit screen. From there you can:

  • Add, edit, or remove items
  • Change the restock interval or force a restock
  • Change the NPC animation
  • Delete the merchant entirely

Commands

/merchant — Opens the merchant builder (OP only)

/restockmerchant — Force restock all merchants (OP only)


Available currencies

Any item can be used as currency — just drag it to the currency slot when configuring an item.

Default is Fire Essence


Good to know

  • Data saves to JSON and persists through restarts
  • Shop UI shows green prices when you can afford something, red when you can't
  • NPCs are identified by UUID, so they persist even after world reload
  • Linked NPCs keep their original model and appearance — only the interaction changes

What's next

  • Translation ?
  • "Ecotale" compatibility

Know issue

  • You can't put NPC Dialog & NPC Quests on a Custom Merchant NPC
  • "Crash - CustomUI Set command couldn't set value. Selector: #InventoryGrid.Slots" after update : move/delete item from your inventory to "refresh" it, do it a couple time and it should work again

Changelog:

v1.2.4 — New Link System

  • Complete rework: link merchants to existing NPCs instead of spawning new ones
  • Animation selection with persistence
  • Improved UI
  • <!>Can Wipe your merchant<!>

v1.2.3 — Complete UI overhaul

v1.2.2 — Scheduler checks every 30 seconds and respawns NPCs if necessary

v1.2.1 — Fix NPC despawn issue


v1.2.4 — Dr1mS

Последние версии

CustomMerchant-1.2.4.jar

Early Access 24.01.2026 351.3 КБ

CustomMerchant-1.2.3.jar

Early Access 22.01.2026 339.9 КБ

CustomMerchant-1.2.2.jar

Early Access 21.01.2026 338.3 КБ

CustomMerchant-1.2.1.jar

Early Access 21.01.2026 337.7 КБ

CustomMerchant-1.2.0.jar

Early Access 19.01.2026 334.1 КБ