Difference between revisions of "Bethesda Tutorial Quest Objectives/ru"

no edit summary
imported>Vitamant
m
imported>Vitamant
Line 11: Line 11:
}}
}}


=Кратки обзор=
=Краткий обзор=
В этой главе ты научишься задавать цели задания и пользоваться маркерами, ведя беспомощных игроков по огромному миру игры. Заодно, разберешься что делать после завершения квеста, чтобы он не висел в списке текущих заданий до конца времен.
В этой главе ты научишься задавать цели задания и пользоваться маркерами, ведя беспомощных игроков по огромному миру игры. Заодно, разберешься что делать после завершения квеста, чтобы он не висел в списке текущих заданий до конца времен.
<br><br>Ты узнаешь:
<br><br>Ты узнаешь:
Line 17: Line 17:
* Как изменять активность целей
* Как изменять активность целей
* Как завершить квест
* Как завершить квест
* Как создать дополнительные стадии квеста
* Немного о дополнительных возможностях стадий квеста


=Ориентиры=
=Ориентиры=
Line 47: Line 47:
Как и прежде создай новый псевдоним. Назови его "Amulet" и измени тип на "Create Reference to Object". Идем слева направо:
Как и прежде создай новый псевдоним. Назови его "Amulet" и измени тип на "Create Reference to Object". Идем слева направо:
* Выбираем "GSQAmulet" из списка - базовый объект нашего амулета.
* Выбираем "GSQAmulet" из списка - базовый объект нашего амулета.
* Уровень сложности оставляем без изменений (поскольку мы имеем дело с предметом, а не персонажем, он ни на что не повлияет).
* Уровень сложности оставляем без изменений (поскольку мы имеем дело с предметом, а не персонажем, он ни на что не влияет).
* Изменяем режим на "Create '''In'''"
* Изменяем режим на "Create '''In'''"
* Выбираем Thief из последнего списка.
* Выбираем Thief из последнего списка.
Line 84: Line 84:
=Установка ориентиров=
=Установка ориентиров=


Помнишь ту страшную функцию <code>SetObjectiveDisplayed()</code>? Вот тут то она и используется. Если по какой-либо причине первая функция не вызовет обновление ориентиров, то эта гарантирует, что они все-таки будут обновлены. Советую указывать оба.
Помнишь ту страшную функцию <code>SetObjectiveDisplayed()</code>? Вот тут то она и используется. Если по какой-либо причине первая функция не вызовет обновление ориентиров, то эта гарантирует, что они все-таки будут обновлены. Советую указывать обе. (''а я советую корректно настраивать стадии квеста (см.ниже) - прим.переводчика'')


Вернись на вкладку Quest Stages. Сейчас мы усложним квест, добавив в него немного логики.
Вернись на вкладку Quest Stages. Сейчас мы усложним квест, добавив в него немного логики.


Для того чтобы добавить логику или запись в журнал, квесту необходимо иметь хотя бы одну "{{ulink|Quest_Stages_Tab|стадию}}". Выбери вторую (под индексом 10) и, щелкнув ПКМ по таблице "Log Entry" (справа) выбери "New."  
Для того чтобы добавить логику или запись в журнал, необходимо добавить хотя бы один элемент в таблицу "Log Entry" (справа), соответствующую нужной стадии. Выбери 10ую стадию, щелкни ПКМ по таблице "Log Entry" и выбери "New."  


Записанные здесь фрагменты текста будут появляться в журнале игрока. Отображаться будет только последняя запись, поэтому можешь использовать его для обновления ориентиров, когда это необходимо. В поле ввода "Log Entry" запиши следующее:
Записанные здесь фрагменты текста будут появляться в журнале игрока. Отображаться будет только последняя запись, поэтому можешь использовать его для обновления ориентиров, когда это необходимо. В поле ввода "Log Entry" запиши следующее:


<blockquote><i>Я встретил Менду Оло. Он рассказал, что у него украли амулет. Он обещает заплатить двойную цену тому, кто вернет ему пропажу.</i></blockquote>
<blockquote><i>Я встретил Бенду Оло. Он рассказал, что у него украли амулет. Он обещает заплатить двойную цену тому, кто вернет ему пропажу.</i></blockquote>


Щелкни в поле справа (на вкладке Papyrus Fragment).
Щелкни в поле справа (на вкладке Papyrus Fragment).


Вводим: <code>SetObjectiveDisplayed(10)</code>. Нажми кнопку "Compile", чтобы убедиться, что все введено корректно. Как ты, наверное, догадался, это изменит текущий ориентир на 10, поставив перед игроком новые цели. Поскольку, это первый ориентир, отображаемый в квесте, это также пометит квест значком "STARTED" (начат).  
Вводи: <code>SetObjectiveDisplayed(10)</code>. Нажми кнопку "Compile", чтобы убедиться, что все введено корректно. Как ты, наверное, догадался, это изменит текущий ориентир на 10, поставив перед игроком новые цели. Поскольку, это первый ориентир, отображаемый в квесте, это также пометит квест значком "STARTED" (начат).  


[[Image:SettingObjective10.png|600px]]
[[Image:SettingObjective10.png|600px]]


{{InDepth|Ты спросишь - зачем же нужна эта таблица, если мы записали в ней всего одну строчку? Дело в том, что в более сложных квестах, может быть задействовано несколько таких строк, часть из которых (или все), связаны с определенными условиями, определяющими - отобразятся они в журнале или нет. (н.п. ветвление квеста в зависимости от того сделал что-нибудь игрок на предыдущих стадиях, или нет). В нашем случае всё просто и линейно, поэтому нам не нужны ни условия, ни дополнительные элементы.}}
{{InDepth|Ты спросишь - зачем же нужна эта таблица, если мы записали в ней всего одну строчку? Дело в том, что в более сложных квестах, может быть задействовано несколько таких строк, часть из которых (или все), связаны с определенными условиями, определяющими - отобразятся они в журнале или нет. (н.п. ветвление квеста в зависимости от того, как поступил игрок на предыдущих стадиях). В нашем случае всё просто и линейно, поэтому нам не нужны ни условия, ни дополнительные элементы.}}


Теперь выбери стадию 20 из списка слева и создай новую строку справа. Как ты помнишь, эта стадия наступает, когда игрок убивает вора, но еще не взял амулет. Что мы хотим? Хотим мы сказать игроку две вещи: что предыдущая цель (убить вора) успешно выполнена, и что надо порыться в останках усопшего. Для этого нам потребуется всего две строчки скрипта:
Теперь выбери стадию 20 из списка слева и создай новую строку справа. Как ты помнишь, эта стадия наступает, когда игрок убивает вора, но еще не взял амулет. Что мы хотим? Хотим мы сказать игроку две вещи: что предыдущая цель (убить вора) успешно выполнена, и что надо порыться в останках усопшего. Для этого нам потребуется всего две строчки скрипта:
Line 109: Line 109:
</source>
</source>


{{InDepth|Ты ведь внимательно на них посмотрел и заметил различия, верно? Одна функция заканчивается на "Completed" (завершена), другая на "Displayed" (отображена) - будь внимателен, а не то завершишь определитель, который игрок еще в глаза не видел!}}
{{InDepth|Ты ведь внимательно на них посмотрел и заметил различия, верно? Одна функция заканчивается на "Completed" (завершен), другая на "Displayed" (отображен) - будь внимателен, а не то завершишь ориентир, который игрок еще в глаза не видел!}}


Log Entry можно оставить пустым, так как общий сюжет квеста не изменился.
Log Entry можно оставить пустым, так как общий сюжет квеста не изменился.
Line 119: Line 119:
Последняя запись в журнале должна подвести итог нашего приключения. Например так:
Последняя запись в журнале должна подвести итог нашего приключения. Например так:


<blockquote><i>Мой новый знакеомый, Bendu Olo, сторицей вознаградил меня за возвращение похищенного амулета.</i></blockquote>
<blockquote><i>Мой новый знакомый, Бенду Оло, сторицей вознаградил меня за возвращение похищенного амулета.</i></blockquote>


=Проверка результата=
=Проверка результата=
Anonymous user