我要提问
ARTICLE DETAIL

资讯详情

前沿编程新知与开发实战干货的深度解读。

GDRE Tools 实战指南:三步从 PCK 与 APK 恢复 Godot 项目源码

GDRE Tools 实战指南:三步从 PCK 与 APK 恢复 Godot 项目源码 GDRE Tools 实战指南三步从 PCK 与 APK 恢复 Godot 项目源码【免费下载链接】gdsdecompGodot reverse engineering tools项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecompGDRE ToolsGodot RE Tools是一个 Godot 逆向工程模块能把已编译的 PCK、APK 或内嵌 EXE 还原为可编辑的 Godot 项目反编译全部 GDScript、重建原始 project 文件、把二进制资源转回文本与导入源格式并支持 Godot 4.x、3.x、2.x 三代项目。一、核心能力速览完整项目恢复从 PCK/APK/EXE 加载资源批量反编译 .gdc 字节码重建 project 文件与插件配置导入资源回转原始格式。GDScript 双向转换.gdc 反编译为 .gd也可用--compile反向编译为字节码。PCK 归档操作提取--extract、新建--pck-create、打补丁--pck-patch支持创建加密 PCK 并嵌入 EXE。资源格式互转场景/资源的文本与二进制格式互转--bin-to-txt/--txt-to-bin以及翻译 CSV 补丁。二、这些场景你最需要它学习他人游戏的实现手上只有一个发布版 Godot 游戏想看清场景结构、脚本逻辑和资源组织方式直接恢复成工程再逐文件阅读。源码丢失只剩打包文件原始工程丢了只剩 PCK、APK 或 EXE 时用它把脚本和资源尽可能还原回来。跨引擎版本差异工具内置多套字节码定义4.x、3.x、2.x 编译的项目都能反编译不必逐个版本找对应工具。三、从文件到源码三步完成逆向恢复图形界面路径打开已集成 GDRE Tools 的 Godot 编辑器在RE Tools菜单选择Recover project...也可以直接把 PCK/EXE 拖进窗口。选中目标 PCK、APK 或 EXE 文件。若项目加密在设置密钥处填入 64 位十六进制密钥非加密项目直接开始恢复。命令行路径# 完整恢复项目 gdre_tools --headless --recovergame.pck --outputrecovered_project # 加密项目追加 64 位十六进制密钥 gdre_tools --headless --recovergame.pck --key000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F如果选择从源码构建 Godot独立入口是bin/godot.linuxbsd.template_debug.x86_64.llvm --headless --pathmodules/gdsdecomp/standalone --recoverpck/apk/exe。恢复日志会标明检测到的引擎版本——编辑恢复出的项目时请使用对应版本的 Godot这是避免报错的前提。四、常用命令行速查表需求命令完整项目恢复gdre_tools --headless --recovergame.pck只提取脚本gdre_tools --headless --recovergame.pck --scripts-only批量反编译 .gdcgdre_tools --headless --decompile*.gdc --bytecode4.3.0强制指定字节码版本追加--force-bytecode-version4.3.0也接受提交哈希如f3f05dc按 glob 过滤文件追加--includeres://**/*.gdc --excluderes://test/**列出支持的字节码版本gdre_tools --headless --list-bytecode-versionsglob 写法说明**表示递归匹配未写res://前缀的模式会自动补到res://下单独写*.gdc等价于res://**/*.gdc。五、恢复失败先排查这 5 处解密失败或内容乱码--key必须是 64 字符十六进制字符串若确认密钥正确仍失败游戏可能使用了非标准加密方案此时需要编写继承CustomDecryptor的自定义解密脚本通过--custom-decryption-script传入写法参考 docs/custom_decryptors.md。引擎版本检测失败用--force-bytecode-version4.3.0手动指定先用--list-bytecode-versions确认支持的版本列表。MD5 校验和不匹配提取/恢复时加--ignore-checksum-errors跳过校验错误或用--skip-checksum-check直接跳过校验注意这会跳过完整性检查。磁盘空间或权限问题用--outputDIR显式指定输出目录确认目标盘有足够空间且当前用户可写默认输出目录为NAME_extracted。个别资源未还原已知限制——2.x 模型dae、fbx、glb等和 GDNative/GDExtension 脚本暂不支持转换这类文件会保持原样属于正常现象而非故障。六、进阶自定义字节码与 PCK 操作遇到引擎 fork 或特殊版本时可以用--load-custom-bytecodeJSON_FILE加载自定义字节码定义文件用--dump-bytecode-versionsDIR可把内置的全部字节码定义导出为 JSON作为自定义文件的起点。PCK 操作两条常用命令# 从目录新建 PCK版本号取 0/1/2引擎版本为 x.y.z gdre_tools --headless --pck-createproject_dir --pck-version2 --pck-engine-version4.3.0 --outputnew.pck # 用本地文件修补现有 PCK源路径res:// 目标路径 gdre_tools --headless --pck-patchgame.pck --patch-file/path/to/file.gdres://file.gd一条命令、一份日志就能把打包文件还原成可继续开发的 Godot 工程——工具的价值在于把逆向成本降到一次命令行的程度。请仅将本流程用于学习研究与自有项目的资产找回尊重原作者的版权与劳动成果。【免费下载链接】gdsdecompGodot reverse engineering tools项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表