BFFNT Editor or BFCNT to BFFNT Converter?

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by Helmax, May 19, 2016.

  1. Helmax
    OP

    Helmax GBAtemp Regular

    Member
    188
    276
    Feb 17, 2011
    United States
    I found a couple of tools laying around the web and these forums.

    Problem is, it does not work for the specific game I am working on.
    I could post the BFFNT in question, but wondering what else is out there I haven't found/tried yet, if anything.

    Thanks
     
  2. Helmax
    OP

    Helmax GBAtemp Regular

    Member
    188
    276
    Feb 17, 2011
    United States
    Also my goal is just to shrink the font height and width overall for the game in question. Maybe I can just accomplish that with hex editting instead of dumping and repacking, since I am not exactly trying to modify the font family itself.
     
  3. Helmax
    OP

    Helmax GBAtemp Regular

    Member
    188
    276
    Feb 17, 2011
    United States
    Code:
    **************************************************************************
    46 46 4E 54         = header magic (FFNT)
    FF FE 14 00
        > FF FE    = >        = Byte Order
        > 14 00    = 20    = Header length
    00 00 00 04         = Version (v4)
    40 82 26 00         = File size (0x268240 => 2523712 => 2.523 MB )
    0C 00 00 00         =    FFNT Content (0x00000C)
    **************************************************************************
    46 49 4E 46         = header magic (FINF)
    20 00 00 00         = 32 length (from header magic to the end, so 8 bytes wasted on MAGIC + LENGTH)
    01 12 0F 0E
        > 01 = 1         = Font Type
        > 12 = 18         = Height
        > 0F = 15         = Width
        > 0E = 14         = Ascent 
    12 00 00 00
        > 12 00 = 18    = Line Feed   
        > 00 00    = 0        = Alter Character Width
    00 0F 0F 01
        > 00 = 0        = Default Left Width
        > 0F = 15        = Default Glyph Width
        > 0F = 15        = Default Character Width
        > 01 = 1        = Encoding
    3C 00 00 00         = TGLP Offset (0x00003C)
    08 20 26 00         = CWDH Offset (0x262008)
    20 4D 26 00         = CMAP Offset (0x264F20)
    **************************************************************************
    54 47 4C 50            = header magic (TGLP - starts at 0x00003C as specified above)
    CC 1F 26 00            = section size (very big..., its all the glyph info) (header is only 20(16)/32(10) long)
    0F 12 13 0F
        > 0F    = 15    = Cell Width
        > 12    = 18    = Cell Height
        > 13    = 19    = Sheet Count
        > 0F    = 15    = Max Character Width
    00 00 02 00            = 131072 (sheet size)
    0E 00 04 00
        > 0E 00    = 15    = sheet baseline position
        > 04 00    = 4        = sheet pixel format (RGBA4)
    10 00 0D 00
        > 10 00    = 16    = # sheet cols
        > 0D 00    = 13    = # sheet rows
    00 01 00 01
        > 00 01    = 256    = sheet width
        > 00 01 = 256    = sheet height
    00 20 00 00         = Sheet Data Offset (0x002000)
    **************************************************************************
    I started outlining the hex:
     
    _eyCaRambA_ likes this.