ChrisKim
Do not go gentle into that good night.
颢天

原神版本更新体积变化统计(1.0~4.0)

最近原神 4.0 大版本更新了,更新大小令许多玩家吐槽:硬盘要装不下了。由此突发奇想,不如来统计一下原神各版本的体积变化,看看它到底是如何一步步膨胀的。

1. 方法

这一部分将会介绍我的分析方法,如果想要看结论可以直接往后跳。

1.1. 选用版本

我选用的游戏版本是国服正式版,即 CNREL 开头的版本。语音包均选择中文,即 zh_cn 开头的版本。

各版本均从原神官方的 CDN 下载的差异更新包。更新包的 CDN 链接来源是:

这个仓库收集了原神几乎所有版本的官方 CDN 下载链接,同时也有一些神秘的测试版下载链接

之所以选择下载差异更新包而不是全量包进行分析,原因是全量包体积实在是太大了。每一个全量包都是一个完整的游戏,即使按一个版本 40G 来算,25 个版本也要整整 1TB 的空间,下好之后还需要解压,也就是说一共要 >2T 的空间才行。

因此,为了节省磁盘空间和降低下载耗时,我选择了用差异包进行分析。但是这就会引出一个问题,脱离了原神启动器,该怎么使用差异包进行更新?

1.2. 更新方法

首先,原神的差异包有两种,一种是传统的 diff 包,一种是用了差分更新技术的 hdiff 包。在 1.0 ~ 2.3 版本的更新包,都用的是 diff 形式,之后的更新就是 hdiff 了。

对于 diff 包,这个比较简单,直接将更新包内的文件覆盖到游戏文件夹,然后在按照更新包内 deletefiles.txt 记录的信息,把要删除的文件删掉就行了。这个过程我编写了一个 Python 自动化脚本完成,同时进行数据统计。

而对于 hdiff 包,它包括了 diff 包的功能之外,有些以 .hdiff 结尾的文件使用了差分更新,它需要与旧版文件一起合成新版文件。我在原神启动器的目录下,找到了米哈游使用的差分更新软件 hpatchz,我直接使用 Python 调用该软件进行差分更新。

最后我编写的更新脚本分享在云盘里:https://run.sh.cn/gsupd,如果你要使用的话,需要把第 5 行的 hpatchz_path 指定到你的差分更新程序,另外目录均不能含空格。

1.3. 存在问题

在测试过程中,我也发现了一些不好解决的问题。我们都知道,原神进入游戏前还会进行热更新,这个热更新是下载的更新包里面不包含的,必须打开游戏后再下载。由于旧版本会直接弹出需要版本更新,因此压根无法获取到热更新包,所以这一部分的内容就无法统计到了。

不过热更新的大小一般非常小,都在几百 MB 左右,因此我认为对分析结果的影响不大,所以就不管了。

2. 分析结果

不多 BB,直接放图!如果需要详细数据表格,或者是作图用的 Python 代码,我也全都分享到了云盘:https://run.sh.cn/gsupd

2.1. 游戏体积变化

https://assets.zouht.com/img/blog/3423-01.webp

可以发现,每个大版本(1.6~2.0, 2.8~3.0, 3.8~4.0)的跃迁都比小版本要大,并且 4.0 的增长格外的大。

2.2. 更新包体积变化

https://assets.zouht.com/img/blog/3423-02.webp

可以发现,3.8 ~ 4.0 的更新包确实是纵观整个游戏更新以来,最夸张的一次。几乎是把半个游戏重新下载了一遍。

不过还能发现,1.0 ~ 1.1 的更新包也挺大,可能是刚开服进行了文件架构调整。另外 2.6~2.7 的语音包更新非常突出,超过了 5G,可能也是语音结构发生了改变。

2.3. 更新文件增删

https://assets.zouht.com/img/blog/3423-03.webp
https://assets.zouht.com/img/blog/3423-04.webp

这张图主要反映每次更新的文件增删大小。可以发现增删比例目测是 10:7 左右,也就是说每次更新并不是简单的 旧版本体积+更新包体积=新版本体积。

最近的 3.8~4.0 更新,删除的内容确实非常之多,可见确实有很大的文件调整。

本文链接:https://www.zouht.com/3423.html
本文使用:CC BY-NC-SA 4.0 许可
#
首页      随笔      原神版本更新体积变化统计(1.0~4.0)

发表回复

textsms
account_circle
email

颢天

原神版本更新体积变化统计(1.0~4.0)
最近原神 4.0 大版本更新了,更新大小令许多玩家吐槽:硬盘要装不下了。由此突发奇想,不如来统计一下原神各版本的体积变化,看看它到底是如何一步步膨胀的。 1. 方法 这一部分将会…
扫描二维码继续阅读
2023-08-19