надевая N броню все (ну разве что кроме напариников) были ко мне враждебны.
В одной стадии в результскрипте указать, что при наступлении этой стадии фракция A, фракция B, фракция С и т.д. (сколько нужно фракций) делается враждебной фракции игрока. Естественно - те фракции, которые изначально враждебны к ГГ указывать не надо. В другой стадии - возвращаем все на место А на одежду повесить скрипт, в котором указать: при экипировке устанавливать нужную стадию этого квеста, при разэкипировке (снятии) одежды - устанавливать другую стадию Это я так, навскидку. Наверное, возможен и более красивый и правильный вариантТакой вариант довольно работоспособен; более часто используемый способ - без квеста, не меняя отношения фракций на ходу - создать фракцию, к которой всегда враждебны все известные фракции, при надевании предмета экипировки включать ГГ в эту фракцию, при снятии исключать.
Недостатки обоих способов видны сразу. Неизвестные моду фракции (добавленные дрегими модами) не будут реагировать не переодевание. По варианту с PlayerFaction получать по голове будут и другие персонажи, входящие в эту фракцию, даже если переодевались не они. По варианту с отдельной фракцией начнутся политические проблемы - что-то я спросонья не могу вспомнить, какое будет отношение к персонажу, принадлежащему к двум (две обычное дело) фракциям, одна из которых явный друг, а другая явный враг. Если какой-то мод исключит ГГ из PlayerFaction (а она ничем не особенная, просто ГГ обычно в неё входит - так же, как обычно ГГ имеет пип-бой - но необычные вещи никем не запрещены), результаты будут совсем не те, какие надо...
В целом - поскольку реакция друг/враг построена на фракциях (Disposition в фолауте выродилась в выражение лица) - точно, красиво и аккуратно задачу Astarte65 вовсе не решить. А если говорить о неаккуратных решениях - я бы запустил сканер (обожаю сканеры, втыкаю их куда надо и куда не надо) объектным эффектом той брони, который будит мониторить территорию вокруг ГГ и всем, у кого есть до ГГ line of sight, принудительно запускать startcombat в адрес ГГ. Не глядя на фракции, по-портосовски: "я дерусь, потому что дерусь!"
Мисс Фортуна - она каким образом вызывается в момент боя?
Так же как Paralyzing Palm - неподконтрольно моду. Ради этого был создан специальный тип перка, так что всё обрабатывается в непостижимых глубинах движка. Как и для всего остального, что упомянуто в обработчике особых объектов - в записи DOBJ, в GECK это Gameplay/Default Objects - лучше не пытаться это трогать.
А просто персонажей как можно заставить появляться во время боя? Допустим, нужно, чтобы три "человека" появлялись с неба, когда дела у ГГ плохи и он при смерти.
Если мод в состоянии поймать нужный момент - вполне нормально тут же исполнить PlaceAtMe (с последующим Disable+MarkForDelete, когда нужда пропала), если они штампованые и полностью стандартизованые, либо MoveTo Player по началу происшествия и MoveTo маркер в спецхранилище по окончании, если желательно, чтобы это были постоянные мобы, а не одноразовые клоны.
Кто-нибудь знает как мне поставить в своём доме стенд для пупсов, чтобы все найденные и поставленные на стенде в Мегатонне пупсы ставились и на мой стенд?
Сделай копию BobbleheadDisplayMegaton "Стенд для коллекции пупсов" [ACTI:000416B1] или BobbleheadDisplayTenpenny "Стенд для коллекции пупсов" [ACTI:000A8ED8] для установки в своём доме, сделай копию BobbleheadDisplayMegatonScript [SCPT:000A8FC0] или BobbleheadDisplayTenpennyScript [SCPT:000A8ED9] и привяжи её к копии стенда. Помести экземпляр готового стенда в свой дом, на него поставь экземпляры пупсов с BobbleheadPlacedAGL "Пупс "Ловкость"" [ACTI:000416B3] до BobbleheadPlacedUARM "Пупс "Без оружия"" [ACTI:000416C7]. Пропиши эти экземпляры в скрипт своего стенда вместо мегатонских или башенных, которые ты брал за оригинал. Получится просто работающий стенд.
Если хочешь, чтобы вид всех стендов (какие пупсы стоят, каких нет) совпадал - поменяй стендам скрипты. Например, перенеси все if ... Have ... Enable плюс RemoveItem из блока OnActivate в блок OnLoad и Enable выдавай на все пупсы этого типа, на всех стендах. Правда, в таком случае пупсы будут сами выпрыгивать из кармана при виде стенда - если хочется, чтобы они ставились всё-таки вручную, добавь ещё серию флажков-переменных в скрипт квеста BH01 "Collectable Bobbleheads" [QUST:00038959], в OnLoad активируй все экземпляры всех пупсов согласно новым флажкам, а в OnActivate по старым флагам удаляй пупса из кармана, активируй соответствующий эеземпляр пупса на активируемом стенде и ставь новый флаг, чтобы на остальных стендах такой пупс тоже появился.
Ipatow, А тогда уже не легче скопировать реф ссылки с темпени, и вписать их в скрипт стенда с Мегатонны? Или я чего то не понимаю...
Пупсы на стенде в мегатонне, в башне и на этом отдельном стенде - это же самостоятельные экземпляры (reference) пупсов-активаторов. То есть если ничего не трогать, открыть доступ к обоим стандартным стендам и поставить один пупс в мегатонне, а другой в башне, то они так и будут стоять - один там, другой там (а не по два на каждом).
А если добавить реф ссылки пупсов, на каждый пупс с мегатонны, добавить реф пупса с темпени?
Я примерно так и говорил - если переписать скрипты и каждое включение показа пупса заменять на включение всех таких пупсов (или, что эстетичнее, переделать самостоятельных пупсов в связки через enable parent и включать их связками - по крайней мере, не понадобится снова править скрипты при добавлении ещё одного стенда), стенды будут копировать друг друга.. и заодно не потребуется делать отдельный базовый активатор для каждого стенда, поскольку скрипт будет один и тот же. Но это скорее идея, которую стоило реализовать при выпуске игры, чем то, что резонно делать модом...
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №187
| Тема: ВОПРОСЫ по моддингу
написано: 6 декабря 2011, 11:24
| Отредактировано: Ipatow - 6 декабря 2011, 11:26
В практическом смысле - портирование возможно постольку, поскольку мод содержит объекты, существующие и в обливионе, и в вегасе. То есть портировать модификации оружия (навесные прицелы и т.п.) нелепо - их нет в обливионе. Портировать моды, работающие с перезарядкой предметов, обучением, личным влиянием (угрозы, уговоры и т.п.) - тоже нелепо, поскольку ничего этого нет в вегасе. Для сравнения - броню и причёски начали портировать с самого рождения бетесдовского фолаута и портируют до сих пор.
Меня интересуют пакеты АИ, обращённые из Пустоши в ДЛС... Например - пакет Трэвел, с путешествием из Пустоши в ДЛС, повешенный на НПС, действует так - НПС стоит на месте. Что нужно НПС-у для перебегания в ДЛС?
А это часом не зависит от DLC и топографии? Куда пешеходного маршрута нет, туда пешком и не дойти. Например, на базу Изгоев, где стоит симулятор Анкориджа, пакет должен спокойно довести (это территория, добавленная DLC). До внутренней территории симулятора (добавленной тем же DLC) - не поведёт: маршрут не существует.
А часом, не имелось ввиду - куда-то поблизости от предполагаемого местонахождения базы Изгоев? Потому что, даже туда, куда маршрут имеется, но это - территория, добавленная DLC, пакет не ведёт.
Вот та дверь через парковку от велосипедной фабрики - за дверью уже DLC. Компаньоны туда за ГГ прекрасно следуют - в такое место всё равно травел-пакет отказывается находить дорогу? Я не проверял, но это было бы странно, это же всё ещё карта оригинального фолаута, просто зона добавлена модом (DLC ведь просто мод, в варианте "золотого GOTY" он даже никакой не даунлоадящийся), все навмеши там нормально расписаны...
Люди, подскажите, как сделать чтобы отдав команду одному NPC(или по рации) его начали выполнять все NPC's в фракции. (подобие бионойдов)
Мод не способен узнать список всех, кто состоит во фракции - учитывая, что другой мод может по ходу игры менять мобам принадлежность к фракциям. Фракция - это только реакция: на другие явно указанные фракции всегда, на преступления против фракции - если стоит флажок отслеживать преступления. Иногда фракция может иметь отношение к действиям - вроде того, что члены фракции "курильщики" (и только они) порой курят - но это происходит неуправляемо и для разных членов фракции совсем не одновременно.
Было бы здорово сделать такой мод, чтоб после достижения 100 уровня навыка, можно было качаться дальше + к этому сделать дополнительные ветки к прокачке. Также по мере дальнего развития перса мобы тоже не стоили на месте или можно новых мобов добавить.
Навыки используются в формулах с явной предпосылкой, что их значение строго между нулём и единицей (100 это проценты). Если их значение вывести за этот диапазон, в движке игры начнутся неожиданные деления на ноль, извлечения квадратных корней из отрицательных чисел и подобные беды - поэтому возможность выхода блокирована движком резко и безжалостно.
Динамика мобов движком игры предусмотрена и может быть изменена по сравнению со стандартной - хотя выход уровня за максимум, пусть он и не столь катастрофичен, как превышение предела навыков, тоже нештатное происшествие.
есть параметры отвечаюшие за то на какую дистанцию могут открывать огонь нпс а то сделал чтоб палили из далека но нпс всёравно сначало идёт к гг а только потом открывает огонь
Номинальная дальность стрельбы - свойство оружия. Превышение номинальной дальности стрельбы - свойство боевого стиля. Запрет боевому стилю превышать номинальную дальность стрельбы - свойство оружия.
Типичный пример оружия, запрещающее стрелять дальше номинала - самый простой огнемёт. Потому что прожектиль дальше попросту не летит.
Это если в третьем варианте не хочется целиться в конкретный стул (например, чтобы одним пакетом усадить полную аудиторию студентов, лучше их всё-таки на один стул не сажать), можно к NPC прилинковать мебель, а в пакете при выборе Location выбрать Linked Reference (выдать пакет каждому студенту, и каждый сядет на свой стул). Кстати, в пакете Use варианта с прилинкованным объектом нет...
Ну и простенький вопрос напоследок - как одеть непися в нужную тебе броню, и заполнить его инвентарь нужными тебе предметами?
Статически - прописать инвентарь в свойствах NPC, и он сам выберет, что из этого надеть. Динамически - в какой-то момент скриптом положить (AddItem) предметы ему в карман (можно сначала отнять всё, что у него есть), а при желании принудительно надеть (если NPC покажется, что лежащая в кармане экипировка лучше, он всё равно сам переоденется).
Скоре всего причина нестыковки в этом. Можете расссказать, что это за переменные, за что они отвечают и можно ли в данной сцене обойтись без них?
В этом месте эти AV использованы для управления пакетами. Единичка в четвёртой активирует escape, в пятой sandbox, в шестой return. Поскольку это флажки, которые должны проверяться условной функцией пакетов - их можно заменить чем-то другим, что может быть проверено условной функцией. Например, класть им в карман невидимые токены и проверять GetItemCount, или менять им ранг в специально созданой фракции и проверять GetFactionRank, или менять им цифру Disposition по отношению к ГГ и проверять GetDisposition... Ну, или вовсе переиграть метод управления пакетами и активировать их иным способом.
Только зачем глобальную? Можно и обычную. И не три, а две. Третья - лишняя, пакетов у них всего два. По идее можно вообще обойтись одной.
Как пакет будет проверять обычную переменную? GetGlobalValue бывает, GetQuestVariable есть, а GetОбычнуюПеременную нет... Впрочем, поскольку "переменная" должна быть личная у каждого из рабов, а скрипт у них один на всех, то это не может быть ни глобальная, ни квестовая переменная - нужно использовать что-то личное в качестве флажка. Я бы использовал членство в фракции...
можно и вовсе без переменных, ведь пакеты можно менять принудительно в самом скрипте.
Я примерно это и имел в виду, когда писал "переиграть метод управления пакетами". Поскольку мы сейчас уже знаем, как выглядит полный и готовый Питт, можно без особых опасений подчистить недоделки авторов (как тот третий никогда не активируемый пакет у этих рабов, который по инерции упоминается в их скрипте), у нас-то уже нет никаких сомнений насчёт "а вдруг это ещё где-то пригодится" - уже не пригодится, финальный вид DLC канонизирован Чистить всё, конечно, не резон - но там, где возникает конфликт под вегасом, это совершенно уместно.
можно ли сделать что бы предмет был в инвентаре но не отображался?
Если у объекта есть флажок Playable - достаточно его снять, и игрок такой объект не увидит ни в своём инвентаре, ни в чужом. Насколько я помню, такой флажок бывает у объектов из категорий "оружие", "броня" и "патроны".
begin gameMode set doorRef to GetLinkedRef doorRef.activate doorRef end
Воистину так. Скрипт без передышки (в GameMode, на каждом обороте скрипта, ничем не интересуясь и ничего не проверяя) активирует дверь. Вероятно, назначение скрипта - устройство аттракциона "попробуй проскочить в непрерывно лязгающую дверь".
как сделать, чтобы, например - паладин Кросс . . . не приседал на карачки чуть-ли не раньше того, как это соберётся сделать ГГ? При этом имея его в напарниках, но не увольняя и не ставя в позу ожидания. И не убивая. Ну или к примеру с другим напарником.
Чтобы actor, выполняющий пакет типа Follow, не повторял за лидером позу sneak, нужно или хакнуть Fallout3.exe, чтобы изменить принцип действия пакета... Или выставить в ноль fCombatFollowSneakFollowRadius. Так или иначе, это нельзя изменить для одного отдельного моба.
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №202
| Тема: ВОПРОСЫ по моддингу
написано: 17 января 2012, 02:29
| Отредактировано: Ipatow - 17 января 2012, 02:29
от куртки (например) уходят куда-то за горизонт длинные линии, сходящиеся в одной точке. Этакие лучи, затянутые размазанной текстурой.
Я такое наблюдаю на моделях, построенных на скелете, отличающемся от того, который в данный момент установлен. Если шмотка при создании натянута на скелет, включающий хвост, крылья... разные другие анатомические детали... а в имеющемся скелете этих узлов нет - отсутствующие узлы расположены именно за горизонтом, и туда и вытягиваются привязанные к ним части модели.
Возможно ли повесить на нпс или на кричера перк каннибал, чтобы они жрали трупы убитых врагов????
Перк может работать только на главном герое, вешать его ещё на кого-то бессмысленно.
Я не уверен, что каннибализм будет работать для кого-то кроме ГГ. Прежде чем заморачиваться реализацией, следует проверить StartCannibal в исполнении NPC - правильно ли оно выставляет флаг HasBeenEaten.
как навесить на них (на респираторы) эффект, сопротивления радиации???
Так же, как любые резисты навешиваются на любую броню. Например, по образцу EnchT51bArmor - причём не стоит заморачиваться в стиле EnchRadiationAdvSuit, отличая ГГ от остальных броненосцев, поскольку эти остальные не болеют от радиации...
Не жрутс... Мне кажется, там дело не во флаге, а в отсутствии необходимой анимации.
Анимация у всех гуманоидов - тех, кто принадлежит какой-то "расе" - одна на всех, как и скелет один на всех. Всё в Data\Meshes\Characters\_male...
Процедура StartCannibal - по сути недокументированный чёрный ящик, и даже если авторы подумывали над тем, чтобы её мог исполнять не только Player, вряд ли они это проверяли. В стандартных модулях - Fallout3.esm, FalloutNV.esm и HonestHearts.esm - каннибализмом занимается только ГГ. Насколько я вижу, анимация прописана в стандартном списке, и NPC можно заставить её исполнить - но анимация не сделает труп "обгрызенным", а это для идеологии фолаутского каннибализма (каждый труп можно кушать только один раз) самое важное.
Это свойство каждого моба, булевое значение (почему и термин "флаг").. Почему-то оно не ActorValue - они ведь бывают булевые... Взводится этот (он безымянный, HasBeenEaten это название функции, выдающей значение флага) флаг только в недрах процедуры StartCannibal, проверяется штатно только перком "каннибал".
Основной аргумент "против" - это грузит систему. Не случайно жизнь в пустошах шевелится только рядом с главным героем, а в трёх клетках от него замирает - и только единичные NPC, которым персонально выдано такое право, продолжают как-то себя вести.
создать фракцию, каких нибуть кровожадных религиозных фанатиков, которые будут кочевать по пустоши и вербовать людей в адепты
Это возможно с некоторыми оговорками и "срезанием углов" - но это, во-первых, здорово порушит игровой мир, а, во-вторых, игра в одни ворота (отсутствие хотя бы одной противоборствующей фракции, действующей подобным же образом) не так увлекательна, как может показаться с первого взгляда...
Не обязательно кто-то с кем-то должен взаимодействовать в отсутствии игрока для "картинки правдоподобия" изменяющейся жизни на пустоши. Можно-же продумывать сцены, которые будут мигом воплощаться скриптом при его появлении в этой области, и соотнесены с текущим временем. Сцены эти якобы будут являться следствием неких произошедших за время отсутствия игрока событий.
Именно такого рода оговорки я и имел в виду, и под "срезанием углов" понимал именно вот эту подачу результатов событий, которые как будто в отсутствие игрока происходили. То есть, как я и сказал, это возможно. Приведённые мной два возражения гасятся изобретение более одной фракции, которые рекрутируют армии для захвата вселенной - а что изрядную часть, касающуюся не-persistent мобов, нужно с жуткой скоростью проворачивать в момент материализации зон (то есть при приближении ГГ, а в случае интерьеров аж при входе)... ну, это просто надо очень шустро шевелить скриптами на OnLoad.
И обычное резюме: задача занятна, задача решаема, но никто её решать не будет, потому что всем лень.