Jump to content

mid-kid

Member
  • Posts

    4
  • Joined

  • Last visited

Everything posted by mid-kid

  1. Now that you mention it, that is indeed the correct™ way. I just didn't think of it at the time. I might fix it someday.
  2. None. Just went on working on something else at the moment. The UTF-16 that's contained in the messages.bin is a bit weird in some places. Python can't completely decode it correctly either. I assume most of the characters that can't be decoded are formatting things the game uses. Some of the formatting characters can be decoded to UTF-8, however (finding out which and what they do is the hard part). In my script I just replace every character that can't be decoded with "{{unk:<hex>}}" (see decode_ninty_utf). Yes, haven't gotten anything.
  3. Thanks to the info above, I was able to make a tool to unpack the message.bin. I won't be working on it anymore, so I'll leave messagetool.py here: https://gist.github.com/mid-kid/8279635ee8dc57560e96 It unpacks the message.bin to readable, plain text files. It mostly works, but there's some rough edges here and there. I hope somebody can do something with it. Usage: Unpacking: python3 messagetool.py extract message.bin messages_extracted Packing: python3 messagetool.py pack messages_extracted new_message.bin
  4. To add to the info psy_commando posted above, some FARC files contain two SIR files (ex. message.bin). One is kind of an info file, which gives the offsets and size of the SIR files inside the second file. It differs a tiny bit from the usual SIR file. Here's the format: Header: Magic 4 "SIR0" Subheaderptr 4 Pointer to the subheader Offsetlistptr 4 Pointer to the offset list Null 4 Always zero Filelist (array): Unknown 4 Some random value. Probably some ID Offset 4 The offset of the file Size 4 The size of the file Subheader: Filelistptr 4 Pointer to the file list Filecount 4 Amount of files Unknown 4 Value: 1 Padding zero bytes to align to 16 bytes. Offsetlist: http://www.projectpokemon.org/wiki/Pmd2_SIR0#Pointer_Offsets_List Padding zero bytes to align to 16 bytes.
×
×
  • Create New...