PDA

Просмотр полной версии : Распаковка Flatout:Head on


DeadNote
15.12.2020, 00:42
Здравствуйте! Захотел распаковать игровые архивы, но софт от пк версии не подходит. Файл .bfs не распаковывает полностью. Нужна помощь в распаковке.

Yoti
15.12.2020, 15:12
Обрати внимание на эти сайты:
https://zenhax.com/
https://forum.xentax.com/

DeadNote
16.12.2020, 01:54
Обрати внимание на эти сайты:
https://zenhax.com/
https://forum.xentax.com/

Уже был. Срипты распаковывают через одно место. Делают 1000 папок и переименовывают абсолютно все файлы.

DeadNote
16.12.2020, 02:40
Почему я хочу распаковать игру. Сама игра странная, повторяет Флатаут 2 но использует движок от Флатаут Ультимат карнаж у которого есть динамические тени и отражения пусть и выкручены в ноль на псп который куда тяжелее оригинального движка. Уж очень хочется в скриптах поковырять.

Yoti
16.12.2020, 12:24
Уже был. Срипты распаковывают через одно место. Делают 1000 папок и переименовывают абсолютно все файлы.
Напиши свои, лучше. Скрипт от aluigi для flatout 2 распаковывает архив от flatout ho без ошибок.

DeadNote
18.12.2020, 04:18
Напиши свои, лучше. Скрипт от aluigi для flatout 2 распаковывает архив от flatout ho без ошибок.

У тебя тоже все раскидано по папкам? И как работать с файлами? Меняются расширения файлов, папок, названия файлов другие. Есть ошибки при сборке обратно если файлы были изменены. Я не знаю хорошо c++ на котором написаны распаковщики, а архивы .bfs еще и сжаты сторонней библиотекой zlib.

Yoti
18.12.2020, 13:57
У тебя тоже все раскидано по папкам?
Ну так если в архиве файлы в папках, как они ещё должны быть?

И как работать с файлами?
Руками. Я для проверки открывал lua в Notepad++, так как он текст.

Есть ошибки при сборке обратно если файлы были изменены.
Вопрос был про распаковку - она доступна. Написать сборку раза в два и более сложнее.

Я не знаю хорошо c++ на котором написаны распаковщики
Скрипт от Aluigi для QuickBMS написан на скриптовом языке, к которому есть документация (https://aluigi.altervista.org/papers/quickbms.txt).

а архивы .bfs еще и сжаты сторонней библиотекой zlib
Архивы не сжаты в zlib, сжаты некоторые файлы внутри. В скрипте это указано явно: log без разжатия, clog с разжатием.

DeadNote
18.12.2020, 18:47
Ну так если в архиве файлы в папках, как они ещё должны быть?


Руками. Я для проверки открывал lua в Notepad++, так как он текст.


Вопрос был про распаковку - она доступна. Написать сборку раза в два и более сложнее.


Скрипт от Aluigi для QuickBMS написан на скриптовом языке, к которому есть документация (https://aluigi.altervista.org/papers/quickbms.txt).


Архивы не сжаты в zlib, сжаты некоторые файлы внутри. В скрипте это указано явно: log без разжатия, clog с разжатием.

В если распаковать пк версию или консольную то там нет папок с цифрами, еще все папки и файлы рандомные. Данный скрипт может распаковывать любые bfs. толку мало. Попробуй найди нужный файл, где все перепутано. В оригинальных распаковщиков обязательно было наличие zlib. Как это работает тут нужно разобраться.

Yoti
18.12.2020, 20:15
Как это работает тут нужно разобраться.
Скрипт читает заголовок файла, потом переходит к таблице папок, потом извлекает файлы из этих папок. Разжатие всего сжатого происходит автоматически. В файле нет имён файлов в явном виде, так что имена даются простым порядковым номером. Судя по исходникам других распаковщиков, там имена Хаффманом пожаты. Не уверен, что QuickBMS такое умеет. В любом случае, содержимое извлечено.

DeadNote
19.12.2020, 02:50
Скрипт читает заголовок файла, потом переходит к таблице папок, потом извлекает файлы из этих папок. Разжатие всего сжатого происходит автоматически. В файле нет имён файлов в явном виде, так что имена даются простым порядковым номером. Судя по исходникам других распаковщиков, там имена Хаффманом пожаты. Не уверен, что QuickBMS такое умеет. В любом случае, содержимое извлечено.

Знач он мне не совсем подходит. Будем искать товарища который могёт в C++ поболее моего. И разобраться почему не распаковывает полностью файл оригинальный распаковщик. Я тут ковыряю bfs2pack, уже вылетает не в самом начале, но моих знаний явно слишком мало. Да, все равно я там не движок переписывать лез. Так по мелочи, отредактировал бы плейлист, исправил бы некоторые ошибочные текстуры, есть баги со звуком в дерби. Из интересного, в некоторых местах коллизия не как в оригинале, на некоторых участках трассы дыры сквозь дорогу. Вот бы в блендере посмотреть.

Ang3l42
19.12.2020, 03:13
Будем искать товарища который могёт в C++ поболее моего. И разобраться почему не распаковывает полностью файл оригинальный распаковщик.\
Сдается мне что ты искать будешь вечно. Потому что забесплатно только снег сейчас доступен. И то скорее всего желтый. А платно... Это стоит даже не полную стоимость игры для PS5... В смысле выше...

DeadNote
19.12.2020, 03:29
\
Сдается мне что ты искать будешь вечно. Потому что забесплатно только снег сейчас доступен. И то скорее всего желтый. А платно... Это стоит даже не полную стоимость игры для PS5... В смысле выше...

Спасибо за ответ. Ну, если получится, как выйдет то файл прикреплю. По интернету помониторил чёт дофига в 2k20 псп версией заинтересовались. Буду и дальше с++ учить тем более полезный навык.

DeadNote добавил 19.12.2020 в 03:29
\
Сдается мне что ты искать будешь вечно. Потому что забесплатно только снег сейчас доступен. И то скорее всего желтый. А платно... Это стоит даже не полную стоимость игры для PS5... В смысле выше...

Ах, да. По ценам я примерно в курсе цена +-10 к у хорошего программиста) но к стоимости добавляется сложность.

Ang3l42
19.12.2020, 04:00
Ах, да. По ценам я примерно в курсе цена +-10 к у хорошего программиста) но к стоимости добавляется сложность.

Вот именно что прибавляется.
у, если получится, как выйдет то файл прикреплю.
За такой файл всем форумом вам спасибо скажем:blush:

DeadNote
19.12.2020, 06:11
Вот именно что прибавляется.

За такой файл всем форумом вам спасибо скажем:blush:

Ладно, я ленивый но настойчивый.

DeadNote
19.12.2020, 06:42
Скрипт читает заголовок файла, потом переходит к таблице папок, потом извлекает файлы из этих папок. Разжатие всего сжатого происходит автоматически. В файле нет имён файлов в явном виде, так что имена даются простым порядковым номером. Судя по исходникам других распаковщиков, там имена Хаффманом пожаты. Не уверен, что QuickBMS такое умеет. В любом случае, содержимое извлечено.

Хах, ковыряю исходники уже 4й час. Действительно Хаффманом запаковано.