Renpy Switch Game

Textures, recreate headers, conversions, algorithms and parsing of image files
Kono
Posts: 2
Joined: Sun Nov 28, 2021 11:50 am

Renpy Switch Game

Post by Kono »

I was just looking through some switch game, and I found a Renpy game. There is some graphic file in it, some seem to be compressed.

I can read the header, but I can't determine the compression algorithm. It's build as

Code: Select all

0x00 -> 0x04 = Unknown number, maybe magic number
0x04 -> 0x08 = Supposedly bit per color
0x08 -> 0x0C = height (1080p)
0x0C -> 0x0F = width (1920p)

After that there is a stream which seem to be compressed. I can't figure what is the compression algorithm as there is no magic number. I uploaded few sample images.

BG.zip


Thank you for your time !
Allen
Posts: 156
Joined: Tue Sep 01, 2015 9:44 am

Re: Renpy Switch Game

Post by Allen »

They are double-layer LZ4 compression.

Code: Select all

# Renpy Switch Game
# script for quickbms
# by Allen

comtype lz4
get magic long
get bpp long
get width long
get height long
get SIZE long
get ZSIZE long
get name basename

string name + ".dcmp"
savepos OFFSET
log MEMORY_FILE 0 0
clog MEMORY_FILE OFFSET ZSIZE SIZE
get SIZE long MEMORY_FILE
get ZSIZE long MEMORY_FILE
savepos OFFSET MEMORY_FILE
clog name OFFSET ZSIZE SIZE MEMORY_FILE
Kono
Posts: 2
Joined: Sun Nov 28, 2021 11:50 am

Re: Renpy Switch Game

Post by Kono »

Indeed, it works ! Thank you :D