Поиск - Участники - Календарь
Перейти к полной версии: [Релиз] BSA Commander и unbsa4
ElderScrolls.Net Conference > The Elder Scrolls > Гильдия мастеров > Oblivion Construction Set
Butch
Люди, а чем собирают .bsa для обливиона?
tes4bsa вроде только на чтение работает.
Nicolas
Из инструментария много чего еще не сделано...
это и Сборщик БСА архивов
и импортер НИФ файлов wink.gif
Kuja
Для Морровинда был BSAPACK.
Для Облвиона подобной программы еще не вышло. Думаю ghostwheel скоро сделает.
Butch
Не, ну есть же уже моды с .bsa поставляются... чем то их делают...

Блин, самому чтоли написать?...
Kuja
>> Butch:
И какой плагин к Обливиону ты видел с BSA кроме официального?
Butch
Какойто русификатор, там "Oblivion - Misc.bsa"
Kuja
>> Butch:
Туда просто вшиты русские шрифты с помощью специальной программы.
Програмы для создания BSA пака пока нет. Иначе бы уже плаги с BSA шли.
Butch
Там еще куча .xml ...

Впринципе я посмотрел формат .bsa - не такой уж он и сложный. Тока я не нашел полное описание флагов Archive Flags и Files Flags в заголовке. Может у кого есть инфа или ссылки?

И еще, вроде получается что все официальные .bsa без компрессии сделаны. Это чтобы место на DVD забить чтоли?

добавлено Butch - [mergetime]1145223604[/mergetime]
Распаковщик я вроде зделал, а вот в паковщике нехватает двух вещей
  - непонятны значения флагов
  - нет инфы как хэш имен посчитать (может морровский алгоритм подойдет?)
Без хэшей обливион отказывается архивы кушать и ругается матом в микрософт wink.gif

Не нифига sad.gif
или у меня руки кривые или алгоритм расчета хэша от морра не подходит...
Капут. skull.gif
Nicolas
>> Butch:
зачем ты голову ломаешь над такой безделушкой..ты лучше НИФ ИМПОРТЕР напиши...вот это понимаю вещь wink.gif
Butch
Яж не моделлер, у меня даже макса нету. И потом вроде .nif распространненый формат, должны быть и тулзы для него.
Butch
Вот выложил BSA Commander 0.9 тут

Может:
  - смотреть содержимое .bsa файлов;
  - получать детальную информацию об архиве и сохранять ее в файл;
  - распаковывать файлы из архива (все или любые выбранные);
  - регестрировать архивы для игры;
  - создавать новые .bsa архивы (ВНИМАНИЕ! эта ф-ция еще не полностью завершена);
  - вы можете ассоциировать BSA Commander для .bsa файлов.

Насчет упаковки: Я все еще не имею информации об алгоритме расчета хэш значения для имен файлов (каталогов). Каждое имя файла (каталога) в .bsa архиве должно иметь хэш значение (8 байт). В бетта версии эти поля имеют нулевое значение. Т.ч. игра не воспринимает такие архивы.
Если у вас есть информация об алгоритме рассчета хэша имен, пожалуйста сообщите мне. Я буду рад любой помощи.

ЗЫ: Так же, еще полностью не известны все значения флагов Archive Flags и Files Flags в .bsa
заголовке. Вам нужно ввести эти значения вручную при создании архива. Если вы выбрали компрессию архива, то, будет принудительно установлен бит 3 в Archive Flags.
Так же привествуется любая инфа о флагах.
[FG]
>> Butch:
Удобная программа, а куда кешируется инфо о содержимом архива и по каким критериям при этом идет проверка на подлинность архива? Просто по размеру?
boblen
Ссылка на сам файл неверная, перед названием файла слэш не тот стоит!!!
Butch
FG ничего специально не кэшируется - все в памяти (да там и не шибко как много жрется). Проверки разные идут  во время открытия файла (ну там версия заголовка, кол-во каталогов и файлов и т.п.). Во время распаковки обрабатываются исключения zlibа.

Boblen все вроде качается. Остальные проги тоже с таким слэшем, а их куча народа качала...
Kuja
>> Butch:
Цитата: 
Boblen все вроде качается. Остальные проги тоже с таким слэшем, а их куча народа качала...

Исправь слеш. Не качается, пока руками не поправишь ссылку в менеджера закачек.
angel_death
алгоритм вычисления хешей есть в моем распаковщике
http://angel-death.newmail.ru/
Butch
ссылки поправил...

angel_death вот спасибо!  good.gif
побежал смотреть...

добавлено Butch - [mergetime]1145500788[/mergetime]
Вроде хэши рассчитываются правильно... игра уже хавает мои .bsa. Но tes4bsa кидает исключение при попытке просмотра.

Теперь непонятка с полем Offset  в Folder Record. Если это смещение, то в оригинальных .bsa он ведет фиг знает куда (например в середину строки имени какого-то файла).

Обновил BSA Commander до версии 0.92
там же
angel_death
это смещения директории, правда относительно чего не известно.
Скорее всего относительно какихто runtime структур, игра при загрузке это поле все равно не использует
Butch
Дак а че тогда tes4bsa не нравиться? Мож там какую сортировку файлов или хэшей надо делать еще?
angel_death
к смещению относительно начала файла надо добавить размер блока с именами файлов (DWORD +0x1с  в заголовке)
Butch
Не, получилось так - длину имен файлов надо прибавить к позиии имени каталога - 1 (т.е. байт длины). Хотя физический смысл такого действа мне не совсем ясен. Наверное это связано с особенностью чтения файла. Я то все последовательно читаю, без всяких заморочек...

angel_death решпект! Ты где инфу то берешь?

Качайте версию 0.93 опять же, там же же.

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

адля получения инфы использую hiew,ida и моск smile.gif
Butch
Интересное кино с датами получается. Если у архива время создания свежЕе, то он может перебивать файлы, лежащие просто так (моды). Вроде в морре такого не было?

Чуток почистил командер - версия 0.94 лежит...
Butch
Мдя... Чето игра отказывается воспринимать новые .bsa... мож там вообще этот механизм не реализован?
angel_death
bsa из оффициальных модов воспринимает
но там только новые файлы
заменить существующий файл при помощи bsa может не получится без правки ini
стандартные bsa грузятся первыми и файлы будут братся из них
Butch
Да вроде люди ишут, что пробуют делать моды и нифига не читается...
может чето с флаами надо химичить, а может кроме стандартных и не грузиться вообще ничего (хотя это было-бы странно) sad.gif
angel_death
возможно нужно правильно прописать FileFlags
предположительно файлы с какими расширениями есть в данном bsa
0x001 nif
0x002 dds
0x004 xml
0x008 wav
0x010 mp3
0x040 spt
0x080 tex+fnt
0x100 ctl

0x020  txt html bat scc

так же в оффициальных плагинах встречаются файлы у которых в размере установлен бит 0x40000000
Butch
я делал простенький тест с заменой маркеров на карте на цветные - там 3 текстуры с иконками карты...
и 002 и fffffff пробовал - нифига они не подключаются...
angel_death
замена существующих может и не работать
оригинальные bsa первыми подключаются и то что них есть берется из них
Butch
Блин, чето ерунда какая-то... Вроде обливион имеет побльше возможностей для модификаций чем морр, а с bsa такая засада... Почему нет нормальной последовательности загрузки?

Мож кто в западных форумах видел инфу (а то сам я туда не ходок)?
boblen
Товарищи программеры, а не могли бы вы сделать програмку-патчер... чтобы оф.плаги на русский переводить, но распространять не сами плаги, а только руссификацию... Подобное есть в плаге SaddleBags, который патчит оф.плаг с броней на лошадей.
Все руссификаторы были бы Вам очень благодарны!
Butch
boblen впринципе можно былобы, но например со скриптами опять неувязка получится без компилятора...
boblen
Однако ж те, кто делают SaddleBags это обошли. Их код добавляется в скрипты плагина...
angel_death
для создания патча русифицирующего плагин подойдет любой бинарный патчер
например http://www.clickteam.com/PatchMaker/US
boblen
Попробую разобраться...

Не качается этот InstallMaker, 404 ошибку выдает... Может на мыло скинешь?
boblen@rambler.ru

добавлено boblen - [mergetime]1146709815[/mergetime]
Нашел все сам, скачал еще ColdFusion, чем сделан патч на SaddleBags
Butch
Профиксил баг в BSA Commander со смешанной компрессией файлов в архиве - выложил версию 0.96. Вроде все официальные архивы теперь нормально распаковываются.

ЗЫ: а че это за интересный файл такой DLCList.txt ?
boblen
Список скачанного контента... нафиг он нужен - непонятно. Туда записываются оф.плаги, но я обхожусь и без него.
Butch
Странно, сегодня попробовал запихнуть текстуры от Reznod_Mannequin в .bsa и подключить в игре. Получилось, что половина манекена затекстурирована, а половина нет (не закрашены ноги, кисти, женских, тело мужских и т.п.). Значит, что-то из архива считалось, а что-то нет...

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


добавлено Butch - [mergetime]1146942310[/mergetime]
Похоже действительно сортировка файлов влияет. Только я не совсем могу понять алгоритм сортировки. Каталоги похоже сортируются по hash2 (младшая часть хэша). Файлы внутри каталогов непонятно пока как сортируются...

ЗЫ: и надо свои новые архивы прописывать ПЕРЕД стандартными в SArchiveList

angel_death Ау! мож ты чего наковыряешь по сортировке?


добавлено Butch - [mergetime]1146963120[/mergetime]
Вроде у меня получилось запихнуть в свой .bsa русские фонты, xmlки от btmod, текустуры манекенов и карту в эльфийском стиле одновременно. А цветные маркеры на карте не хотят работать...

Обновил BSA Commander 0.97 у себя на сайте. Просьба потестить и сказать ченить умное.
Kuja
>> Butch:
Цитата: 
Forbidden
You don't have permission to access /morr/download/bsacmd.rar on this server.
Butch
Починил.
[FG]
>> Butch:
Использовал для создания bsa только с текстурами, игра их подцепляет.

добавлено [FG] - [mergetime]1147877943[/mergetime]
Хм. а если текстуры из bsa-архива по пути и имени совпадают с оригинальными, то используются оригинальные, а не новые по дате из архива. За это отвечает какой-то параметр?
Butch
В архивах не хранятся даты файлов.
Чтобы измененные текстуры грузились первыми, надо свой новый архив прописать в ini ПЕРЕД стандартным (вроде это помагает).
Например:
[Archive]
...
SArchiveList=my.bsa, Oblivion - Textures - Compressed.bsa...
[FG]
Хм. Уже сделал, пока не получается. Буду думать дальше.
Dimka
Помогите создать архив с текстурами, BSA Commander мне всё время пишет Incorrect params, можете описать подробно как создать архив.
Wanderer
Напишите, пожалуйста, какую строку и как нужно менять в ini, чтобы в игре отображались новые текстуры на ретекстрированных оригинальных объектах, а то по умолчанию грузятся текстуры из архива. (причем в редакторе все выглядит правильно, а когда заходишь в игру - засада) Вроде бы в Морре по умолчанию грузились текстуры из открытой директории. Заранее благодарен.
Butch
Посмотрите этот (и им подобные туториалы)
http://cs.elderscrolls.com/constwiki/index...r_Own_BSA_files

"Incorrect params" выдается в двух случаях:
1. Неверно задан каталог с исходными файлами
2. Неверно задан путь куда помещать результирующий .bsa (файл надо указывать с полным путем)
Butch
Выложил новую версию BSA Commander 0.98

В ней добавлен режим командной строки, например
>bsacmd -pack "C:\MyMod\" "C:\BSA\MyMod.bsa" -r=0 -l=3 -af=707 -ff=1A4
boblen
Я так понял, что ком.строка для проги Mentalelf-а?
Butch
Да, он просил меня об этом, да и просто полезная фича - много то переделывать не пришлось...
Кстати, там был баг с сортировкой при упаковке - скачайте исправленную версию 0.98.1

Вроде на западе народ вовсю клепает свои bsa, значит фурычит...
Butch
Выложил новую версию BSA Commander 0.98.2

  - добавлена возможность сортировки списка файлов в различных режимах
  - обновлен модуль ZLIB, в котором профиксены некоторые глюки
Упрощенная версия форума. Для перехода в полную нажмите на эту ссылку.
Invision Power Board © 2001-2025 Invision Power Services, Inc.