Game Design: Where to put Saved Game Files

Here is a little rant, about a pet-peeve of mine. Those of the readers here who own windows boxen and indulge in the habit of PC gaming will probably be able to relate.

By convention most software on windows gets installed into the Program Files folder. There is nothing that enforces this but this is usually how it’s done. So most applications end up having a path that looks something like this:

C:\Program Files\Company Name\Application Name\

There is nothing wrong with that – in fact it keeps things organized and I approve of this convention. It is worth mentioning that non-administrator users do not have write access to the Program Files which is a very good security decision. This precaution means that some random mallware distributing website can’t just cleverly overwrite your applications with it’s own executables.

Of course this also means that an application run by a non-admin user can’t write to it’s own installation folder. This is why Windows provides a seldom mentioned, and often ignored Application Data folder for each user. It is usually located in:

C:\Documents and Settings\Your Username\Application Data\

The sole reason for existence of that folder is to give different applications a user-writable space where they could save their configuration files, temp data and etc. Most of the time however, game designers choose to ignore that folder completely.

When you get home today, do this little experiment – try to figure out where your favorite games keep their saved game files. You should know that anyway for the purpose of backing up, but that’s a whole other story. The games these days usually don’t tell you where thy put your saved data – and rightfully so. It is a low level technical detail that most people (except for us, backup freaks) don’t really care about. Chances are that most of the games you own, save in their installation directory – for example:

C:\Program Files\Company Name\Game Title\Saved Games\

What are the implications of this design choice? Let’s count them together:

  1. You can’t save game as non-admin
  2. Any other user on the system can overwrite your saves
  3. Most games now try to implement some sort of “profile” functionality to allow two or more people to play the same game without mixing their saves and settings – this could be avoided
  4. If you reinstall the game your saves might get deleted
  5. Program Files folder will often not be included in backups (why back up tons of binaries?), but your user profile (including the Application Data folder) usually will be

Why not just put the saved games where they should be in the first place – in Application Data? I understand that they often want to keep everything in one place, but this is not the best idea. And it could save them time and money on creating those in-game profile management systems. Let windows deal with user management stuff.

And no, creating a junction that points a given Saved Games folder to some place in my own Application Data is not a viable solution. Or, rather it will work for me as I am the sole user of my machine. But if you share your gaming rig with room-mates or siblings that will just lock them out of the game. Unless of course you all share the same login, which is just plain stupid.

[tags]games, gaming, saved games, program files, application data[/tags]

This entry was posted in Uncategorized. Bookmark the permalink.



19 Responses to Game Design: Where to put Saved Game Files

  1. “thy”? Trying to go old english on us? (you forgot the ‘e’ in ‘they’)

    One thing I don’t like about application data, is its sooo god damn hard to find… I always forget where its at… its not simple like “my docs” -> Folder -> Folder
    its My Computer -> C:/ -> Travis McCrea -> Application Data
    Firefox stores its shit in there :) Although I am still figuring out how to modify a firefox plugin because it seems after they are installed the code dissapears from anywhere.

    Reply  |  Quote
  2. Luke UNITED STATES Mozilla Firefox Ubuntu Linux says:

    Thau shalt noth mocketh ye olde english!

    Oh, and appdata is easy to find:

    Win+R, type in %APPDATA%, enter

    Tada! You can also type it into the Windows explorer address bar.

    You can also do:

    %PROGRAMFILES% for Program Files
    %SYSTEMROOT% for the Windows folder
    %TMP% for your temp folder, and of course
    %HOMEPATH% for your user profile folder

    Reply  |  Quote
  3. Ricardo INDIA Mozilla Firefox Windows says:

    I totally agree with you, Luke! But I would bring the discussion to a broader view as some non-game applications also tend to ignore this folder.

    Sometimes they ignore even the default “program files” folder (or forget to use the %programfiles% variable so that Windows translated versions are ignored) and put the programs and data wherever the company’s imagination feels like…

    Reply  |  Quote
  4. Craig Betts UNITED STATES Mozilla Firefox Solaris Terminalist says:

    This is one of many reasons why I don’t game on computers anymore. I have several gaming platforms (XBox 360, XBox, PlayStation, Super Nintendo and even an Atari 2600). Sure, game saves had to wait until there was local storage available with the few exceptions of games like Zelda that had a built-in memory device in the cartridge and a few other with start codes.

    Reply  |  Quote
  5. Luke UNITED STATES Mozilla Firefox Ubuntu Linux says:

    @Ricardo – I didn’t even think about the translated version, but that’s right. If they don’t use the system variable then you end up with two Program Files folders!

    @Criag – true, but console gaming has it’s downsides too. Playing FPS and RTS games with the gamepad is kinda like eating soup with a fork. :mrgreen:

    Reply  |  Quote
  6. K.Mandla JAPAN Kazehakase Linux says:

    This might be blasphemous, but when I was using Windows I used to redirect all my saved game folders into My Documents (when it was possible, of course), and redirect the My Documents folder onto a secondary drive.

    My logic was that I used to reinstall Windows frequently enough (sometimes once a week, depending on what kind of kludge I had gotten myself into) that it was more convenient to keep them in that folder, and keep that folder on a completely separate drive from the system.

    Of course nowadays I just let them sit in my home folder, and pick that up and copy it back whenever I reinstall. Which is far less frequent, I should add. ;)

    Reply  |  Quote
  7. Luke UNITED STATES Mozilla Firefox Windows says:

    Yup, that is a smart thing to do. Of course this breaks if you have more than one user on the windows machine. Then you have to give the other users write access to folders in your My Documents and etc…

    Reply  |  Quote
  8. vacri AUSTRALIA Mozilla Firefox Windows says:

    Don’t forget that Explorer has half-arsed tab completion (both IE and Windows Explorer). Enter the following in the address bar

    c:\d[tab]\v[tab]\a[tab]

    to get

    C:\Documents and Settings\vacri\Application Data

    Well, it might if vacri is a user on your system. Tab completion in Windows is a bit flaky, but can be useful at times.

    Reply  |  Quote
  9. vacri AUSTRALIA Mozilla Firefox Windows says:

    I can’t believe I just described how to tab-complete. Too used to spoon-feeding stupid users.

    Seriously, I once sent an email that only held a username, a password, and a URL to a page that only has login boxes, nothing else. I got a reply asking for instructions on how to use them. This was from a software salesman. The first step in my numbered how-to was: 1. Locate your computer

    Reply  |  Quote
  10. Luke Maciak UNITED STATES Mozilla Firefox Windows says:

    LOL! No worries, I totally understand. I get the same exact thing at my work.

    At my work, getting a user to change their SMTP settings in Outlook over the phone is at least a 2 hour conversation that goes something like this:

    Me: Go to Tools and choose Email Accounts
    User: Ok
    Me: Now click View or Change, and click Next
    User: I don’t have that
    Me: Ok, what do you see on the screen
    User: Nothing… Stuff.. Not what you said…
    Me: Can you read of what it says?
    User: I don’t know… Like Mail Format… Something
    Me: Ok, I think you went to options. Click cancel
    User: Ok
    Me: Now go to Tools….
    Use: Ok
    Me: Email accounts…
    User: I don’t have that…
    Me: Ok, do you see like little arrowheads pointing down
    User: No
    Me: Ok, never mind, just wait a sec and the menu should expand
    User: Oh, it did. Where do I go?
    Me: Email Accounts
    User: Ok
    Me: Now, view or change…
    User: I don’t have that.
    Me: What do you see?
    User: Like General, Mail Format… Sigh… I hate this computer.
    Me: Ok, you went to options again… Click cancel
    User: This computer… I just can’t work like that. It doesn’t work.
    Me: We’re almost there. Just click on Tools..
    User: No, this is ridiculous. I just want to get my email, and you make me do all these things. I can’t deal with that. I’m gonna bring it in.

    These days I just use VNC if I need to remotely change some settings on a users computer.

    Reply  |  Quote
  11. Ricardo INDIA Mozilla Firefox Windows says:

    LOL!!

    This reminds me of the time I used to train people on the use of an academic management software. Some didn’t have a clue about how to use Windows and I still needed to teach them the concepts and the usage of the software.

    It went like this:
    Me: Maximize the screen so that you can see all the window.
    User: How can I do that?
    Me: Just click that small icon on the top right-hand side next to the X symbol.
    User: Now everything is gone? What should I do?
    Me: You must have minimized the window. Look for the application name on the bottom part of the screen.
    User: Found it, now what?
    Me: Click on it.
    User: Right or left click?

    At that point I had to give up explaining that over the phone…

    Reply  |  Quote
  12. Luke Maciak UNITED STATES Mozilla Firefox Windows says:

    Hehe! I have a better one. When I used to work at a small medical center, one of the nurses called me:

    Nurse: Luke, hlease help me! I think I broke the computer.
    Me: Ok, what happened?
    Nurse: Well, I was typing and all of a sudden my screen dissapeared.
    Me: What do you mean?
    Nurse: It’s gone. I can’t type or anything.
    Me: What do you see on the screen?
    Nurse: Well… Nothing. It’s like all blue.

    So at this point I think it’s BSOD. I tell her to reboot, but she doesn’t know how to do that, so I walk over there, look at the screen, and I see…

    Windows desktop. The medical records application (an ugly, full screen text app originally designed to run on ancient on the dumb terminals) at the time sits in the task-bar minimized.

    So I maximize it, and go back to work.

    Reply  |  Quote
  13. vacri AUSTRALIA Mozilla Firefox Windows says:

    heh…

    Once I had a user call me with an error message after a task which she said was ‘It says the file is corrupt’.

    Knowing that after the task she did, it wouldn’t have given that error message (the task didn’t involve files), so I got her to read it out to me. ‘The file you are trying to use is corrupt’, she “read”.

    Feigning surprise at this unusual error message, I then asked her to spell it out for me, so I could ‘get it letter-perfect and look it up’. Sure enough, when forced to spell it out, I got the correct error message, which had nothing to do with corrupt files.

    Another customer complained that her free third-party software couldn’t read our exported studies because our exports were corrupt. After struggling for two hours to replicate her fault (“It says the study is corrupt”), I despatched a service tech because she was both a contract customer and also threatening to sue us over this. Sure enough, he gets there, runs her third-party software, and before it’s possible to even load a study, the following error message popped up: “This is not a Win32 application.” It was Mac software…

    *sigh*

    Reply  |  Quote
  14. Luke Maciak UNITED STATES Mozilla Firefox Ubuntu Linux says:

    LOL!

    Reading error messages seems to be difficult to the users.

    Reply  |  Quote
  15. In stupid user defense … we expect a basic knowlage of computers when we talk to someone… we also usually expect a little bit more because of the amount of shit we know…. but lets switch the rolls

    Football Coach: “Travis, go in as the tight end”

    Travis: “Which one is the tight end?”

    This isn’t a real scenario… but if I was told something that had to do with football i would probably be lost, yeah i play it alot out with my brother or my friends… so by appearance i would know about football… I throw the ball really well, i can catch, etc. However when asked to do a certain task IN football i would have a problem same thing with these users:

    They can use their computer all day long and have a basic understanding because they don’t actually know WHAT they are doing, it just always works for them so they never question it. However, sometimes they stray from the beaten path or we ask them to do a task and they will get lost…

    Thats all.

    Reply  |  Quote
  16. Luke Maciak UNITED STATES Mozilla Firefox Ubuntu Linux says:

    Well, the difference is that your job does not depend on proper application of technical football knowledge. I don’t usually expect my relatives who use the computer mainly for myspace youtube, and spamming family with chain letters to really know much.

    But if Word, Excel and Outlook are your primary work tools and you spend most of your work day using these applications then you should at least have a basic idea on how to use them, and a basic idea about how the Windows windowing and file system.

    Similarly, I would expect a cook to be able to diagnose the problem and re-light a pilot in the oven. Or a carpenter to take apart and properly clean their power-tool when it gets jammed. Or a professional driver to be able to jump start his car, or change his tire all on his own.

    If a computer is your primary work tool, you should at least be expected to have basic working knowledge of how it works.

    Reply  |  Quote
  17. vacri AUSTRALIA Mozilla Firefox Windows says:

    [quote comment=”5905″]In stupid user defense … we expect a basic knowlage of computers when we talk to someone… [/quote]

    I agree completely, but when I say “Read exactly what it says on the screen”, that’s a simple instruction that any English-fluent person who has used a computer should be able to perform, especially when the instruction is repeated.

    Likewise, when I say “Okay, every time I say ‘click’, I mean ‘left-click’, I will tell you if we need to do otherwise”, it doesn’t mean that you should continue to ask me ‘left- or right-click’ every time I mention the word. Interestingly, for some customers I would change to the more cumbersome ‘left-click’ instead of ‘click’, and they would still ask left or right.

    But I have to agree with Luke. If you’re using your computer for personal use, fine, be a naive. But if you’re being paid for your work and it involves a computer, you should know how to use your tool. A carpenter knows how to use a hammer, an electrician knows how to use cable-strippers, and a plumber knows how to complain when people don’t flush. Not knowing how to use the tools that you’re gainfully employed to use is not acceptable. Common, but not acceptable.

    Reply  |  Quote
  18. Matt` UNITED KINGDOM Mozilla Firefox Windows Terminalist says:

    Comments seem to have gone off into “helping the clueless” but I wanted to comment on save files, so nyah! :P

    I agree completely that Application Data needs to be used more often – its right there as a designated folder for putting in all the settings, saves, configuration and everything like that, but a whole lot of the time the program just puts everything in Program Files\[some program]

    It’s annoying not just on the basis of it causing problems if there are multiple users, but also that I have the whole Documents and Settings folder on a separate partition to try and keep everything that’s likely to change in one place and avoid too much fragmentation, as well as allowing me to shrink down the C:\ partition where everything else is, putting their stuff in Program Files messes that idea right up..

    I believe I already put a comment on the “Mac vs PC installation methods” post about how all software should exist inside a self contained folder, with all its data, application files and such in subdirectories (with a nice shiny executable at the top level). Well now I’m thinking put a neat self contained folder in Program Files, with everything the application needs to run, then put a settings folder in Application Data for everything a user might want to change, preferably in human-readable plaintext configuration files. Oh, and have a file in the Program Files section that tells it where to put the settings folder, so I can transfer it all to a portable drive without having to recreate the folder structure or anything ugly and hackish like that.

    Reply  |  Quote
  19. Pingback: Terminally Incoherent » Blog Archive » Install Games on a Separate Partition UNITED STATES WordPress

Leave a Reply

Your email address will not be published. Required fields are marked *