Посібник

Як створити плагін квестів для Minecraft

Оновлено 18 жовтня 2026 р.

Квести дають гравцям привід грати: убити 20 зомбі, видобути 64 залізної руди, принести селянину 10 хлібин. Плагін квестів складається з трьох частин: цілі, що слухають ігрові події, прогрес, збережений для кожного гравця, і нагороди. Якщо описувати квести у файлі конфігурації, нові можна додавати, не торкаючись коду.

Замініть квести й нагороди на свої.

Згенерувати це в Codexe

Крок за кроком

  1. 1.Виберіть типи цілей

    Почніть із кількох: убити певний тип мобів, зламати або поставити блоки, зібрати предмети, скрафтити, дістатися місця, поговорити з NPC. Кожен квест складається з них.

  2. 2.Опишіть квести у файлі

    Кожен квест у quests.yml: ідентифікатор, назва, опис, цілі з кількостями, нагороди й вимоги (спершу інший квест, дозвіл, рівень).

  3. 3.Відстежуйте прогрес кожного гравця

    Слухайте події, що стоять за кожною ціллю, і додавайте до прогресу гравця. Зберігайте його в SQLite або у файлі, щоб він переживав виходи з гри й перезапуски.

  4. 4.Показуйте прогрес

    Меню /quests з активними й завершеними квестами, а також повідомлення, титр або панель боса, коли прогрес змінюється.

  5. 5.Видавайте нагороди

    Предмети, досвід, гроші через Vault або консольні команди, як-от lp user %player% permission set ..., для всього іншого.

  6. 6.Зберіть плагін і пройдіть квест у грі

    Дайте Codexe скомпілювати плагін, зайдіть на тестовий сервер, візьміть квест і завершіть його. Потім перезапустіть сервер і перевірте, що прогрес і нагороди збереглися.

Цілі та події, що за ними стоять

ЦільПодіяЩо треба вирішити
Убити мобівEntityDeathEventРахувати лише вбивства самим гравцем чи також його вихованцями й стрілами
Зламати блокиBlockBreakEventІгнорувати блоки, поставлені гравцем, інакше гравці ставитимуть і ламатимуть той самий блок
Зібрати предметиПеревірка інвентарю або подія підбиранняЧи забираються предмети, коли квест здають
Скрафтити предметиCraftItemEventКрафт шифт-кліком створює кілька предметів одразу
Дістатися місцяPlayerMoveEventПеревіряти лише тоді, коли гравець переходить на інший блок, а не при кожному русі
Поговорити з NPCPlayerInteractEntityEventЯка сутність видає квест

Хто видає квести

Найпростіший спосіб видавати квести - команда або меню. Для персонажа у світі без інших плагінів підійде селянин або стійка для броні з власним ім'ям і тегом PersistentDataContainer: плагін розпізнає його, коли гравець клікає по ньому правою кнопкою. Якщо ваш сервер уже використовує плагін NPC, як-от Citizens, назвіть його в запиті, щоб плагін під'єднався до нього.

Приклад опису

«Плагін квестів для Paper 1.21.4 під назвою Quests. Типи цілей: убити мобів, зламати блоки (не поставлені гравцями), зібрати предмети й поговорити із селянином, позначеним як той, хто видає квести. Квести описані в quests.yml з назвою, цілями, обов'язковим попереднім квестом і нагородами (предмети, досвід, гроші Vault, консольні команди). /quests відкриває меню з доступними, активними й завершеними квестами. Прогрес показується на панелі дій. До 3 активних квестів. Щоденні квести скидаються опівночі за часом сервера. Прогрес зберігається в SQLite.»

Щоденні й повторювані квести

  • Вкажіть, коли вони скидаються: щодня в певний час або через 24 години після того, як гравець їх завершив.
  • Вкажіть, чи щоденні квести випадкові для кожного гравця, чи однакові для всіх.
  • Зберігайте час останнього виконання, а не прапорець, щоб скидання працювало й тоді, коли сервер вимкнено.

Запитання

Чи можуть квести використовувати PlaceholderAPI?

Так. Попросіть плейсхолдери, наприклад для активного квесту та його прогресу, щоб їх могли показувати табло й списки гравців. Назвіть PlaceholderAPI в запиті, щоб його додали як залежність.

Чи можна писати квести на Skript?

Невеликі системи квестів уміщуються в скрипт Skript зі змінними. Багато типів цілей, меню й збережений прогрес для сотень гравців простіше тримати швидкими й упорядкованими в плагіні.

Як перевірити, що квести працюють?

Пройдіть їх на тестовому сервері Codexe і додайте тести своїми словами, наприклад «звичайний гравець виконує /quests і бачить, як відкривається меню». Тести перевіряють повідомлення, предмети й меню, а не мобів чи блоки у світі.

Створіть свій плагін квестів

Цей запит відкривається готовим до надсилання:

“Плагін квестів для Paper 1.21.4: типи цілей - убити мобів, зламати блоки, не поставлені гравцями, зібрати предмети й поговорити з позначеним селянином; квести в quests.yml із цілями, обов'язковим попереднім квестом і нагородами (предмети, досвід, гроші Vault, консольні команди); меню /quests з доступними, активними й завершеними квестами; прогрес на панелі дій; максимум 3 активні квести; щоденні квести скидаються опівночі; прогрес зберігається в SQLite.”

Згенерувати це в Codexe
Як створити плагін квестів для Minecraft | Codexe