Модератор форума: Kris†a™  
Форум » TES V: Skyrim » Мастерская » Вопросы по Creation Kit (продолжение старой темы) (Тут вы можете задать вопросы по редактору Скайрима)

Вопросы по Creation Kit (продолжение старой темы)
Kris†a™  Offline  Сообщение №1 написано: 24 апреля 2015, 09:05 | Отредактировано: Multigone - 23 апреля 2020, 14:25


Lady in the Dark


Тема по работе с редактором Skyrim Creation Kit.


является продолжением старой темы ...

Тема регламентирована.


• Прежде, чем задать вопрос, пожалуйста, убедитесь, что такой вопрос не задавался раньше. Старайтесь описать суть вопроса как можно подробней.
• Прежде, чем опубликовать ответ на вопрос, пожалуйста, убедитесь, что обладаете необходимыми для этого знаниями. Старайтесь cформулировать суть ответа как можно лаконичней.
• При желании ответить в приватном порядке, пожалуйста, воспользуйтесь ЛС.
• При желании поблагодарить ответившего, пожалуйста, воспользуйтесь кнопкой "
+" полезного сообщения.

Сообщения, не относящиеся к вопросам по редактору СК, ответам на них или уточнениям, являются оффтопом и могут быть удалены.

My WebSite: Kris†a™: Private Modding

Мы отстроили реальный мир, превратив его в убожество, теперь отстраиваем виртуальные, надеясь на лучшее... ©
Multigone  Offline  Сообщение №1681 написано: 8 января 2017, 13:24



832
gangrena1972, решается скриптом на квесте:


Код
Scriptname _DefRun extends Quest

EVENT OnInit()
    IF !IsCompleted()
        Start()
    ENDIF
ENDEVENT

Хисимэль  Offline  Сообщение №1682 написано: 8 января 2017, 13:38 | Отредактировано: gangrena1972 - 8 января 2017, 13:57


Эльфийка-оборотень


100
Цитата Multigone

решается скриптом на квесте



На квесте - это в смысле на самом квесте во вкладке Scripts, а не на диалоге, я правильно поняла?
Что-то не так у меня получается...
Когда жму Properties, выдает ошибку:

Starting 1 compile threads for 1 files...
Compiling "_DefRun"...
E:\€Јал\‘Є ©аЁ¬\The Elder Scrolls 5.Skyrim.Legendary Edition.v 1.9.32.0.8 + 3 DLC\Data\Scripts\Source\_DefRun.psc(10,15): cannot name a variable or property the same as a known type or script
No output generated for _DefRun, compilation failed.

Batch compile of 1 files finished. 0 succeeded, 1 failed.
Failed on _DefRun

озвучиваю моды
Aksyonov  Offline  Сообщение №1683 написано: 8 января 2017, 14:54 | Отредактировано: Multigone - 21 апреля 2020, 15:45



937
Цитата gangrena1972

На квесте - это в смысле на самом квесте, а не на диалоге, я правильно поняла?

Я уже об этом же написал вам в лс, именно об этом и говорил smile2  вот вам скриншот, если не поняли надо было просто переспросить, не стесняйтесь - если нужны скриншоты мне не трудно.

https://1.bp.blogspot.com/-NxbF6r....g

Хисимэль  Offline  Сообщение №1684 написано: 8 января 2017, 15:41 | Отредактировано: gangrena1972 - 8 января 2017, 15:56


Эльфийка-оборотень


100
Цитата Aksyonov

Я уже об этом же написал вам в лс, именно об этом и говорил  вот вам скриншот, если не поняли надо было просто переспросить, не стесняйтесь - если нужны скриншоты мне не трудно.


Спасиб ) уже сама вспомнила )
Сделала этот скрипт, но диалог все равно только после перезагрузки появляется.

озвучиваю моды
Dsion  Offline  Сообщение №1685 написано: 9 января 2017, 03:14 | Отредактировано: Dsion - 9 января 2017, 03:15



gangrena1972, нужно еще галочку "Start Game Enabled" _убрать_ с первой страницы настроек квеста.
Лично я немного другой скрипт использую, но пофиг... Вообще, подойдет любой вариант, при котором квест запускается не по галочке "Start Game Enabled", а каким-то другим способом. Хоть скриптом, хоть по ивенту, хоть из консоли.

AlexTa  Offline  Сообщение №1686 написано: 9 января 2017, 09:59



132
Доброго всем дня и хорошего настроения! У меня не получается изменить Вилье прическу. Когда открываю окошко с прическами и выбираю из мода, установленного в игре, пишет: инвалид директория. Не могу понять, что я делаю не так.

Хисимэль  Offline  Сообщение №1687 написано: 10 января 2017, 20:33


Эльфийка-оборотень


100
Спасибо всем, кто ответил, за помощь, уже давно решила )

Сейчас столкнулась с новым вопросом:

Нужно сделать так, чтобы мой квест (это просто диалог) начался сразу после завершения ванильного квеста.
Хочу сделать с помощью Change Location Event. Но не знаю, какие указывать необходимые условия для запуска квеста.

озвучиваю моды
Aksyonov  Offline  Сообщение №1688 написано: 11 января 2017, 00:23



937
Цитата gangrena1972

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

Такого мне к сожалению пока не довелось делать, но по тему скажу что вот к примеру диалоги отобразить только если завершен определенный квест можно при помощи функции GetQuestComplete, это условие указывается там же где и остальные такие как: GetIsSex, GetISid в диалогах.

Dsion  Offline  Сообщение №1689 написано: 11 января 2017, 04:28



gangrena1972, вариантов много, честно говоря... Самое простое, как чувак уже сказал, - это сделать твой квест запущенным *всегда*, но на диалоги повесить условие GetStageDone (завершена стадия другого квеста) или GetQuestCompleted. Тогда диалоги появятся только после завершения другого квеста (или его стадии).

По Change Location Event тоже можно. Но тогда важно не забыть про SM Event Node. Условия - те же.

Можно подпилить ванильный квест, чтоб он в своем конце запускал твой квест. Но так не делай! Лучше избежать редактирования ванильных записей, если это возможно. Ну я эту возможность только для того и упоминаю, чтоб убедиться, что ты так не сделаешь.

Ну и можно еще десяток вариантов со скриптами придумать, если описанные выше не подойдут.

Хисимэль  Offline  Сообщение №1690 написано: 11 января 2017, 08:24 | Отредактировано: gangrena1972 - 11 января 2017, 08:44


Эльфийка-оборотень


100
Цитата Dsion

По Change Location Event тоже можно. Но тогда важно не забыть про SM Event Node. Условия - те же.Можно подпилить ванильный квест, чтоб он в своем конце запускал твой квест. Но так не делай! Лучше избежать редактирования ванильных записей, если это возможно. Ну я эту возможность только для того и упоминаю, чтоб убедиться, что ты так не сделаешь.


Ванильные квесты вообще не хочу переделывать: их тогда надо будет в качестве балласта к моду запихивать, а где гарантия, что другой умелец тоже не переделает этот же квест? Так что точно не буду так делать )))

Вот я про SM Event Node как раз: там тоже есть условие GetQuestComplete? Я его чой-то пропустила, когда смотрела, что там вообще имеется... Видимо, глаз замылился к тому времени.

Ах, да: надо, чтобы второй квест стартовал не просто после первого, а только в ближайшие 15 минут времени (не реального, игрового). А по истечении этих 15 минут уже не запускался. Это где можно поставить?

Рассказываю, для чего это нужно.
К примеру, ГГ убил Алдуина. Это пусть будет первый квест. В течение 15 минут после его завершения должен состояться второй квест-диалог с компаньоном, где обсуждается смерть Алдуина. Было бы смешно, если этот второй квест будет доступен игроку через большее время, когда ГГ уже будет в другом месте находиться.
Как второй квест к факту убийства привязать, я знаю. А если первый квест не на убийство, а на разговор?

озвучиваю моды
Dsion  Offline  Сообщение №1691 написано: 11 января 2017, 09:47 | Отредактировано: Dsion - 11 января 2017, 09:42



Подведем итоги:  после завершения какой-либо стадии какого-либо ванильного квеста должен становиться доступен диалог на определенное время? И желательно иметь возможность создавать таких диалогов побольше, не вынося каждый в отдельный квест? Убил босса - обсудил с компаньоном, стал вампиром - обсудил итп...? Уфф.. Надо почесать репу...

Добавлено (11 Января 2017, 12:40)
---------------------------------------------
Да, чо-то идеями меня не засыпало... Не припоминаю, чтоб игра где-то сохраняла конкретное время завершения стадий квестов. И не припоминаю никакого ивента типа "игрок завершил стадию квеста". И кондишна "игрок завершил стадию квеста в последние 15 минут" тоже нифига не припоминаю. В ванильных квестах временные диалоги чаще всего делается условиями типа "игрок завершил стадию 1, но не завершил стадию 2". Но это не совсем то... На одной стадии ведь можно на недели застрять...

Единственное, что пока приходил в голову - это адский скрипт... Поскольку нормальных подходящих ивентов нету, скрипт должен выполняться каждые несколько секунд... Проверять по списку все указанные стадии всех указанных квестов. Если какая-то изменила состояние на завршенное, сохранить время и на 15 минут установить скриптовую conditional переменную, активировав этим диалог... Ну да, работать-то оно будет, но что-то я не в восторге от идеи выполнять ресурсоемкую функцию каждые несколько секунд.

Добавлено (11 Января 2017, 12:47)
---------------------------------------------
Ну еще другой вариант. Можно сделать, чтоб по завершении какой-либо стадии ванильного квеста, компаньон сам начинал беседу. То есть, сам подходил и начинал диалог о произошедшем событии. Или просто произносил что-то типа "ух ты, мы его замочили", не вступая в диалог. Такое не сложно... Не подойдет?


Хисимэль  Offline  Сообщение №1692 написано: 11 января 2017, 11:00 | Отредактировано: gangrena1972 - 11 января 2017, 11:04


Эльфийка-оборотень


100
Цитата Dsion

Можно сделать, чтоб по завершении какой-либо стадии ванильного квеста, компаньон сам начинал беседу. То есть, сам подходил и начинал диалог о произошедшем событии.


Думаю, что да, подойдет.

Я тут просмотрела квест "Найти Фьолу на Туманной заставе"(dunMistwatchQST).
Там входишь в локацию, подходишь к НПС по имени Кристер (Christer), и он сам начинает диалог (зеленый бранч).
Условия начала диалога там стоят в самом топике. Они таковы: GetIsAliasRef - ну, это понятно, чтобы эту фразу говорил только наш НПС - и GetStage (Quest: dunMistwatchQST<11 в данном случае, в моем случае это будет, вероятно, либо ==0, либо < последней стадии моего квеста).

Какое выбрать условие для привязки к завершению определенной стадии ванильного квеста?

Условие, привязывающее к завершению ванильного квеста - GetQuestCompleted, я правильно поняла?

А как при этом правильно заполнить поля:
Run on
Comparison
Value
?

озвучиваю моды
Dsion  Offline  Сообщение №1693 написано: 11 января 2017, 11:30 | Отредактировано: Dsion - 11 января 2017, 11:31



Возможно, лучше GetStage или GetStageDone ... Потому что на creationkit.com пишут, что GetQuestCompleted не работает на некоторых версиях игры... И GetStage, GetStageDone более гибкие...
https://www.creationkit.com/index.php?title=GetStage
https://www.creationkit.com/index.php?title=GetStageDone
https://www.creationkit.com/index.php?title=GetQuestCompleted

Стадии можно в самом CK смотреть или на uesp. Вот, к примеру, квест:
http://www.uesp.net/wiki/Skyrim:The_Book_of_Love

Его id: t02
Вот в нем есть стадия 40. Задание на этой стадии: Talk to Calcelmo (поговорить с Кансельмо).

А на свой квест можешь повесить либо условие:
GetStageDone t02 40 == 1
это будет означать, что игрок поговорил с Кансельмо.
Либо
GetStage t02 >= 40
Будет означать, что игрок либо на этой стадии, либо уже продвинулся дальше. Ну или что-то в таком духе...

Добавлено (11 Января 2017, 14:30)
---------------------------------------------
Если никто не придумает, как сделать ограничение именно по времени, то я напишу подробнее, как сделать, чтоб НИП сами подходили. И чтоб только один раз говорили свой текст.

Хисимэль  Offline  Сообщение №1694 написано: 11 января 2017, 13:06


Эльфийка-оборотень


100
Dsion, эх, английского не знаю...  но общую суть уловила ) спасиб )

Дамы и господа, вопрос об ограничении по времени все еще в силе!

Напоминаю: квест№2 должен начаться в течение 15 минут игрового времени после завершения квеста№1(ванильного, который править нельзя). Если 15 минут прошло - квест не должен запуститься.

озвучиваю моды
Dsion  Offline  Сообщение №1695 написано: 11 января 2017, 14:20 | Отредактировано: Dsion - 11 января 2017, 14:24



gangrena1972, ну ладно, есть вариант. Могу выложить маленький скриптик. Он запустит твой квест когда завершится какой-то другой. А через 15 минут игрового времени остановит твой квест. Все диалоги будут доступны только 15 минут (пока квест работает). Это то, чего ты хочешь?
Уверена, что подойдет? Подумай вот о чем:
1. А если ты захочешь таких диалогов много сделать? Не создавать же для каждого отдельный квест.
2. А если захочешь сделать обсуждение не *завершения* квеста, а какого-то события в его процессе? Завершения какой-то стадии.
Если тебя это всё не смущает, то без проблем... Выложу скрипт. Я придумал, к чему подцепиться, чтоб избежать повторения кода каждые пару секунд.

Добавлено (11 Января 2017, 17:20)
---------------------------------------------
Посмотрел, как сделан ванильный квест Темного Братства. Брр.
С самого начала и до конца игры каждые 5 секунд реального времени выполняется массивный блок кода. В нем каждые 5 секунд проверяется, завершил ли игрок квест на убийство Грелод и еще дофига условий. Если все выполняются, запускается квест на похищение игрока Астрид. Жуть...
Ну, короче, это именно тот способ с "адским скриптом", который я назвал сомнительным.
Но, справедливости ради, стоит сказать, что способ очень гибкий... Если захочешь, чтоб диалог был доступен ровно 15 минут после того, как игрок проедет возле какого-то дерева в глухом лесу именно 5 раз и только если в третий раз игрок проезжал мимо него без шлема, то скрипт позволяет такое сделать. Возможно, так и надо делать... В конце концов, чего стоит компьютеру выполнить десяток операций раз в 5 секунд, если он может выполнять их три миллиарда в секунду?

Хисимэль  Offline  Сообщение №1696 написано: 11 января 2017, 19:42 | Отредактировано: gangrena1972 - 11 января 2017, 19:44


Эльфийка-оборотень


100
Dsion, да, это то, чего я хочу )

1. А как иначе? Через диалоги фолловеров?
2. Если в процессе, то ведь можно воспользоваться этим?
Цитата Dsion

GetStageDone t02 40 == 1это будет означать, что игрок поговорил с Кансельмо.
Либо
GetStage t02 >= 40
Будет означать, что игрок либо на этой стадии, либо уже продвинулся дальше.


Вот так и знала, что Темное братство - оно жуткое...  :D

озвучиваю моды
Dsion  Offline  Сообщение №1697 написано: 12 января 2017, 06:17



gangrena1972, ладно, сдаюсь, не знаю. Если ты действительно делаешь компаньона, то выполнять задачу в том виде, в котором ты её поставила, - не вариант. Во-первых, должна быть возможность реагировать на смену стадии, а не на завершение. Во-вторых, должна быть возможность объединять много диалогов в один квест. В третьих... Ну ты же понимаешь, что 15 минут игрового времени - это меньше минуты реального времени. А если игрок не догадается поговорить со спутником за эту минуту? Твой текст и озвучка навсегда пропадут? Такое вот...

Была идея очень-очень близкая, соответствующая всем требованиям. Но и от неё пришлось отказаться потому что всё идет крахом, если спутник не был рядом в момент завершения квеста/стадии. Отсчет 15 минут начинается только тогда, когда игрок и спутник встречаются... Не то, в общем. Но вариант был крутой. Можно было легко и быстро в одном квесте создавать реплики двух видов:
1. Свершается какое-то событие (любое) и компаньон его комментирует, не вступая в диалог. На этом всё.
2. Свершается какое-то событие, компаньон его комментирует и предлагает обсудить. Ну или просто говорит что-то типа "можно тебя на минутку?". После этого начинается отсчет времени. Если игрок подойдет к компаньону в течении 15 минут, можно будет обсудить что-то там.

Круто же? И легко... Вот только правильно оно работает только если компаньон рядом... А если он торчал дома, то скажет свою реплику аж тогда, когда игрок вернется домой. Даже если уже год прошел с момента свершения события. Но твоя изначальная идея тоже не учитывает возможность того, что компаньон остался дома.

Короче, сдаюсь. Надо как-то отлавливать изменение стадий разных квестов и сохранять время этого изменения. Да и еще и только тогда, когда компаньон был рядом (участвовал). Не знаю, как это сдеать без регулярно повторяющегось скрипта. Удачи коллегам.

Хисимэль  Offline  Сообщение №1698 написано: 12 января 2017, 13:12 | Отредактировано: gangrena1972 - 12 января 2017, 13:27


Эльфийка-оборотень


100
Цитата Dsion

Могу выложить маленький скриптик. Он запустит твой квест когда завершится какой-то другой. А через 15 минут игрового времени остановит твой квест. Все диалоги будут доступны только 15 минут (пока квест работает). Это то, чего ты хочешь?


Скинь, плиз, протестировать. Время я сама изменю на 1 час игрового.

озвучиваю моды
Dsion  Offline  Сообщение №1699 написано: 12 января 2017, 14:55 | Отредактировано: Dsion - 12 января 2017, 15:02



gangrena1972, сказал же, что сдаюсь. Если кто-то придумает нормальный способ, будет круто.
По поводу скрипта я там налажал чуток :( Я был уверен, что событие OnTrackedStatsEvent срабатывает при изменении числа пройденных квестов (должно бы), а оно не срабатывает... Не вышло к нему прицепиться.

Смекаешь, в чем проблема? Нет способа поймать момент, когда игрок завершает квест или какую-то его стадию. Нет подходяшего события. Вот событие "игрок сменил локацию" есть. Событие "игрок замочил кого-то" тоже есть. Даже событие "игрок надел предмет" есть. И еще дофига всего есть. А поймать завершение квеста - не знаю, как.

Остается только вариант с повторением кода каждые несколько секунд. Вот тогда можно поймать момент, когда квест переходит с состояния "не завершен" в состояние "завершен".

Есть еще диалоги типа Hello. Это то, что НИП говорят при заданных условиях когда игрок рядом с ними. И на таких диалогах можно поставить галочку Say Once - сказать только один раз. Представь, что ты делаешь такой диалог. Условие: завершен какой-то квест. Спутник рядом с тобой. Ты завершаешь квест, условие начинает выполняться, спутник говорит свою фразу и всё хорошо, да? Больше он её не повторит. А теперь представь, что игрок завершил этот квест давным давно. Когда еще мод с твоим спутником даже не был подключен. Ну а что? Условия-то выполняется. Он все-равно скажет эту фразу, когда вы встретитесь. Вот всё и разрушилось.

Хисимэль  Offline  Сообщение №1700 написано: 13 января 2017, 09:09 | Отредактировано: gangrena1972 - 13 января 2017, 09:10


Эльфийка-оборотень


100
Смекаю...

Dsion
, где можно почитать об условиях? У меня, как я уже писала, с английским не очень, кое-что я, конечно, допетриваю, а кое-что - нет.

К примеру, GetIsEditorLocation - это о чем?

озвучиваю моды
Dsion  Offline  Сообщение №1701 написано: 13 января 2017, 10:26



Я только на английском знаю. Да и то не все.
https://www.creationkit.com/index.php?title=Condition_Functions

Добавлено (13 Января 2017, 13:26)
---------------------------------------------
Есть еще идея, но вряд ли ты захочешь снова читать пол страницы непонятных терминов.


Myprism  Offline  Сообщение №1702 написано: 14 января 2017, 02:01 | Отредактировано: Myprism - 14 января 2017, 02:09


Физик


Помню замечание из одного учебника по Дельфи (язык программирования): Если что-то получается слишком сложно, значит вы делаете что-то не то :) .
Так и со Скайримом. Это набор вроде детского конструктора или кубиков. Есть комплект определённых деталек. Их ограниченное количество, хотя и много. Со стороны кажется, что сделать из них можно что угодно, но это не так. Тут важно научиться делать не то, что хочется, а то, что этот набор позволяет. По крайней мере, ограничивать желания. Например, из детского конструктора можно собрать портальный кран или автомобиль. Там есть пластины с дырками под винты, оси и колёса. Но из него нельзя сделать ложку или вилку. В принципе - можно. Взять детали конструктора, переплавить их и отлить ложку или вилку. Но для этого требуются уже совсем не те умения, на которые рассчитан детский конструктор. Кроме того, если у человека хватает умений на переплавку, то он сообразит, что ложки и вилки лучше отливать из алюминия из использованных пивных банок, а не из стали детского конструктора :)

Kepper  Offline  Сообщение №1703 написано: 14 января 2017, 07:45



860
gangrena1972, есть ещё один вариант отловить завершение ванильного квеста.
Правда в этом случае к каждому квесту придётся подходить индивидуально и данный метод весьма уязвим к модам меняющим ванильные квесты.
Но зато не надо периодически проверять а выполнился ли такой-то квест.

Квесты могут завершаться или переходить на новую стадию когда игрок входит в триггер. В этом случае в габаритах ванильного триггера размещаем свой триггер.
Убийство персонажа можно отследить, заполнив этим персонажем алиас со скриптом отслеживающим событие OnDeath.
Помещение предмета в контейнер - алиас со скриптом отслеживающим событие OnItemAdded
ну и тд.

Aksyonov  Offline  Сообщение №1704 написано: 14 января 2017, 07:49 | Отредактировано: Aksyonov - 14 января 2017, 07:50



937
Цитата Kepper

Убийство персонажа можно отследить, заполнив этим персонажем алиас со скриптом отслеживающим событие OnDeath.


Пользуюсь случаем хочу спросить а вы случайно не работали с трупами... в смысле игровыми, не знаете ли какой скрипт мог бы понять
что труп находится в тригере и скажем устанавливать соответствующую стадию в квесте? Что только не делал но когда npc (мертв) он
не воспринимается тригером.

Хисимэль  Offline  Сообщение №1705 написано: 14 января 2017, 08:12 | Отредактировано: gangrena1972 - 14 января 2017, 09:17


Эльфийка-оборотень


100
Kepper, убийство персонажа можно еще отследить с помощью Event - там есть условие GetTimeDead и выбор того, кто умер. И скрипт не нужен тут.

Dsion, вот и я про что. И без скриптов условий очень много, главное - понять, за что они отвечают.

Сейчас разбираюсь с квестом:

Условия: идет диалог с НПС, квест1 завершается, ГГ читает книгу, начинается квест2, ГГ читает книгу и НПС сам окликает ГГ. То есть оба квеста завязаны на одного непися.

Работает не так, как задумывалось. Что не так?

1. В квесте1 ничего не добавляла.
2. В квесте2
со start game enabled галочку сняла, потому что есть запускающее событие - по туториалу Кальяна (создание простого пакета), с помощью прочтения книги.
Quest Stage: на стадии 0 добавила условие GetStageDone Quest:квест1 ==0 - хочу, чтобы квест2 начинался по завершении квеста1.
Альяс есть, один, это мой НПС
Бранч диалога оранжевый; GetIsId Actor: мой НПС
3. Сцена добавлена, ForceGreet пакет есть, скрипт в книгу добавлен, книга в игру добавлена

Что имею:

У меня по квесту диалог с НПС. Соответственно, я к нему подхожу и открываю диалоговое окно по квесту1, но! Там уже доступен диалог по квесту2. Хотя ни квест1 не закончен, ни книга не прочтена.

Отчего так?

Вот точно чувствую: какую-то мелкую, но существенную деталь упускаю...

озвучиваю моды
Kepper  Offline  Сообщение №1706 написано: 14 января 2017, 08:19 | Отредактировано: Kepper - 14 января 2017, 08:15



860
Aksyonov, если на вскидку, то сразу вспоминается квест ТБ с убийством императора.
Там в таверне ночные ворота надо положить труп орка-кулинара в бочку.

Тут подойдёт примерно такой скрипт.
Код
Scriptname pBD08PondTriggerScript extends ObjectReference  
Quest Property DB08  Auto

Event OnTriggerEnter(ObjectReference AkActivator)
Actor corpse = AkActivator as actor
If(corpse != NONE) && corpse.IsDead()
  Debug.Notification("Посылка прибыла.")

    If(DB08.GetStage()>=20)
  If(DB08.GetStage()<=30)
   DB08.SetObjectiveCompleted (15)
  Endif    
         Endif
      DB08.SetStage(50)
Endif

EndEvent

Добавлено (14 Января 2017, 11:19)
---------------------------------------------
gangrena1972, мы тут с Dsion предлагаем варианты без изменения ванильных квестов.
Чтобы не было конфликтов со сторонними модами.
Если ты хочешь изменять ванильные квесты, то там всё гораздо проще.


Хисимэль  Offline  Сообщение №1707 написано: 14 января 2017, 08:48 | Отредактировано: gangrena1972 - 14 января 2017, 08:51


Эльфийка-оборотень


100
Dsion, good   спасиб)

Вот додумалась по моей проблеме (писала чуть выше): в туториале кальяна оранжевый бранч, а может мне поменять на фиолетовый или зеленый? Чтоб не было диалога по квесту2 до того, как ГГ книгу прочтет?

озвучиваю моды
Dsion  Offline  Сообщение №1708 написано: 14 января 2017, 08:57 | Отредактировано: Dsion - 14 января 2017, 09:16



gangrena1972, лично я про книгу вообще ничего не понял. Что именно, по твоей задумке, должно запустить квест2? Прочтение книги или еще что-то? Если прочтение книги и книга не ванильная, лучше на неё повесить скрипт для запуска квеста2.
Вообще, раз ты таким занимаешься, нужно обязательно научиться пользоваться дебажными командами... В первую очередь:
консольная команда
sqv <имя квеста>
показывает статус квеста (запущен ли, стадия) и переменные на нем. Проверь, запущен ли твой второй квест. Если запущен до прочтения книги - почему?
и еше скриптовая команда
Debug.MessageBox("Text")
Debug.MessageBox(variable)
выводит из скрипта на экран окошко с тектом или переменной. Полезно, чтоб узнать, сработал ли какой-то кусочек скрипта и какие там переменные.

Хисимэль  Offline  Сообщение №1709 написано: 14 января 2017, 09:16


Эльфийка-оборотень


100
Dsion, завершение квеста1. Прочтение книги активирует начало диалога с НПС - нужно, чтобы он сам его начал.

про sqv - спасибо, я ее до сих пор не использовала  :) 

Про Дебагмессажбокс знаю, когда квест1 делала - им проверяла.

озвучиваю моды
Dsion  Offline  Сообщение №1710 написано: 14 января 2017, 10:08 | Отредактировано: Dsion - 14 января 2017, 09:29



Ну тогда в конец первого квеста - запуск второго. А на книгу - скрипт, который изменит стадию второго квеста, если тот запущен. А на диалоги и пакеты - проверку стадии.

Добавлено (14 Января 2017, 13:08)
---------------------------------------------
Чертов CK... Уже ж всё круто было, всё работало. А тут вдруг оказалось, что "Say once" на диалогах сбрасывается после перезагрузки игры. Ну какого черта?!


Форум » TES V: Skyrim » Мастерская » Вопросы по Creation Kit (продолжение старой темы) (Тут вы можете задать вопросы по редактору Скайрима)
Поиск:





Ответ на жалобу смотрите в разделе жалоб