☰
快速修改PCK文件完整指南:用Patch PCK告别整包解压
2026/10/18 23:39:36 网站建设 项目流程

快速修改PCK文件完整指南:用Patch PCK告别整包解压

【免费下载链接】gdsdecompGodot reverse engineering tools项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp

玩家反馈英文文本写错,要改 PCK 里一句话,包 1.8 GB。完整解包再重打包要跑几个小时,Patch PCK 功能让改动只发生在几个文件上。gdsdecomp 提供 PCK 精准补丁、选择性提取、翻译批量补丁三种路径。

问题本质:瓶颈在解包与重打包

PCK 本质是"文件索引表 + 数据区",索引记录每个文件的路径、偏移和大小。改一个文件,传统做法必须完整提取、修改、再整包重新压缩,耗时全花在这两步上。

解决思路:只替换目标文件,重写索引

gdsdecomp 的--pck-patch命令不重压全量文件,只对指定路径替换内容并重建索引。实现逻辑见 utility/pck_creator.cpp。

Patch PCK 精准补丁

适用场景:单文件替换、热修,改完直接出新包。核心能力:--patch-file把本地文件映射到包内路径,未修改的文件原样拷贝,输出保留 PCK 格式、加密与 EXE 嵌入状态。已知局限:一次只能处理一个 PCK,--output需另存新文件。

选择性资源提取

适用场景:需要审阅或改动多个文件,动手前先看清内容。核心能力:--extract配合--includeglob 只拉指定文件,如res://**/*.gd只取脚本。已知局限:只进不出,改完还得手动打包回去。

翻译批量补丁

适用场景:多语言文本修改。核心能力:--patch-translations读 CSV 批量替换语言文件,可与--pck-patch组合一次出包。已知局限:只覆盖文本翻译,不能改逻辑和资源。

操作流程:5步完成PCK补丁

第1步:安装工具。Windows 执行scoop install gdsdecomp;Linux、macOS 从 Releases 下载二进制。

第2步:加载 PCK。打开 GUI,菜单选择 RE Tools → Patch PCK。

第3步:选择目标包。在文件对话框中选中 PCK、EXE 或 APK,支持拖拽。左侧文件树立即显示包内全部路径。

第4步:建立文件映射。左侧选中要替换的包内文件,右侧点 Add files 添加本地新版本。路径自动生成res://前缀;文件较多时可用文件夹批量映射。

第5步:输出并执行。选择输出目录,涉及 EXE 时勾选嵌入选项,确认执行。命令行更直接:

gdre_tools --headless --pck-patch=game.pck --output=out.pck --patch-file=./new.gdc=res://scripts/new.gdc

--patch-file可重复传参,一次替换多个文件。

效果对比:全量重打包 vs 精准补丁

同样的改一个文本文件场景,两种路径开销差异如下。

维度解压-重打包Patch PCK
处理对象包内全部文件仅指定文件
手动操作提取、改目录、重新打包 3 轮建映射 + 执行 2 轮
输出目录需容纳全部文件仅 1 个 PCK
修改范围全量局部

补丁路径把"拆整个箱子"压缩成"换其中一件",开销从全量降到文件级。

避坑清单

现象:补丁没生效,游戏行为不变。根因:--patch-file右侧路径与包内实际路径不一致,二进制脚本在 PCK 里存的是.gdc路径。解法:先在文件树或--list-files里确认真实路径。

现象:运行报字节码版本错误。根因:替换的是编译产物,却用了不同版本引擎编译。解法:用原游戏同版本引擎重新编译后再映射。

现象:提示 PCK 加载失败。根因:加密 PCK 没带密钥,索引解密失败。解法:加--key=<64位hex密钥>,输入输出保持同一把。

现象:GUI 弹出"Load a pack first!"。根因:未选择 PCK 就点选映射按钮。解法:先把目标包拖进对话框,再操作右侧文件树。

快速选型

改一个文件或几个文件热修 → Patch PCK(--pck-patch) 多语言文本批量改 →--patch-translations审阅大量源码 →--extract加 glob 精准提取

打开终端执行--pck-patch,第一次替换一个文件验证整条链路。

【免费下载链接】gdsdecompGodot reverse engineering tools项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询