5 个游戏 ZIP 文件存在大小或完整性问题

Author: kiliaCreated Aug 5, 2026Updated Sep 5, 2026

bug 描述 以下 5 个游戏文件下载后与 games.json 中记录的大小不一致:

游戏 实际大小 games.json 大小 差额 ZIP 测试
中国球王.zip 7,045,824 7,517,503 -471,679 ZIP 结构正常,479 个条目,CRC 通过
永远的雷曼.zip 444,979,486 545,145,674 -100,166,188 无法识别为有效 ZIP,疑似截断
征服:AD1086.zip 100,493,907 205,990,578 -105,496,671 无法识别为有效 ZIP,疑似截断
指环王.zip 30,989 1,340,969 -1,309,980 无法识别为有效 ZIP,疑似截断
指挥官基恩1.zip 104,720 239,993 -135,273 无法识别为有效 ZIP,疑似截断

5 个文件的实际总大小比 games.json 记录少 207,579,791 字节。

其中,重新下载 指环王.zip 两次得到完全相同的文件:

  • 实际大小:30,989 字节
  • SHA-256:8239a0a303152032f3886ffcd454a38472d7e45c906b1b5119160f4546b7eada
  • 文件以 ZIP 的 PK 签名开头,但缺少完整的 ZIP central directory。

这说明问题可能来自服务器端文件或文件缓存,而不是单次下载中断。需要注意的是,SHA-256 与 games.json 一致并不能证明 ZIP 结构完整。

如何重现

  1. 下载示例文件:
    bash
    curl -L --fail -o "指环王.zip" "https://dos-bin.zczc.cz/%E6%8C%87%E7%8E%AF%E7%8E%8B.zip"
  2. 使用 unzip -t 指环王.zip 或其他 ZIP 工具测试。
  3. 文件会被报告为不是有效的 ZIP 文件,无法正常解压。
  4. 对以下文件重复测试,可观察到相同的问题:
    • 永远的雷曼.zip
    • 征服:AD1086.zip
    • 指环王.zip
    • 指挥官基恩1.zip

通过项目的下载脚本下载时也可以复现这些问题。

预期情况 这 5 个文件都应该是完整、可打开、可解压且通过 CRC 校验的 ZIP 文件;文件大小也应与 games.json 中记录的大小一致。

截图 无。该问题通过命令行下载、文件大小对比和 ZIP 完整性测试复现。

典型测试结果:

BadZipFile: File is not a zip file

系统环境 操作系统:Windows(PowerShell) 浏览器:不适用(使用 curl 命令行下载) 游戏:中国球王、永远的雷曼、征服:AD1086、指环王、指挥官基恩1