Этап 0. Введение
Глава 0. Первый квест
В этой главе не будет никаких терминов или сложного синтаксиса, мы просто научимся ставить, запускать и редактировать уже готовый шаблон Квеста
Шаг 1. Скачать квест
У вас откроется Google Drive. Нажмите там на иконку загрузки и скачайте файл

Шаг 2. Установка в игру
Перебросьте скачанный FirstQuest.xml в папку Quests (Документы –> Block Story –> Quests)
Если Android: /Andoid/data/com.mindblocks.blocks/files/Quests
Если доступ заблокирован (Android 13+), то читайте Гайд по разблокировке папки Android (нажмите на текст)


Шаг 3. Запустите игру и найдите Волшебника
Нажмите на Волшебника и выберите там «Мой Первый Квест»

Шаг 4. Проверяем Квест
Если заговорить с Волшебником в первый раз, то он скажет это:

Если заговорим во второй и последующие разы, то он будет говорить уже другой текст:

Шаг 5. Редактируем слова Волшебника
Пока что откроем FirstQuest.xml через Блокнот
Перед нами код:
<?xml version="1.0" encoding="UTF-8"?>
<quest npc="Wizard" title="Мой Первый Квест">
ㅤ<step id="#start">
ㅤㅤ<intro>Привет, Наездник Дракона!</intro>
ㅤㅤ<desc>Снова привет, Наездник Дракона!</desc>
ㅤㅤ<option to="#close" text="Хай!"/>
ㅤ</step>
ㅤ<step id="#end"/>
</quest>
Теперь попробуем поменять текст на свой. Я буду писать своё для примера, вы же можете писать туда что угодно:
- За текст, который игрок видит при первом общении с NPC отвечает
<intro>(его текст подсвечен Фиолетовым). Давайте заменим его, например, на: «Здарова, братанчик!» - За то, что отвечает NPC при повторном обращении отвечает
<desc>(его текст подсвечен Желтым). Здесь пусть будет: «О, а вот и снова ты!» - Чтобы поменять текст на самой кнопке, нужно заменить текст в кавычках у
<option>(текст на кнопке подсвечен Красным). Пускай это будет «Алоха»
У меня получилось это:
<?xml version="1.0" encoding="UTF-8"?>
<quest npc="Wizard" title="Мой Первый Квест">
ㅤ<step id="#start">
ㅤㅤ<intro>Здарова, братанчик!</intro>
ㅤㅤ<desc>О, а вот и снова ты!</desc>
ㅤㅤ<option to="#close" text="Алоха"/>
ㅤ</step>
ㅤ<step id="#end"/>
</quest>
Сохраняем квест (сочетание Ctrl+S, либо Файл –> Сохранить)
Шаг 6. Проверяем изменения
Перед проверкой обязательно перезайдите в мир, чтобы квесты перечитались и изменения применились
С Волшебником мы уже говорили, поэтому будет выводиться только: «О, а вот и снова ты!». Если хотите проверить приветственный первый текст, то создайте нового персонажа и зайдите за него
Я зашел за нового персонажа:


Теперь попробуйте сами поэкспериментровать, заменяя текст на свой. Попробуйте поставить длинный текст на кнопку или, например, посмотрите как выглядят разные символы в диалоговом окне
Если все сломалось
- Проверьте, что квест точно находиться в папке Quests (Документы –> Block Story –> Quests)
- Если вы меняли текст у кнопки, то проверьте, что вы не удалили кавычки (” “). Должно быть только так: text=”ВашТекст”
- Проверьте, что вы не задели угловые скобки (
<>)
Если ничего пункты 2 и 3 не помогли, то переустановите шаблон и снова попробуйте поменять его под себя
Заключение
Отлично! Вы научились ставить кастомные квесты, изменять под себя и тестировать их. В следующих главах разберем подробнее что вы конкретно изменили
Отличный гайд, но осталось несколько вопросов:
1) Куда делся раздел с кастомным магазином из прошлой версии руководства. В 13.5.0? Его больше нельзя кастомизировать?
2) У Фуза в 13.5.0 есть свой магазин, следовательно, они тоже стали квестовыми НПС и для них можно делать кастомные квесты. Или нельзя?
1) Кастомные магазины полностью убраны (даже для Алхимика, Фуза и Крестьян). Теперь игра не будет подгружать квесты, содержащие в коде тег <store>
В логах будет писать:
Skipped custom quest ‘ИмяКвеста’ from file [Путь до XML-файла квеста]: NPC stores are not allowed in custom quests
UnityEngine.DebugLogHandler:Internal_Log(LogType, LogOption, String, Object)
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:LogWarning(Object)
QuestManager:AddUserQuests(XmlSerializer, String)
d__77:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
2) Да, для Фуза можно теперь тоже делать квесты. Список Квестовых NPC только что обновил, просто изначально забыл добавить
Из нюансов: У них пока что нет своего портрета, поэтому будет видно просто имя