Tool GAME RIPPER (decrypt and extract Ren'Py, Godot, Unity, Unreal, WolfRPG, RPGM XP/VX/Ace/MZ/MV, SRPGStudio, Bakin, PGMMV, GMS, APK, JAR, WASM, EXE etc.)

5.00 star(s) 1 Vote

whitemage88

Newbie
Jul 25, 2020
80
62
85
Gameripper tries to automatically identify animated images. It's useful, but false positives can happen sometimes.
If your image is animated even though it should not be, press 'backspace' to undo animation and display the file as is.
Surprisingly simple solution. Definitely feel like an idiot lol, when I clicked the box next to animate I didn't notice a change so I didn't pay it any further mind, thought it would just do 1/both frames individually instead of a gif lol.
Thanks again.
 

justaplayer69

Member
Nov 29, 2023
393
463
131
Hi guys,

I'm not dead, just extremely busy. Haven't forgotten about GR, will come back to it as soon as I can.

I want to convert the data decrypted with bakin back into rbpack, but I don't know how to do it because I don't know the commands.
Maybe give a try . It includes pack.py which is supposed to create rbpack files.
But to create a package for a game engine, it is always the best to use the original software, Bakin in this case.
You can fix the images header with a hex editor to view them, but they are scrambled to varying degrees.
Do you have some more information on this? Example files (crypted and decrypted alike) perhaps?
hello, is there a way or another program to import the exported files back into pcx?
i tried this
I'm not sure if Godot uses .pcx at all. It is a very old image format, but ImageMagick supports that, it can convert from and into. See
If you meant pck, then Godot is your primary tool to create it (just like with Bakin above).
Surprisingly simple solution. Definitely feel like an idiot lol, when I clicked the box next to animate I didn't notice a change so I didn't pay it any further mind, thought it would just do 1/both frames individually instead of a gif lol.
Thanks again.
If a sprite gets automatically animated, then instead of an "Animate" button you'll see a "turn back arrow" button (which does exactly the same as the backspace key :) ).
 

justaplayer69

Member
Nov 29, 2023
393
463
131
New (very) minor release while you're waiting for the next major release. Thank you for your patience and sorry I don't have more free time for GR!

Windows: https://attachments.f95zone.to/2025/10/5347118_gameripper-windows.zip
Linux: https://attachments.f95zone.to/2025/10/5347119_gameripper-linux.zip
Source: https://attachments.f95zone.to/2025/10/5347120_gameripper-src.zip
Repo: codeberg.org/gameripper/gameripper

Changelog:
- finally fixed that annoying false Bakin detection bug
- XNB asset format support (aka. Silverlight, aka. XNA Framework, aka. MonoGame; texture and audio)
 

yumiyumi

Member
Sep 10, 2024
198
154
121
New (very) minor release while you're waiting for the next major release. Thank you for your patience and sorry I don't have more free time for GR!

Windows: https://attachments.f95zone.to/2025/10/5347118_gameripper-windows.zip
Linux: https://attachments.f95zone.to/2025/10/5347119_gameripper-linux.zip
Source: https://attachments.f95zone.to/2025/10/5347120_gameripper-src.zip
Repo: codeberg.org/gameripper/gameripper

Changelog:
- finally fixed that annoying false Bakin detection bug
- XNB asset format support (aka. Silverlight, aka. XNA Framework, aka. MonoGame; texture and audio)
If possible, could you please create a tool that allows me to easily repack files into their original format?
 

justaplayer69

Member
Nov 29, 2023
393
463
131
If possible, could you please create a tool that allows me to easily repack files into their original format?
That's a lot harder than ripping. You can get away with unknown parts with unpacking, but that's not an option with packing.

I give you an example: in WolfRPG archives, there are multiple strings for file names. For ripping, I just pick the one that seems to be UTF-8. On the other hand for creating an archive, one would have to know exactly how all of these strings are encoded and encode them as such. There is lot of reverse engineering in ripping, and I elegantly just simply skip unknown bytes... For a packer, that's not an option, you'd have to know exactly what those unknown bytes are for and how to calculate them, because the engine probably needs them and relies on them. An invalid byte value could easily crash the engine, so packing is considerably lot harder than unpacking. That's why I always suggest to use the original tool for packing.

But as long as rbpack concerned and the project binary is left unchanged, I might be able to put a simple tool together. Here the real issue is that the format of project file differs from the format in the archive, and it is totally undocumented and probably even version dependent.
I just came across this while testing some assets in that engine. I also tested it in the quoted game, and it gave the same result of a corrupted image with an invalid chunk size.
I see. Indeed this is just a replaced PNG magic, the first 4 bytes should be 89 50 4E 47, otherwise seems to be a perfectly valid PNG. I don't see any issues with chunk sizes either: header 8 bytes, then IHDR 13 bytes, sBIT 4 bytes, pHYs 9 bytes (these are fixed size chunks and correct), then an IDAT with 8192 (variable sized chunk with a limit of 8192 bytes, so probably more IDAT chunks follows). All seems to be valid to me.
 
  • Like
Reactions: Dretel

ValkyrieSCPD

Member
Nov 16, 2023
218
74
161
That's a lot harder than ripping. You can get away with unknown parts with unpacking, but that's not an option with packing.

I give you an example: in WolfRPG archives, there are multiple strings for file names. For ripping, I just pick the one that seems to be UTF-8. On the other hand for creating an archive, one would have to know exactly how all of these strings are encoded and encode them as such. There is lot of reverse engineering in ripping, and I elegantly just simply skip unknown bytes... For a packer, that's not an option, you'd have to know exactly what those unknown bytes are for and how to calculate them, because the engine probably needs them and relies on them. An invalid byte value could easily crash the engine, so packing is considerably lot harder than unpacking. That's why I always suggest to use the original tool for packing.

But as long as rbpack concerned and the project binary is left unchanged, I might be able to put a simple tool together. Here the real issue is that the format of project file differs from the format in the archive, and it is totally undocumented and probably even version dependent.
I see. Indeed this is just a replaced PNG magic, the first 4 bytes should be 89 50 4E 47, otherwise seems to be a perfectly valid PNG. I don't see any issues with chunk sizes either: header 8 bytes, then IHDR 13 bytes, sBIT 4 bytes, pHYs 9 bytes (these are fixed size chunks and correct), then an IDAT with 8192 (variable sized chunk with a limit of 8192 bytes, so probably more IDAT chunks follows). All seems to be valid to me.
Hi,remember the bakin game frozen problem I mentioned before?I got another game (RJ01394574)stuck in the same way.(I tried it an amd desktop & an intel laptop)
I have uploaded the gameripper.log before in case you wanna check it out.
 

justaplayer69

Member
Nov 29, 2023
393
463
131
Hi,remember the bakin game frozen problem I mentioned before?I got another game (RJ01394574)stuck in the same way.(I tried it an amd desktop & an intel laptop)
I have uploaded the gameripper.log before in case you wanna check it out.
Yeah, I remember, and I've now checked it again with this latest GR version, and still works perfectly fine (see attachment). I couldn't see anything in your log either.
(I mean the game you mentioned earlier, Queen's Tactics v20, not this RJ01394574.)
queentactics.png
I'm honestly truly sorry, but I can't fix something that I can't reproduce. Sorry.

As a workaround, I suggest to try to run with "gameripper.exe -d" (or check the "Unpack and exit" before you drag'n'drop). This mode requires much much less memory, so if your problem is memory shortage related by any chance, this should solve it for sure. In this mode GR will quit when finished and you'll then find all the unpacked and decrypted assets in the "unpacked" directory. That's the best advice I can give since I have no clue what might cause your problem.
 

oldmasterxd

Well-Known Member
Donor
Oct 14, 2016
1,333
5,317
756
Hi,

I'm a lazy guy and I got fed up how complicated game ripping is. Each engine needs different tools, different dependencies,
different framework etc. etc. etc. It's not easy at least to say. So I put together a simple solution, which you might find
useful as well.


EDIT: due to issues with the git provider, repo moved to codeberg.org/gameripper/gameripper

This asset viewer and ripper is easy to use (just drag'n'drop a game folder on its window) and supports the most common game engines that f95zone games use (including Ren'Py, Unity, Unreal, Godot, RPGM MZ/MV, PGMMV, WolfRPG, SRPG, Bakin, Kirikiri, Game Maker Studio, VN Maker, etc.). No dependencies, no MSVC redistrib DLLs, no dotnet runtime, no Python, no electron, no headaches, just a single executable that works out-of-the-box. Oh, and on Linux too!

You can download it from here:
- Windows:
- Linux:

Full source is included, available at codeberg.org/gameripper/gameripper. Let me know what you think! It just an early version, but good enough to show you and get some feedback. It's pretty usable already.

Features:
- encryption key autodetection (even for Godot , Unreal, WolfRPG Pro and ZipCrypto)
- unpack and deobfuscate all assets with a single click
- automatically convert obscure formats (like TLG5 / TLG6, QOI, 2ZIO, or Unity CRN to PNG)
- convert sprite sheets into animations and save as animated GIF
- display maps and save in PNG or Tiled Mapmaker TMX formats
- extract / import translatable text in CSV and PO formats
- ...etc. things like that.

If you run into any games that are not decrypted automatically or not detected correctly, let me know and I'll try to take a look.
Screenshot (with a list of supported game engines):
View attachment 4750555
hi man i used u game ripper few rpgm hard crypted game worked like charm
but here its a new challenge for you True bond game got updated and ur game ripper not evenshow the exeof the game good
hope you like the challenge xD
1759897443762.png
 

ValkyrieSCPD

Member
Nov 16, 2023
218
74
161
Yeah, I remember, and I've now checked it again with this latest GR version, and still works perfectly fine (see attachment). I couldn't see anything in your log either.
(I mean the game you mentioned earlier, Queen's Tactics v20, not this RJ01394574.)
View attachment 5322168
I'm honestly truly sorry, but I can't fix something that I can't reproduce. Sorry.

As a workaround, I suggest to try to run with "gameripper.exe -d" (or check the "Unpack and exit" before you drag'n'drop). This mode requires much much less memory, so if your problem is memory shortage related by any chance, this should solve it for sure. In this mode GR will quit when finished and you'll then find all the unpacked and decrypted assets in the "unpacked" directory. That's the best advice I can give since I have no clue what might cause your problem.
It worked with Unpack and exit!I am using an 64gb memory on both of my devices.Isn't that still enough?
 
Apr 29, 2022
195
356
177
hi man i used u game ripper few rpgm hard crypted game worked like charm
but here its a new challenge for you True bond game got updated and ur game ripper not evenshow the exeof the game good
hope you like the challenge xD
View attachment 5322487
Some additional info would be helpful: a link to the game and some info on what does (not) work.
Are you talking about this one? https://f95zone.to/threads/true-bond-ch-1-part-6b-cloudlet.78538/

GR tries to find encryption key multiple times or so it seems:
1759938643202.png
Then no assets found:
1759938680673.png

---
While waiting for GR to update, you can unpack that game with . Tested with v2.0.0-beta.7.
 

oldmasterxd

Well-Known Member
Donor
Oct 14, 2016
1,333
5,317
756
Some additional info would be helpful: a link to the game and some info on what does (not) work.
Are you talking about this one? https://f95zone.to/threads/true-bond-ch-1-part-6b-cloudlet.78538/

GR tries to find encryption key multiple times or so it seems:
View attachment 5323578
Then no assets found:
View attachment 5323579

---
While waiting for GR to update, you can unpack that game with . Tested with v2.0.0-beta.7.
yes thats it i like to unpack images for use in animations on my post and true bond future scenes i gona take some =D thank you
 

Iron Man

Newbie
Jun 13, 2017
80
26
221
Some additional info would be helpful: a link to the game and some info on what does (not) work.
Are you talking about this one? https://f95zone.to/threads/true-bond-ch-1-part-6b-cloudlet.78538/

GR tries to find encryption key multiple times or so it seems:
View attachment 5323578
Then no assets found:
View attachment 5323579

---
While waiting for GR to update, you can unpack that game with . Tested with v2.0.0-beta.7.
I tried but i manage only animations but images i couldn't
 
Nov 10, 2021
232
260
187
Some additional info would be helpful: a link to the game and some info on what does (not) work.
Are you talking about this one? https://f95zone.to/threads/true-bond-ch-1-part-6b-cloudlet.78538/

GR tries to find encryption key multiple times or so it seems:
View attachment 5323578
Then no assets found:
View attachment 5323579

---
While waiting for GR to update, you can unpack that game with . Tested with v2.0.0-beta.7.
I can confirm that GR is also hallucinating about the encryption files when unpacking the latest version of Finding Color in the Ashes https://f95zone.to/threads/finding-color-in-the-ashes-alpha-v2-23-mooncatcherstudios.231119/page-36
 
Last edited:

justaplayer69

Member
Nov 29, 2023
393
463
131

justaplayer69

Member
Nov 29, 2023
393
463
131
It worked with Unpack and exit!I am using an 64gb memory on both of my devices.Isn't that still enough?
Depends what other programs are running, but it seems awefully lot, should be more than enough unless there's a memleak I haven't catched yet. Anyway, I'm glad -d worked!

A little update, still not the new release, just minor improvements.

- Windows: https://attachments.f95zone.to/2025/10/5363630_gameripper-windows.zip
- Linux: https://attachments.f95zone.to/2025/10/5363631_gameripper-linux.zip
- Source: https://attachments.f95zone.to/2025/10/5363632_gameripper-src.zip
- Repo: codeberg.org/gameripper/gameripper

Changlelog:
- Added memory limit option "-m" and Backspace during loading
- Support Aicomi characards
- Support messed up PNG header
- Support new Godot pck (version 3) and others
- Animation frame preview

True Bond now works. It's not using URLs for some reason (meaning "res://" is missing from names), I've added support for this.
Finding Colors in Ashes also works now, but it was a different issue, it's using a new version 3 of the pack format which I haven't encountered before. This stores the file list after the file data, unlike version 2 which has the list first and then the data. I've added support for this Godot pack variant as well.

To mitigate the memory issues, I've added a new command line switch, "-m (gib)" which has one parameter, memory limit in gigabytes. If allocation exceeds this, loading will stop and GR will show what's been loaded so far. Likewise now you can press the Backspace key any time during loading, and it will stop loading right away, showing what's been loaded up until that point (Escape similarly stops loading, but it quits the app).

There was an issue with a game called Succubus Forest, it has some insanely huge sheets (with more than 350 frames). At this scale you simply can't see the marching ant lines when you want to turn the sheet into an animation. So I've added a preview in the background, which shows 2 frames vertically and 2 frames horizontally periodically switching. When you get the number of columns and rows right, you'll see that those frames are not "running" any more, instead they overlap properly. Hopefully this makes animation conversion easier. Also, if you press Space here, you can toggle which preview (the one changing frame or the whole sheet with marching ant lines) should be in the foreground, and the other will be in the background.
 
  • Like
Reactions: thewhitespirit

justaplayer69

Member
Nov 29, 2023
393
463
131
GR tries to find encryption key multiple times or so it seems:
About that. Godot uses an NCIS certified, military grade encryption scheme, I'm not joking. This is impossible to crack. So instead GR abuses the Godot .exe looking for a byte combination that works as a key. This totally depends on the game and Godot version, but an .exe might have multiple sections, in which case "find encryption key" progress bar is displayed multiple times (one for each section).

You can see this with "-vv", for example True Bond has 12 sections:
Code:
Godot executable 'TrueBond/[Win]True Bond c1p6b_gl[Cloudlet].exe'
section  0:      400  49b9800 .text
section  1:  49b9c00    e4200 .data
section  2:  4a9de00   e03600 .rdata
section  3:  58a1400      200 pck
section  4:  58a1600   1d0a00 .pdata
section  5:  5a72000   20e000 .xdata
section  7:  5c80000      200 .edata
section  8:  5c80200     5c00 .idata
section  9:  5c85e00      200 .CRT
section 10:  5c86000      200 .tls
section 11:  5c86200    2a400 .rsrc
Here the progress bar is shown 12 times, but since some sections are so small (eg. "pck" and ".edata" is just 0x200 = 512 bytes) so you probably won't even notice the bar blinking for those. Others (like ".text", ".rdata" and ".xdata") on the other hand are pretty large.
 
Dec 11, 2019
42
41
153
About that. Godot uses an NCIS certified, military grade encryption scheme, I'm not joking. This is impossible to crack. So instead GR abuses the Godot .exe looking for a byte combination that works as a key. This totally depends on the game and Godot version, but an .exe might have multiple sections, in which case "find encryption key" progress bar is displayed multiple times (one for each section).

You can see this with "-vv", for example True Bond has 12 sections:
Code:
Godot executable 'TrueBond/[Win]True Bond c1p6b_gl[Cloudlet].exe'
section  0:      400  49b9800 .text
section  1:  49b9c00    e4200 .data
section  2:  4a9de00   e03600 .rdata
section  3:  58a1400      200 pck
section  4:  58a1600   1d0a00 .pdata
section  5:  5a72000   20e000 .xdata
section  7:  5c80000      200 .edata
section  8:  5c80200     5c00 .idata
section  9:  5c85e00      200 .CRT
section 10:  5c86000      200 .tls
section 11:  5c86200    2a400 .rsrc
Here the progress bar is shown 12 times, but since some sections are so small (eg. "pck" and ".edata" is just 0x200 = 512 bytes) so you probably won't even notice the bar blinking for those. Others (like ".text", ".rdata" and ".xdata") on the other hand are pretty large.
Damn, I didn't realize Godot was that much of a pain in the ass. It seems like more and more japanese devs are switching to it from stuff like gamemaker and the works too.
 
5.00 star(s) 1 Vote