It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Why are video games so inconsistent with save file locations?

I don't know if it's just me, but I find it silly there are so many different standards for save file locations.

As an example, I am a Ubuntu user. Many of my games are not available on Linux, and can only be played with wrapper software. So, for instance, I have in the past used Steam for that - Steam has built-in Proton integration. So I can download a Windows game from GOG and run it using Steam. This results in some pretty weird save file locations. I've got it written down (!) that the save file location for the Witcher 3 should be as follows: ~/.steam/steam/steamapps/compatdata/[steam game number]/pfx. Like, how is one supposed to guess where to look without looking it up? On top of that, the "Steam game number" is nothing more intuitive than a collection of random digits. I need to manually check each folder before I find out where the save files are.

Like, why wouldn't they make it more transparent? What in heavens' name does "pfx" even stand for?

I had similar problems on Windows, too. Like, why wouldn't all games save their savegames in the same folder as the one the game is installed in, instead of clogging up the C drive?

Like, why is this all so incosistent? Why not introduce more transparent save game locations?

Like, laugh at me all you will, but, without looking it up, how would one ever know to look under such obscure file paths as the one I typed in above?
Post edited December 11, 2022 by TheNamelessOne_PL
Yeah, it's pretty random overall. Some games use their own install folder, some use various C paths, Steam has its own location and so on. Not really sure why it's historically been done this way but it is what it is. There are about 3 or 4 options at most where saves could be. And if all else fails, you can usually easily look up where the save location is.
Post edited December 11, 2022 by idbeholdME
avatar
TheNamelessOne_PL: I had similar problems on Windows, too. Like, why wouldn't all games save their savegames in the same folder as the one the game is installed in, instead of clogging up the C drive?
Applications typically get installed in the Program Files folder, where they can't write data. It's been standard practice since Windows Vista to have separate locations for applications and their data.
avatar
TheNamelessOne_PL: Why not introduce more transparent save game locations?
Windows Vista also introduced the Saved Games folder, which is directly under the user folder. I can count on one hand the number of games I've seen use it.

• GOG Galaxy users can vote for Save location link and open save location in explorer in the community wishlist.
• You can look up each game's save location in PCGamingWiki.
• You might be able to somewhat corral save locations using symlinks.
• I wouldn't entrust this to third-party software, but there are applications like GameSave Manager, Game Backup Monitor, Ludusavi, and Steam Linux Swiss Knife.
avatar
idbeholdME: Yeah, it's pretty random overall. Some games use their own install folder, some use various C paths, Steam has its own location and so on. Not really sure why it's historically been done this way but it is what it is. There are about 3 or 4 options at most where saves could be. And if all else fails, you can usually easily look up where the save location is.
Yeah, it's not that hard to work out - and PCGW will always be a fall-back option.

I like the game install directory as an option, mainly because that's what happened in the old DOS days - but then again, users today are stupid and can't be trusted to not install into Programme Files.

I did quite like the "Saved Games" folder in Windows Vista and up.

OP - the main problem is that you have different people developing games and different people have different views on how best to do something. Unless you have a third party dictating where they must save something (with penalties if they don't), then different people will come up with different solutions. It's a slightly less bad version of Apple having a proprietary connector.
That's the joys of open systems A standard was never established, that's all - or better: Too many standards were introduced, but not enforced (which is impossible anyway).
One big obstacle was the Steam platform, which denied any standard Microsoft had introduced.

On open system like Windows or Linux there are so many vendors, each one with it's own agenda (I'll talk about Windows here, but many points are also valid for Linux)

What doesn't make it easy, is the separation between PC user and Shop user.
On a PC there can be multiple PC users.
Those are customers of multiple shopsm can have more than one account in each shop.
On the other hands these multiple PC users can share shop accounts.
Try to bring a system into that

Microsoft tried, but ultimately failed. Of course their approach was, that the PC user was the master account.

In the old days (DOS), there was no structure. Profilles and saves were often placed in the game directory itself. This was done until Windows 7 came along. Then it became a problem, because MS started to lock access for the program files folder for non-admins. This is the reason why many games from that time require admin rights to run.
If you install them in a directory without access restrictions, you won't need admin rights.

Some games would save their data somewhere in the userprofile, others would use the common user.

Microsoft had good intentions by introducing "%userprofile%\Saved Games", but hardly anyone used it.
Another version of it was available for the public user, but that confused both users and programmers.

Then we had of course Steam coming along with half baked cloud synchronization which would only work in the directory that was created for Steam user profiles ... bad idea when it comes to get some order into the whole thing.

With the introduction of user rights, Microsoft defined

A common path is
%userprofile%\Documents\Companyname\GameTitle
or - even worse:
%userprofile%\Documents\GameTitle
But I don't really like that. Documents is supposed to be for documents. But so many devs use this, that it's hard to get back from it.
I created a _docs directory in my documents directory, so my own documents would not get mixed up with savegames ...

I think the best idea would be either
%appdata%\<Companyname>\<Gametitle>\
or
%localappdata%\Companyname\Gametitle\
(localappdata is for data not to be synchronized, the other one will be synchronized for network users)

A modern standard for storing data is using the same structure that program classes have. That's also used on systems like Android.
%appdata%\com\company\gametitle\

Note that I use environment variables for user directories, which don't have necessarily to be on the system drive.
Now immagine that before Windows XP 64 Bit, the user directory was language dependent and many programmers too stupid to use the environment variables (sometimes they still are, but now they can't mess up that badly anymore).
So you could have hardcoded directories like
C:\Benutzer\SomeNorwegianNameWithSpecialCharsThatTheGameCan'tHandle\Dokumente
These days all Windows versions use english names and display language dependent names only as Alias.

The worst way ever of storing savegames I found in the PC version of the adventude called Hook.
The whole game was stored in one file called HOOK.EXE (~3MB)
When you saved a game, it would alter that .exe file and write the save game data directly into it ...

A honorable mention are also some Amiga games.
While it was common practice to use an extra disk for save games, some would write save data on one of the program disks which in the worst case would destroy the game for good (in the case of Hook on the PC you could just reinstall the game). That's why they didn't add copy protection to that disk and players could make a copy in order to play. Of course not everyone did that.
Post edited December 12, 2022 by neumi5694
Very annoying indeed.
It started to crop up with Windows 95 I think.
In the DOS days it was always saved somewhere in the install directory.

Making a custom backup cloud solution would be so much simpler if all software would adhere to a single root directory specific for savefile storage.
Now even Windows makes a mess by trying to cloudsave the entire My Documents folder while half the essential files is stored somewhere in appdata and god knows where.
avatar
Strijkbout: Now even Windows makes a mess by trying to cloudsave the entire My Documents folder while half the essential files is stored somewhere in appdata and god knows where.
It gets worse. There are many programs which just spit on any standards (Admins, should install and update programs, users run them). You download only a launcher which then downloads the whole program into appdata/localappdata or appdata-LocalLow and starts it from there. This way the devs don't have to give a shit about admin rights. So in appdata we actually have applications.

The original version of the Witcher was also a fuckup. Because most people would install the game into the protected program files directory, it would download patches (with a size of several GB) into the documents folder.
The Sims (at least until Sims3) also reads it's mods from the program folder, that can easily be dozens of GB.
On my girlfriend's PC I used symlinks, so I could move the files to another drive.

MS did something right in the latest Windows versions. Sadly there are still too many programs writing into the program files directory. In some cases, a fake directory is used. When the system detects write access to that directory, it redirects the file to a directory in appdata and also redirects reading access of course. That's a neat trick.
Post edited December 12, 2022 by neumi5694
It's messy, and I hate it. Both my AppData and Documents folders are a hot mess from game tossing their save files about in these locations.

However the absolute worst offender when it comes to messy game behavior is a game called Danger Crew that I encountered through one of those itch charity bundles. This game won't let you pick where it installs and will spew itself all over the AppData folder. It's not on GOG and should stay that way because nobody should play it.
I'll repeat for the Nth time my wish that savegame locations were customizable (and not hardcoded) exactly like the game install path.. it's absurd that this isn't still a thing in 2022\23 -_-
Post edited December 12, 2022 by phaolo
avatar
TheNamelessOne_PL: I've got it written down (!) that the save file location for the Witcher 3 should be as follows: ~/.steam/steam/steamapps/compatdata/[steam game number]/pfx. Like, how is one supposed to guess where to look without looking it up?
That is Steam Proton's WINE prefix location (pfx is an abbreviation for prefix).

All games installed via Proton use that convention for their Windows files.
Yah, it's pretty tragic. I'm currently preparing a migration between two computers, and hunting down my save files is more arduous and time-consuming than I hoped for.
Yeah, it sucks.

But fortunately there is https://www.pcgamingwiki.com/wiki/Home. This site says where the save for each game are located.
The fact that games don't save to their own folder has been quite a pet peeve of mine ever since it started happening, and write access issues for those who save to Program Files shouldn't be an excuse because the game could try to see whether it can write to its own directory and fall back to some location in the user folder if it can't.
As for the variation, heh, have seen saves in AppData/Local, AppData/Roaming, Documents, Documents/My Games, Saved Games... not sure if not one in AppData/LocalLow too at some point.
avatar
phaolo: I'll repeat for the Nth time my wish that savegame locations were customizable (and not hardcoded) exactly like the game install path.. it's absurd that this isn't still a thing in 2022\23 -_-
Indeed. And it's something that could be fixed by custom installers, such as those GOG makes, by allowing to customize save location on install and if the user chooses it then a symlink will be created so the path the game wants to use will actually point to the user desired one.
... But GOG can't even allow games to be installed if there's not enough space to first unpack in the Temp folder, though it could make a temp folder on the largest partition, like it happens for Windows updates, or if enough memory is available even unpack to RAM, which would also be faster and not cause disk wear.
I can tell you that I'm working on a game and I need to use the Application.persistentDataPath of Unity3d to make it compatible for both windows and android at the same time...
Unity3d decided that the path for Application.persistentDataPath is
%userprofile%\AppData\LocalLow\<companyname>\<productname>
and on linux it will be
$XDG_CONFIG_HOME/unity3d or $HOME/.config/unity3d

Sure I can change that on windows/linux only but it will be a pain to always decide to manage it manually so I don't.
Also many developers think it's a good idea to put the save data on Documents folder for some reason, I think the best folder would be the game folder... why should I follow a standard that I don't like?
avatar
Telika: Yah, it's pretty tragic. I'm currently preparing a migration between two computers, and hunting down my save files is more arduous and time-consuming than I hoped for.
I know people hate clients around here but this is one reason cloud saves are a lifesaver at times.