Miranda_Kusland, всё зависит от того, как устроена броня. Обычно её делают ВМЕСТЕ с телом. Т.е. броня включает в себя тело. При надевании броня вместе с её телом замещает то тело, которое игрок поставил своим персонажам. Игрок думает, сто у него СВВЕ, надевает броню UNP, та содержит в себе тело UNP, с которым игрок прекрасно играет дальше, думая, что он поставил себе СВВЕ Кроме того, для тела должны быть в АА прописаны Skin Texture и Skin texture swap list. Тело входящее в состав брони должно принимать ту текстуру, которая прописана для тела и в модели брони для тела должна быть установлена та же текстура.
Начнём с конца. Галочка Show All нужна только для того, чтобы увидеть разом модели для всех рас. Она для того, чтобы увидеть их только один раз. Ни на что в игре не влияет.
В редакторе просмотр упрощённый, с игрой не совпадает. 1. Сначала надо убедиться в НИФскопе, что модель тела от этой брони текстурируется правильно. 2. Поставить принудительное текстурирование Skin Texture именно для модели тела (в жакете). Проверить в НИФскопе что эта самая принудительно установленная текстура туда подходит. 3. Убедиться что в Skin texture swap list стоит правильная и подходящая текстура. Ведь откуда то же игра берёт неправильную текстуру?
Назначение Skin texture swap list неоднозначное. Я читал разные версии. У меня его установка помогла устранить потерю текстур для открытых участков тел. Но окончательно я избавился от этого только когда отказался от тела внутри брони, т.е. стал делать броню надеваемой поверх настоящего тела.
Диву даюсь, какой дурак сдвинул текстуру для тела CBBE! Она же сдвинута немного. Смысла в этом никакого не было. Тело UNP совместимо по текстурной развёртке с ванильным телом, тело DG - тоже. А вот авторы CBBE создали пользователям вот такой геморрой. И самое главное - на пустом месте.
Miranda_Kusland, можно только в том случае, если они занимают разные слоты. Если мы в Армор поставим 2 АА, каждый со своей моделью но занимающие один слот, то показываться будет только одна модель. Если слоты разные и оба прописаны в АА, то будут показаны обе. Но тратить отдельный слот только на мех, слишком затратно. Лучше всё же объединить в один НИФ.
Miranda_Kusland, это лучше делать последней версией НИФскопа, так предыдущие теряли имя блока при таком переносе. Да, оба файла должны быть открыты одновременно. Кликаем правой кнопкой мыши на NiTriShape и выбираем из выпавшего контекстного меню Block/Cjpy Branch. В другом файле кликаем на NiNode - Paste Branch.
Miranda_Kusland, Нифскоп говорит, что в новом нифе нет кости, к которой привязана модель в старом нифе. Необходимые кости должны быть перенесены (так же как и модели) до того, как переносится сама модель.
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1476
| Тема: Вопросы по скриптам Papyrus
написано: 28 января 2020, 14:52
| Отредактировано: Myprism - 28 января 2020, 14:54
В своих модах мне часто приходится модифицировать уровневые списки. В основном, добавляя туда предметы. Но это порождает проблемы совместимости с модами, которые тоже модифицируют эти уровневые списки. Недавно подсмотрел в одном моде изящное решение. Там сделан пустой самозапускающийся квест с алиасом игрока, на котором висит скрипт добавляющий предметы в уровневые списки. Т.е. в самом моде эти списки не трогаются, а модифицируются скриптом в игре. Буквально, вот строка из того скрипта:
Правда, тут есть одна ошибка. На практике к большому числу объектов из ванильного списка добавляется только один предмет из модового. В результате, модовые предметы встречаются в игре крайне редко. Это я исправил, хотя и пришлось использовать SKSE-функции:
Код
Int n =0 While MyLItemGems.GetNthForm(n) LItemGems.AddForm( MyLItemGems.GetNthForm(n), MyLItemGems.GetNthLevel(n), 1) LItemGems10.AddForm(MyLItemGems.GetNthForm(n), MyLItemGems.GetNthLevel(n), 1) LItemGems75.AddForm(MyLItemGems.GetNthForm(n), MyLItemGems.GetNthLevel(n), 1) n +=1 EndWhile
Работает отлично, как раз так, как надо. Но вот какие у меня появились сомнения. Действие этого скрипта сохраняется в сейве игрока. Ведь самих изменённых списков в моде нет и они являются результатом действия скрипта. В итоге, сейв может распухнуть в случае, если модифицируется много уровневых списков. Что вы по этому поводу скажете, стоит ли овчинка выделки?
Miranda_Kusland, в свойствах расы устанавливается Skin. Это модель тела. Обычно там значится SkinNfked. SkinNfked относится к Armor. Т.е. тело это тоже самое, что любая одёжка. Оно состоит из частей - ноги, руки, само тело. Вот эти части уже находятся в Armor Addon. Тело, что-то вроде NakedTorso. Вот там всё и прописано. Там установлены модели отдельно для мужского и женского тела. Разумеется, правильные текстуры должны быть установлены уже в модели. Дальше там же установлены Skin Texture. Для женского тела там стоит SkinBodyFemale_1 (в ванили). Ещё там надо устанавливать Skin Texture Swap List. В ванили там стоит SkinFemaleHumanBody. Вот и всё. Но то, что показывается в игре, это результат работы всех модов установленных пользователем в игре. А это значит, что другой мод может запросто ставить свои текстуры. И это будет как раз тот вариант, когда в редакторе это не показывается (тот левый мод не грузится), а в игре показывается. Тестировать свои моды надо обязательно на чистом Скайриме, иначе будет очень много труднообъяснимых сюрпризов. В идеале надо использовать для тестов и чистое сохранение.
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1478
| Тема: Вопросы по скриптам Papyrus
написано: 30 января 2020, 13:29
| Отредактировано: Multigone - 21 апреля 2020, 20:02
myav, что-то мне подсказывает, что Скайрим вообще не различает национальных названий. В общем то ванильные файлы совсем не содержат национальных названий. Все национальные названия находятся в отдельной папке Strings. Было бы странно, если бы папирус их оттуда выуживал. Вас ввело в заблуждение то, что отечественные мододелы не выносят названия в отдельные стринговые файлы. Но папирус писался не под них
Тут что-то не то с постановкой задачи. Самым правильным было бы делать так, как делают разработчики игры. А они все национальные названия выносят в отдельный файл (точнее 2). Смысл вот в чём: для перевода мода достаточно перевести только стринговый файл и мод оказывается на другом языке. Можно перевести этот файл на 5 языков и автоматически мод станет на пяти языках. Т.е. идеология авторов заключается в том, что у самого мода нет локализации, а локализация вынесена за его пределы. Так сделаны файлы Скайрима. Перенос части локализации в скрипты сделает невозможной стандартную локализацию. Ну и если точнее, то локализуются ещё отдельно озвучка и некоторые картинки с названиями (последние поставляются вместе со Скайримом даже неупакованными). Если мод не очень сложный, то я бы его сделал на английском языке и с настоящей локализацией на русском, вынеся локализацию в стринговые файлы. Мод становится мультиязычным и легко переводимым на любой язык. Я так и делал в своих простых модах для Скайрима SE. Увы другие мои моды очень большие и содержат много текстов, так что до них руки ещё не дошли.
Miranda_Kusland, кости не привязываются к слоту. Там может быть SkinInstance, тогда у него привязка в явном виде не прописывается, он привязывается к тому, что стоит в АА. Либо DSDismemberSkinInstance, тогда слот брони должен быть прописан в нём и совпадать с установленным в АА.
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1480
| Тема: Вопросы по скриптам Papyrus
написано: 31 января 2020, 09:07
| Отредактировано: Multigone - 21 апреля 2020, 20:01
myav, вынесение стрингов делается с помощью TES5Edit. Меню локализация. Разработчики ожидают, что персонажей и объекты будут определять не по именам, а по ID. Имя персонажа другие моды легко могут изменить. Собственно говоря, его меняет любой перевод мода и ваш мод автоматически становится несовместим с любой локализацией вашего мода. А вот ID изменить нельзя, так как это приведёт только к созданию нового персонажа с новым ID.
P.S. Цвет волос, причёска и даже пол не являются определяющими признаками эстрадного актёра
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1481
| Тема: Вопросы по скриптам Papyrus
написано: 31 января 2020, 12:38
| Отредактировано: Multigone - 21 апреля 2020, 19:58
myav, но поймите, вы задаёте такие вопросы, что для ответа на них надо рассказывать вам основы модостроения с самых азов! Во-первых, игра и редактор работают только с ID. Это для удобства программиста в редакторе значатся названия на английском. Если вы попробуете такое название поменять, то игра обязательно спросит, хотите ли вы поменять название или создать новый объект? По очень простой причине: редактор не позволит вам поменять ID ванильного персонажа. Переименовывать можете сколько угодно, это вообще ни на что не влияет, но вот с другим ID может существовать только другой новый персонаж. Т.е. все объекты определяются их главным параметром - ID. Кроме него есть ещё другие свойства, которые различают разных персонажей. Но вот имя - вообще нигде не используется и если вы захотите его поменять, то редактор даже ничего не спросит, так как это ему совсем безразлично. Теперь о вашей задаче. Уж не знаю, как вы там выделяете персонажей, но если встречается персонаж, то первым делом выясняете скриптом его базового актора. В скриптах это всё названия на английском, но на самом деле, это только ID, которые скрываются за этими названиями для удобства программиста. После того, как определяете базового актора, опрашиваете скриптом его свойства. Их очень много и я не знаю, какие вам важны. По сочетанию этих свойств определяете, что с персонажем делать. Уточняю: в игре есть базовые акторы, например, изгой некоторого уровня, а есть многочисленные экземпляры этого базового актора. У этих экземпляров тоже есть свои свойства и я понятия не имею, какие из них нужны вашему моду. Вообще, для выделения объектов в игре существуют Форм-листы, существуют ключевые слова и т.д.
UnlimitedCloud, вообще то редактор говорит об ошибке НИФа. Но это может быть и ошибка редактора Вот как Miranda_Kusland описала Такое может возникать, если сначала загрузили редактор и посмотрели в нём модель, а потом при открытом редакторе поменяли её. У редактора от такой замены ум за разум заходит
yakor77, замечание о 20/80 работает. Хотя бы потому, что есть левельные списки, которые народ модифицирует охотно, а есть такие, что никому и даром не нужны, так что дифференцированный подход вполне возможен
To all, решил экспериментально проверить, как влияет модификация левельных списков на размер сохранения Первые результаты радуют. До установки мода размер сейва 5 555, после установки (примерно 100 объектов добавлены в списки) - 5 550 Разумеется, это не мод уменьшил размер сейва. Это только значит, что изменение размера сейва вызванное модом меньше его естественных флуктуаций.
yakor77, в игре есть такая полезная и очень широко используемая штука, как FormList. Это список накиданных туда объектов. Причём, упорядоченный, у каждого объекта есть номер под которым его кинули в этот лист. Игра очень быстро находит объекты в таких листах. Например, берём и создаём список вообще всех персонажей (не обязательно общий, можно отдельно только эльфов или только бандитов). Тогда очень легко определить скриптом, находится ли данный персонаж в этом списке и каков его номер. Для этого совсем не нужно знать его имя или даже ID :). Можно сделать сколько угодно тематических списков и проверять в какие из них входит данный персонаж и действовать в зависимости от того, в каких из списков он оказался. Совсем не нужно изобретать велосипед. Всё уже есть. Есть такое правило: если вы делаете что-то и это получается слишком сложно, то велика вероятность, что вы делаете не то
Попробую и я по рецепту UnlimitedCloud пожаловаться тут на свои невзгоды, вдруг они разрешатся
1. Столкнулся с мистикой в поведении BSA-архива. Сделал небольшой мод на драгоценные камни. С ним всё отлично, все модели запакованы в архив (50 мегов) всё работает как надо. Дальше объединяю этот мод с другим уже большим моим модом (1,2 гига в архиве) и мои камни в игре пропадают. Но в редакторе (архив прописан в путях редактора) всё работает как надо. Распаковываю модели камней - они и в игре работают как надо. Т.е. имею два мода, оба запакованы в архивы штатным паковщиком. В оба мода входят модели этих камней. В редакторе оба мода работают одинаково, а вот игра не видит моих моделей запакованными в бОльший архив. Все распаковщики их там видят прекрасно. Все остальные модели из большого мода работают прекрасно. Может, существует ограничение на число моделей в одном BSA-архиве? До максимального размера в 2 гига, пока ещё далеко.
2. Если в игре сделать чистое сохранение до момента, когда ГГ войдёт в Хелген и ему будут разрезаны путы, а потом поставить мод, в котором есть автозапускающийся квест с алиасом игрока, то после загрузки игры с этим модом, ГГ не может двигаться. В сейвах после разрезания пут такой проблемы нет.
Добавлено (09 Февраля 2020, 14:19) --------------------------------------------- Добавление о пропадающих камнях. Всего в моде 5408 файлов (3.06 гига, в архиве - 1.22). Если только модели камней вынести в отдельный мод (запакованный в BSA) то они показываются в игре так же хорошо как если бы были там распакованы. Т.е. они отказываются работать только в составе большого архива. Казалось бы, вот оно - решение, вынести их отдельно. Но во-первых, это не красивое решение, во-вторых я так и не понял, почему они не работают в большом архиве. Может, там ещё что-то не работает, что я просто ещё не заметил, или что-то работает плохо.
Можно в своём квесте зафиксировать то событие, которое завершает интересующий нас квест. Например, смерть боса-драугра в квесте Ветреного пика. Правда, он может завершаться передачей драконьего камня или возвращение когтя... Или поставить свой триггер, прохождение которого неизбежно в конце того квеста и который воскресит нам кого надо.
Miranda_Kusland, если BSA-архив подключен своим ESP (даже пустым), то он будет использоваться всеми модами в игре. Собственно говоря, так в Скайриме установлены текстурные паки. В моём случае, выявились новые подробности, которые совершенно поставили меня в тупик. Оказалось, что размер архива и число файлов в нём роли не играют (пока). Я взял и тупо переименовал свой BSA-архив и добавил к нему пустой ESP-файл с тем же именем. И тогда все мои камни показываются как надо. Т.е. ничего не меняется кроме того, что архив подключается не файлом мода (совпадает по имени с ним), а пустым отдельным файлом и камни тогда работают. Больше всего меня удручает тут то, что я не могу это объяснить.
Насчёт квеста, это же самое начало игры и тут всё легко проверяется. К такому багу у меня приводит любой модовый самозапускающийся квест, в котором есть алиас игрока. Т.е. дело не в моём моде. В принципе, побег из Хелгена должен быть как раз таким и весьма сложным квестом, так что, скорее всего происходит их конфликт. Но так как я считаю, что квесты это моё слабое место, то и спросил тут мнение других.
Miranda_Kusland, точно! Проблема в Хелгене возникает только до того момента когда ГГ получает полное управление.
А с камнями получилось так: я сделал чистое сохранение пройдя до Ривервуда и подключив свой мод только там. Камни все на месте. Раньше я тоже использовал сохранение, где этот мод ещё не подключался, но оно не было совершенно чистым. Так что, получается, что простой реплейсер тоже зависит от чистоты сохранения Ну, мод у меня большой, буду смотреть дальше.
borbos97, давно я не делал LODы. Вот сейчас открыл старые свои НИФскопом, так там нет никакого снега. В игре есть а в файлах LOD-ов нет. Там снег другим способом ставится.
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1490
| Тема: Вопросы по текстурированию
написано: 12 февраля 2020, 03:01
| Отредактировано: Myprism - 12 февраля 2020, 03:04
borbos97, существуют LODы нескольких уровней в зависимости от удаления. Они устроены по-разному. Там есть отдельные модели для гор и для остальных объектов. Объекты обычно в Скайриме встречаются в разных вариантах - запорошенные снегом и нет. LODы генерируются автоматически, но с косяками, в частности, при их генерации редактор меняет общую для них текстуру и она становится несовместимой с ванильным Скайримом. Сейчас очень хорошо развился TES5Edit и в нём есть опция создания LODов. Посмотрите, что может он. Одно могу сказать точно: Редактор с созданием ЛОДов деревьев совсем не справляется, а вот TES5Edit делает это легко.
Да, ещё. Файлы LODов можно открывать НИФскопом и ставить там нужные текстуры (возможно, за исключением самого большого удаления, где используется общая текстура).
Ridart, Это называется мультипартиция - партиция состоит из частей, которые занимают разные слоты. Так сделана вся ванильная броня и тела. Тело обычно - 32, голени - 38, предплечья - 34. Но тогда в НИФСкопе видны все три партиции и назначенные им слоты. Если в НИФСкопе видна только одна партиция и занимает она слот 32, то в принципе, достаточно поставить 32 в Armor и в Armor addon (АА), чтобы броня правильно показывалась. Но броня может делать невидимыми части других мультипартиций. Так может пожелать автор этой брони. Например, в состав брони входят голени сапог. Тогда в АА брони отмечается слот 38. В этом случае надевание такой брони снимет верхнюю часть сапог, занимающую этот слот, если приоритет её АА выше, чем приоритет АА сапог. Если у этой брони просто в редакторе убрать все слоты кроме 32, то она больше не будет взаимодействовать с перчатками и сапогами. Перчатки и сапоги будут надеваться так, как будто этой брони нет. Общее правило такое: - Слоты в Armor предназначены для того, чтобы СНИМАТЬ другие шмотки с таким же слотом. - Слоты в Armor addon предназначены для того, чтобы делать невидимыми такие же слоты в Armor addon с меньшим приоритетом. - Модель в Armor addon будет показана в игре только в том случае, если совпадает хотя бы один слот из Armor addon с одним из слотов в Armor. И не обязательно, чтобы это был именно тот слот, что установлен в НИФСкопе.
Ridart, в Armor можно оставить только 32. Но тогда в АА тоже обязательно должен быть 32, иначе она не будет видна, хотя и будет надета. Если в броне есть и другие партиции (в примере 33 и 37) то их тоже надо отметить в АА, чтобы они были видны.
Ridart, всё верно. Только другие перчатки будут видны если приоритет установленный в их АА выше, чем приоритет установленный в АА этой брони. Иначе они надеваться будут (будет отмечено, что надеты), но показываться будут перчатки брони.
В Скайриме очень много статичных предметов. Всякие стены, колонны и т.д. Сделайте в редакторе копию одного из таких предметов и установите там ему любую модель, какую хотите. Если в этой модели нет коллизии, то персонажи будут ходить сквозь ваш предмет не взаимодействуя с ним. Если коллизия есть, то будут спотыкаться о предмет, а стрелы будут от него отлетать. Взять (подобрать) статический предмет нельзя.
dushavolka, я имел в виду тот самый редактор Skyrim Creation Kit, которому посвящена эта ветка. Уроков посоветовать не могу, так как сам не смотрел ни одного. Наверное, они существуют.
Arclis, могу только подсказать, где искать. Покупки недвижимости делаются через квесты. В том моде должен быть квест, в котором есть стадия покупки. Чтобы не разбираться, как он работает, надо просто найти там число (цену замка) и изменить его.
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1498
| Тема: TES5Edit
написано: 2 апреля 2020, 09:15
St@rKi11er, tes5edit показывает изменения в игру вносимые данным модом. Если для данного мода показываются левельные листы, значит их изменяет или добавляет данный мод. Что будет, если вы в tes5edit удалите вообще все записи данного мода? - Будет то, что вы этот мод как бы и не ставили. Так что же произошло с левельными листами? Вы их все удалили? Но ведь левельные листы добавляются персонажу через Outfit персонажа. А они (Outfit) в моде затронуты? А то ведь легко может быть, что мод их опустошает и добавляет что нужно левельными листами. Вы удалили левельные листы мода, но сохранили пустой Outfit. Тогда персонаж станет голым.
Изменение репутации для пользователя Myprism
MyprismOffline
Сообщение №1499
| Тема: TES5Edit
написано: 3 апреля 2020, 04:31
St@rKi11er, ага, понял. Когда вы выбираете некоторый объект в окне слева, то в правом окне видите свойства объекта. Внизу правого окна несколько закладок. По-умолчанию там выбрана View. Обратите внимание на вторую вкладку - Referenced By. Там уже в её заглавии будет указана в скобках цифра. Эта цифра - число объектов, которые используют данный объект. Если там нет цифры (ваш объект не используется другими), то вы можете удалят выбранный объект без опасений что-либо нарушить. А вот если там есть другие объекты, то надо их рассмотреть. Выбираете закладку Referenced By и видите список зависимых объектов и модов, которые меняли эти объекты. Двойной клик мышки на строке объекта откроет свойства объекта в том моде, который был указан в списке. У вас этот зависимый объект надо вернуть в исходное (до установки мода) состояние так, чтобы он не использовал ваш левельный лист. Левельный лист можно безболезненно удалять только после того, как вы разобрались со всеми объектами, которые его использовали.
FilinD, у каждой шмотки прописаны расы на которых шмотка видна. Возможно у вас в спутниках персонажки, о расах которых автор колец ничего не знал. Даже если бы и знал, это бы не помогло, так как эти расы должны находиться в мастер-файле, который использует и мод на спутниц и мод на кольца.