• Добро пожаловать, Гость. Войдите или зарегистрируйтесь.

Автор Тема: Учебник по созданию квестов "Quest Tutorial"  (Прочитано 5773 раз)

Описание:

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Garin

  • *
  • Сообщений: 1564
  • Репутация: 5
  • Пол: Мужской
    • ICQ клиент - 244260055
    • Просмотр профиля
    • tiarum.com
С любезного разрешения Blackcat, являющегося автором перевода, публикую этот туториал на форуме.
Источник: http://cs.elderscrolls.com/constwiki/index.../Quest_Tutorial
Автор: Kkuhlmann
Перевод: Blackcat



Quest Tutorial

Поскольку мне не встречались никакие другие учебники на эту тему, я решил написать свой.
Все названия предметов, локаций, NPC и прочего в этом квесте могут быть заменены на любые другие.

Схема учебного квеста:
  •   Разговор с NPC.
  •   Дается два варианта ответа.
  •   Дается ключ.
  •   Ключ открывает дверь.
  •   Игрок оказывается в ячейке интерьера.

1) Меню Actors (Актеры) -> NPC. Щелкните правой кнопкой мыши на пустой белой области и выберите пункт New (Новый). Я назвал своего NPC “Даймос Веланд” (Diemos Veland).
Откройте ячейку BrumaExterior. Затем двойным щелчком откройте Exterior5. Вы окажетесь у главных ворот. Щелкните и перетащите вашего NPC туда и нажмите "F", чтобы он упал на землю. Переместите его в любое место.




2) Главное меню -> Character (Персонажи) -> Quests (Квесты).
Щелкните правой кнопкой слева, в пустом месте, и выберите New (Новый).
Здесь нужно заполнить:
  • Название квеста (Quest Name) - оно будет отображаться в журнале
  • Приоритет (Priority) - я установил его на 100 (так советуют в других учебниках). Более низкие значения не работают.
  • Quest Conditions (Условия квеста):
          GetIsID = NPC:DiemosVeland = 1 (если хотите начать свой собственный, несвязанный квест, используйте это условие)
          GetIsPlayableRace = None = 1



3) Вкладка Темы (Topics).

Перейдите на вкладку Темы (Topics), затем щелкните правой кнопкой в поле "Editor ID" и выберите "Добавить тему" (add topic). Прокрутите список вниз, пока не найдете тему "GREETING", добавьте ее.
Теперь щелкните правой кнопкой справа, в секции "Информация" (Info) и выберете "Новый ответ (New Response), в поле Текст ответа (Response Text) напишите что-нибудь вроде: "Приветствую, я слышал об вас." и нажмите ОК.
Реплики, который вы помещаете в "GREETING" будут сказаны NPC, когда игрок начинает с ним разговор.
Ниже, в поле "Состояния" (Conditions) щелкните "New" и измените параметры созданной функции на GetIsID NPC:DiemosVeland 1, также как делали раньше. Для удобства, щелкните правой кнопкой на этой функции и выберите Копировать состояние (Copy Condition), теперь когда понадобится это условие, вы сможете его просто вставить (Вставить состояние (Paste Condition)).
- Чтобы добавить второй экран текста, щелкните правой кнопкой под Текстом ответа (Response Text), в середине страницы "Topics" и выберете Новый (New). Так вы сможете уместить весь текст, который должен сказать NPC в одном ответе.
Теперь у нас есть NPC, который говорит "Приветствую, я слышал об вас", когда вы начинаете с ним диалог.
Но разговаривать с таким NPC, который имеет только одну приветственную реплику, неинтересно.

4) Щелкните правой кнопкой в поле Editor ID и выберите Новый (New). В следующем окне сделайте тоже самое. Назовите тему как хотите, я назвал ее "FAWho", FA это сокращение от названия квеста " Fallen Alliance". Советую делать приставку ко всем новым темам, желательно сокращение от названия квеста, чтобы потом можно было без труда найти их. Сделайте три темы:
    FAWho
    FAYes
    FANo

Создайте состояние: GetIsID NPC:DiemosVeland 1 в каждом новом топике.
Теперь, в приветствии, щелкните правой кнопкой в поле Добавить темы (Add Topics) и добавьте FAWho.
Это означает, что как только NPC произнесет свое приветствие, тема FAWho станет доступна в списке тем для разговора. Позже, тема FAWho также породит две темы: FAYes и FANo.
Теперь, отредактируем эти темы.
Выберите FAWho (или вашу, эквивалентную тему) и измените Текст темы (Topic Text) на "Кто вы?". Это будет названием темы, то, которое вы видите в списке тем при разговоре с NPC, в игре.
НЕ ИЗМЕНЯЙТЕ TOPIC TEXT ДЛЯ GREETING!!!
Создайте новую реплику NPC, в этом топике, также как и в GREETINGS: "Меня зовут Даймос Веланд. С вами хочет поговорить глава Павшего Альянса."
Щелкните на OK.
Теперь в Тексте ответа (Response Text) добавим вторую строчку, в которой напишем следующую фразу NPC: "Вы заинтересованы?". Разбивая большой текст на более чем две страницы, можно сделать диалог намного понятнее. Одна страница диалога показывается ровно столько времени, сколько требуется на проигрывание mp3.  Аудио и lipsynch не будут рассматриваться в этом руководстве.
Теперь, нам надо дать возможность игроку ответить да или нет. Нужно иметь в виду, что может быть, игрок просто хотел узнать у NPC последние слухи и не хотел брать этот квест.
В секции Выбор (Choices) добавьте топики FAYes, и FANo.
Теперь, отредактируйте топик FAYes, в Тексте темы (Topic Text) впишите "Да", а в Информацию (Info): "Тогда подготовьтесь к небольшому путешествую."
Отредактируйте, также FANo: Текст темы (Topic Text): "Нет", Информация (Info): "Тогда убирайся отсюда прочь." И поставьте флажок Прощание (Goodbye), он означает, что после этой реплики диалог с NPC закончится.
Теперь мы сможем поговорить с этим NPC. Эта беседа ни к чему не приведет, но скоро мы это исправим.

Скриншот окна Темы (Topics).


Нам осталось добавить дверь, ключ от этой двери, комнату в которую ведет эта дверь и несколько скриптов.
Все это будет проще, чем вам кажется. Сначала сделаем записи в журнал.

5) Откройте вкладку Стадии квеста (Quest stages) в окне Квесты (Quests). Здесь можно добавить записи в журнал.
Для индексов записей я использовал номера, с промежутком в пять цифр: 5,10,15,20 и.т.д. Так я не мог перепутать, например, индекс 34 с 43.
Добавьте новый индекс (Index) и поставьте в его название цифру 5. Справа есть пустое поле: Запись в журнале (Log Entry). Там пишется текст журнальной записи. Вот моя запись: "Мне сообщили, что меня хочет видеть глава Павшего Альянса."
Эта запись будет отображаться в вашем квестовом меню. Делайте записи, по возможности, краткими и информативными, можете добавить туда названия города или местности, если это необходимо.



6) Теперь нам надо сделать ключ, которым можно будет открывать дверь в комнату.
В крайнем левом окне откройте список Предметы (Items)-> Ключи (Key). Если у вас не распакованы NIF файлы, то придется делать новый объект на основе старого.
Выберите там любой старый ключ, например: "OdriilFarmKey". Измените "ID" на FallenAllianceKey, имя на "Ключ Павшего Альянса" и поставьте галочку квестовый предмет (quest item).
Редактор спросит вас - хотите ли вы создать новый предмет (Create a new Form?). Ответьте да.
Отлично, теперь у нас есть ключ, который будет открывать запертую дверь.



7) Теперь, когда мы сделали ключ и стадию квеста, мы можем их соединить. Откройте вкладку Темы (Topics) в окне Квесты (Quest) и откройте тему FAYes.
Результирующий скрипт выполняется, когда NPC заканчивает свою реплику. Результирующие скрипты записываются в поле Результирующий скрипт (Result Script). Сейчас мы добавим квест в ваш журнал и ключ в инвентарь. Дверь мы сделаем потом.
Для этого подойдет такой результирующий скрипт:
Setstage ID_КВЕСТА НОМЕР_ИНДЕКСА
Player.additem ID_КЛЮЧА 1(это цифра означает число ключей, которое вы хотите дать игроку)

В нашем случае, он должен выглядеть так:
setstage FallenAlliance 5
Player.AddItem FallenAllianceKey 1

Это очень просто.
Скрипт, который мы только что записали, добавляет квест в ваш журнал и ключ в инвентарь.

8) Теперь добавим дверь, которая будет открываться ключом.
Откройте BrumaExterior 5 и найдите подходящее место для двери. Можете поставить ее в любом месте.
Также как и у ключа, здесь, у нас нет моделей двери, поэтому мы будем редактировать другой объект. Объекты игрового мира (WorldObjects) -> Двери (Door) -> Архитектура (Architecture) -> Брума (Bruma) -> BrumaLoadDoorBaenlin1 -> Правый щелчок -> Редактировать (Edit).
Я изменил "ID" на BrumaFallenAllianceDoor (я добавил Bruma, потому что в готовом плагине будет несколько дверей).
Название (Name) = Прочная деревянная дверь.
Пока это все.
Кликните OK (на вопрос ответьте да), и затем щелкните и перетащите предмет в Окно рендера (Render Window), нажмите "F", чтобы дверь "упала" на землю, и поставьте ее куда захотите.
Теперь у нас есть новая дверь.



9) Дважды щелкните на двери, находящейся в окне рендера. Теперь перейдите на вкладку Замок (Lock), поставьте галочку Заперто (Locked), измените Уровень (Level) на "Нужен ключ" (Needs a key) и в списке Ключ (Key) выберите "FallenAllianceKey", который мы сделали несколько минут назад. Поставьте флажок Visible when distance.



Итак:
У нас есть новый NPC.
Он говорит с нами и предлагает выбор.
Если мы ответим нет, диалог закончится, и квест не начнется.
Если мы ответим да, появится запись в журнале и ключ.
Мы сделали ключ, который открывает определенную дверь.

10) Сделаем комнату, в которую ведет эта дверь.
Меню Мир (World) -> Ячейки (Cells).
Откроется новое окно. Перейдите в "Interiors". Щелкните правой кнопкой и выберите Новый (New).
 EditorID = "FallenAllianceHQ".
Измените имя ячейки и другие параметры в Данных интерьера (Interior Data), на то, что вам хочется.
Я назвал ячейку: "Дом Павшего Альянса" (это название будет написано после названия двери, то есть дверь которая ведет в эту ячейку будет называться "Крепкая деревянная дверь в Дом Павшего Альянса").



11) Теперь у нас есть пустая ячейка интерьера. Нажмите OK и вернитесь к главному окну.
Нужно придать этой комнате нормальный вид.
Вот скриншот моей комнаты, а также ее краткое описание и список предметов, которые были использованы.



Стены в комнате такие же, как и в подвале часовни, на потолке висят несколько люстр. В обоих концах комнаты поставлено по два дверных проема: "CathedralCryptEntrance01". В каждый дверной проем поставлена дверь.
Три, из четырех дверей, я сделал запертыми и открывающимися только при помощи ключа. Ключи к ним я делать не стал.
Четвертую дверь я отредактировал следующим образом:



я использовал “Выбрать цель в окне рендера” (Select Reference in Renderwindow), во вкладке Телепорт (Teleport), и сделал двойной щелчок на двери в Бруме.
Для двери в Бруме я сделал тоже самое. Не забывайте выравнивать недавно созданные дверные маркеры, чтобы они были под прямым углом к двери и находились на уровне земли.
Должно быть, это все.
Вот что мы можем сделать:
Пойти в Бруму.
Поговорить с Даймосом Веландом.
Ответить "Да".
Это добавит квест в ваш журнал и ключ в инвентарь.
Ключом можно открыть запертую и не взламываемую дверь, которая ведет в ячейку интерьера.

Благодарю Mr Cheese с официального форума The Elder Scrolls, за его помощь.
А также dysesothymteric с этого же форума.
А также еще многих других людей.

Это все, о чем я хотел рассказать в этом руководстве и думаю, мне это удалось.
Награды За огромный вклад в развитие Румора

Теги:
 

Учебник "OSFM v1.0"

Автор GarinРаздел Скриптинг под TES IV

Ответов: 67
Просмотров: 72593
Последний ответ 03 Март, 2007, 22:46:04
от Garin
Туториал "Лошадь на продажу" (Horse For Sale Tutorial)

Автор GarinРаздел Туториалы по TES 4 Oblivion

Ответов: 0
Просмотров: 1904
Последний ответ 09 Декабрь, 2006, 01:19:04
от Garin
Учебник "OSFM v1.2"

Автор GarinРаздел Скриптинг под TES IV

Ответов: 15
Просмотров: 5762
Последний ответ 04 Апрель, 2012, 21:34:30
от salad0rec
Работа над заказным плагином Dan"а

Автор DanРаздел Плагины для TES 3: Morrowind

Ответов: 31
Просмотров: 17988
Последний ответ 30 Октябрь, 2005, 11:27:41
от N 34
О проекте "Систематизация Lore".

Автор FinveРаздел Вселенная TES

Ответов: 1
Просмотров: 2709
Последний ответ 10 Март, 2011, 06:54:20
от Tiara
Плагин "старый Замок"

Автор ~Max960~Раздел Плагины для TES 3: Morrowind

Ответов: 4
Просмотров: 5300
Последний ответ 20 Январь, 2006, 09:10:01
от ~Max960~
Removing "placeatme Objects"

Автор GarinРаздел Туториалы по TES 4 Oblivion

Ответов: 0
Просмотров: 1281
Последний ответ 09 Декабрь, 2006, 02:04:02
от Garin
"без Ключа Не Пройдешь!"

Автор GL.SamРаздел Архив готовых скриптовых решений

Ответов: 0
Просмотров: 2162
Последний ответ 08 Январь, 2007, 04:05:14
от GL.Sam
Руководство для начинающих "a Beginner's Guide"

Автор GarinРаздел Туториалы по TES 4 Oblivion

Ответов: 1
Просмотров: 5527
Последний ответ 14 Январь, 2007, 01:30:40
от Garin
Запись в команду "OSFM Team"

Автор GarinРаздел Скриптинг под TES IV

Ответов: 3
Просмотров: 6203
Последний ответ 13 Декабрь, 2007, 00:42:25
от Garin

Поиск

 
Top
SimplePortal 2.3.5 © 2008-2012, SimplePortal