SisterlovingAltmer Опубликовано 14 мая, 2025 Опубликовано 14 мая, 2025 Присоединяюсь к Артее. Команда на выдачу перка в ГЭКК-е?
Pepel12 Опубликовано 18 мая, 2025 Опубликовано 18 мая, 2025 (изменено) 14.05.2025 10:28:10, SisterlovingAltmer сказал(-а): Присоединяюсь к Артее. Команда на выдачу перка в ГЭКК-е? player.AddPerk MS03DreamCrusherPerk Изменено 18 мая, 2025 пользователем Pepel12 1
SisterlovingAltmer Опубликовано 3 июня, 2025 Опубликовано 3 июня, 2025 18.05.2025 13:29:55, Pepel12 сказал(-а): player.AddPerk MS03DreamCrusherPerk Уже сам разобрался, но спасибо. Кстати, а что делать с референсами? Как их правильно прописывать в фоллаутском скрипте? Например, конкретную НПС отображать, ТОЛЬКО если ГГ соответственной расы - во всём разобрался давно, кроме, как именно в ГЭКК указать конкретно ее реф.
SisterlovingAltmer Опубликовано 3 июня, 2025 Опубликовано 3 июня, 2025 И еще: сделать скриптово, чтобы интеллект определенной расы нельзя было поставить ниже, скажем,7, а силу выше 4 - возможно?
Pepel12 Опубликовано 4 июня, 2025 Опубликовано 4 июня, 2025 (изменено) 03.06.2025 22:06:48, SisterlovingAltmer сказал(-а): Уже сам разобрался, но спасибо. Кстати, а что делать с референсами? Как их правильно прописывать в фоллаутском скрипте? Например, конкретную НПС отображать, ТОЛЬКО если ГГ соответственной расы - во всём разобрался давно, кроме, как именно в ГЭКК указать конкретно ее реф. Это проще чем кажется. Ставишь нпс. На него пару раз кликаешь. В Reference Editor ID прописываешь например Raketa01Ref. Далее Галочку на Initiall Disable(Изначально отключен) и Persistent Reference если вдруг не стоит ->Ok Теперь скрипт с условием, допустим через активатор. ScriptName Boos begin onActivate ;Дополнительные условия Raketa01Ref.enable End Добавляешь в мир активатор, желательно новый, вешаешь на него скрипт Boos. Сохраняешь/проверяешь/добавляешь условия по вкусу. Вроде как-то так было. Что касаемо расы в условиях функция вроде такая: Если (Игрок или ref ссылка НПС).GetIsRace (Раса для проверки на совпадение) if player.GetIsRace Ghoul Raketa01Ref.enable endif Примерно так, там по ходу разберешься. Изменено 4 июня, 2025 пользователем Pepel12
SisterlovingAltmer Опубликовано 5 июня, 2025 Опубликовано 5 июня, 2025 04.06.2025 22:04:13, Pepel12 сказал(-а): Это проще чем кажется. Ставишь нпс. На него пару раз кликаешь. В Reference Editor ID прописываешь например Raketa01Ref. Далее Галочку на Initiall Disable(Изначально отключен) и Persistent Reference если вдруг не стоит ->Ok Теперь скрипт с условием, допустим через активатор. ScriptName Boos begin onActivate ;Дополнительные условия Raketa01Ref.enable End Добавляешь в мир активатор, желательно новый, вешаешь на него скрипт Boos. Сохраняешь/проверяешь/добавляешь условия по вкусу. Вроде как-то так было. Что касаемо расы в условиях функция вроде такая: Если (Игрок или ref ссылка НПС).GetIsRace (Раса для проверки на совпадение) if player.GetIsRace Ghoul Raketa01Ref.enable endif Примерно так, там по ходу разберешься. Буду смотреть.
SisterlovingAltmer Опубликовано 5 июня, 2025 Опубликовано 5 июня, 2025 Так, спасибо, Пепел Двенадцатый. А я вот какую штуку еще спрошу: Как сделать мелкий активатор, который не собьешь и не передвинешь при помощи Z?
Pepel12 Опубликовано 5 июня, 2025 Опубликовано 5 июня, 2025 05.06.2025 13:00:13, SisterlovingAltmer сказал(-а): Так, спасибо, Пепел Двенадцатый. А я вот какую штуку еще спрошу: Как сделать мелкий активатор, который не собьешь и не передвинешь при помощи Z? В разделе World Objects, там где подраздел Door(Двери) и Static, есть подраздел, первый по счету Activator, делается обычно через него. Вроде как, все модели там статические, без физики падения. Ну а дальше по классике, выбираешь, что приглянулось в разделе, меняешь Id, Name(Отображение названия в игре), пересохраняешь, дальше открываешь измененный активатор снимаешь старый скрипт, если был, выбираешь новый. Выносишь активатор на сцену, пару раз на него щелкаешь, Панелька 3D Data – параметр Scale отвечает за размер модельки. В принципе через Activator, можно использовать любую модельку из игры, у которой присутствует коллизия, грубо говоря, которая в игре насквозь не проходится. Только из архива придется доставать.
SisterlovingAltmer Опубликовано 5 июня, 2025 Опубликовано 5 июня, 2025 05.06.2025 21:07:25, Pepel12 сказал(-а): В разделе World Objects, там где подраздел Door(Двери) и Static, есть подраздел, первый по счету Activator, делается обычно через него. Вроде как, все модели там статические, без физики падения. Ну а дальше по классике, выбираешь, что приглянулось в разделе, меняешь Id, Name(Отображение названия в игре), пересохраняешь, дальше открываешь измененный активатор снимаешь старый скрипт, если был, выбираешь новый. Выносишь активатор на сцену, пару раз на него щелкаешь, Панелька 3D Data – параметр Scale отвечает за размер модельки. В п 05.06.2025 21:07:25, Pepel12 сказал(-а): В разделе World Objects, там где подраздел Door(Двери) и Static, есть подраздел, первый по счету Activator, делается обычно через него. Вроде как, все модели там статические, без физики падения. Ну а дальше по классике, выбираешь, что приглянулось в разделе, меняешь Id, Name(Отображение названия в игре), пересохраняешь, дальше открываешь измененный активатор снимаешь старый скрипт, если был, выбираешь новый. Выносишь активатор на сцену, пару раз на него щелкаешь, Панелька 3D Data – параметр Scale отвечает за размер модельки. В принципе через Activator, можно использовать любую модельку из игры, у которой присутствует коллизия, грубо говоря, которая в игре насквозь не проходится. Только из архива придется доставать. Знаю, но мелкие активаторы (медвежонок, пюпитр) все равно падают.
Pepel12 Опубликовано 7 июня, 2025 Опубликовано 7 июня, 2025 (изменено) 05.06.2025 22:15:31, SisterlovingAltmer сказал(-а): Знаю, но мелкие активаторы (медвежонок, пюпитр) все равно падают. Дело в параметрах модели. Данную проблему можно решить 3 способами: 1.Кратко. 3ds Max + Nif plagin, импорт модели, в модификаторе bhkRigidBody в объекте коллизий меняем пункт Convex Shape(Объект с физикой падения) на Strips Shape(Статик) , Выбираем на сцене точку с именем bhkRigidBody(она в виде квадрата в центре оси, имя может быть другое) в параметрах меняем Mass(масса объекта) на 60, экспорт. 2. Через NifSkope, загружаешь модель, ищешь пункт bhkCollisionObject -> bhkRigidBody –Layer и Layer Copy меняешь на OL_STATIC – Mass на 60, сохраняешь. Возможно что-то упустил, можешь поковыряться или сравнить с готовой статикой по параметрам. 3. Через скрипт FOSE, но это уровень «еб--ся мишки». Так делать не надо. Изменено 7 июня, 2025 пользователем Pepel12
SisterlovingAltmer Опубликовано 12 июня, 2025 Опубликовано 12 июня, 2025 Итак, разобрался, в чем была загвоздка... скрипт просто нули не хочет признавать. Заменил их на ааа, всё прошло как по маслу. Но теперь спрошу опять: 1. Возможно ли создать новое меню (не рецепт, именно меню) крафта, если да, то как? 2. Возможен ли автоподгон черт лица НПС (но НЕ пола!) под черты лица ГГ? Если да, то как этого дообиться? Вроде бы так с батей в третьем Фоллауте было. 3. Возможно ли изменение имени НПС, напр. с "Неизвестная девушка" на, скажем "Иоланта" скриптово через диалог, если да, то как?
Pepel12 Опубликовано 20 июня, 2025 Опубликовано 20 июня, 2025 (изменено) 12.06.2025 20:23:27, SisterlovingAltmer сказал(-а): Итак, разобрался, в чем была загвоздка... скрипт просто нули не хочет признавать. Заменил их на ааа, всё прошло как по маслу. Но теперь спрошу опять: 1. Возможно ли создать новое меню (не рецепт, именно меню) крафта, если да, то как? 1. Самый простой по типу крафта Fallout 3 сообщение -меню+скрипт, для обработки событий этого меню. Object Window ->Miscellaneous ->Message В разделе создаешь новый id например TerasMsg (id используется в скрипте для вызова) Галочку на Message Box, если не стоит. В Message Text пишешь текст который появится на над кнопками при активаций объекта или события. Например: “Для создания оружия вам понадобится металлолом”. Menu Bullions создаешь 3 новые кнопки. Item Text название выделенной кнопки. Первой обычно присваивают имя “Отмена” и в скрипте она пустая. Вторая “Собрать пистолет”, третья “Cобрать автомат” Item Conditions тут создаются условия при которых кнопки будут отображаться, аналогичны условиям диалоговой системы.---Ok Дело за скриптом: ScriptName WeaponCraftS short Button Begin OnActivate ShowMessage TerasMsg End Begin GameMode set Button to GetButtonPressed If button == 0 ; Отмена elseif button == 1 ; Собрать пистолет if ( player.GetItemCount SpareParts >= 2 ) ;Если у игрока есть 2 куска металлолома Player.additem Weap10mmPistol 1 ; Добавить 10-мм пистолет player.removeitem SpareParts 2 ;Удалить 2 куска металлолома endif elseif button == 2 ; Cобрать автомат if ( player.GetItemCount SpareParts >= 4 ) ;Если у игрока есть 4 куска металолома Player.additem WeapChineseAssaultRifle 1; Добавить Китайский автомат player.removeitem SpareParts 4 ;Удалить 4куска металлолома endif endif endif endif end 1.1 В виде терминала, Object Window ->World Objects->Terminal / принцип создания тот же. 1.2 Через диалоговую систему. Бегло. Создается новый квест+Npc. В квесте в разделе Topics(Темы) добавляются новые темы, в них диалоги, в диалогах есть поле Condition в нем настраиваются условии. Поле Result Script вписывается результат диалога, например результат крафта Player.additem Weap10mmPistol 1. Дальше ставится какой нить активатор в виде модели верстака , к нему скрипт на активацию диалога с npc. В адоне «Разлом» на вегас, есть пример, торговый ящик вроде. 1.3 В Вегасе есть своя система крафта с отдельным интерфейсом. Честно в ней не ковырялся, но предполагаю, что она работает, как в Fallout4. Создается или дублируется новый верстак, далее в самих рецептах идет настройка необходимых ресурсов, и там же пункт привязка к конкретному Id верстака. 1.4 Непосредственно меню-интерфейс, на подобие выбора перка, торговли, диалога с плавающей камерой, голода, самого MCM, спидометр транспорта. Сам интерфейс пишется(разметка элементов для вывода данных) в формате XML, подключается через функций из Fose или Nvse, а вот логика уже конкретно зависит от того, что ты хочешь сделать. Где-то хватит стандартных функций, где-то расширенных. А вот для чего глобального , каких нить механик, например паркура и ползанью по стенам, как в ассасине, потребуется визуал студия с++ и компилятор для dll. Изменено 20 июня, 2025 пользователем Pepel12
Pepel12 Опубликовано 20 июня, 2025 Опубликовано 20 июня, 2025 (изменено) 12.06.2025 20:23:27, SisterlovingAltmer сказал(-а): 3. Возможно ли изменение имени НПС, напр. с "Неизвестная девушка" на, скажем "Иоланта" скриптово через диалог, если да, то как? Поменять не получится, только присвоить. Создается npc, id Например:IolantaS. Cоздается Message, id Например: IolantaD. В поле Title присваемое имя Иоланта. Функция IolantaS.SetActorFullName "IolantaD" прописывается в поле Result Script. ->Compile Scripts. Еще как вариант. Если стоит Fose или Nvse, открыть консоль, клик на NPC, команда SetName НовоеИмя. Изменено 20 июня, 2025 пользователем Pepel12
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти