Прежде чем задавать вопрос - посмотрите в >> КАРТОТЕКЕ << Возможно, там уже есть готовый ответ.
Тема предназначена для общих вопросов. Прежде, чем тут что-то написать, посмотрите другие темы этого раздела. Вполне возможно, что они больше соответствуют тематике вашего вопроса.
Доброго всем времени суток! У меня такой вопрос к людям, лучше меня разбирающимся в создании модов.
Пытаюсь своей самодельной собаке приделать пакет поведения что бы она, собака во время боя находилась возле ГГ и никуда не убегала. Ну тоесть AI собаки работает, собака стоит рядом но не бросается на врага сломя голову, как делают все наши дорогие умные компаньоны.
Может кто знает как реализовать сие, подскажите если не трудно. Я просто что только не перепробовал, все равно существа или НПс сразу бросаются в бой как только ГГ или они сами атакованы.
"Выше закона может быть только любовь, выше права - лишь милость, и выше справедливости - лишь прощение.” (Патриарх Алексий II)"
Учить детей - это очень весело...нет, правда! Главное все делать с душой.
"Мы любим не за что то, а потому что любовь - это образ Божий в человеке!"
вдруг вспоминает эпизоды увиденного ранее события (камера показывает некий интерьер с неписями, переходит от одного непися к другому) и герой какбэ понимает,
Честно говоря, не совсем понял такое эмоциональное предложение - чтобы, при чтении, видео включалось что-ли?
Не судите, да не судимы будите...
Изменение репутации для пользователя JupiterJour
JupiterJourOffline
Сообщение №2073
написано: 22 ноября 2012, 02:46
| Отредактировано: Joopeeter - 22 ноября 2012, 02:53
То же дело! А ещё можно в описании мода написать: - Сохраняйтесь перед каждым диалогом, что бы иметь возможность, после пяти-шести загрузок - осмыслить прочитанное. А можно в диалогах, поставить цифровые сноски - смотри 1.01.05 и к моду приложить текстовую распечатку всех диалогов. 1. диалог Герасим - Му-му 01 первая реплика Герасима - Ууу! 0.5 пятый ответ собачки - Гав! Или использовать в качестве участников диалога "иностранные" рассы. Например: негр - китаец. Или "бандитские" фракции: чёрт - рейдер. Тогда вообще придумывать не надо, какие там диалоги на русском у иностранцев и бандитов! Да много чего можно! Мы ведь всё можем. Попытка юмора! Наверное не вовремя. Вопрос то серьёзный "Заморачиваться" или Нет, для своих игроков!
хоть я и против того, что в разбомбленной Пустоши в домах и сарайчиках встречаются работающие комьютеры.
Работающие через двести лет после войны водопровод, освещение и прочие роботы с ядеркольными автоматами немного озадачивают, да. Стимпанк нелеп и иррационален, но любим-то мы его не за это! (впрочем, моей толерантности на молекулярные синтезаторы вегасовских DLC уже не хватает)
"Будть дбры, пмэдлнее, я зписыую!" При первом проходе ощущения могут отличаться. Я вот читаю вроде не по складам, но 150 знаков (это в третьем, а в NV, емнип, больше) хорошенько осмыслить за дефолтное время не успеваю. Не говоря уже о том, что это раздражает, когда всё время подгоняют. Впрочем, аудитория этого мода всё равно не я.
Quote (meosen) все равно существа или НПс сразу бросаются в бой как только ГГ или они сами атакованы.
Используй функцию SetRestrained. Актёр как живой, но всё ему становится до лампочки.
А можно поподробней! На ком должен быть скрипт? Блок begin OnStartCombat - на игроке, если игрок начинает бой, а если собака начинает, то и на ней. Или в скрипте на собаку можно сделать проверку, участвует игрок в бою - то как. GetCombatTarget, но ведь тут нужна цель, то есть кто атакует. Я использовал SetRestrained, но там у меня был триггер и проверка на нахождение в нём, а в другом случае непись и расстояние до него. Сам скрипт писать не нужно, просто дайте направление. Я сам хочу попробовать! Если не получится, я тогда покажу что у меня получилось и вы поправите.
Пытаюсь своей самодельной собаке приделать пакет поведения что бы она, собака во время боя находилась возле ГГ и никуда не убегала.
Пробовал пакет Guard с целью на ГГ, маленьким радиусом и флажком Continue During Combat?.. Учитывая поправку на fCombatGuardRadiusMin и fCombatGuardRadiusMult.
Изменение репутации для пользователя JupiterJour
JupiterJourOffline
Сообщение №2080
написано: 22 ноября 2012, 04:36
| Отредактировано: Joopeeter - 22 ноября 2012, 04:37
Проверил что сам предложил. Работает, но фигово. Оглушённый на середине движения актёр иногда начинает перебирать ногами на месте и с этим надо будет что-то придумать.
Блок begin OnStartCombat - на игроке, если игрок начинает бой, а если собака начинает, то и на ней. Или в скрипте на собаку можно сделать проверку, участвует игрок в бою - то как. GetCombatTarget, но ведь тут нужна цель, то есть кто атакует.
Если актёр напарник (записан в плеерскую команду или фракцию), то он всё это делает сам, то есть нападает на врагов игрока и через это срабатывает блок OnStartCombat. Если, конечно, храбрость, злобность и флаг "кому помогать" позволяют.
Пробовал пакет Guard с целью на ГГ, маленьким радиусом и флажком Continue During Combat?.. Учитывая поправку на fCombatGuardRadiusMin и fCombatGuardRadiusMult.
Доброго времени сток!
Пробовал, я что только не пробовал пытаясь добиться от существа спокойствия при сражении. Какие только пакеты поведения не прописывал.
1) И Sandbox - бросается на врага.
2) Guard - бросается на врага убегает за горизонт и трагически гибнет.
3) Ambush - никакой реакции, так же улетает стрелой за горизонт и потом только трагическая табличка о гибели напарника.
4) Попробовал даже нетрадиционный вариант. Прописал скрипт на проверку расстояние от ГГ до собаки. Когда собака удаляется на 4000 (футов наверное) ей, скриптом, добавляется пакет Follow и собака тутже начинает бежать обратно к игроку. При достижении игкроа, сриптом же сей пакет поведения удаляется и возвращается нормальное поведение животного.
Вроде как просто и гениально......на деле же выглядит так: Собака срывается с места, бежит за противником, удаляется на 4000 футов, вдруг зависает на месте думает-думает-думает-думает- придумала и побежала обратно к ГГ. Добежала, бросилась на врага, отбежала, вернулась....так и бегала туда-сюда. Не впечатлило.
"Выше закона может быть только любовь, выше права - лишь милость, и выше справедливости - лишь прощение.” (Патриарх Алексий II)"
Учить детей - это очень весело...нет, правда! Главное все делать с душой.
"Мы любим не за что то, а потому что любовь - это образ Божий в человеке!"
Пакет Guard именно с флагом Continue During Combat (для уверенности ещё снять галку с Warn/Attack Behaviour)? Без этого флага как только начинается бой, собака забывает на время про пакет - ей неважно, что там до боя было, хоть Guard, хоть Sandbox...
Изменение репутации для пользователя meosen
meosenOffline
Сообщение №2083
написано: 22 ноября 2012, 05:22
| Отредактировано: meosen - 22 ноября 2012, 05:24
Пакет Guard именно с флагом Continue During Combat (для уверенности ещё снять галку с Warn/Attack Behaviour)? Без этого флага как только начинается бой, собака забывает на время про пакет - ей неважно, что там до боя было, хоть Guard, хоть Sandbox...
По своему опыту скажу, все это до лампочки. Снимайте галки, ставьте галки, континью, не континью. Актер во время боя НЕУПРАВЛЯЕМ. Единственное, что смог придумать у себя для подобного случая - иммитация боя. Актер, находящийся во вражеской фракции нападает на ГГ, если ему позволяет агрессия, или убегает, если не позволяет, третьего не дано. Флаг continue during combat срабатывает, если сам ГГ начнет убегать. В этом случае, после преследования, актер в конце концов вспоминает, куда же он должен был идти. Актеры, выполняющие пакет follow, accompany, guard и другие пакеты с ГГ в качестве центра, игнорируют все эти дальности, которые только можно выставить. Что я смог с этим сделать: сдедлал фракцию "врагов" не вражеской, а нейтральной, а ее членам повесил и отрегулировал пакет guard. В этом случае моя "собака" сидела на привязи, хотя оппоненты и были "красные", когда я к ним приближался. Аналогичного эффекта можно добиться с помощью флага Aggro Radius Behavior.
====================== Мод "Нью-Йорк" на русском: 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
Изменение репутации для пользователя meosen
meosenOffline
Сообщение №2085
написано: 22 ноября 2012, 12:09
| Отредактировано: meosen - 22 ноября 2012, 12:10
В настройках пакетов поведения компаньона ИВЫ, я вроде как видел режим ожидания без нападения и агрессии...не знаю правда как это выглядело в реальной жизни.
"Выше закона может быть только любовь, выше права - лишь милость, и выше справедливости - лишь прощение.” (Патриарх Алексий II)"
Учить детей - это очень весело...нет, правда! Главное все делать с душой.
"Мы любим не за что то, а потому что любовь - это образ Божий в человеке!"
Правильно ли я вас, сэр, понял что надо прописать собаке дополнительную фракцию в которую надо будет потом включить всех, агрессивно настроенных актеров?
1. Нет, не правильно. Если у Вас собака компаньон (player teammate), то она полностью разделяет и поддерживает все межфракционные отношения ГГ. 3. Да, не утешительный. Тот способ удерживать собаку на привязи на виду у "красных" актеров, который я описал, годится для отдельных сцен, и не годится в качестве одного из режимов поведения компаньона. 4. Я не знаю, как устроен компаньон Ива, но отключение компаньону агрессии на некоторое время реализовать не сложно. В этом случае он тоже вроде как должен сидеть на цепи, правда до тех пор, пока ему не станет страшно. Но ведь можно менять агрессию и в зависимости от того, ведет ли бой хозяин. Просто в этом направлении я никогда не копал, с одной стороны, а с другой стороны, не люблю вешать на актеров скрипты, работающие в каждом фрейме.
====================== Мод "Нью-Йорк" на русском: 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
но отключение компаньону агрессии на некоторое время реализовать не сложно. В этом случае он тоже вроде как должен сидеть на цепи, правда до тех пор, пока ему не станет страшно. Но ведь можно менять агрессию и в зависимости от того, ведет ли бой хозяин. Просто в этом направлении я никогда не копал, с одной стороны, а с другой стороны, не люблю вешать на актеров скрипты, работающие в каждом фрейме.
Подскажите этот способ? Я столько уже перепробовал что мне уже не страшно.
"Выше закона может быть только любовь, выше права - лишь милость, и выше справедливости - лишь прощение.” (Патриарх Алексий II)"
Учить детей - это очень весело...нет, правда! Главное все делать с душой.
"Мы любим не за что то, а потому что любовь - это образ Божий в человеке!"
Изменение репутации для пользователя Spalny_Vagon
Spalny_VagonOffline
Сообщение №2088
написано: 22 ноября 2012, 18:01
| Отредактировано: Spalny_Vagon - 22 ноября 2012, 21:01
Подскажите этот способ? Я столько уже перепробовал что мне уже не страшно.
Так я же уже подсказал. Могу просто расписать идею более подробно. 1. Одноразовая команда на уменьшение агрессии. В результ-скрипте, когда компаньону отдается команда "сидеть", одновременно дать команду и на уменьшение агрессии (setAV aggression 0). А когда будет отдаваться команда на смену режима, агрессивность восстанавливается до нормы: setAV aggression 1 (0 - не агр., 1 - агр., 2 - очень, 3 - дальше уже некуда). 2. Интерактивная смена уровня агрессии компаньона в зависимости от команды "сидеть" и наличия (отсутствия) боевки. На компаньона вешается скрипт вроде этого:
Code
begin gamemode if [режим "сидеть"] ; переменная, соответсвующая команде "сидеть". if player.isincombat && getaAV aggression == 0 setAV aggression 1 elseif player.isincombat == 0 && getaAV aggression == 1 setAV aggression 0 endif endif end
Вместо combat можно отслеживать и какой нибудь другой параметр, например, имеется ли в руках у игрока оружие (if player.isWeaponOut). Т.е. игрок достал оружие - у собаки шерсть дыбом, убрал оружие, собака успокоилась. Да, хочу добавить, что player.isInCombat не означает, что игрок воюет, эта функция возвращает 1 (истина) в том случае, если КТО-ЛИБО или активно разыскивает ГГ для того, чтобы вздуть, или уже нашел. Т.е. если ГГ стоит и руки в карманах, а его ест какой-нибудь яо-гай, то он (игрок), все равно isInCombat.
====================== Мод "Нью-Йорк" на русском: 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
Я малость неточно выразилась, когда сказала, что не ставлю экстендеры. Они у меня, конечно, установлены и Шутер Ремовер в том числе, но просто я ими не пользуюсь. И нефиг цеплятся к словам. А насчет движения камеры... Ипатов правильно понял - нужен показ именно после прочтения заметки. Эмоциональные обстоятельства, если уж так непонятно, могу разъяснить для медленночитающей аудитории: в игре было некое событие в некоем интерьере с участием нескольких неписей. Потом по ходу игры ГГ находит записку, по содержанию которой понимает, что к этой записке имеет отношение кто-то из участников давнего инцидента. И он пытается "вспомнить всё" - то есть - прокручивает в голове тот эпизод и вспоминает, кто был в тот момент в том месте. И камера какбы заново прокручивает ту ситуацию и показывает лица неписей. А вообще-то мне этот эпизод нафиг не нужен. Просто обсуждение предыдущего вопроса о скорости прокрутки диалогов почему-то пошло не в том направлении, собеседники были в плохом настроении (проблемы на работе, сдох любимый хомячок и т.п.) и уже начали переходить на личности (а ты кто такой? нет, это ты кто такой (С)) Пришлось менять тему разговора и спросить первое, что пришло в голову. А тут как раз по телеку шел "Турецкий гамбит"... И всё-таки, возвращаясь к скорости диалогов. Специально вчера и сегодня для проверки "погоняла" несколько солидных модов от разных уважаемых модмейкеров - все без исключения "не заморачиваются" насчет этого. Пяти секунд хватает, чтобы прочитать грамотно составленный текст в 150 знаков (и то - такие тексты довольно редки, обычно обходятся 90 - 100 знаками). И в комментариях к модам нет ни одной жалобы, что кто-то не успевает прочесть текст. ЗЫ. могу предложить еще один способ, кроме как прилагающегося к моду ридми и создания иностранных расс: каждую строчку диалога продублировать заметкой и добавлять игроку по прочтении. Чтоб неторопясь почитал на досуге. Всего доброго...
возвращаясь к скорости диалогов. Специально вчера и сегодня для проверки "погоняла" несколько солидных модов от разных уважаемых модмейкеров - все без исключения "не заморачиваются" насчет этого.
Надо это изменить! Сделать жутко заманчивый мод, и чтобы какой-нибудь NPC в средине долгого нудного монолога проговаривал "там вы можете нажать кнопки тридцать два и после паузы девяносто четыре...", и чтобы прочитать это было единственным способом узнать, как открыть дверь к самому вкусному (навтыкать туда античитерных примочек начиная с анти-unlock двери и заканчивая выкусыванием некомпилированного текста скриптов из мода). Вот тут-то и выяснится, успевают они читать или им пофигу что там вообще пишется!
Изменение репутации для пользователя Demolir
DemolirOffline
Сообщение №2091
написано: 23 ноября 2012, 03:54
| Отредактировано: Demolir - 23 ноября 2012, 08:40
Эмоциональные обстоятельства, если уж так непонятно, могу разъяснить для медленночитающей аудитории:
О, это камень и в мой огород явно Ну вообще-то как был поставлен вопрос, таким был и ответ (или наоборот), никто ни к чему не цеплялся. Была лишь просьба прояснить ситуацию с заметкой, и все. Если мои слова кого-то задели - прошу прощения, это случайность. Впредь буду сурьезен как никогда.
В остальном, согласен, 5 сек. более чем достаточно для чтения немых диалогов, вероятно по этой же причине вышеуказанный мод USV так и не был создан для Fallout - просто в нем не было особой необходимости.
Вопрос назрел: почему-то квест (непринципиально, какой) не переключается на предыдущую стадию, несмотря на отмеченный чекбокс Allow repeated stages. Пробовал провернуть подобное мероприятие в разных модах, с разными квестами (собственного изготовления), но не получается.
Вопрос назрел: почему-то квест (непринципиально, какой) не переключается на предыдущую стадию, несмотря на отмеченный чекбокс Allow repeated stages. Пробовал провернуть подобное мероприятие в разных модах, с разными квестами (собственного изготовления), но не получается.
Должно переключать. А я вот другой глюк наблюдал неоднократно. Если Allow repeated stages отмечено, то для этого квеста не работает getstage, т.е. невозможно определить, какая на текущий момент имеется стадия.
====================== Мод "Нью-Йорк" на русском: 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
Тот способ удерживать собаку на привязи на виду у "красных" актеров, который я описал, годится для отдельных сцен, и не годится в качестве одного из режимов поведения компаньона.
Можно попробовать отслеживать [напарник].GetCombatTarget (по идее, для актёров должно работать лучше, чем для ГГ), сразу записывать их в одну специальную фракцию и взаимно разнимать [напарник].SCAOnActor и Target.SCAOnActor. А после боя выписывать из фракции.
Можно попробовать отслеживать [напарник].GetCombatTarget
Мне тут один пользоватьель, пожелавший остаться неизвестным, сообщил, что у него собаки сидят на привязи безо всяких ухищрений. Они не компаньоны, у них отдельная фракция, они в ally c ГГ и в enemy c врагами ГГ. У них пакет guard, ГГ - объект охраны и он же центр охраны, дальности в обоих случаях 256 и отмечен чекбокс continue during combat. Злобность aggression, смелость brave. Кажется, ничего не забыл.
====================== Мод "Нью-Йорк" на русском: 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
m777717, Привет! Как вариант, ты в GECK не подключаешь нужное. File-Data Затем в окне Data поставить галки на нужных мастер файлах и esp. Обычно ставят: FalloutNV.esm - мастер файл FalloutNV._lang.esp - русификатор update.esp - апдейт Остальное снимают! GECK по умолчанию не загружает больше одного мастер файла. Смотри в Картотеке подбробней! Ну и свой esp если был создан и нужно в нём работать. Плюс выделив свой esp нужно нажать кнопку Set as Active File - сделать активным файлом. То есть все измения будут сохраняться в нём, не затрагивая игровые файлы. Пока.
Мы вышли из дома, когда во всех... Поздно вышли!
Изменение репутации для пользователя m777717
m777717Offline
Сообщение №2100
написано: 24 ноября 2012, 20:48
| Отредактировано: KAIN48 - 24 ноября 2012, 21:01