Модератор форума: КсюXa, ApeX  
Форум » Fallout: New Vegas » Мастерская » Garden of Eden Creation Kit - 2 ч. (Обсуждения, вопросы и все нюансы.)

Garden of Eden Creation Kit - 2 ч.
Swindler  Offline  Сообщение №1 написано: 2 октября 2011, 17:05 | Отредактировано: ApeX - 7 октября 2018, 20:34



Garden of Eden Creation Kit - 2 ч. - один из самых важных отделов нашей Мастерской. Перечень вопросов огромен, проще написать о чём здесь спрашивать нежелательно. Не нужно спрашивать про скрипты, про NifSkope, работу в 3D и графических редакторах.


Смотри свою проблему в Картотеке,
Пред тем, как в теме свой вопрос задать,
Возможно, там уже и есть ответы,
Которые тебе хотелось знать.


kalan-1996  Offline  Сообщение №991 написано: 10 июня 2012, 10:19



20
как партотировать оружие из fallout new vegasa в fallout 3 и обратно?

Паха007  Offline  Сообщение №992 написано: 10 июня 2012, 10:25 | Отредактировано: Паха007 - 10 июня 2012, 10:46


Страж времени


857
Цитата kalan-1996

как партотировать оружие из fallout new vegasa в fallout 3 и обратно?


Нужно встроить оружие (модель) в какое-нибудь стандартное оружие из Fallout 3 согласно алгоритму из этого туториала. И наоборот. Ну и соответственно произвести соответствующие настройки (анимация перезарядки, снаряд и т. д.).

Я есмь Альфа и Омега, начало и конец. Жаждущему дам даром от источника воды живой.
JOSAM  Offline  Сообщение №993 написано: 17 июня 2012, 01:32



3
Подскажите, как оружию из мода добавить положенные ему перки?

Monroe  Offline  Сообщение №994 написано: 17 июня 2012, 03:24



857
Цитата Паха007

Нужно встроить оружие (модель) в какое-нибудь стандартное оружие из Fallout 3 согласно алгоритму из этого туториала. И наоборот. Ну и соответственно произвести соответствующие настройки (анимация перезарядки, снаряд и т. д.).


А можно и FNEdit'ом

ITU  Offline  Сообщение №995 написано: 17 июня 2012, 10:12 | Отредактировано: ITU - 17 июня 2012, 11:52



995
такой вот вопросик, а как в диалог вставить ник игрока, который был указан в начале игры?

диалоги меня бесят просто
вот какого фига:

не срабатывают условия диалога
диалог появляется даже когда вещь присутствует у игрока ((, просто РРРР

Паха007  Offline  Сообщение №996 написано: 17 июня 2012, 13:00 | Отредактировано: Паха007 - 17 июня 2012, 13:03


Страж времени


857
Цитата ITU

не срабатывают условия диалога


И не сработает, пока не поменяешь subject на target.

Я есмь Альфа и Омега, начало и конец. Жаждущему дам даром от источника воды живой.
Вис  Offline  Сообщение №997 написано: 17 июня 2012, 17:10



298
Возможно изменить вот этот скрипт (при нажатии на "говорить" открывается инвентарь НПС) так, чтобы ещё НПС поворачивался в твою сторону (в пакете стоит галка Headtracking Off, чтобы попусту не вертелся). В общем как в оригинале - нажал "говорить", к тебе повернулся НПС, но вместо диалога открылся его инвентарь. Вот скрипт
Code

Begin OnActivate

OpenTeammateContainer 1

End

JupiterJour  Offline  Сообщение №998 написано: 17 июня 2012, 18:46 | Отредактировано: Joopeeter - 17 июня 2012, 18:48


_


Значит так. Скрипт на NPC-ходячем чемодане:
Code
scn zzzScript

float timer
short Activated

Begin GameMode

if Activated==1
   if timer>0
    set timer to timer - GetSecondsPassed
   else
    OpenTeammateContainer 1
    set Activated to 0
   endif
endif

End


В топике GREETING создаём для него приветствие с отмеченной галкой Goodbye. Не обязательно из слов, можно из одних пробелов.
В поле Result Script пишем:
Code
set zzzRef.timer to 1.5
set zzzRef.Activated to 1

где:
zzzRef - это Reference Editor ID непися
1.5 - время задержки между активацией и открытием, можно поменять по вкусу.

Не до конца уверен насчёт рациональности предложенного решения (всё-таки GameModе), но работает.

Вис  Offline  Сообщение №999 написано: 17 июня 2012, 18:56 | Отредактировано: Вис - 17 июня 2012, 19:02



298
Joopeeter, и вновь СПАСИБО!

Добавлено (17.06.2012, 22:56)
---------------------------------------------
И ещё: если у меня несколько одинаковых НПС, то нужно для каждого создавать отдельный GREETING?

JupiterJour  Offline  Сообщение №1000 написано: 17 июня 2012, 19:07


_


В каком смысле одинаковых? Несколько копий одного и того же базового? Хотя отдельные квесты в любом случае не нужны, но в этом случае скрипт немного усложнится.
Если же у них разные BaseID, то проблемы вообще нет.

Вис  Offline  Сообщение №1001 написано: 17 июня 2012, 19:10



298
Да, несколько копий одного и того же.

Spalny_Vagon  Offline  Сообщение №1002 написано: 17 июня 2012, 19:24


Мастер


Цитата Joopeeter

В топике GREETING создаём для него приветствие с отмеченной галкой Goodbye.


Я бы все-таки попробовал обойтись без скрипта на "чемодан" и просто вставить вместо этого:
set zzzRef.timer to 1.5
set zzzRef.Activated to 1
вот это:
OpenTeammateContainer
А еще можно попробовать для разворота НПС к игроку вставить в левый результ-скрипт команду look player.

======================
Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294
Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
ITU  Offline  Сообщение №1003 написано: 17 июня 2012, 19:27



995
Цитата Вис

И ещё: если у меня несколько одинаковых НПС, то нужно для каждого создавать отдельный GREETING?


условия GetIsID идет на одного базового непися и все диалоги его копий такие же

JupiterJour  Offline  Сообщение №1004 написано: 17 июня 2012, 20:44 | Отредактировано: Joopeeter - 17 июня 2012, 21:05


_


Цитата Вис

несколько копий одного и того же.


Тогда результ-скрипты убираем и присваиваем переменным значения в блоке OnActivate. RefID в этом случае можно не давать. Скрипт на базовом неписе:
Code
scn zzzScript

float timer
short Activated

Begin OnActivate

;Look player                   эта строка не нужна, просто я показываю, куда ещё пробовал вставлять Look
set timer to 1.5
set Activated to 1
Activate;                         эту строку совместно с Look не использовал

End

Begin GameMode

if Activated==1
         if timer>0
          set timer to timer - GetSecondsPassed
         else
          OpenTeammateContainer 1
          set Activated to 0
;  StopLook        эта строка тоже не нужна, она прекращает действие функции Look
         endif
endif

End

Смысл всех этих действий: каждая копия базового NPC будет использовать одну и ту же фразу из топика GREETING, но на каждой из них при активации будет запускаться своя, отдельная копия скрипта, со своим таймером и прочим.

Spalny_Vagon  Offline  Сообщение №1005 написано: 18 июня 2012, 04:10


Мастер


Цитата Joopeeter

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


Левые результ-скрипты срабатывают ДО фразы, правые - ПОСЛЕ.

======================
Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294
Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
Вис  Offline  Сообщение №1006 написано: 18 июня 2012, 07:57



298
Цитата Joopeeter

Тогда результ-скрипты убираем и присваиваем переменным значения в блоке OnActivate. RefID в этом случае можно не давать. Скрипт на базовом неписе:


Поставил этот скрипт. Теперь НПС поворачивается, затем начинается диалог, а после диалога открывается чемодан. Как убрать этот диалог?

JupiterJour  Offline  Сообщение №1007 написано: 18 июня 2012, 09:39 | Отредактировано: Joopeeter - 18 июня 2012, 09:40


_


Цитата Вис

Как убрать этот диалог?


А флаг Goodbye случайно не убрал? Если да - верни на место. Диалог начинается с твоей фразы или с общей? Если с общей - проверь приоритет квеста. Если ничего не помогает (глюкануло, бывает), то вместо Activate поставь SayTo player GREETING. Или перенеси фразу в другой топик, тогда будет SayTo player [название топика].
Вообще, можно для разворота непися к игроку использовать не фразу, а пакет, нацеленный на игрока. Тогда вместо Activate будет AddScriptPacckage [название этого пакета]. Можно поэксперементировать с расстоянием до игрока (радиус) и результ-скриптами пакета, может, получится использовать их сочетание для настройки поворота-открытия. Тогда можно будет выкинуть весь блок GameMode.
И попробуй вариант без Activate, но с Look и StopLook (тогда фраза никакая не нужна). Может, это у меня Look глючит, а то вот только что и Kill работало через раз.

Вис  Offline  Сообщение №1008 написано: 18 июня 2012, 10:32



298
Всё, спасибо!

JupiterJour  Offline  Сообщение №1009 написано: 18 июня 2012, 10:55


_


Поправка
Цитата Joopeeter

Но в случае неозвученной фразы, "проговариваемой" субтитрами, правый результ-скрипт срабатывает моментально, ещё до появления субтитров.


Кроме случаев, когда фраза вызвана через SayTo - тогда скрипт срабатывает примерно через 5 сек.

Spalny_Vagon  Offline  Сообщение №1010 написано: 18 июня 2012, 11:37


Мастер


Цитата Joopeeter

Кроме случаев, когда фраза вызвана через SayTo - тогда скрипт срабатывает примерно через 5 сек.


На мой взгляд, все это слишком сложно. Я бы вставил в скрипт один единственнй блок для доступа к контейнеру и еще один для разворота в сторону игрока:
begin onactivate plaer
open teammatecontainer 1
end
begin onpackagestart [аi-пакет]
look player
end
В этом случае не нужны ни квесты, ни диалоги, и скрипт ресурсов практически не отбирает.

======================
Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294
Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
KAIN48  Offline  Сообщение №1011 написано: 18 июня 2012, 17:38


Шаманистый шаман


Привет всем!
Цитата Spalny_Vagon

begin onpackagestart [аi-пакет]


Не можете подсказать для примера, какой тип лучше подойдёт и какие настройки должны быть обязательными.
Как я понял из обсуждения этот AI пакет нужен что бы NPC повернулся к игроку.
Пакет Диалога можно использовать?
Я сначала подумал, что есть какой то флаг, заставляющий непися следить за движением игрока, а там как раз наоборот HeadTracking Off.
Я пробовал SanBox дефолтный, да непись поворачивается лицом к подходящему игроку, но не всегда.
Пока.

Мы вышли из дома, когда во всех... Поздно вышли!
Spalny_Vagon  Offline  Сообщение №1012 написано: 18 июня 2012, 17:58


Мастер


Цитата KAIN48

Не можете подсказать для примера, какой тип лучше подойдёт и какие настройки должны быть обязательными.
Как я понял из обсуждения этот AI пакет нужен что бы NPC повернулся к игроку.
Пакет Диалога можно использовать?
Я сначала подумал, что есть какой то флаг, заставляющий непися следить за движением игрока, а там как раз наоборот HeadTracking Off.
Я пробовал SanBox дефолтный, да непись поворачивается лицом к подходящему игроку, но не всегда.
Пока.


Пактет нужен для того, чтобы он был как таковой. Для блока begin onpackagestart нужен пакет, без пакета работать не будет. Диалог не подходит.
Я использовал для проверки sandbox собственного изготовления. Если пакет стандартный, то look лучше затолкать в скрипт, чтобы не портить родной пакет. А если пакет свой собственный, то лучше look player разместить прямо в нем, в результ-скриптах, в двух местах, оn begin и on change.
А вообще, для того, чтобы дать исчерпывающий ответ, нужно знать, в чем заключается глобальная задача. Нужно, чтобы НПС все время смотрел на игрока? Поставьте его в угол и не мучайтесь.

======================
Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294
Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
KAIN48  Offline  Сообщение №1013 написано: 19 июня 2012, 08:21


Шаманистый шаман


Spalny_Vagon привет!
Цитата Spalny_Vagon

А вообще, для того, чтобы дать исчерпывающий ответ, нужно знать, в чем заключается глобальная задача. Нужно, чтобы НПС все время смотрел на игрока? Поставьте его в угол и не мучайтесь.


Да нет глобальной задачи!
Я почитал обсуждение и решил, что задача именно в том, что бы развернуть игрока лицом, к игроку. Так как с доступом к инвентарю смысла нет огород городить. Добавить команду AAATestCountFemaleRef.OpenTeammateContainer 1 в Resut Script (End) и всё.
Ну и пусть будет Привет - инвентарь - Пока.
Что квест создавать, что AI пакет разницы по времязатратам особой нет.
Ну и не глобальная задача была и есть, добавить этот вопрос и ответ на него в Картотеку. Вдруг кому то, кроме Bис захочется не торговать, а просто забирать вещи.
Пока.

Мы вышли из дома, когда во всех... Поздно вышли!
Вис  Offline  Сообщение №1014 написано: 19 июня 2012, 09:29



298
Цитата KAIN48

Вдруг кому то, кроме Bис захочется не торговать, а просто забирать вещи.


Ну тут не много другая цель была, наоборот, не забирать, а давать вещи. Впрочем, как только мой мод пропустят станет всё ясно.

JupiterJour  Offline  Сообщение №1015 написано: 19 июня 2012, 15:25


_


Цитата KAIN48

добавить этот вопрос и ответ на него в Картотеку


Эммм... а стоит ли? Разве что тот скрипт, который в сообщении 1090. Там уж стопудово рабочий, хоть и без свистелок.

KAIN48  Offline  Сообщение №1016 написано: 19 июня 2012, 15:39


Шаманистый шаман


Привет всем!
Цитата Joopeeter

ммм... а стоит ли? Разве что тот скрипт, который в сообщении 1090. Там уж стопудово рабочий, хоть и без свистелок.


Понятно?!
Вис, а ты как сделал, черкни если прочитаешь и время есть!
Пока.

Мы вышли из дома, когда во всех... Поздно вышли!
JupiterJour  Offline  Сообщение №1017 написано: 19 июня 2012, 15:55 | Отредактировано: Joopeeter - 19 июня 2012, 20:01


_


Присоединяюсь к вопросу!
Цитата KAIN48

Вис, а ты как сделал



Отсоединяюсь, уже посмотрел.
А что "манекены" шевелятся это баг или фича? А то тут где-то было обсуждение насчёт того, как делать статуи из актёров. Даже, по-моему, в "Картотеку" внесено.

Собственно обсуждение вот тут началось и где-то тут закончилось. Скриптовый способ вполне обратимый.
A тут, так сказать, квинтэссенция.

Ещё немного удивила необходимость заталкивать "манекены" куда надо вручную. Раз уж они живые, пусть сами топают!
Скрипты, конечно, усложнятся изрядно.

Spalny_Vagon  Offline  Сообщение №1018 написано: 19 июня 2012, 17:30


Мастер


Цитата Joopeeter

Насчёт Look. Функция работает крайне ненадёжно. Например, хоть ГЕКК-вики и не пишет об этом, Look не отменяет действие флага Headtracking Off. Более того, она часто не срабатывает или срабатывает с большой задержкой при смене пакета с Headtracking Off на другой, из какого скрипта её ни вызывай (объектного, эффектного, результирующего в пакете или квесте - без разницы).
Например, вот так не фурычит (если текущий пакет с Headtracking Off):


Ну, Вы прямо настоящее исследование замутили. Спасибо. "Для себя" я редко использовал команду look, по прямому назначению, собственно говоря, один раз, и вставлял ее в результ-скрипты пакета sandbox. Разумеется, будет она работать или не будет в сочетании с отмеченным флагом Headtracking Off, я не проверял. А вот для того, чтобы отменить какую-нибудь принудительно запущенную анимацию, команду look я использовал довольно часто.

======================
Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294
Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
Вис  Offline  Сообщение №1019 написано: 20 июня 2012, 09:00



298
У меня предмет при активации в инвентаре телелепортируется ко мне с помощью команды "moveto.player". Вся проблема в том, что он телепортируется то впереди, то позади, то сбоку. Возможно сделать так, чтобы он телепортировался на моё место или не много впереди?

JupiterJour  Offline  Сообщение №1020 написано: 20 июня 2012, 11:05 | Отредактировано: Joopeeter - 20 июня 2012, 11:27


_


Цитата Вис

Возможно сделать так, чтобы он телепортировался на моё место или не много впереди?


Подозреваю, что предмет и так телепортируется на твоё место, но игра предусмотрительно смещает его в сторону, чтоб сам же ты в нём не застрял.
Чтобы не оставлять это на произвол игры, добавим немного тригонометрии:
Code
float Offset
float OffsetX
float OffsetY
float Angle
float TrigAngle

Begin OnEquip;                         взято для примера, замени на нужный блок

set Offset to 100;                     100 - расстояние, на котором возникнет предмет, можно поменять
set  Angle to player.GetAngle z

     if Angle<90
       set TrigAngle to 90 - Angle
     else
      set TrigAngle to 450 - Angle
     endif

set OffsetX to Offset*Cos TrigAngle
set OffsetY to Offset*Sin TrigAngle

zzzRef.MoveTo player OffsetX OffsetY
Set Angle to Angle+180;                      см. примечание
zzzRef.SetAngle z Angle;                      см. примечание

End

Примечание. Те две строки разворачивают предмет мордой лица к игроку. Если это не требуется, то они не нужны.

Кстати, насчёт тех "манекенов". Обязательно запиши их во фракцию игрока (вкладка Factions, правый клик -> New -> PlayerFaction), а то стрельнёшь в такого, а он чего-то убегает.

Форум » Fallout: New Vegas » Мастерская » Garden of Eden Creation Kit - 2 ч. (Обсуждения, вопросы и все нюансы.)
Поиск:





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