Hotline Miami .ags.phyre

Textures, recreate headers, conversions, algorithms and parsing of image files
puggsoy
Posts: 161
Joined: Sat Dec 13, 2014 1:01 am

Hotline Miami .ags.phyre

Post by puggsoy »

So I figured out how to get the actual graphical data from these files, the pixel data itself is pretty straightforward; 32-bit RGBA, and flip it vertically for the proper orientation.

However, I need help with 2 things:

Firstly, the widths and heights. I can mess about with different widths, figure out which is the right one, and then find it in the file. For example, in sprBartenderFace.ags.phyre, the width and height are at 0x1394 (2 little-endian longs). However, I have no idea how to find them programmatically. They're always between the list of file names and the "RGBA8" string but the space between that is different and they're not always in the same spot.

Secondly, I feel like the list of filenames can be used to extract each individual sprite from the entire graphic, but I don't know how. The only data that seems to correspond to these filenames is the block before it. For example, in sprBartenderFace.ags.phyre, the filenames would be from 0xEAC to 0x1378 (filenames are null-terminated), and the block before it is from 0xD29 to 0xEAC.

I've attached a zip with a random assortment of these files. If anyone could figure out either of these things, or any other info in the files, that would be a huge help.