Теория и практика квестостроения
|
|
|
Geonezis
Воскресенье, 01.07.2012, 00:06 | Сообщение # 1
Статус: |
|
Опытный: |
|
Сообщений: |
1689 |
Награды: |
8 |
Регистрация: |
14.12.2011 |
|
Учебное пособие. Курс квестостроения на двикже X-Ray 1.6. (S.T.A.L.K.E.R. Зов Припяти). Автор Geonezis. Версия издания 1.0. Здравствуйте. Представляю в помощь начинающим (и не только) квестерам первое издание своего учебного пособия.
Данный учебник будет представлять собой обощенный теоретический курс по принципам квестостроения на основе платформы S.T.A.L.K.E.R. Зов Припяти. Этот курс позволит модмейкерам познакомиться с различными принципами (приемами) построения и написание квестов для своих модификаций. Будут освещены различные методы создания как типовых, так и не стандартных заданий, с подробным описанием и раскрытием тех или иных аспектов. Теоретическая часть данного курса разбита на 10 глав, точнее 10 уроков, в каждом из которых будет подробнейшим образом рассмотрен один конкретный квест, со строго сформулированной задачей. Уроки построены по возрастающему принципу от простых к более сложным.
В первой версии издания освещены такие особенности, как построение сложных разветвленных диалогов, элементарые приемы комбинаторной логики, линейные поэтапные квесты, дополнительные дочерние подзадания внутри основного. Также затронуты аспекты работы с логикой рестрикторов, добавление и особенности использования квестовых предметов различных классов. Реализация заданий без использования диалогов.
Полное содержание первого издания:
- Урок 1. Создание квеста на одновременный поиск двух различных предметов.
- Урок 2. Создание квеста на поиск двух различных предметов, с выдачей ачивмента. Особенности- альтернативный способ его написания, работа обновления задания через инфопоршни, добавление по завершении простого достижения (ачивмента).
- Урок 3. Реализация квеста на одновременный поиск заданного количества различных предметов, определенных в рандомной таблице. Определение новой условной функции в xr_conditions.script
- Урок 4. Построение квеста на одновременный поиск заданного количества заранее опеределенных различных предметов. Реализация сложной структуры диалога. Наличие временных условий.
- Урок 5. Построение многоэтапного линейного квеста на последовательный поиск предметов класса device_pda .
- Урок 6. Реализация квеста на выполнение определенного действия через логику рестриктора, работа с game_tutorials. Добавление своих функций в xr_effects.script. Последовательность в выполнении на несколько этапов.
- Урок 7.Создание квеста с добавлением дополнительных внутри этапных заданий. Особенности - отсутствие диалогов, использование рестрикторов, добавление квестовых предметов отдельного класса, работа с game_tutorials.
- Урок 8. Создание квеста с добавлением дополнительных внутриэтапных заданий. Особенности- отсутствие диалогов, использование физических объектов класса physic_destroyable_object в качестве квестовых предметов.
- Урок 9. Создание квеста с добавлением дополнительных внутри этапных заданий. Особенности - отсутствие диалогов, добавление тайников отдельного класса в качестве квестовых предметов.
- Урок 10. Реализация квеста с использованием объекта класса inventory_box со сложной логикой. Особенности - отсутствие диалогов, использование рестрикторов, выдача тайника в качестве награды.
Для каждого урока (кроме 6-ого, добавлю в следующем издании) отдельно реализован наглядный пример с готовым заданием для его проверки и демонстрации работы в игре. Некоторые схожие моменты в части уроков подробно не раскрываются, ввиду их аналогичного иполнения в более ранних примерах. Надеюсь и уверен, что написанное мною пособие даст Вам первоначально необходимые знания для того чтобы продолжить и самостоятельно более углублено изучить одно из основных направлений модинга и стать профессиональным квестером.
Помните, что квестостроние это сочетание как практических знаний и умение, так и творческий подход в его исполнении. Успехов на этом поприще.
ССЫЛКА НА СКАЧИВАНИЕ ПЕРВОЙ ВЕРСИИ УЧЕБНИКА: http://narod.ru/disk....ar.html
С удовольствием выслушаю пожелания, предложения, замечания и только конструктивную критику (особенно со стороны профессиональных скриптеров, знающих те аспекты в которых простые квестеры не сильны) для исправления возможных ошибок в последующих версиях издания. Отдельно выражаю благодарность модмейкерам GeJorge, ХОВАН и denis2000.
С уважением Geonezis.
Сообщение отредактировал GEONEZIS - Четверг, 05.07.2012, 16:14
|
|
Воскресенье, 01.07.2012, 00:06
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.12.2011 |
|
|
|
|
|
Einwill
Воскресенье, 01.07.2012, 00:39 | Сообщение # 2
S.T.A.L.K.E.R.
Статус: |
|
Неопытный: |
|
Сообщений: |
447 |
Награды: |
1 |
Регистрация: |
19.06.2012 |
|
Сейчас скачаю, отпишусь позже.Добавлено (01.07.2012, 00:39) --------------------------------------------- Ого, и вправду познавательно. Некоторое не знал, а точнее не умел. Завтра дочитаю, огромное спасибо GEONEZIS!
|
|
Воскресенье, 01.07.2012, 00:39
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
19.06.2012 |
|
|
|
|
|
RETRIX
Воскресенье, 01.07.2012, 00:43 | Сообщение # 3
AP-Production
Статус: |
|
Ветеран: |
|
Сообщений: |
9439 |
Награды: |
12 |
Регистрация: |
24.08.2011 |
|
GEONEZIS, спасибо за полезную информацию. Поможет
|
|
Воскресенье, 01.07.2012, 00:43
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
24.08.2011 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
93 |
Награды: |
1 |
Регистрация: |
24.04.2012 |
|
GEONEZIS, большое спасибо вам за уроки, мне всё понятно; написано адекватно и без лишней "воды". Спасибо большое!
|
|
Воскресенье, 01.07.2012, 08:28
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
24.04.2012 |
|
|
|
|
|
FaLcon
Воскресенье, 01.07.2012, 09:15 | Сообщение # 5
Проект Смерти Вопреки
Статус: |
|
Опытный: |
|
Сообщений: |
2022 |
Награды: |
8 |
Регистрация: |
17.07.2011 |
|
GEONEZIS,
|
|
Воскресенье, 01.07.2012, 09:15
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
17.07.2011 |
|
|
|
|
Воскресенье, 01.07.2012, 09:46
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
01.06.2011 |
|
|
|
|
|
Гереро
Воскресенье, 01.07.2012, 11:29 | Сообщение # 7
Technologies Progress
Сообщений: |
1874 |
Регистрация: |
26.07.2011 |
|
О! Теперь и не только на sigerius.ru. Ну молодец, жду еще уроков.
|
|
Воскресенье, 01.07.2012, 11:29
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
26.07.2011 |
|
|
|
|
|
Michman
Воскресенье, 01.07.2012, 15:40 | Сообщение # 8
Статус: |
|
Новичок: |
|
Сообщений: |
303 |
Награды: |
2 |
Регистрация: |
16.06.2011 |
|
Спасибо! Очень полезно)
|
|
Воскресенье, 01.07.2012, 15:40
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
16.06.2011 |
|
|
|
|
|
Faren
Воскресенье, 01.07.2012, 20:49 | Сообщение # 9
Статус: |
|
Зевака: |
|
Сообщений: |
10 |
Награды: |
0 |
Регистрация: |
30.06.2012 |
|
Привет! Я совсем недавно увлекся созданием модов, и поэтому пока ничего в этом не смыслю. Я скачал ваше пособие. В принципе оно мне понравилось, действительно, мало воды. Но у меня возник вопрос, касательно одного момента в 1-ом уроке. По какому принципу выставляется приоритет задания?
|
|
Воскресенье, 01.07.2012, 20:49
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
30.06.2012 |
|
|
|
|
|
Статус: |
|
Отмычка: |
|
Сообщений: |
93 |
Награды: |
1 |
Регистрация: |
24.04.2012 |
|
Faren, насколько мне известно, параметр prior ни на что не влияет. Я ставлю для сюжетных 200 для второстепенных - 100 Такая же штука незадействована как <bio> а чарактерах
|
|
Воскресенье, 01.07.2012, 21:11
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
24.04.2012 |
|
|
|
|
|
Faren
Понедельник, 02.07.2012, 04:32 | Сообщение # 11
Статус: |
|
Зевака: |
|
Сообщений: |
10 |
Награды: |
0 |
Регистрация: |
30.06.2012 |
|
А за чем тогда нужен этот параметр? Для того, чтобы отметить сюжетное это задание или нет? Но для этого вроде мы и так там где-то пишем в storyline = true/ false
И еще у меня возник вопрос по поводу прописывания кода на получение квеста, опять же в 1-ом уроке:
<phrase id="0"> <text>zat_b30_owl_stalker_trader_small_quests_0</text> <next>1</next> </phrase> <phrase id="1"> <text>zat_b30_owl_stalker_trader_small_quests_1</text> <next>2</next> <next>3</next> </phrase> <phrase id="2"> <text>zat_b30_owl_stalker_trader_small_quests_2</text> <give_info>zat_b30_owl_stalker_trader_quest_no_quest</give_info> </phrase> <phrase id="3"> <text>zat_b30_owl_stalker_trader_small_quests_3</text> <action>dialogs_zaton.zat_b30_owl_stalker_trader_give_quest</action> <next>4</next> </phrase> <phrase id="4">
Вопрос такой: Почему мы после, например, <next>4</next> пишем </phrase> <phrase id="4"> (как и в <next>1</next>), а после <next>2</next> мы сразу пишем <next>3</next> и фразы для них прописываем уже после?
Сообщение отредактировал Faren - Понедельник, 02.07.2012, 05:17
|
|
Понедельник, 02.07.2012, 04:32
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
30.06.2012 |
|
|
|
|
|
Geonezis
Понедельник, 02.07.2012, 09:18 | Сообщение # 12
Статус: |
|
Опытный: |
|
Сообщений: |
1689 |
Награды: |
8 |
Регистрация: |
14.12.2011 |
|
Quote (Faren) А за чем тогда нужен этот параметр? Параметр prior необходим для ранжирования порядка отображения квеста в соответствующем окне ПДА. То есть, для примера, если выдаются два задания один с приоритетом 2, а второй с приоритетом 1, то выше в списке заданий будет отображаться тот квест у кого выставлен более высокий приоритет.
Faren, по поводу второго твоего вопроса. Крайне желательно тебе изначально изучить уроки по написанию диалогов с базы знаний stalker inside ссылка. Это даст тебе изначальные представления о структуре их построения в игре. Иначе в дальнейшем у тебя будет накапливаться еще больше вопросов, потому как я вижу у тебя есть пробел в первоначальных знаниях модинга.
По факту твоего вопроса отвечу: Таков принцип построения для дальнейшей генерации фраз. В простейшем случае фраза будет последовательно генерироваться одна за другой. То есть последовательно переходить в соответствии с указателем на id номер. (как ты спрашивал на 4 номер) В другом случае наша фраза будет иметь возможность разветвления. То есть или будет доступна фраза 2 или 3. Поэтому первоначально изучи самые простые основы.
Сообщение отредактировал GEONEZIS - Понедельник, 02.07.2012, 09:45
|
|
Понедельник, 02.07.2012, 09:18
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.12.2011 |
|
|
|
|
|
Faren
Понедельник, 02.07.2012, 12:48 | Сообщение # 13
Статус: |
|
Зевака: |
|
Сообщений: |
10 |
Награды: |
0 |
Регистрация: |
30.06.2012 |
|
Спасибо) А приоритетов может быть несколько, не только 1 и 2?
Сообщение отредактировал Faren - Понедельник, 02.07.2012, 13:12
|
|
Понедельник, 02.07.2012, 12:48
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
30.06.2012 |
|
|
|
|
|
bek-kul-1
Понедельник, 02.07.2012, 13:21 | Сообщение # 14
|
Понедельник, 02.07.2012, 13:21
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
03.01.2012 |
|
|
|
|
|
Geonezis
Понедельник, 02.07.2012, 13:27 | Сообщение # 15
Статус: |
|
Опытный: |
|
Сообщений: |
1689 |
Награды: |
8 |
Регистрация: |
14.12.2011 |
|
Faren, числа 1 и 2 взяты мной для примера. Могут быть и другие. Посмотрите как именно ранжируются квесты в оригинальном Зове Припяти. (например в файле tm_zaton.ltx) Но как заметил SibireaStalker параметр prior не является ключевым. Поэтому я не вижу смысла заострять на нем внимания. Для сюжетный заданий с параметром storyline = true желательно задавать более высокий приоритет, чтобы он отображался в ПДА как можно выше в списке. Для не сюжетных заданий его можно задать и меньше. Можно вообще один и тот же, тогда они будет ранжироваться в ПДА только в зависимости от того когда задание было получено.
|
|
Понедельник, 02.07.2012, 13:27
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
14.12.2011 |
|
|
|
|