Перейти к содержанию

Создание BSA архивов к Oblivion


Рекомендуемые сообщения

BSA архивы обливиона могут содержать звуки и музыку, сплеши и все остальное что в морровинде приходилось класть отдельно, они могут быть сжатыми и подхватываются автоматом при подключении есп файла, никуда ничего прописывать ненадо. А устанавливать и удалять моды с бсашками вместо кучи папок-файлов много удобней.

Для создания бса архива понадобится программа BSA Commander от товарища Василия, взять можно в нашем разделе по BSA, или с сайта автора.

 

Устанавливаем, запускаем, нажимаем кнопочку Pack

Archive name - полный путь и имя бса архива. Важно! Чтобы бса архив подхватывался автоматом при подключении есп файла он должен называться также как и есп, т.е. для "My first Megoplugin.esp" должен быть "My first Megoplugin.bsa".

Source Dir - папка Data мода в которой лежат папки Icons, Meshes, Textures. Говорят что есп файл оттуда надо убирать обязательно, хотя у меня проблем не возникало если случайно в бса и есп упаковал

Recursive Subdirs - рекурсия подпапок, если убрать галочку то все подпапки выбранной папки будут игнорироваться. Соответственно галка должна стоять.

Archive Flags и Files Flags - флаги, некоторые свойства бса-архива. Просто нажмите на ? около каждого, и нажмите Apply. Если файлов в выбранной папке очень много то это может занять некоторое время

Compress - использовать сжатие. Бса архивы обливиона в отличие от морровиндских могут быть сжатыми. Упаковываются они простом алгоритму сходному с ZIP архивами, и сжатый бса архив будет весить больше чем несжатый и упакованный 7зипом, поэтому нужно выбирать что важнее - сэкономить место на диске использовав сжатие бса, или выиграть в весе упакованного плагина, оставив bsa несжатым (сжатый бса архив эффективно упаковываться другим архиватором не будет)

Compression Level - уровень сжатия бса, как правило разница при макс и мин незначительна, проще оставить по умолчанию.

Некоторые считают что сжатые архивы тормозят обливион - это нетак. Максимум на что связанное с быстродействием сжатие архива может повлиять - загрузка локации будет на мизер дольше, на фпс в игре не повлияет никак.

 

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

Ссылка на комментарий
Поделиться на другие сайты

  • 4 недели спустя...
Интересное наблюдение - походу файл даже называть как плагин ненадо, облива все бсашки подхватывает сама. По крайней мере 1.2 - Золотое Издание, будет время проверю на других
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Такс, весьма однако черезпопно у беседковцев сделано, ну да кто бы сомневался. Вот что я выяснил за часик мучанья обливы:

Если назвать бса также как и ецп - для plugin.esp - plugin.bsa, то бса подхватится автоматом. Это касается любых версий обливиона, исключений пока не замечал.

 

Для обливы 1.0 и 1.1 - сторонние бса, имя файла которых не совпадает с подключенным есп, использовать можно только предварительно дописав в ини сюда

SArchiveList=Oblivion - Meshes.bsa, Oblivion - Misc.bsa, Oblivion - Sounds.bsa, Oblivion - Textures - Compressed.bsa, Oblivion - Voices1.bsa, Oblivion - Voices2.bsa

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

 

Для обливы 1.2 - подхватываются все бса называющиеся имя_плагина*.bsa. Т.е. к примеру подключили "plugin.esp", вместе с ним подхватится и "plugin.bsa", и "plugin - textures.bsa", и "plugin - meshes.bsa", все-все.

 

Но это не касается стандартных обливских архивов, несмотря на то что обливион.есм подключен всегда, если из SArchiveList все или часть (так получится если прописать новые архивы в эту строку первыми и оригинальные типа не влезут), игра нормально работать не будет. Впрочем, на обливе 1.2 в сюда ничего пописывать и не надо.

А эти строчки

SMasterMiscArchiveFileName=Oblivion - Misc.bsa
SMasterVoicesArchiveFileName2=Oblivion - Voices2.bsa
SMasterVoicesArchiveFileName1=Oblivion - Voices1.bsa
SMasterSoundsArchiveFileName=Oblivion - Sounds.bsa
SMasterTexturesArchiveFileName1=Oblivion - Textures - Compressed.bsa
SMasterMeshesArchiveFileName=Oblivion - Meshes.bsa

судя по всему ни на что не влияют, важна только строка SArchiveList.

 

Версии 1.0 и 1.1 проверял только на английской игре, ну думаю отличий от 1Ц не должно быть.

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

мое мнение в первом посте

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

В принципе это имхо, стоило бы провести тесты и сравнить, но у меня на это времени нету. Чисто теоретически возможно если перепаковать Oblivion - Textures - Compressed.bsa без сжатия подгрузки локаций будут проходить плавнее, но вот насколько, и будет ли заметна эта разница в игре? Я сомневаюсь. Ну а для одного конкретного мода точно будет несущественно.

Ссылка на комментарий
Поделиться на другие сайты

  • 4 недели спустя...

А как нормально подключить реплейсерные bsa-архивы? Естественно не только с новыми текстурами, но и смоделями. А то получается такая фигня. Из одного и того же архива некоторые модели и текстуры подгружаются, а некоторые нет. В инишнике прописывал. Вешал их на плаг OblivionMsg.esp. Причем заметил чтоб реплейсерный архив грузился он должен загружатся первым, а потом оригинальныйОбловский.

В ОБММ всякие BSA Alternation и Invalidation использовал - не помогает. Те модели и текстуры что не хотят подгружатся в распакованном виде работают нормально.

Пробовал перепаковать оригинальные архивы. В результате выяснилось, что распаковщик от ОБММ глючный дважды при распаковывании испортил одни и те же текстуры. А BSAComander все нормально распаковал. Архив Oblivion - Textures - Compressed.bsa перепаковался нормально, а после перепаковки Oblivion - Meshes.bsa исчезли все деревья и кусты.

Ссылка на комментарий
Поделиться на другие сайты

Хмм, бсашки-реплейсеры не пробовал. Вообще с любыми реплейсерами надо использовать BSA Alteration, и поидей все должно работать одинаково хоть с отдельно положенными файлами хоть с бса, по крайней мере если файлы в папке обливы и в бса-реплейсерах не пересекаются. Упаковал архив ты точно правильно? Перепаковывать стандартные архивы нестоит, даже если ты все правильно сделал - проблема в том что например значения всех флагов бса неизвестны, и в стандартных бса может чтото стоять что после перепаковки исчезнет.
Ссылка на комментарий
Поделиться на другие сайты

Ну правильно это так как описано в первом посту ;) Т.е. выбрав нужную папку, не отключив случайно какой либо опции - рекурсию каталогов например, не введя файловые-архивные флаги нафонарь
Ссылка на комментарий
Поделиться на другие сайты

Ну я так и делал.

А при методе BSA Alteration есть какой-нибудь файл типа ArchiveInvalidation.txt, где все это записывается? Тоесть из какого архива какой файл должен быть приоритетным.

Изменено пользователем CemKey
Ссылка на комментарий
Поделиться на другие сайты

При BSA Alteration из стандартных обливских архивов файлы которые лежат вне архива удаляются, чтобы облива никак не смогла найти старый файл и пользовала соответственно только новый(точнее не удаляются а переименовываются, там хитровато ВСЕ). В некоторых случаях для некоторых файлов так сделать нельзя, и тогда создается ArchiveInvalidation.txt в который прописываются такие файлики.

 

Из какого архива какой файл должен быть приоритетным такого понятия в обливе нету, как видишь сложности даже если файл и в стандартном архиве и отдельно лежит. Скорей всего если будут несколько архивов с одинаковыми файликами то подхватится файл из архива у которого дата последнего изменения свежее.

Ссылка на комментарий
Поделиться на другие сайты

При BSA Alteration из стандартных обливских архивов файлы которые лежат вне архива удаляются, чтобы облива никак не смогла найти старый файл и пользовала соответственно только новый(точнее не удаляются а переименовываются, там хитровато ВСЕ).

В общем понял твою мысль, но не понял фразы

файлы которые лежат вне архива
. Что это за файлы такие и какое отношение они имеют к моей ситуации?
В некоторых случаях для некоторых файлов так сделать нельзя, и тогда создается ArchiveInvalidation.txt в который прописываются такие файлики.

У меня все лежит в архивах, а ArchiveInvalidation.txt, как я понял, для тех файлов, что лежат вне архивов, в папочках. Или нет?

Скорей всего если будут несколько архивов с одинаковыми файликами то подхватится файл из архива у которого дата последнего изменения свежее.

Это я знаю. Но по моим наблюжениям кроме даты, название приоритетного архива должно по алфавиту идти первым.

Ссылка на комментарий
Поделиться на другие сайты

Постараюсь обьяснить то что я понимаю :)) Все лично мои наблюдения, на 100% достоверность не претендуют

В стандартном обливском бса есть какой-то file.dds. У тебя есть реплейсер для файла, т.е. тоже file.dds только другой. Тебе надо чтобы в игре отображался именно твой файл ане стандартный. Для этого есть несколько способов:

1 Поставить своему файлу более свежую дату - поидее облива учитывает это. Про имена файлов ничего не слышал, незнаю

2 Прописать свой файл в ArchiveInvalidation.txt - это специальный файлик в который записывается какие файлы ненадо брать из бса а надо брать только лежащие в папке. Справледливо ли это только для стандартных бса, или для любых - незнаю. Но если свой файл в архивинвалидатион вписать, а его в папке небудет, то в игре модель будет отсутствовать/текстура будет фиолетовой даже если в стандартном бса этот файл всетаки есть. Поидее прописав все лежащие в папках файлы в архивинвалидатион (так делает прога Automatic Content Validator), все должно работать как надо. Но возвращаясь к твоей ситуации - как учитываются игрой сторонние бса при этом я незнаю

3 Изменить стандартные бса так, чтобы обливион просто не видел там файла file.dds (вместо него будет например 0000.dds), но видя лежащий в папке твой файл пользовал именно его, потому что другого файла нет. Поидее тут уже обливо никак не сможет измернуться и отобразить старый файл вместо нового. Поэтому такой способ предпочтительней.

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

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
3 Изменить стандартные бса так, чтобы обливион просто не видел там файла file.dds (вместо него будет например 0000.dds), но видя лежащий в папке твой файл пользовал именно его, потому что другого файла нет. Поидее тут уже обливо никак не сможет измернуться и отобразить старый файл вместо нового. Поэтому такой способ предпочтительней.

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

Это делает BSA Alteration? Тогда он это делает как-то криво. Потому что не работает. Тоесть что-то грузится, а что-то нет. Как и без BSA Alteration. Видимо ему чем-то не нравятся некоторые файлы в моих архивах.

 

И еще я провел альтернацию и в конце появилось окно с данными. Первая графа я думаю это колличество обработанных архивов. Вторая колличество файлов в этих архивах. А третья я не понял.

Так вот я провел альтернацию и появились такие цифры 20, 553, 287. Удалил один полностью реплейсерный архив (тоесть в нем одни реплейсеры) содержащий 113 файлов. Появились такие данные 19, 529, 287. Не состыковочка получается.

 

И еще как-то давно создавал архив с мешами для ООО 1.3, при помощи BSACommander'a, так он отказался работать. Недавно ситуация повторилась. А с помощью BSACreator'a от OBMM все создалось нормально, как тогда так и сейчас.

 

Незнаю, но возможно это боги меня наказали, но я решился на отчаянный шаг схожий с третьим вариантом. Открыл Oblivion - Meshes.bsa в ArtMoney и изменил при помощи его названия этих проблемных мешей внутри самого архива. И ведь не помогло. Игра всеравно как-то находит их внутри архива и использует. Так как больше ей брать их неоткуда. Это должно быть проклятье.

Ссылка на комментарий
Поделиться на другие сайты

Это делает BSA Alteration? Тогда он это делает как-то криво. Потому что не работает. Тоесть что-то грузится, а что-то нет. Как и без BSA Alteration. Видимо ему чем-то не нравятся некоторые файлы в моих архивах.

 

И еще я провел альтернацию и в конце появилось окно с данными. Первая графа я думаю это колличество обработанных архивов. Вторая колличество файлов в этих архивах. А третья я не понял.

Так вот я провел альтернацию и появились такие цифры 20, 553, 287. Удалил один полностью реплейсерный архив (тоесть в нем одни реплейсеры) содержащий 113 файлов. Появились такие данные 19, 529, 287. Не состыковочка получается.

 

И еще как-то давно создавал архив с мешами для ООО 1.3, при помощи BSACommander'a, так он отказался работать. Недавно ситуация повторилась. А с помощью BSACreator'a от OBMM все создалось нормально, как тогда так и сейчас.

 

Незнаю, но возможно это боги меня наказали, но я решился на отчаянный шаг схожий с третьим вариантом. Открыл Oblivion - Meshes.bsa в ArtMoney и изменил при помощи его названия этих проблемных мешей внутри самого архива. И ведь не помогло. Игра всеравно как-то находит их внутри архива и использует. Так как больше ей брать их неоткуда. Это должно быть проклятье.

 

А ты пробывал использовать эту полезную утилиту ArchiveInvalidation Invalidated ?

Ссылка на комментарий
Поделиться на другие сайты

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

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

 

Да ты прав эта утилита работает только с текстурами но благодаря ей можно решить проблемы с крупными текстурными реплейсерами и раздувшимся ArchiveInvalidation.txt в результате их установки

советую скачать инсталятор в три клика решишь выше названную проблему но если решишь установить вручную

пропиши в Oblivion.ini в папке My Documents\My Games\Oblivion и пропиши ArchiveInvalidationInvalidated!.bsa перед

Oblivion - Textures - Compressed.bsa будет выглядеть так:

 

SArchiveList=Oblivion - Meshes.bsa, ArchiveInvalidationInvalidated!.bsa, Oblivion - Textures - Compressed.bsa, Oblivion - Sounds.bsa, Oblivion - Voices1.bsa, Oblivion - Voices2.bsa, Oblivion - Misc.bsa

 

по поводу моделей обливион автоматически заменяет при загрузке старый меш в Oblivion - Meshes.bsa новым если находит таковой с таким же названием и по такому же пути как и старый но в папке Data\meshes\...\

иногда необходимо сменить путь к текстуре в новом меше спомощь NifSkope на новый уникальный что бы эта функция заработала пример плагины заменители тел

если и так не заработает пропатч обливион до финальной версии Bethesda точно использовала этот метод с дрожащими островами

 

Пара строчек из гайда archiveinvalidation devakm описывюших подробнее но на англицком

 

3) Mesh replacers load regardless of whether they are specified in your ArchiveInvalidation.txt (AI.txt), so you don't need to list any .NIF files. If you do list them, try to only list the specific meshes that are giving you problems, and be aware of the ramifications, as described in #4 and #5 below.

 

4) A single entry of a common filename like "boots.dds" in AI.txt will invalidate all paths containing a "boots.dds" file that exist in both the BSA and your Data folder. It will do this regardless of whether those paths in your Data folder actually contain a "boots.dds" file and regardless of whether you have an AI.txt entry for that path. *

 

5) Listing a path in your AI.txt has the same effect as listing individual textures, in the sense that it causes all the items in that path to be invalidated. However, once you've listed one such folder, Oblivion will automatically invalidate all further instances of any common filenames it found in that first folder.

 

Another solution would be for modders to avoid creating texture-only replacers whenever possible. You can achieve the same result in many cases by altering the texture references in an item's mesh (using NifSkope) so it points to a new directory structure with texture files that don't use the same common filenames. Since meshes are loaded automatically without any need for entries in AI.txt, this avoids the problem entirely.

 

По поводу деревьев и кустов это всё SpeedTree .spt файлы автоматически подхватываються обливионом без возни с ArchiveInvalidation заявляю как человек испльзующий speed tree wind animation remover...

Изменено пользователем Kassador Tel-Necris
Ссылка на комментарий
Поделиться на другие сайты

Kassador Tel-Necris, мне что заново объяснять мои проблемы? То что ты посоветовал не подходит. У меня как-то выборочно грузятся модели из реплейсерных архивов. И в англицком я плохо понимаю. Я попытался читать ту статью на которую ты дал ссылку (кстати хорошая и полезная статья. Мможет кто переведет?), но там помоему везде написано про текстуры.

Инвалидация работает только с файлами лежащими в папках.

Изменено пользователем CemKey
Ссылка на комментарий
Поделиться на другие сайты

Пара уточняющих вопросов если не возражаешь они помогут пролить свет истины на этот впрос:

 

ты создал ОДИН .BSA архив содержащий реплейсеров текстур и мешей ?

возможно необходимо создать два архива один для текстур другой для мешей

 

ты прописал его перед оригинальными архивами ?

SArchiveList=Oblivion - твой архив.bsa, Meshes.bsa, Oblivion - Textures - Compressed.bsa, Oblivion - Sounds.bsa, Oblivion - Voices1.bsa, Oblivion - Voices2.bsa, Oblivion - Misc.bsa

 

если сделать два реплейсера то и прописать их соответственно

SArchiveList=Oblivion - твой архив-мeshes.bsa, Meshes.bsa, твой архив-Textures.bsa, Oblivion - Textures - Compressed.bsa

 

меши в .bsa архиве расположены в том же порядке что и оригинале путь к текстурам в этих мешах отличен от изначальных

 

и последнее возможно автоматическая инвалидация мешей в bsa архива мешами из другого bsa архива содержит ошибку devakm писал что она несовершенна и возможно работает только с распакованными в Data реплейсерами

Ссылка на комментарий
Поделиться на другие сайты

Ну да я создал один архив. Можно и два попробовать. Этот один архив давно стоит перевым. Самым первым. Правда я эти Обловские архивы в инишник не вносил а переименовал типа OblivionMsg - Textures - Compressed.bsa и они теперь грузятся вместе с этим плагом. Правда пробовал и исходные названия возвращать - не помогало.
Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Былоб счастье, да несчастье помогло. Есть прога BSAPatch.exe (скачал тут), которая должна заменять файлы в архивах реплейсерными из папок. Но работает глючно почему-то. Не знаю заменяет или нет, но факт тот, что при патченье записи заменяемых файлов в архивах портятся (сами файлы в архиване портятся, можно свободно распаковать и обратно запаковать - все будет работать). Вобщем я перенес все папки из папки Data, распаковал в нее реплейсерные архивы, их тоже убрал, чтоб не пропатчило, ну и запустил прогу. Потом все вернул на место. Теперь все работает. Но если что, то гаму придется переустанавливать.

Прога эта кстати от Timeslip, но на его сайте я ее не нашел.

Как выяснилось эта прога не что иное как BSA alteration из OBMM.

Ссылка на комментарий
Поделиться на другие сайты

Почаще надо в наши архивы заглядывать) Собственно я бсапатчем и пользуюсь при необходимости, ибо обмм-ом лениво, а такая маленькая удобная прога в самый раз. Файлы в бса архивах не заменяются, это б невозможно было сделать так быстро, прога просто "убирает" из заголовка бса информацию о том что в нем лежат определенные файлы - те которые нам надо чтоб грузились отдельно из папки. ТОчно также соответственно работает бса альтератион в обмм

 

PS сорри что не отвечал на прошлое, неохота писать о том в чем полностью неуверен

Ссылка на комментарий
Поделиться на другие сайты

  • 9 месяцев спустя...

после Pack мне пишет Incorrect Params! что делать??

 

 

http://nivalla.com/defef.gif

post-11791-1244880964_thumb.png

Изменено пользователем Дмитрий 187-й
Ссылка на комментарий
Поделиться на другие сайты

Ну так надо не только имя архива указать, ни и где он будет лежать. Тоесть полный путь и его имя.

И помоему в Source Dir нельзя указывать папку textures или meshes... Нужно указывать папку где они лежат. В данном случае это папка Data, но в таком случае в архив запакуется все что в ней лежит. Поэтому создай отдельную папку и перенеси туда папку textures, укажи эту папку в настройках и пакуй.

Изменено пользователем CemKey
Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...