Автор Тема: [GBA] Final Fantasy I & II: Dawn of Souls - распаковка графики  (Прочитано 148 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Егор_М

  • Пользователь
  • Сообщений: 97
    • Просмотр профиля
Здравствуйте. Кто-нибудь может помочь в распаковке графики в Final Fantasy 1&2 Dawn of Souls? Я хочу  перерисовать шрифт.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5610
    • Просмотр профиля
[GBA] Final Fantasy I & II: Dawn of Souls - распаковка графики
« Ответ #1 : 31 Декабрь 2025, 21:46:25 »
Основные шрифты не сжаты, а зашифрованы. В (USA) шрифт высотой 8 px: 0x2B377C - 0x2B4684, высотой 13 px: 0x2C0688 - 0x2C98E8. В начале 1 байт - ширина символа для отображения. 1 байт - ширина символа по 4 пикселя, от этого зависит сколько байт использует символ (1 байт на 4 пикселя). (высота шрифта * ширина символа по 4 пикселя) байтов - зашифрованная графика, для расшифровки для каждого байта ((x+0x3D)^0xAE)&0xFF, где ^ - XOR, & - AND, формат пикселей VB 2bpp.
Написал простой скрипт для расшифровки шрифтов высотой 8 и 13 из "Final Fantasy I & II - Dawn of Souls (USA).gba". На выходе font_12x8.bin и font_12x13.bin. Для удобства каждый символ сделал шириной 12, поэтому можно открыть в CrystalTile2 как 12x8 и 12x13 VB 2bpp. Обратная вставка сложнее.