Custom Merchant NPC
Spawn and configure merchant NPCs entirely in-game — set items, prices, currency, and auto-restock with a command
Описание
Обычный торговец
Превратите любой 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
CustomMerchant-1.2.3.jar
CustomMerchant-1.2.2.jar
CustomMerchant-1.2.1.jar
CustomMerchant-1.2.0.jar
Информация
Авторы:
Категории:
Версии игры:
Создан: 20.01.2026