Closed ghost closed 3 years ago
Godot 3.x and above references resources by source, not by import. You can't directly load resources like STEX files, you have to convert them back to PNGs and then import them.
I see. How do I convert them back into pngs? I thought I could do it by just removing the first couple of bytes but when I opened the stex file in a hex editor it doesn't look like a stex file (I checked the source code and a stex file should start with GST)
You can either use options under the RE tools menu in the editor, or you can extract it using project export via CLI. I explain how to do that in my comment here: https://github.com/bruvzg/gdsdecomp/pull/19 ; I'll have to write up instructions for the readme
I tried using the the option under the Resources menu but it just gave me a ton of errors :(
I decided to make an empty test project to try something. Extracting the .stex file worked fine when I didn't check the embed pck file option. But when I did, the .stex file seems to be corrupted. I'm using 7zip to get the pck that's embedded from the exe file, which gives me a checksum error. It still generates a pck file, but I'm not sure if the data there is correct.
Note that I can still get png files from the pck file that was extracted with 7zip with Dragon Unpacker, but the png files don't have the original names. I'm looking for a method that would allow me to extract png files from a Godot exe with an embedded pck with their names intact. Otherwise I have to play the world's most boring matching game.
I'd take a look at that PR and attempt to get full project export working via the CLI, as this extracts all the resources and convert them back to their source (i.e. stex to png). If you can't, I'll try to have something more extensive written up this weekend for the Readme.
Can the CLI extract an embedded pck?
yup! Handles both embedded and standalone PCKs.
Alright, the GUI editor was able to get all the files from the game successfully! Thanks for making this great tool!!! 👍🏼 😊 😍
Because when I tried putting the file path into the
load()
function it didn't work. It just gave me the ERR_FILE_CORRUPT error.