资讯动态

Godot PCK 反编译:把游戏资源包恢复成可编辑的项目

发布时间:2026/8/24 12:02:26 来源:尧图企业网站定制
Godot PCK 反编译把游戏资源包恢复成可编辑的项目【免费下载链接】gdsdecompGodot reverse engineering tools项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp你从一款 Godot 游戏里拿到了 PCK却只看到一团不透明的二进制场景抽不出来脚本全是字节码。gdsdecompGodot RE Tools能读 Godot 2.x、3.x、4.x 的资源包把 GDScript 字节码反编译回可读源码并把整个项目重建成编辑器里直接能打开的样子。它能干什么能力速览完整项目恢复从 PCK、APK 或嵌入式 EXE 加载反编译全部 GDScript、恢复项目文件、把导入资源转回原格式。PCK 提取与创建提取、列文件、创建、打补丁还能把 PCK 嵌回 EXE。GDScript 批量反编译.gdc 转 .gd按字节码版本处理也支持反向编译。资源文本/二进制互转.tres/.tscn 与二进制 .res 双向批量转换。加密包处理标准 AES-256-CFB 给对密钥即可非标准加密需写 CustomDecryptor 脚本。跑一遍完整流程你打开工具从 RE Tools 菜单选 Recover project...或者直接把 PCK/EXE 文件拖到窗口上。文件对话框只认.pck、.exe、*.apk选 APK 或 EXE 时它会自动找出内嵌的 PCK。选完文件你看到的是 PCK explorer顶部是包版本哪个 Godot 引擎构建的和文件统计下面是 res:// 结构的文件树。选项区只有两种模式Extract only 照搬文件Full Recovery 额外做反编译和资源转换。说实话多数情况选后者就够了设好目标文件夹空文件夹保险点 Extract... 等着就行。恢复过程中你可以在树里点开任意脚本查看反编译结果弹窗是双栏 diff 视图逐行对照改动底部还能看到检测到的脚本字节码版本和可选的 256 位加密密钥。同样的事在终端里也能做# 命令行跑一次完整项目恢复输出到指定目录 gdre_tools --headless --recovergame.pck --outputrecovered_project图形界面之外的玩法headless 模式覆盖了 GUI 里几乎所有操作适合写进自动化脚本或在无界面的环境跑。# 只列出 PCK 内全部文件不提取直接退出 gdre_tools --headless --list-filesgame.pck这行把包里的文件清单打出来就退出一个文件都不落盘适合先确认内容再动手。# 批量反编译 res:// 下所有脚本用引擎版本指定字节码 gdre_tools --headless --decompileres://**/*.gdc --bytecode4.3.0glob 里**递归匹配--bytecode接受版本号或 commit hash自动检测翻车时用--force-bytecode-version强制指定。# 带 64 位 hex 密钥恢复加密 PCK gdre_tools --headless --recovergame.pck --key64位hex密钥密钥是 64 位 hex 字符串只想要脚本时再配合--scripts-only和--includeglob 按文件过滤。如果游戏用了非标准加密方案光有密钥不够你得写一个继承CustomDecryptor、实现_parse_and_decrypt()的 GDScript 脚本再用--custom-decryption-script指过去写法见 文档。跑完之后你会得到什么一个能直接打开的项目目录项目文件已恢复脚本全是 .gd导入资源转回了原始格式gdre_export.log 恢复日志反编译成功/失败数、资源转换情况、未转换文件清单都在里面推荐的 Godot 编辑器版本日志会明确告诉你用哪个版本打开项目。别急着关窗口日志开头会写明用哪个 Godot 编辑器版本打开项目上方还给出日志文件路径之后报 issue 直接发这个文件就行。踩坑与绕行现象所有文件解密失败恢复日志一片报错。 原因密钥不对或游戏加载密钥后又做了一层变换如异或拿到的密钥已经变了。 解法先确认密钥本身是对的确认游戏确实用非标准方案后再写 CustomDecryptor 脚本。现象项目能打开但脚本、shader 报错成片。 原因项目用了自定义 Godot 版本工具检测不出来日志里也会提示这一点。 解法用原游戏的二进制作为导出模板重新构建项目再用与游戏相同引擎版本打开编辑。现象日志里一批文件标记为未转换。 原因2.x 的模型格式dae、fbx、glb 等和 GDNative/GDExtension 脚本目前没有转换支持。 解法这些文件仍会原样提取出来对照日志里的未转换清单手动导入或等后续版本补上。项目长什么样给想动手改源码的人gdsdecomp/ ├── bytecode/ # 反编译核心各版本 Godot 字节码的解析逻辑 ├── compat/ # 旧版资源格式兼容层 ├── exporters/ # 资源导出器GDScript、纹理、音频等 ├── editor/ # Godot 编辑器内的对话框 ├── standalone/ # 可独立运行的版本 ├── utility/ # PCK 读取、配置、日志等通用工具 └── godot-mono-decomp/ # C# 项目的反编译组件想自己编译的话# 克隆到 Godot 源码的 modules/ 子目录作为 gdsdecomp 模块编译 git clone https://gitcode.com/GitHub_Trending/gd/gdsdecomp编译基于 Godot 的 fork 版本还要装 rustup 和 .NET 10 SDK3.x 引擎的编译支持已移除但反编译 2.x/3.x 项目的能力保留。字节码版本定义在misc/bytecode_versions.json想深入就翻仓库 README 和 docs/ 目录。下载最新 release把--recover指到你的目标包一个项目目录就还给你了。gdsdecomp 是一个把 PCK 资源包变回可编辑项目的 Godot 逆向工程工具箱。【免费下载链接】gdsdecompGodot reverse engineering tools项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价