bruvzg / gdsdecomp

Godot reverse engineering tools
MIT License
1.47k stars 147 forks source link

Failing to recover pak from exe. #139

Closed warsang closed 1 year ago

warsang commented 1 year ago

System information

Windows 10

Issue description

Hi! I was just playing around with gdre_tools.exe on a sample plugin. I was using it on https://github.com/expressobits/inventory-system after doing an exe export (using the Godot Windows Desktop template with no encryption key). I'm able to recover the project from the pack with no problems. However, when I try recovering from the exe directly I get:

Opening file: E:/Games/GodotStuff/inventory-system-demos-main/inventory-system-demos.exe
USER ERROR: FATAL ERROR: Failed to load project pack!
   at: GDRESettings::load_pack (modules\gdsdecomp\utility\gdre_settings.cpp:380)
USER ERROR: Transient parent has another exclusive child.
   at: Window::set_visible (scene\main\window.cpp:747)

Is there an easy fix I can use to recreate the project from the exe directly?

Otherwise, is it possible to extract the pack from the exe? I tried using a hex editor but while I was able to find the GDPC magic header value, the rest of the header didn't seem to be present in the exe itself (unless it was compressed somehow);

Steps to reproduce

No response

Recovery log

GDRE Tools v0.5.3 Windows 10.0.22483, NVIDIA GeForce RTX 3060 Laptop GPU/PCIe/SSE2, opengl3 Opening file: E:/Games/GodotStuff/inventory-system-demos-main/inventory-system-demos.exe USER ERROR: FATAL ERROR: Failed to load project pack! at: GDRESettings::load_pack (modules\gdsdecomp\utility\gdre_settings.cpp:380) Error: failed to open E:/Games/GodotStuff/inventory-system-demos-main/inventory-system-demos.exe

Minimal reproduction project

No response

nikitalita commented 1 year ago

Can you attach the exported exe here so that I can take a look?

warsang commented 1 year ago

inventory-system-demos.zip Just uploaded the file; It's a basic export using the PE template. All options left as default.

nikitalita commented 1 year ago

There is no embedded pck in this.