清单文件简介
appid
: 游戏iddepot
: 用于存放游戏文件的仓库depot_id
: 仓库编号,通常是appid
的递增编号,一个appid
可以有多个depot_id
,例如dlc
,语言
等仓库manifest
: 记录每个仓库文件的清单manifest_gid
: 仓库清单的编号,类似于commit id
DecryptionKey
: 仓库密钥,用于解密仓库清单文件- 具体可以查看
https://steamdb.info/app/{app_id}/depots/
清单文件的位置
Steam\depotcache
-
清单文件的作用
- 用于steam游戏的下载
- 参考项目DepotDownloader
- 依赖项目蒸汽
crc_clear
计算- 通过对steam逆向分析后找到了计算算法,具体代码在
crc_clear
calc_crc_clear.c
- 分析得出steam是对部分进行了计算,具体过程没搞懂,只复制了汇编代码
ContentManifestPayload
crc
- 通过对steam逆向分析后找到了计算算法,具体代码在
- 把程序运行完后生成的文件复制到目录下
.manifest
Steam\depotcache
- 把生成的文件里的合并到文件
config.vdf
depots
Steam\config\config.vdf
- 使用steamtools等工具解锁游戏后可以正常下载