В гранатах он нужного не увидит, в гранатном эффекте просто стоит условие GetIsCreatureType, что пациент является роботом. С силовой бронёй надо по-другому. Скрипт на эффект типа такого (требуется FOSE, тип скрипта - Effect):
ref Armor
Begin ScriptEffectStart
set Armor to GetEquippedObject 2
if IsPowerArmor Armor
DamageAV health 50
endif
End
Это в простейшем виде. По желанию можно проверить, надета ли силовая шапка, сделать расчёт урона похитрее или ещё что-нибудь придумать.
Скрипт - в базовый эффект. Включить галку Touch. На всякий случай ещё включить Self, Target, Hostile (чтоб пациент агрился) и Detrimental (чтоб вскрикивал). Базовый эффект - в эффект гранаты безо всяких условий. Эффект гранаты искать не в гранате: он прикреплён ко взрыву, который прикреплён к прожектилю, который прикреплён к гранате. Ну или сделать свой такой же эффект, если не требуется заменить эффекты всех гранат в игре.
Изменение репутации для пользователя AnotherJupiter
Можно, но только частично или для личного использования. Просто наделать условий GetEquipped и тупо перечислить в них все-все силовые брони из ванили, DLC и модов, с которыми играешь (там будет отдельный затык со ссылками на esp-файлы, если эти моды в виде esp, а не esm). В результате, понятное дело, работать будет только на перечисленными в условиях бронях, плюс мод будет требовать те DLC и моды, на которые он ссылается.
Изменение репутации для пользователя AnotherJupiter
AnotherJupiterOffline
Сообщение №3
| Тема: Скрипты
написано: 23 декабря 2023, 13:20
Уж сколько раз твердили миру: не объявляй переменных в результ-скрипте, не объявляй переменных в результ-скрипте... Тем более DoOnce. Эт'ж результ-скрипт, обернулся один раз - и всё. Конечно, она не работает. Есть же столько хороших мест, чтоб объявить переменные: квесты, реф-копии, раздел глобальных переменных (глобально для DoOnce, конечно, жирно). Объявил где следует - и обращайся к ней из любого другого места сколько влезет.
Изменение репутации для пользователя AnotherJupiter
Ну, вообще иногда такие переменные работают. А иногда они не работают. Там какая-то сложная фигня, связанная с тем, что неименованные скрипты в игре на самом деле как-то привязаны к именованным, и могут их поломать и сами поломаться. Это надо в сообщениях Ипатова искать, он, кажется, объяснял. А я потом, как щас вспомнил, пытался коряво в меру разумения пересказать в "Картотеке".
А так же, скажите пожалуйста, как сделать, что бы жффект применялся только когда герой бер>т в руки конкретный ствол...
через гетисайди пробовал, и не работает, но может я не так сделал
Имеется ввиду придать оружейный эффект конкретному экземпляру ствола, в смысле конкретной реф-копии? Никак. Только сделать другой базовый объект для уника, который был бы во всём такой же, как массовое оружие, но только с эффектом. Поместить в игру одну единственную копию этого объекта (или всучить её игроку каким-то иным способом). Будет как бы улучшенный экземпляр обычного оружия, но с точки зрения игровой механики это другое оружие.
Изменение репутации для пользователя AnotherJupiter
Добавлю, что если под "конкретной единицей" понимается конкретный экземпляр из многих, то надо его подменить экземпляром другого объекта с другим BaseID.
Вроде, актор-эффекты вида Ability, Addiction и Desease постоянны. https://geckwiki.com/index.php?title=Actor_Effect
Цитата igelschmigel
каждую секунду прирастает на 1. А у меня, кажется, прирастает на 0.01
Дык всё верно, так и должно быть. Функция выдаёт время, прошедшее с предыдущего её, этой функции, срабатывания. За каждый оборот скрипта переменная прирастает на то время, которое прошло с момента прошлого срабатывания функции, то есть за сколько времени этот оборот случился. Объектные скрипты работают раз за фрейм (кадр), десятки раз в секунду, как раз и выходят сотые доли. https://geckwiki.com/index.php?title=GetSecondsPassed
Изменение репутации для пользователя AnotherJupiter
написал скрипт, который запирает/отпирает дверь в его хижину, в зависимости от времени суток.
На всякий случай напоминаю о галочках отпирания и запирания дверей в настройках AI пакета.
Цитата YikxX
смущает затененная галка Persistent Reference он должна быть активной.
Неписи-люди не могут быть непостоянными ссылками, поэтому галка затенённая, неснимаемая. У кричеров галка активная, можно ставить и снимать.
Цитата JIuKBuDaToR
Почему появляется стандартная дефолтная фраза "Мне пора идти" и как ее убрать?
Дефолтные фразы находятся в дефолтных или точнее, Generic, квестах, имеющих условием наличие у актёра дефолтного голоса. Актёры с другими типами голоса не будут пользоваться дефолтными квестами и говорить дефолтные фразы дефолтными голосами. Но, емнип, просто убрать Voice type нельзя. Какой-нибудь, хоть пустой, Voice type должен быть создан и назначен, а то будут какие-то проблемы... быстрое проскакивание текста, вроде бы.
Ну, можно и через Choices, если не хочется совсем расставаться с дефолтными фразами типа "Ага, пока." и "Это не просто так заперто!"
Изменение репутации для пользователя AnotherJupiter
AnotherJupiterOffline
Сообщение №11
| Тема: Помощь по G.E.C.K.
написано: 16 марта 2025, 19:29
| Отредактировано: AnotherJupiter - 16 марта 2025, 19:30
с этой галкой нпс не может запереть дверь в свою хижину из своей хижины
Как минимум в Мегатонне все неписи свои двери так и запирают, в том числе те, которые вообще не выходят из дому. Мойра Браун, например. Ну, скрипт так скрипт, как хочешь, я просто напомнил, а то про эти галки часто забывают.
Цитата JIuKBuDaToR
у меня было указано только две реплики, мои которые я сделал
А в Generic квесте - другие. Раз появляются реплики и оттуда, и оттуда, значит, оба квеста подходят по условиям. Я про условия квеста. Которые на первой вкладке квеста. Но вроде да, для специального редко используемого прощания подходит простой топик с галкой Goodbye через Choices. Можно и обычное, многоразовое прощание организовать через Choices, но тогда, если правильно помню, придётся эти Choices совать во все ветки диалога, ни разу не возвращаясь в корень, в котором появится Generic-прощание, что весьма неудобно в мало-мальски длинном разговоре.
Вроде, для всех прощаний обычно все используют топик GOODBYE просто с разными дополнительными условиями в ответах.
Цитата JIuKBuDaToR
Некорретно у меня работает скрипт.
Это всё в гейммоде делается, а не в менюмоде.
Изменение репутации для пользователя AnotherJupiter
А насчет уникального голоса - то есть, можно дать НПЦ голос Аматы, например (у нее в войс-типе не стоит галка "разрешен в диалогах")
Не помню, как эта галка работает. Обычно я просто создавал новый Voice type, назначал его NPC - и тот сразу отвязывался от всех имеющихся Generic диалогов. Ну, писал ему новые неозвученные привет-пока в своём квесте. Если прорабатывать хорошенько, то надо и прочие стандартные топики прописать: бой, кражу и тому подобное на других вкладках квеста. Вся озвучка, естественно, пропадает, зато можно строить диалоги как обычно, используя Choices только где они действительно нужны.
Изменение репутации для пользователя AnotherJupiter
Вроде, для всех прощаний обычно все используют топик GOODBYE просто с разными дополнительными условиями в ответах.
С другой стороны, вроде бы, тогда ответы на "Мне пора" будут рандомно выхватываться из разных подходящих по условиям квестов с поправкой на приоритет (или без поправки? всё забыл нафиг ), так что иногда NPC будет говорить стандартную фразу, а иногда новую.