Skip to content

Посібник користувача QuestSystemDemo

🇬🇧 English | 🇺🇦 Українська

Це повний довідковий посібник із плагіна QuestSystemDemo — подієво-орієнтованої, дата-керованої системи квестів для Unreal Engine 5.8 з повноцінною підтримкою мультиплеєра та інтеграцією без налаштування. Дизайнери створюють квести як Data Assets; геймплей-код повідомляє про кілька подій; решту робить плагін, включно з мережевою реплікацією.

Швидкий старт

  1. Скопіюйте Plugins/QuestSystemDemo у папку Plugins/ свого проєкту.
  2. Увімкніть його: Edit > Plugins > QuestSystemDemo.
  3. Усе — код поки не потрібен. UDemoQuestWorldSubsystem автоматично додає менеджер квестів кожному гравцю та ігровому стану.

Створіть свій перший квест:

  1. У Content Browser: Add > Miscellaneous > Data Asset, оберіть Quest Objective Data. Задайте ObjectiveType, TargetCount та ObjectiveIdentifier (наприклад, KillTarget / 3 / "Bandit").
  2. Додайте ще один Data Asset, цього разу Quest Data. Дайте йому QuestName і додайте вашу ціль до Objectives.
  3. Додайте Quest Giver Component на будь-який Actor на рівні та вкиньте свій квест у AvailableQuests.
  4. Додайте Quest Interactor Component на пешку гравця та прив'яжіть введення до TryInteract.
  5. Натисніть Play, підійдіть до актора, взаємодійте — квест почнеться. Повідомляйте про прогрес зі свого геймплей-коду:
// напр., у коді обробки шкоди, коли ворог гине:
UDemoQuestBlueprintLibrary::NotifyKillEvent(PlayerState, "Bandit");

Ціль оновиться, квест завершиться, і спрацює GiveQuestRewards() — перевизначте його (у Blueprint чи C++), щоб видавати власні нагороди. Решта цього посібника детально розкриває все вище, плюс мультиплеєр, збереження/завантаження, повний Blueprint API та точки розширення на C++.

Кому що читати

  • Дизайнерам, авторам контенту квестів: 01, 03, 05.
  • Геймплей-програмістам, що підключають події та нагороди: 02, 04, 10.
  • Програмістам мультиплеєра: 06 після 01.
  • UI-програмістам: 08.
  • Тулінгу / QA: 09.

Поспішаєте або щось поводиться дивно? Починайте з 11 — Поширені запитання.

Розділи

# Розділ Що всередині
00 Обмеження демоверсії Що демо обмежує, чого не обмежує і що змінюється при переході на повну версію
01 Основні поняття Квести, цілі, стани, режими розподілу прогресу, модель «один компонент — два місця»
02 Інтеграція без налаштування UDemoQuestWorldSubsystem, UDemoQuestSystemSettings, отримання менеджера квестів
03 Авторинг квестів Повний довідник полів UDemoQuestData / UDemoQuestObjectiveData
04 Подієвий прогрес NotifyQuestEvent, правила зіставлення, послідовні цілі, спільний залік убивств
05 Компоненти сцени Giver, Receiver, нащадки маркера, Interactor, Quest Target, Location Trigger, готові актори
06 Мультиплеєр Реплікація, party-квести, одиночна гра + мультиплеєр на одній карті
07 Серіалізація ExportState / ImportState, вбудовування у свій save game
08 Довідник Blueprint-бібліотеки Повний довідник функцій UDemoQuestBlueprintLibrary
09 Валідація та чити Виявлення циклічних залежностей, консольні команди
10 Інтеграція на C++ Кастомні нагороди, розширення компонентів, надсилання подій із геймплей-коду
11 Поширені запитання Короткі відповіді на часті запитання та чеклист «чому не працює?»

Домовленості цього посібника

  • UDemoQuestData — це ассет квесту; UDemoQuestObjectiveData — ассет цілі. Обидва — UPrimaryDataAsset, створюються в Content Browser.
  • Сніпети коду — на C++, якщо не вказано інше; кожна показана функція викликається і з Blueprint.
  • «Менеджер» означає UDemoQuestManagerComponent — де він живе і що робить, див. 01.