Задать вопрос
@PGSky

Как понять что содержится в HEX и как разобраться исходный файл правильно?

Уже писал вопрос о том, что есть некий файл, который содержит в себе в bitmap и сжат он с помощью zlib (содержит hex значения 78 9С, но до них есть еще множество непонятных для меня значений). Файл в формате .binfont, явно чисто под игру откуда взялся, сформирован.

У меня удалось его декомпрессировать с помощью offzip, но вот собрать обратно, даже исходный вариант, не измененный bitmap, не получается. Можете помочь и объяснить, как возможно сделать это? Как правильно компрессировать и декомпрессировать. Прикладываю скриншоты до 78 9С

Несколько скриншотов из HxD до отметки 78 9C

6550ac0bbf458495912601.png
6550ac5a639ca097941175.png
6550ac8486713638970496.png
6550aca0e177e653760063.png
6550acc51763e427086237.png

Ну и сам файл, если кому-то нужно (VirusTotal на всякий случай)

Приношу извинения, что обращаюсь с таким нубским вопросом, но не первый день вожусь с этим файлом и всё никак не могу разобраться. Ведь нужно понять не только, как распаковать файл, а как запаковать и чтобы игра его воспринимала. Это просто шрифт, ничего особенного. А для этого нужно понять, что в нем содержится. Да, есть bitmap, но есть также и то, что я посчитал мусором, но это явно не мусор. Учитывая, что файл открывается с помощью 7zip (не распаковывается), но не открывается без этого "мусора". В общем, надеюсь, что поможете разобраться с этим файлом, а то сейчас как я путник в лесу непонимающий как в нем передвигаться и на что ориентироваться
  • Вопрос задан
  • 1146 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
saboteur_kiev
@saboteur_kiev
software engineer
Как вы можете догадаться, код игры - проприетарный. Инструкции как и что хранится в игре, пользуются ли они какими-либо публичными форматами, которые можно легко распознать или там есть какие-то внутренние оптимизации в инете вряд ли есть. Разве что утечка исходников могла быть, но такое бывает для старых и очень популярных игр с большим комьюнити.

Поэтому только реверс инженеринг. Но для этого для начала нужно понять в каком именно формате хранится шрифт.
Попробуйте полистать хотя бы известные форматы шрифтов, найти похожие заголовки
https://docs.fileformat.com/font/

Но не факт что это вообще получится.
Ответ написан
Adler_lug
@Adler_lug
N5Usmg9.png
117С ➞ размер разжатых данных
114А ➞ размер сжатых данных
115с ➞ общий размер блока данных (с 0С40 по 1D9B )
Аналогичная структура и у разжатого блока
hJXmR7i.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы