自己写的清单生成工具

[复制链接]
查看159 | 回复8 | 3 天前 | 显示全部楼层 |阅读模式
本帖最后由 tzz89216 于 2024-9-29 08:34 编辑

特点:
1. 不需要运行其它任何程序,直接从steam服务器下载清单和密钥
2. 下载的清单文件和steam客户端生成的一模一样(如果不同就是bug)
3. 有些游戏使用多个depot来支持多语言和多操作系统,该程序会把所有对应的清单全部下载,
    如果通过steam客户端可能就只能下载到对应windows和中文的清单

使用方式:
1. 执行 dump_manifest.exe [--out_dir] [--os] <username> <password> <appid>
    --out_dir 清单文件的存放目录,如果不指定的话默认值为当前目录。
                   生成的清单文件会存放在 <output directory>/<appid> 这个目录下
    --os 指定下载对应os的清单,值可以为windows, macos, linux, all,不指定的话默认只下载windows的清单
            all的情况下会下载所有os的清单,对于每个os都会生成一个lua文件(不过好像steamtools应该只支持windows吧)
            也可以指定os的简写,例如 win, mac, lin, all,这样也是可以的
    <username> steam账号用户名
    <password> steam账号密码
    <appid> steam游戏的id
例如要下载莱莎1的清单,用户名ryzausr,密码ryzapwd,其appid为1121560
则执行  dump_manifest.exe ryzausr ryzapwd 1121560
如果成功,会在当前目录下生成一个1121560的目录,里面是对应的清单文件和lua文件
要下载游戏清单的话,必须首先保证账号里面有这个游戏

可能的问题和解决方案:
1. 不支持成就文件,不过写这个主要是想对不玩的游戏直接提取清单,所以不考虑支持这个
2. 执行有时候会出现如下错误:
   WebAPI boostrap failed: HTTPSConnectionPool(host='api.steampowered.com', port=443): Read timed out. (read timeout=3)
   这个主要是国内连steam api服务器有时候会有问题,直接Ctrl-C结束掉程序,等个几秒再运行一次吧

有问题可以在这里反馈
更新历史记录:
0.1.0  2024-09-29
1. 添加了--os 选项,可以dump指定os的depot,默认只dump windows的
2. 对于在应用里面已经有DLC的depot,并且该dlc也有depot的情况下忽略下载该DLC的depot
3. 增强了对异常情况的一些处理



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1T币 +1 收起 理由
Bluebird + 1 很给力!

查看全部评分

最新版本的steam能用吗
跟steam完全没关系,不装steam都能用
grerg | 前天 10:17 | 显示全部楼层
需要账号拥有这个游戏吗
tzz89216 | 前天 18:00 | 显示全部楼层
肯定需要的,不然就能生成任何游戏的清单,这个论坛也没必要存在了
VIEW0701 | 昨天 00:32 | 显示全部楼层
感觉最好是只提取win系统的清单吧
tzz89216 | 昨天 11:51 | 显示全部楼层
我自己的需求是dump所有depots,这样以后账号失效了也能下载所有操作系统对应的版本。
不过把不同os的depot放在同一个lua文件里面确实不太合适,这两天有时间会改一下。
VIEW0701 | 昨天 17:23 | 显示全部楼层
tzz89216 发表于 2024-9-28 11:51
我自己的需求是dump所有depots,这样以后账号失效了也能下载所有操作系统对应的版本。
不过把不同os的depot ...

这个交互方式也不太友好,最好改成读取本地文件的格式那种比较好一点
tzz89216 | 昨天 17:37 | 显示全部楼层
具体是指什么交互方式? 还有本地文件是什么,是把配置信息(用户名/密码等等)放在文件里面? 还是指其它什么信息
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则