• Прежде, чем задать вопрос, пожалуйста, убедитесь, что такой вопрос не задавался раньше. Старайтесь описать суть вопроса как можно подробней. • Прежде, чем опубликовать ответ на вопрос, пожалуйста, убедитесь, что обладаете необходимыми для этого знаниями. Старайтесь cформулировать суть ответа как можно лаконичней. • При желании ответить в приватном порядке, пожалуйста, воспользуйтесь ЛС. • При желании поблагодарить ответившего, пожалуйста, воспользуйтесь кнопкой "+" полезного сообщения.
Сообщения, не относящиеся к вопросам по редактору СК, ответам на них или уточнениям, являются оффтопом и могут быть удалены.
Попробуйте использовать скрипт actor1.EvaluatePackage() вместо actor1.GetActorReference().EvaluatePackage() - и запустить скрипт в конце или начале диалога на нужном топике а не где бы то ни было ещё. У меня работает только 1 конструкция. Actor1 как обычно указываем в проперти на актера.
Миш, спасибо! Стало гораздо быстрее. Единственное - все-таки actor1.GetActorReference().EvaluatePackage() иначе редактор не понимает.
Сейчас поиграюсь: я пока только на 1 топике поставила условие (для актора1), а попробую и на втором (для актора2) - может, вообще мгновенно будет.
Добавлено (05 Февраля 2018, 11:44) --------------------------------------------- А есть возможность избавиться от подвисания сцены?
Выглядит подвисание так: НПС подбегает к Вилкасу, но диалог у них не начинается, оба стоят и тупят.
Я думаю, это происходит тогда, когда у Вилкаса запрограммирован диалог с одним из Соратников, но он не начинается, потому что начинается мой. Как правильно прописать на топик или ивент условие, что другая сцена не начинается?
Возможно, я ошибаюсь с причиной подвисания. Тогда в чем она может быть?
озвучиваю моды
Изменение репутации для пользователя Aksyonov
AksyonovOffline
Сообщение №2012
написано: 5 февраля 2018, 08:58
| Отредактировано: Aksyonov - 5 февраля 2018, 09:06
Да если одного выбираем в проперти все ai пакеты пересчитываются у одного npc, но если мы говорим о самом гг - допустим что бы ai пакет у него заработал нужно обязательно скриптом убирать сперва управление у гг если мы говорим о AI пакетах, вот скрипт для отключения управления:
То есть если нужно что бы у гг запустился AI пакет надо пусть даже через сцену - у него нужно убрать управление, возможность управлять гг лично у меня затормаживало запуск диалога у гг через сцену, может быть поможет.
Но с работой в сценах я ещё сам не особо разобрался, но уже успел понять что их использовать удобней чем обычные AI пакеты, к тому же так как сцены всегда запускаются поверх любых аи пакетов - их использовать очень круто вместе с аи пакетами, допустим есть у нас пакет на персонаже следования и он постоянный - NPC следует за гг всегда - и что бы каждый раз не завершать этот пакет и не присваивать другой можно использовать запуск сцены для запуска каких то реплик, при этом после запуска сцены - она успешно завершается и NPC снова бежит за гг, ну и конечно реализовывать разговор между несколькими NPC куда проще сценами.
Этот код не использовал: actor1.GetActorReference().EvaluatePackage() Этот работает быстрее: actor1.EvaluatePackage()
actor1.EvaluatePackage()
+ Проперти: Actor Property actor1 Auto
компиляция должна пройти
Если нужно выбрать Player по такому же принципу:
PlayerX.EvaluatePackage()
Actor Property PlayerX Auto
Изменение репутации для пользователя Хисимэль
ХисимэльOffline
Сообщение №2013
написано: 5 февраля 2018, 10:28
| Отредактировано: gangrena1972 - 5 февраля 2018, 10:02
Aksyonov, а, точно, проперти я не изменяла! Сейчас пробну твой вариант )
Добавлено (05 Февраля 2018, 13:00) --------------------------------------------- Пробнула. Но он не работает: в смысле, сцена не убыстряется. Видимо, для неигрока все же нужен GetActorReference()...
С причиной подвисания пока не разобралась.
Добавлено (05 Февраля 2018, 13:28) --------------------------------------------- Попробую поставить на свою сцену (так как она не очень важная) галочку Interruptible (прерываемая). Возможно, это решит проблему с зависанием.
Вот мне тоже интересно, в чем разница конкретно - применительно к сценам. Думаю, Dsion может объяснить, но его чего-то не онлайн сегодня... В сцене, возможно, алиасам приоритет перед акторами? Как бы то ни было, у меня работает проперти типа ReferenceAlias и не работает Actor.
Фишка в том что для теста своего квеста сцен в нём которые завязаны с основным сюжетом - мне постоянно нужно перемещаться по главному сюжету в разные места - при этом промотать эти места чит кодами не всегда получается а проходить очень муторно.
Фишка в том что для теста своего квеста сцен в нём которые завязаны с основным сюжетом - мне постоянно нужно перемещаться по главному сюжету в разные места - при этом промотать эти места чит кодами не всегда получается а проходить очень муторно.
Тогда делай как бы черновые проверки, и записывай в блокнот, что ты наваял, а потом сделай на ряд операций одну чистовую с чистой сохранки. Если менял что-то в скриптах - однозначно придется с чистой проверять.
озвучиваю моды
Изменение репутации для пользователя Aksyonov
AksyonovOffline
Сообщение №2018
написано: 6 февраля 2018, 12:36
| Отредактировано: Aksyonov - 6 февраля 2018, 12:37
Сейчас я не могу пока что быть уверенным в том что скрипт будет написанный мной на 100% работать, поэтому мне и нужно проверять скрипты именно в конкретном месте как там будет работать уже на месте, сто раз уже делал так что на черновеке всё работает а после завершения какой нибудь главной стадии сюжетной скрипт не работает.
Проще когда квест вообще не взаимодействует с сюжетной линией либо когда мы берем просто в качестве условия появления каких то объектов в нашем квесте если гг прошел основной сюжет до какой то стадии - это проще, плохо что нет какого нибудь генератора или чистых сохранений вообще с началом любого сюжетного или не сюжетного квеста - всех которые могут начинаться - сохранение до начала квеста и после. Было бы круто.
С повышением уровня ГГ, в игре начинаются встречаться НПС с большим запасов здоровья. Я хочу сделать так, чтобы с ростом уровня ГГ у НПС повышался запас здоровья, но это оставались теже ActorBase. В принципе достаточно, чтобы с ростом уровня ГГ, характеристики НПС росли в два раза быстрее чем у ГГ. Но, как я понял, количество получаемых очков за уровень, у НПС и ГГ одинаково. Повышать уровень НПС в два раза быстрее чем у ГГ - не вариант, так как перестанут работать некоторые заклинания завязанные на уровень цели. Я не нашел как с помощью перка повысить базовые характеристики, а жаль так, как там есть функция умножения. Так что придётся это делать с помощью магических эффектов или ещё как-нибудь.
Варианты решения: 1. Изначально у НПС небольшой запас здоровья (50), как у оригинальных НПС первого уровня Дополнительные здоровье, мана и выносливость добавляются магическим эффектом С проверкой уровня игрока Например: +100 если уровень игрока выше 5 +75 если уровень игрока выше 14 +75 если уровень игрока выше 21 Минусы: - на обработку условий тратится машинное время. Когда во время боя я повысил уровен, то НПС довольно оперативно(но не сразу) получили усиление. Это значит проверка происходит, либо каждые несколько секунд, либо при изменении уровня игрока, но сама проверка заняла много времени, так как пришлось обработать много НПС. - когда начинаешь бить НПС, то шкала жизней над ним начинает убывать только, когда собьёшь всё дополнительное здоровье. - наверняка регенерация завязана на основное, а не дополнительное здоровье, в результате она получится весьма хилой.(у большинства НПС её нет) - здоровье у НПС во время боя может поменяться скачкообразно
2.У НПС изначально большой запас здоровья, но магическим эффектом на них наложены штрафы, которые снимаются по мере роста уровня игрока. Минусы: - в начале боя шкала здоровья у НПС не полная. - НПС, гады такие, когда пьют зелье здоровья/лечатся, то могут полностью восстановить его, несмотря на штрафы. - в начале игры слишком рано падают на колени. Когда изначально у них 20% здоровья, то достичь 5-10% очень просто. - здоровье у НПС во время боя может поменяться скачкообразно - в начале игры повышенная регенерация
3. Вариант когда характеристики правятся с помощью с скрипта не подходит так, как функция SetActorValue воздействует на конкретного Actor, а не на шаблон по которому актёр создаётся. И вешать данный скрипт на каждого НПС в игре - плохая идея. Тем более на некоторых НПС и так висит скрипт.
Может кто придумает ещё варианты, как поднять здоровье НПС, не используя LeveledActor.
ПС Не знаете где прописывается выбор варианта озвучки? У меня сейчас почти все НПС молчат. Только извозчик разговаривает по русски. Полная переустановка не помогла.
Грешу на эндерал, но не уверен. Я его установил, когда русская версия вышла, но затем снёс. В основном я играл без звука, поэтому не сразу заметил. Да и много времени прошло.
Всем привет - такой вопросик: как могут повлиять наличие или отсутствие того или иного алиаса в квесте на невозможность проигрывания реплики у NPC? Есть подозрение что какой то алиас мешает включению нужных реплик у NPC, алиаса вообще могут этому мешать? - Удаляю алиасы NPC говорит - но в квесте больше 50 алиасов не знаю какой именно мешает запуску диалогов у NPC.
Kepper, есть один вариант, но он подразумевает использования и магического эффекта и перка: - магический эффект так же повышает здоровье, но на 1 (или на 10, смотря как используешь функцию); - в перке прописываешь Mod Incoming Spell Magnitude, в условиях вставляешь, что бы работало только на это заклинание (через GetID или через EPMagic_SpellHasKeyWord [и прописываешь кейворд своего эффекта]); - и уже в этой конструкции используешь умножение... ... правда, как ты собираешь делать проверку уровня игрока через перк - вот в чём вопрос.
EndState ___________________________ Смогла сделать только в таком варианте: несколько целей в локации, на каждой активатор со скриптом, в котором указана новая цель (его можно сделать изначально невидимым). Минус в том, что приходится тыкать каждый раз в новый активатор.
Есть ли возможность задать маршрут от цели к цели, не используя дополнительные активаторы?
озвучиваю моды
Изменение репутации для пользователя Lexo
LexoOffline
Сообщение №2025
написано: 11 февраля 2018, 15:40
| Отредактировано: Lexo - 11 февраля 2018, 15:49
Добрый день, г-да мастера. Хочу задать вопрос от новичка, надеюсь, не прогоните
Проблема такая - написала скрипт, где вещи перебрасывались из одного сундука в другой, и ошибочно указала не тот сундук. Но после исправления вещи продолжают перебрасываться в ошибочный сундук. Хотя все исправила и заново пересохранила. И та же история со всеми исправлениями. Как-то получается, что он не воспринимает новое.
И еще - почему-то те сундуки, что привязаны к скриптам, не могу передвинуть (в пространстве). То есть, в Крите я их передвигаю, а в игре снова стоят на старых местах. Хотя с другими предметами такой проблемы нет Как это можно исправить? Или я что-то пропускаю? Заранее спасибо. и простите, если не в ту ветку написала
ladyinna, попробуйте загрузить сохранение игры до внедрения в нее скрипта. Движок игры зачастую, как в cерии Fallout, так и в TES, продолжает читать записанные данные из сейвов.
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №2028
написано: 14 февраля 2018, 18:16
| Отредактировано: Dsion - 14 февраля 2018, 18:10
ladyinna, ага, вон ApeX дело базарит... Сундук указан в Property, да? Если вручную не указать иначе, то они считываются только при Init-иализации объекта. И это правильно. Скрипты должны иметь возможность изменить значение property и она не должна сбрасываться к исходному значению.
В fallout (не уверен за Скайрим) бывают еще const property: int property myConstProperty auto const Их нельзя изменить в игре и они не сохраняются в сейвах. Можешь попробовать изменить тип property на const. А если не поможет и загружать сейв без мода - не вариант, то можно установить правильное значение property из консоли... Только я уже не помню, какая там команда. Будет нужно - найду.
Добавлено (14 Февраля 2018, 21:16) --------------------------------------------- еще можно попробовать поменять имя проперти (не проверял) или заменить проперти на заполненный алиас (это работает)
Изменение репутации для пользователя ladyinna
ladyinnaOffline
Сообщение №2029
написано: 14 февраля 2018, 18:47
| Отредактировано: ladyinna - 14 февраля 2018, 20:00
gangrena1972, да это у всех такая проблема походу. Потом само исправляется, только не заметил отчего. Возможно нужно сам ландшафт как-то изменить, чтобы отличался от первоначальной плоскости. (сделать небольшой рельеф, порастягивать вверх\вниз и т.д.)
Изменение репутации для пользователя Mephistopheles
Добрый день всем. Решил попробовать добавить в игру уникальный топор Изгоев - Вересковый гейс. Про него есть статья в Скайримвики и там указанно, что его без консольных команд не получить. В Ките его, почему-то, нет. Ни как в качестве самого оружия ни зачарования на урон против нордов - т.к думал создать его по новой. Гейс можно как-то достать?
Делаю навмеши в открытой локации (exterior). Пытаюсь соединить навмеши двух ячеек кнопкой Toggle preferred pathing (Р). Делаю это так: ставлю границы близко, выделяю обе границы (именно границы, не точки), нажимаю Р. Появляются объемные прямоугольники по линии границ, но... У меня он цвета цикламен и высокий - вид в сечении прямоугольник. А в ванильном Скайриме должен быть зеленый и в сечении квадрат.
Кто делал навмеши в открытой локации, подскажите, пожалуйста, что я делаю неправильно?
озвучиваю моды
Изменение репутации для пользователя DarkVetal
DarkVetal
Сообщение №2035
написано: 24 марта 2018, 18:01
| Отредактировано: DarkVetal - 24 марта 2018, 18:19
gangrena1972, из личного опыта: точки навмешей одной ячейки должны быть рядом с точками соседней, больше шанс соединения. Для соединения ячеек нужно нажимать кнопку "финализировать навмеши". Финализация проходит в той ячейке, где расположена камера. Чтобы нпс ходили через дверь, под маркером двери должен быть навмеш, после финализации становится зеленым, значит телепорт сработает.
Изменение репутации для пользователя Хисимэль
ХисимэльOffline
Сообщение №2036
написано: 24 марта 2018, 21:20
| Отредактировано: gangrena1972 - 24 марта 2018, 21:21
DarkVetal, а, все-таки финализировать... Это я тоже пыталась. Значит, у меня камера была не в том участке, где я пыталась соединить навмеши. Точки ставила одну в другую по всем трем координатам. Про двери знаю, спасибо!
озвучиваю моды
Изменение репутации для пользователя UnlimitedCloud
В общем, я сделал пару перков. И решил их вставить в древо. В редакторе дерева навыков активны только две функции при щелчке ПКМ - "Добавить перк" и "Set Associated Skill", а остальные серые. И новые стрелочки не хотят появляться. Когда сохраняю и лезу в игру проверить, то обнаруживаем, что в древе этого навыка только этот новый перк, а остальные пропали. В чём проблема может быть?
Когда небеса падут, а земля покроется пеплом, я буду сидеть на вершине мира и смеяться над вашими трупами (с).
Изменение репутации для пользователя Mephistopheles
MephistophelesOffline
Сообщение №2038
написано: 25 марта 2018, 16:01
| Отредактировано: ApeX - 25 марта 2018, 17:10
При попытке настроить диалоги для нового НПС, вылезает ошибка. В чём может быть проблема? http://i103.fastpic.ru/big....9c0.jpg Каквыкладывать скриншоты на сайт. ApeX
Mephistopheles, не зарегистрирована данная библиотека DLL файлов, нужно зарегистрировать. В старой ветке форума обсуждалось это и не раз. Нужно в поиске сайта по кодовому слову (FlowChart) пошарить, авось и попадётся инструкция. Я так каждый раз после слёта Винды делал. Авось и вам повезёт.
Друзья, внезапно обнаружила не очень приятный баг в своем моде: когда копаешь руду (причем любую), первое копание иногда бывает бесконечное и безрезультатное, приходится останавливаться и копать снова.
В моде я делала свою рудную жилу и вроде ничего ванильного сознательно не меняла.
Где можно поискать ошибку?
озвучиваю моды
Форум » TES V: Skyrim » Мастерская » Вопросы по Creation Kit (продолжение старой темы) (Тут вы можете задать вопросы по редактору Скайрима)