В скриптах ничего особо не смыслю. Прошу о помощи, потому что искал сам, но так и не смог найти.
Необходим скрипт, при котором, пример:
есть призрак (не важна раса) и он в начале - Отключенный (Enable)
в 21.00 он становится Enable и, соответственно - видимым (шляется по пакетным задачам и т.д.)
в 6.00 утра - он опять Disable
и так - бесконечно.
То есть призрак именно отключается и включается по расписанию, а не просто зависает и становится невидимым, в него все втыкаются и т.д.
Возможно ли это сделать Без создания отдельного квеста или события (через триггеры и прочую жуть), а просто чтобы это его расписание было (аля пакет, но скрипт).
Видел подобные функции для активации предметов во время квеста, но там не было дезактивации можно ли подобный "квест" запрограммировать на бесконечную работу и не будет ли это грузить систему....
Заранее благодарю за помощь. Пардон, если такой вопрос уже рассматривали, 105 страниц не простой объем
Изменение репутации для пользователя Hommyak
HommyakOffline
Сообщение №2
| Тема: Вопросы по скриптам Papyrus
написано: 14 ноября 2022, 15:10
| Отредактировано: Hommyak - 14 ноября 2022, 16:47
Для меня это конечно монстр, но вроде все скомпилировалось.
Единственное, в property скрипта (где Add Property) не получается никак сделать Auto, он пишет либо Default, либо (если все же попытаться добавить) выдает окно назначения Reference. Так и должно быть?
Еще раз пардон, для меня это очень темная тема....
Изменение репутации для пользователя Hommyak
HommyakOffline
Сообщение №3
| Тема: Вопросы по скриптам Papyrus
написано: 14 ноября 2022, 16:47
| Отредактировано: Hommyak - 14 ноября 2022, 16:50
Я испытал скрипт. С первой загрузки - призрака нет, место пустое, никаких коллизий и т.д.
С 21-го до 22, он появляется. Правда он не исчезает обычным способом.
Примерно с 6-7-ми часов, он прыгает наполовину в землю и в таком виде пребывает все время. Если подождать время через "Т", то на улице ( в открытом мире) это не сработает и призрак так и остается на своем месте, я даже уходил из поля зрения моего и его, но он так и не исчезал.
НО, если зайти в дом и тут же выйти, то приходишь уже на пустое место. При этом, если подождать внутри (даже час) - на подходе к месту дислокации призрака - он будет, но почти сразу же исчезнет (когда просто "зашел - вышел" - его уже нет). Даже если простоять перед ним весь день после 6-ти утра и уйти в дом ждать часов в 20.00, то на выходе - он исчезнет перед тобой и может через 15 минут появиться опять.
Переход в другие ячейки не сподвигает призрака к исчезновению (к примеру призрак в Riverwood 2, я уходил и ждал в Riverwood).
Воот....
Изменение репутации для пользователя Hommyak
HommyakOffline
Сообщение №4
| Тема: Вопросы по скриптам Papyrus
написано: 14 ноября 2022, 17:38
| Отредактировано: Multigone - 14 ноября 2022, 19:32
Каждые десять секунд, не больше, стало вылазить окошко в котором один "+" написан, надо нажать "ОК" и через пару сек призрак появляется. Потом 10 сек и снова окно, снова "ОК" и он исчезает и так бесконечно
Большой скрипт исправлял, призрак действует точно так же как писал выше ( с исчезновением через заход в дом).
С большим есть еще одна забавность - defaultGhostScript не работает и эффект призрака только через Spellist ложится. Мне не принципиально, но может это тоже что-то говорит...
Изменение репутации для пользователя Hommyak
HommyakOffline
Сообщение №5
| Тема: Вопросы по скриптам Papyrus
написано: 15 ноября 2022, 20:35
| Отредактировано: Hommyak - 15 ноября 2022, 20:40
Скрипт будет потенциально стабильней, но апдейт 2 раза в сутки будет выполняться независимо от того, где находится игрок (а в первом случае апдейт отключается, пока ячейка, в которой находится актер, отсоединена).
Сработало! Большущее спасибо за помощь!
Этот скрипт будет работать только на НПС (Actor), так ведь? Тот же код нельзя применять к объекту (Object) или к FX анимации (заменив в коде Actor на Object?
А это будет считаться "тяжелым скриптом" или чем-то нагружающим систему?
Будут ли, предположительно, возникать конфликты с модами или квестами использующими События (Event)? Или это сугубо на одного (одних) НПС распространяемое действо и на весь остальной мир влиять не будет?
Пардон, если вопросы немного не корректные, я правда не особо пока что в скриптах понимаю....
Подскажите пожалуйста, можно ли в Нифскопе настроить НПС коллизию, по типу растения, то есть чтобы через него можно было насквозь проходить и НПС сам мог сквозь объекты проходить, но при этом не проваливался под землю, как при tcl и т.д.?
Или может в Ките есть настройка, аля "Игнорировать коллизию объектов"?
Возможно ли такое вообще и возможно ли без скриптов?
В Синем дворце на лестнице перед троном есть триггер. На нем находится вот такой скрипт:
---------------------------------
auto STATE waitingForPlayer
EVENT onTriggerEnter(objectReference triggerRef)
if triggerRef == getPlayer()
if MS05.GetCurrentStageID() < MS05DoNotStartRangeLowestStage || MS05.GetCurrentStageID() > MS05DoNotStartRangeHighestStage ;if outside of range
if !MQ302.isrunning()
GetOwningQuest().setStage(MS06StageToSet)
gotoState("hasBeenTriggered") ;trigger will only trigger once
endif
endif
endif
endEVENT
endSTATE
STATE hasBeenTriggered
; this is an empty state.
endSTATE
-----------------------
Я немного запутался как он работает. Из написанного я понял, что триггер - в режиме ожидания, пока игрок в него не зайдет. Зайдя в него, игрок может активировать квест MS06, если квест MS05 находится на стадии не ниже и не выше указанных параметров (MS05.GetCurrentStageID()). И если при всем этом уже запущен квест MQ302 уже активирован, то установить квест MS06 в такую-то стадию.
MS06 - "Пробуждение Королевы-Волчицы"
MS05 - "Поджигай!" (песнь о короле Олафе)
MQ302 - "Бесконечная пора", где нужно поговорить с Тулием, Ульфриком и прочими и заключить перемирие.
Я понимаю, что если эта "ген-линия" уже запущена, то нужно как-то по особому квест 06 запустить, но я не понял в чем выражается эта "особенность".....
Не могли бы Вы объяснить, все ли я так прочитал в скрипте?
Стоит ли использовать такие скрипты с подобными "кросс-ссылками", вместо установления условий Condition внутри других квестов?
Правильно ли я понял (по тексту скрипта), что данный триггер не вписывается в квест Алиасом, а стоит индивидуально, аля "глобальный игрок", а не "внутриквестовый"?
Как правильно понять на какую стадию квеста тут идет ссылка? Или тут говорится что стадии квеста вооообще включаться могут - GetOwningQuest().setStage(MS06StageToSet)
Является ли эта строка "универсалом" для триггеров (активирующих квесты или их стадии), чтобы после активации "выключать или удалять" эти триггеры - gotoState("hasBeenTriggered")? Если в скрипте триггера (OnTriggerEnter) нет подобных функций, он будет работать один раз или постоянно один и тот же квест запускать?
Еще, на одном иностранном форуме, видел утверждение, что триггеры, которые при заходе в них активируют квесты или их стадии, нужно привязывать к предметам. Это нужно всегда или это только в определенных случаях?
Заранее благодарю за помощь!
Пардон за, скорее всего, не во всем корректные вопросы.
Доброго времени суток. Если кто-то работал со звуками в СК - буду рад помощи. Ситауция такая: хочу привязать к объекту несколько звуков, чтобы проигрывались постоянно в случайном порядке. Для этого создал SaundDescriptor, забросил туда несколько звуковых файлов, включил Loop и привязал к объекту. В итоге постоянно проигрывается цикл из первого трека, а остальные не хотят. При отключении Loop проигрывается случайный трек, но лишь единожды, после него тишина. Попробовал вставить все это в звуковой маркер, поместил его рядом с объектом и получил тот же результат. Либо зацикленное воспроизведение, но только первый трек, либо же разные треки, но только один раз. Протестил ванильные маркеры, в которых включен Loop и наличествует несколько файлов, оказывается они тоже гоняют по кругу только первый. Это недоработка самой Бесезды или какое-то мое упущение? Есть вариант смиксовать все треки в один, но тогда каждый раз при заходе на локацию мы все равно будем слышать первый файл и он быстро приестся. Пробовал создать MusicType и включать его скриптом MusicType.Add(), но почему-то не работает. Подскажите выход, если у кого-то есть идеи.
З.Ы. Проблема решена. Вспомнил, что необходимая мне функция была реализована в модификации SpaceCore. Позаимствовал оттуда скрипт, переделал под себя и все работает )))
Сообщение №1843 написано: 27 Март 2017
Приветствую. Я понимаю, что уж столько лет прошло. Но не могли бы подсказать что все-таки за скрипт нужно писать в подобной ситуации?
Multigone, благодарю за такой объемный и подробный ответ. Но кажется это для меня еще слишком сложно даже для чисто теоретического понимания, пазл никак не складывается....
Изменение репутации для пользователя Hommyak
HommyakOffline
Сообщение №12
| Тема: Вопросы по моделированию
написано: 15 февраля 2023, 17:11
| Отредактировано: Hommyak - 15 февраля 2023, 18:34
Пардон, очень много вопросов после долгого поиска, на которые ни Ютуб, ни форумы так и не дали ответов (если я правильно искал). Помогите, если Вам не трудно. Не кидайте тапками пожалуйста.....
------------------
Хотел спросить по теме анимирования текстур через Нифскоп.
В данном видео товарищ говорит что метод предназначен для разных версий Фоллаута. Но интересует подходит ли он для Скайрима? Я пониманию, что при всей похожести, в играх есть много различий, но все же...
Есть еще один, правда он вообще для Стартрека....тут я даже не представляю о "внутренностях игры", но вдруг подходит....
https://youtu.be/0AKu92Opgg8
--------
Еще есть вопрос по теме коллизий.
В данном видео, товарищ показывает как сделать анимацию в Nifscope, но показывает объект, состоящий из двух частей с отдельными друг от друга коллизиями. В Скайриме я нашел подобное в виде Сферы Магнуса.
Подскажите - такое делается только в 3D Max-е или в Нифскопе, путем внедрения нескольких функций bhk, внутреннего создания ConvexShape-ов в разных файлах и переносом их в один единый - тоже можно? (метод с переносом данных коллизии читал в МК по, опять же, Фоллауту) Много говорят о том, что Niftools для версий Макса после 2013 года не корректно экспортирует и даже рекомендуют (видео есть от 2022 года) из более поздних максов экспортировать в 13-й и оттуда уже в Nifscope. Наксолько категоричны такие процедуры для корректной работы подобных коллизий или анимаций (да и всего другого)?
https://youtu.be/QutsnivHGoE
---------
Еще вопрос по поводу функций в Нифскопе - если BSFadeNod или NiNode сконвертировать через Сonvert в BSLodTriShape или BSTreeNod (не буду всю историю вопроса рассказывать) и все параметры заполнить по примеру подобных ванильных объектов, это будет работать как надо? Или это тоже через 3DMax с Havok модификаторами только закладывать в объект? (то есть делать ЛОДЫ в Максе и настраивать их, вертексы альфа и т.д.)
---------
Если Nifscope делать коллизию через Havok - Create Convex Shape, возникает один нюанс.
В разделе bhkRigidBody в параметрах есть пункты Unused, Unused bytes, Unused 1, 2 - их может быть и разное количество и Unknown 1,2 - я проверял ванильные файлы - параметры, в основном, рознятся даже у одинаковых объектов, имеющих лишь разное положение (лежит/стоит), хотя Unknown 1 часто имеет цифру 3 на третьей строке (иногда на всех остальных только 0), но не всегда, но Unknown 2, если он есть, у всех объектов разный. (в прикреплении скриншоты)
Не смог найти - что это за параметры и как их правильно настраивать, если делаешь коллизию в самом Nifscope.
---------
Заранее извиняюсь, если подобное уже обсуждалось и я просто не нашел - уже пару месяцев голову сломал.
Это руководство, по которому AmaccurzerO делает свои анимации (ссылки на видео что).
По скайримовским блокам в Нифскопе - увы.
Convex Shape по умолчанию уже рабочие, править не надо. Еще можно коллизии предметам делать в GECK фолловских через создание SCOL.
Возможно, и в СК есть эта функция.
Чтобы создать кликабельную ссылку в сообщении: нажать значок цепи в редакторе сообщений (между вставкой картинки и видео), Вставить ссылку > заполнить 2 поля - адрес ссылки и ее название отображаемое.
Благодарю.
"По скайримовским блокам в Нифскопе - увы." - пардон, переспрошу, - конвертировать нельзя, только в Максе сделать, так?
А как сделать 2 отдельных коллизии?... я нашел еще несколько предметов с таким устройством, например - SignWRBanneredMare01.nif - вывеска у таверны... Тоже только в 3D Max?