导读 这篇详细的指南将向你展示如何在 Linux 和 Windows 之间共享 Steam 的游戏文件以节省下载的总用时和下载的数据量。我们将展示给你它是怎样为我们节约了 83% 的数据下载量。

假如你决心成为一名 Linux 平台上的玩家,并且在 Steam 上拥有同时支持 Linux 和 Windows 平台的游戏,或者基于同样的原因,拥有双重启动的系统,则你可以考虑看看这篇文章。我们中的许多玩家都拥有双重启动的 Linux 和 Windows。有些人只拥有 Linux 系统,但同时拥有当前还没有被 Linux 平台上的 Steam 支持的游戏。所以我们同时保留这两个系统以便我们可以在忽略平台的前提下玩我们喜爱的游戏;幸运的是 Linux 游戏社区应运而生,越来越多在 Windows 平台上受欢迎的 Steam 游戏也发布在 Linux 平台上的 Steam 中。我们中的许多人喜欢备份我们的 Steam 游戏,使得我们不再苦苦等待游戏下载完成。这些游戏很大程度上是 Windows 平台下的 Steam 游戏。

现在,很多游戏也已经登陆了 Linux 平台上的 Steam,例如奇异人生(Life is Strange)、古墓丽影 2013(Tomb Raider 2013)、中土世界:魔多阴影(Shadow of Mordor)、幽浮:未知敌人(XCOM: Enemy Unknown)、幽浮 2、与日赛跑(Race The Sun)、公路救赎(Road Redemption)、燥热(SUPERHOT)等等,并且这份名单一直在增长。甚至还有 杀出重围:人类分裂(Deus Ex: Mankind Divided)和 疯狂的麦克斯(Mad Max)!!!在一些游戏的 Windows 版发布之后,现在我们不必再等候多年,而只需等待几月左右,便可以听到类似的消息了,这可是大新闻啊!

下面的实验性方法将向你展示如何使用你现存的任何平台上游戏文件来在 Steam 上恢复游戏的大部分数据。对于某些游戏,它们在两个平台下有很多相似的文件,利用下面例子中的方法,将减少你在享受这些游戏之前的漫长的等待时间;我们将一步一步地尝试利用 Steam 自身的备份与恢复功能或者以手工的方式来达到我们的目的。当涉及到这些方法的时候,我们也将向你展示这两个平台上游戏文件的相同和不同之处,以便你也可以探索并做出你自己的调整。

下面的方法中,我们将使用 Ubuntu 14.04 LTS 和 Windows 10 来执行备份与恢复 Steam 的测试。

1、Steam 自身的备份与恢复

当我们尝试使用 Windows 平台上 Steam 中《燥热(SUPERHOT)》这个游戏的备份(这些加密文件是 .csd 格式)时,Linux 平台上的 Steam 不能识别这些文件,并重新开始下载整个游戏了!甚至在做了验证性检验后,仍然有很大一部分文件不能被 Steam 识别出来。我们在 Windows 上也做了类似的操作,但结果是一样的!

现在到了我们用某些手工的方法来共享 Windows 和 Linux 上的 Steam 游戏的时刻了!

2、手工方法

首先,让我们先看看 Linux 下这些游戏文件所处的位置(用户目录在 /home 中):

这是 Linux 平台上 Steam 游戏的默认安装位置。 .local 和 .steam 目录默认情况下是不可见的,你必须将它们显现出来。我们将推荐使用一个自定义的 Steam 安装位置以便更容易地处理这些文件。这里 SUPERHOT.x86_64 是 Linux 下原生的可执行文件,与 Windows 中的 .exe 文件类似。

下图展示的位置包含我们需要的大部分文件(在 Windows 和 Linux 平台上相同):

下面我们来看看这些 .acf 格式的文件: appmanifest_322500.acf 便是那个我们需要的文件。编辑并调整这个文件有助于 Steam 识别在 common 这个目录下现存的非加密的原始文件备份:

为了确认这个文件是一样的,用编辑器打开这个文件并检查它。我们越多地了解这个文件越好。这个链接是来自 Steam 论坛上的一个帖子,它展示了这个文件的主要意义。它类似于下面这样:

“AppState”
{
“appid”        “322500”
“Universe”        “1”
“name”        “SUPERHOT”
“StateFlags”        “4”
“installdir”        “SUPERHOT”
“LastUpdated”        “1474466631”
“UpdateResult”        “0”
“SizeOnDisk”        “4156100762”
“buildid”        “1234395”
“LastOwner”       “<SteamID>”
“BytesToDownload”        “909578688”
“BytesDownloaded”        “909578688”
“AutoUpdateBehavior”        “0”
“UserConfig”
{
“Language”        “english”
}
“MountedDepots”
{
“322503”        “1943012315434556837”
}
}

在 Linux 平台上卸载游戏后我们再进行测试。现在让我们看看在 Windows 10 上相同的游戏安装目录里包含哪些内容:

我们复制了 SUPERHOT 目录和 .acf 格式的清单文件(这个文件在 Windows 的 Steam 上格式是一样的);在复制 .acf 文件和游戏目录到 Linux 中 Steam 它们对应的位置时,我们需要确保 Steam 没有在后台运行。在转移完成之后,我们运行 Steam 并看到了这个:

所以下图显示只需要有 235.5 MB 的文件需要下载,而不是整个 867.4 MB,这意味着超过 70% 的文件已经被 Steam 识别了:) !相对来说,节省了一笔大量的时间开销。当然不同的游戏可能有所不同,但对于那些网速居于平均水平或以下的玩家来说,这种方法绝对值得一试,尤其是考虑到当前那些 40-50 GB 大小的重量级游戏。

我们还进行了其他几种尝试:

  • (1)我们尝试使用 Linux 下原有的清单文件(.acf)和来自 Windows 的手工备份文件,但结果是 Steam 重新开始下载游戏。/li>
  • (2)我们看到当我们将 SUPERHOT_Data 这个目录中的 SH_Data 更换为 Windows 中的对应目录时,同上面的一样,也重新开始下载整个游戏。
理解清单目录的一个尝试

清单目录绝对可以被进一步地被编辑和修改以此来改善上面的结果,使得 Steam 检测出尽可能多的文件。在 Github 上有一个项目,包含一个可以生成这些清单文件的 python 脚本。任何 Steam 游戏的 AppID 可以从SteamDB 上获取到。知晓了游戏的 ID 号后,你便可以用你喜爱的编辑器以下面的格式创建你自己的清单文件 appmanifest_<AppID>.acf。在上面手工方法中,我们可以看到 SUPERHOT 这个游戏的 AppID 是 322500,所以对应的清单文件名应该是 appmanifest_322500.acf。

下面以我们知晓的信息来尝试对该文件进行一些解释:

“AppState”                                 // 应用(游戏)的状态
“appid”        “322500”                    // 游戏的 AppID
“Universe”        “1”
“name”        “SUPERHOT”                   // 游戏的名称
“StateFlags”        “4”
“installdir”        “SUPERHOT”             // 安装目录的名称
“LastUpdated”        “1474466631”
“UpdateResult”        “0”
“SizeOnDisk”        “4156100762”
“buildid”        “1234395”
“LastOwner”        “<SteamID>”             // 唯一的帐号拥有者的 <SteamID>
“BytesToDownload”        “909578688”       // 将这个数字除以 1073741824(1024 x 1024 x 1024) 便可以计算出还需要下载的数据大小,以 GB 记。
“BytesDownloaded”        “909578688”       // 已下载数据的大小, 以 Bytes 记。
“AutoUpdateBehavior”        “0”            // 当这个设为 0 时,该游戏将自动升级。“UserConfig”                               // 用户的配置信息
{
“Language”        “english”
}
“MountedDepots”                            //  这个部分大多与游戏的 DLC 相关。
{
“322503”        “1943012315434556837”
}
}

通过计算下载的数据的大小,你可以将它与 Steam 展现的信息进行比较并进行更多的调整。

本文转载自:http://www.linuxprobe.com/share-steam.html

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/

在 Linux 和 Windows 之间玩转 Steam 游戏相关推荐

  1. linux更换steam目录,在 Linux 和 Windows 之间玩转 Steam 游戏

    导读 这篇详细的指南将向你展示如何在 Linux 和 Windows 之间共享 Steam 的游戏文件以节省下载的总用时和下载的数据量.我们将展示给你它是怎样为我们节约了 83% 的数据下载量. 假如 ...

  2. linux和windows文件共享软件,桌面应用|如何在 Linux 和 Windows 之间共享 Steam 的游戏文件...

    简介:这篇详细的指南将向你展示如何在 Linux 和 Windows 之间共享 Steam 的游戏文件以节省下载的总用时和下载的数据量.我们将展示给你它是怎样为我们节约了 83% 的数据下载量. 假如 ...

  3. 如何在 Linux 和 Windows 之间共享 Steam 的游戏文件

    假如你决心成为一名 Linux 平台上的玩家,并且在 Steam 上拥有同时支持 Linux 和 Windows 平台的游戏,或者基于同样的原因,拥有双重启动的系统,则你可以考虑看看这篇文章. 我们中 ...

  4. 设置共享,实现Linux和Windows之间的共享

    设置共享,实现Linux和Windows之间的共享 前提: 安装虚拟机.可以参考:在Windows上安装虚拟机详细图文教程 安装Linux.可以参考:在VMware Workstation里的Linu ...

  5. 利用lrz、lsz工具在linux与windows之间传输文件

    1.什么是rz/sz (lsz/lrz) 简单说就是,可以很方便地用这两个sz/rz工具,实现Linux下和Windows之间的文件传输(发送和接收),速度大概为10KB/s,适合中小文件.rz/sz ...

  6. 利用SecureCRT在linux与Windows之间传输文件

    From: http://blog.csdn.net/sungblog/article/details/7274716 利用SecureCRT在linux与Windows之间传输文件         ...

  7. Linux与Windows之间实现文件实时同步的方案

    记linux与Windows之间实现文件实时同步的方案 近日,数据分析部提了个需求说要让一台linux的机器上的文件同步到一台Windows机器的某个目录下,由于本姑娘从来没有碰到过这种问题,于是上网 ...

  8. 使用SSH完成linux和windows之间的文件互传(linux端)

    使用SSH完成linux和windows之间的文件互传(linux端) 参考链接 通过OpenSSH完成linux和Win10文件互传 最近项目需求,需要linux和windows端进行文件互传,lo ...

  9. 解决虚拟机下 “Linux和Windows之间复制粘贴” 的问题

    大家在安装完虚拟机后,其实很多东西都还是要跟Windows打交道的,比如像Linux下某个软件的环境配置,你在Linux下遇到种种问题,这时你已习惯回到Windows下,默默的打开了"一亿名 ...

最新文章

  1. 【WPF】MVVM模式的3种command
  2. 十三、“词短情长书不尽,桃花潭水是我心。”(2021.2.12)
  3. C语言学习之利用指针输出二维数组任一行任一列元素的值
  4. 【Linux】一步一步学Linux——bzip2recover命令(70)
  5. 疑似iPhone XI内部设计图曝光:这个造型爱不起来
  6. idea 修改html 不重启,解决idea spring boot 修改html等不重启即时生效的问题
  7. 垂直导航菜单制作技巧一
  8. 基于DEAP库的python进化算法--遗传算法实践--背包问题
  9. Java 私塾面试系列
  10. win7局域网共享设置_局域网硬盘一键共享软件下载-一键共享局域网修复查看设置工具包免费版...
  11. 模型类中的常用字段类型
  12. 对于利用blender获取谷歌地图3D模型的补充
  13. java netbean_java NetBean创建及各菜单项相对应的窗体及布局教程.pdf
  14. Immervision推出由计算机视觉社区开发的首台具有智能视觉的仿人机器人JOYCE
  15. 移动终端安全问题分析与解决方案研究
  16. 婚姻法新解释引女方净身出户担忧 或导致房产加名热
  17. 小猪佩奇代码 Python
  18. mysql怎么将成绩划分等级_MySQL按等级查询
  19. 面试官通用面试问题---------------经典回答
  20. 基于逻辑回归的金融风控贷款违约预测分析(笔记)

热门文章

  1. 惠普星11x2二合一平板电脑评测
  2. 中国电子地图偏移与校正(一) 偏移原因
  3. QQ美女找茬工具,大家测试一下,看看有没有问题
  4. 经验分享2-火狐浏览器下载中文名文件乱码解决办法
  5. Linux网络编程笔记
  6. 【附源码】计算机毕业设计SSM社区养老信息管理系统
  7. 关于腾讯云服务器网络收发包PPS一看就懂明了
  8. 数字卫星接收机解密大全(续)
  9. zephyr---双向链表dlist
  10. 分享一个安卓app自动化遍历工具--Appetizer