See How To Share Steam Game Files Between Windows & Linux

share-games-linux-windows-steam

If you are or need to be a dedicated Linux gamer and have amusements on Steam that are bolstered both on Linux and Windows, or have double booting Operating Systems for a similar reason, you might need to consider perusing this.

There is a large portion of us gamers who dual boot Linux with Windows.  Some of us would have had just Linux had it not been for those amusements which have not yet landed on Steam for Linux. Consequently, we keep both of the OSs with the goal that we can play the greater part of our most loved games paying little respect to the stages they touch base on.

Gratefully, the Linux gaming group is developing effortlessly and we are having increasingly mainstream Steam for Windows games being propelled on Steam for Linux.

Many of us like to backup our Steam games so we won’t have to wait for downloads to complete. These collections are a majority of Steam for Windows games.

Now there are so many of these games that have arrived on Steam for Linux as well, such as Life is Strange, Tomb Raider 2013, Shadow of Mordor, XCOM: Enemy Unknown, XCOM 2, Race The Sun, Road Redemption, SUPERHOT,…and the list grows on! We also have the upcoming Deus Ex: Mankind Divided and Mad Max!!! Instead of years, nowadays we only have to wait for months for such titles after Windows releases and this is big news!

This experimental method shows you how to use your existing game files on either platform to restore the majority of the game data files on Steam. This results in having much lesser waiting times for you to enjoy the game as the files are pretty much common between the two OSs as we are going to see in the following example.

In the following method, we show you step by step procedures to attempt both Steam’s own backup and restore feature and the manual way. While we’re at it, we will also show you the similarities and differences in the game file structures between both platforms so that you too can explore and come up with your own tweaks.

In this method, we’ve used Ubuntu 14.04 LTS and Windows 10 to perform the backup and restore Steam tests.

A hefty portion of us get a kick out of the chance to back-up our Steam games so we don’t need to sit tight for downloads to finish. These accumulations are a greater part of Steam for Windows games.

Presently there are so a considerable lot of these games that have touched base on Steam for Linux too, for example, Life is Strange, Tomb Raider 2013, Shadow of Mordor, XCOM: Enemy Unknown, XCOM 2, Race The Sun, Road Redemption, SUPERHOT,… and the rundown develops on! Also, we have the up and coming Deus Ex: Mankind Divided and Mad Max!!! Rather than years, these days we just need to sit tight for a considerable length of time for such titles after Windows releases and this is enormous news!

This exploratory technique demonstrates to you accepted methods to utilize your current gaming files on either platform to reestablish most of the files on Steam. This outcome in having much lesser sitting times for you to appreciate the game as the files are essentially regular between the two Operating Systems as we are going to find in the accompanying illustration.

In the accompanying strategy, we demonstrate you well ordered systems to endeavor both Steam’s particular back-up and reestablish feature and the manual way. While we’re busy, we will show you the similitudes and contrasts in the game file structures between both platforms so that you also can investigate and conjure your particular changes.

In this technique, we’ve utilized Ubuntu 14.04 LTS and Windows 10 to play out the back-up and reestablish Steam tests.

1 : Steam’s Personal Back-up & Restore

When we attempted to utilize a Windows Steam Backup of SUPERHOT on Linux(encrypted documents in .csd design), Steam for Linux neglected to perceive any of the files and began downloading the whole game from 0 MB!  Even on doing an approval check, a greater part of the documents couldn’t be distinguished by Steam. We likewise did a comparative test on  Windows, yet the outcome was the same!

steam-restore-failure-from-windows-backup

steam-validation-failure

Time for some manual changes to share Steam games amongst Windows and Linux!

2 : Manual Techniques

In the first place, we investigated the locations(usr dir in home) where the game’s documents were available on Linux:

This is the default installation area for Steam for Linux. “.local” and “.steam” directories are covered up as a matter of course and you would need to uncover them. We would prescribe having a custom Steam installation area for less demanding treatment of documents. Here “SUPERHOT.x86_64” is the local Linux “executable” dissimilar to an “.exe” file in Windows:

superhot_data1-e1477112816241

This is the area which contains most of the documents that we need(common amongst Windows and Linux):

superhot_data2

Here beneath we see .acf file. “appmanifest_322500.acf” is the one we require. Altering and tweaking this document helps a considerable measure to make Steam perceive existing decoded crude file back-up exhibit in the “common” directory:

steam_linux_manifests-e1477112765133

To affirm, simply open the document with an editor and check. We should comprehend this file, as much as possible. Here is a post on the Steam forums that demonstrates its real centrality.

It goes like this:

“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”

}

}

Subsequent to uninstalling the game on Linux to attempt the test, we now observe the contents of a similar game on Windows 10:

superhot-windows-steam

superhot-windows-steam2

We duplicated the “SUPERHOT” folder, furthermore, the manifest(.acf) file (it is made in a similar format in Steam for Windows). While duplicating the .acf document and the directory to their individual locations on Steam for Linux, we ensured Steam wasn’t still running.

After the exchange was finished, we ran Steam and saw this:

most-files-recognised-on-steam

So rather than the whole 867.4 MB, it now demonstrates 235.5 MB of files to download and that implies more than 70% of the files have been distinguished by Steam 🙂 ! So this is an enormous time pick up, generally. While this may fluctuate for various games, obviously, this is unquestionably justified regardless of a strive for gamers who have beneath normal/normal web associations particularly when the “substantial obligation” games are viewed as that are for the most part estimated at around 40-50 GB nowadays.

Different changes that we attempted:

  •  We can see that the information files are in an organizer named “SH_Data” on Windows rather of  the catalog, “SUPERHOT_Data” as on Linux. Transforming it didn’t have any effect in the above result.
  • We had a go at utilizing a reinforcement adaptation of the first show petition for Linux alongside the Windows manual reinforcement. In any case, that brought about Steam downloading the diversion for the starting.

Understanding the Manifest

The manifest file can unquestionably be altered and changed for enhancing these outcomes to make Steam distinguish the greatest number of files as it can.

There is a venture on Github which is a python script to produce these manifest files. AppIDs for any Steam game can be gotten from SteamDB. By knowing the App ID, you can make your own manifest file with your most loved editorial manager by utilizing the accompanying arrangement: “appmanifest_<AppID>.acf” . In the above manual technique, we can see that the AppID for SUPERHOT is 322500. Henceforth the filename would be appmanifest_322500.acf .

We should attempt to record it inside the file as per our best understandings:

“AppState”                                                              // The State of the Application(Game)

{

“appid”        “322500”                                          // The Steam Application ID of the Game

“Universe”        “1”

“name”        “SUPERHOT”                                 // Game Name

“StateFlags”        “4”

“installdir”        “SUPERHOT”                         // Installation Directory Name

“LastUpdated”        “1474466631”

“UpdateResult”        “0”

“SizeOnDisk”        “4156100762”

“buildid”        “1234395”

“LastOwner”        “<SteamID>”                      // Unique <SteamID> for account owner in numerical format

“BytesToDownload”        “909578688”        // Divide this number by 1073741824(1024 x 1024 x 1024) to calculate data remaining to download in GB.

“BytesDownloaded”        “909578688”        // Bytes downloaded

“AutoUpdateBehavior”        “0”                    // The game will update automatically when this is set to 0.

“UserConfig”                                                    // User Configuration

{

“Language”        “english”

}

“MountedDepots”                                           //  This section is mostly related to Game DLCs

{

“322503”        “1943012315434556837”

}

}

By figuring the data download measure in GB/MB, you can contrast it and what Steam shows and attempt more changes.

About The Author
Okoi Martins Jr.
I'm a Computer Scientist with a passion for learning new things in fields ranging from theoretical implications of computer science and mathematical modeling to web development and music. In my spare time, I listen to music, read like a compiler, and learn like an A.I algorithm.

Leave a Response