Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

Family Guy: Another Freaking Mobile Game (*.ZLIB)

Featured Replies

  • Author
  • Localization

LolHacksRule, posted Mon Jul 08, 2019 11:09 pm (49225)


Given by the name, these files are compressed with ZLib and yes I can decompress these with typical ZLib decompression but can I get the actual filenames of the extracted file(s) or is that impossible?

filedropper.com/fgafmgzlib
  • Author
  • Localization

LokiReborn, posted Tue Jul 09, 2019 12:37 pm (49234)


LolHacksRule wrote:
Given by the name, these files are compressed with ZLib and yes I can decompress these with typical ZLib decompression but can I get the actual filenames of the extracted file(s) or is that impossible?

filedropper.com/fgafmgzlib


the files appear to be archives and in most cases has names and paths (depending for path if there is one)

the structure itself doesn't appear to be overly complicated but the math is weird to guess.
each file appears to be broken into 3 sections

Section 1
Data types / extension

Section 2
Names

Section 3
Data

The Sound data appears to only specify mp3 for the first one and then the rest are blank, maybe a ditto type of thing.
The file names are straight forward and ascii from what I saw, as for the math piece of it, it appears to be (value - 1) / 2 for what it says is the length
the Data section is the same thing but the length is even more obscured by some logic (may apply to prior if data was longer, it seems the number of bytes for length is variable as part of that logic)

Edit:
I was correct in the assumption even the smaller values probably followed the similar logic however it just wasn't as apparent.
The values for the length use a simple bit shift style logic using the high bit to flag if that byte is the last for the length

Basically put:
byte value = Read.Byte();
bool continue = (bool)(value >> 7) & 1;

the last byte only contains 6 bits of the original number, the high bit will be 0 and the low bit will be 1
all bytes proceed this will contain 7 bits of the original value shifted up (2 from the previous byte or more depending on position) and the 8th bit used for the flag (this is why the math looked so odd)

I'll see if I can write something that can do the math correctly to be able to extract all of the archives.
  • Author
  • Localization

LokiReborn, posted Sat Jul 13, 2019 11:46 am (49292)


LolHacksRule wrote:
Given by the name, these files are compressed with ZLib and yes I can decompress these with typical ZLib decompression but can I get the actual filenames of the extracted file(s) or is that impossible?

filedropper.com/fgafmgzlib


Here you go, I attached a program to extract the files and the source too. It seems if there were a couple more rules in there but I got it all working 100% I believe.

FamilyGuy_Source.zip

FamilyGuy_Extractor.zip

  • Author
  • Localization

LolHacksRule, posted Sun Jul 14, 2019 3:58 pm (49302)


Thanks so much.
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.