How to View Images Inside Sims FreePlay’s M3G File

Sims FreePlay utilizes files with the M3G extension files for its graphical UI components. Here I will show how to extract the images embedded inside this kind of file.

If you open the file using the hex editor, it will contains the undocumented IM3M3G signature, followed by some unknown data structure, and the series of strings describing the image files.

Let’s take a look at common.m3g file for illustration. At the end of file strings, there are some structure as follows:

m3g01

In the above picture, there are unknown 0x64 hex value, followed by some value like 0x04, etc. Let’s copy this part into some new file for a more detailed examination:

m3g02

The four bytes at offset 0x03 thru 0x06 is width, 0x07 thru 0x0A is height (red boxes). As for the size of the image is denoted by blue box, at offset 0x0F thru 0x12.

From the above clue, we can deduce that the width is 0x00004000, height is also 0x00004000 and image size is 0x00400000. After this structure, comes the actual image data.

The image data is in the format of RGBA, which is 4 bytes per pixel info. Based on this information, we can extract the image portion and use the image viewer such as IrfanView, and supplied the information using RAW image format.

If you want to know what kind of image inside the example file (common.m3g) here it is 🙂

m3g03

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: