Problems with Save Games in "My Documents" in foreign Windows versions

Started by Le Woltaire, Wed 08/07/2009 20:53:10

Previous topic - Next topic

Le Woltaire

I recieved a bug report from a Russian user who was not able to save his game.

My game was configured in that way that it saves the games in the folder "My Documents/Games Name" under Windows XP as it can be setup at the general settings tab.

In the Russian Windows version this folder is called: "Мои документы"

After I changed my game so that it saves the file directly in the games directory the user could save the games without any problem...

I thought I post this, because my only explanation to this was that maybe AGS 3.1 does not recognize the right system folder in some foreign Windows versions and is unable to build the savegames there...

Or am I wrong?



Charity

Would it help if the player could specify save game locations in the setup file?  Or at the very least give designers the option to include such a feature?  I think it would be an improvement over the current "one size fits all" functionality.

GarageGothic

Lyaer, you could easily do it from within the game (on the options screen for instance) using Game.SetSaveGameDirectory(string directory).

GuyAwesome

I think the problem is with AGS not being able to properly handle some/most non-english characters, as you suggested (so pretty much all the Russian for 'My Documents', I'm guessing). I thought I'd seen the problem reported with save games, but the closest I can find is a music.vox error - seems like the same issue, though.

Lyaer, unless I* misunderstand your suggestion, isn't that covered by Game.SetSaveGameDirectory? (At least as of V3+, if not earlier.) Although it's limited in WHERE exactly you can save to (My Docs and sub-directories, game folder and sub-dirs), and it's "recommended that you do not use this function" in the manual, so maybe not...

*And GarageGothic, who posted while I was typing :)

Charity

Whoops.  Guess I missed that feature.  I still think winsetup would be a good place to set that, though, as it would work with copy/paste (and browse?) which are easier for some people than memorizing and retyping potentially lengthy paths of folders.  And since the player is the one setting it, it might not be so necessary to limit access to the game folder and My Documents.

Vukul

Hello to everybody.
Since I'm that notorious "Russian user", I'd like to add something to this topic. The problem is somewhat deeper to my thinking, as AGS doesn't understand non-English symbols until they are imported there with the proper .TTF, but all the other OS interactions should be okay. In fact, that problem with saving the game was noticed only on one occasion so far, and all the other games made with AGS 3+ work properly (my small experimental games also work good - and they're in Russian, while the AGS still in English).

Therefore, I consider it a good idea to let the player set the Saved Games folder on his own (and using the winsetup panel)... but I think the best way is just to put saves in some sub-folder within the game main directory.
  

monkey0506

The problem with the save games being associated with the main game directory is for anyone using Windows Vista...Vista's going to throw a fit over this (depending where exactly the game is installed). This is why the Game.SetSaveGameDirectory function is not recommended for use.

The real problem here is that AGS isn't converting the "My Documents" string into the appropriate locale before looking for the directory. Whether this is a feasible possibility...I can't say. However I would be interested to see whether the $MYDOCS$ tag would properly expand if you use the Game.SetSaveGameDirectory function...? Would that be any different or is it still going to look for the directory "My Documents"?

Gilbert

To be honest, I'd rather want the engine to detect the version of Window$ and only store stuff in "My Crapoments" when you're using Vista+ by default, unless it is set explicitly by the game.

I often use AGS as an substitute for script languages to test stuff, like processing an image, etc. and recently I was once lost in finding the output files the test programmes generated. I was really angry that I could only find them after hours of searching, that they were saved in an unobvious place insider the maze of "My Documents".

I never ever store anything in that folder and it's beyond my understanding why they called that a feature in the first place. Not to mention the stupid act of trying to restrict people to use it in new software and force to convince them in believing that it is good for them.

Le Woltaire

The easiest way to get the problem fixed it to delete the option "Save Game Folder" in the general settings tab to avoid that people generate a game that automatically tries to build save games in a folder that is part of the Microsoft Windows structure.

Because:
1: People from other countries with foreign Windows version may not be able to save their game, like Vukul.

2: AGS always had an independent flair. It doesn't make sense to adept the Microsoft Windows structure in any way, which is -everybody knows this- not a good structure and I don't know a single user that cares about the "My Documents" folder.

3: AGS messes this folder up with savegames: When I checked my "My Documents" folder I found savegames in there with their folders from games that I already had changed or uninstalled several months before.



Pumaman

Yes, it looks like this is caused by the same issue causing the music.vox problem. It is something I will be looking into.

QuoteThe easiest way to get the problem fixed it to delete the option "Save Game Folder" in the general settings tab to avoid that people generate a game that automatically tries to build save games in a folder that is part of the Microsoft Windows structure.

As monkey and Gilbert have said, it has to be saved into My Documents because of the security restrictions in Vista -- if you make it save to the game's folder, it won't work if the game is installed to Program Files in Vista.

Snarky

I store everything in My Documents, because I have better things to do than to fight with my OS (or to change the default paths of every frigging application I install). A lot of stuff is going to end up there anyway, and there are convenient shortcuts to it everywhere in Windows, so that's fine by me. As long as you use it as your root folder for all your documents, there really is no drawback.

The problem for me is that every game creates a new folder in My Documents to put its saved games in. That leads to a lot of clutter, and folders that don't always make sense out of context. Therefore, it would be great if AGS by default put the game's saved games folder within a general AGS folder, for example "My Documents\AGS Saved Games\WhateverQuest" on XP. You could give game makers the option to skip the AGS folder if they so desired.

Ishmael

Quote from: Le Woltaire on Thu 09/07/2009 10:12:41
3: AGS messes this folder up with savegames: When I checked my "My Documents" folder I found savegames in there with their folders from games that I already had changed or uninstalled several months before.

This and what Snarky said above is why and what I've suggested ages ago: Host all AGS saved games folders under one folder inside My Documents, not in the root of My Documents. Many games already use the "My Games" folder to store their data. Put them there. Or under My Games\AGS. Or under My AGS Games. Or something like that.
I used to make games but then I took an IRC in the knee.

<Calin> Ishmael looks awesome all the time
\( Ö)/ ¬(Ö ) | Ja minähän en keskellä kirkasta päivää lähden minnekään juoksentelemaan ilman housuja.

Pumaman

Quote from: Snarky on Mon 13/07/2009 01:24:25
The problem for me is that every game creates a new folder in My Documents to put its saved games in. That leads to a lot of clutter, and folders that don't always make sense out of context. Therefore, it would be great if AGS by default put the game's saved games folder within a general AGS folder, for example "My Documents\AGS Saved Games\WhateverQuest" on XP. You could give game makers the option to skip the AGS folder if they so desired.

Since v3.1, AGS has done this. Games created with 3.1.x create their save folders within a "My Saved Games" folder on XP.

Snarky


Crimson Wizard

Heh, I just stumbled upon this problem.
I downloaded "A Night To Remember" game and following occurs: I can save game, but it doesn't appear in the saved games list afterwards.
(I am using Windows Vista)
What is strange, however, is that in other recently released games which store saves in Users/<Username>/Saved Games everything works.

Following games worked fine:
Heed
Limey Lizard Waste Wizard!
Shifter's Box - Outside In
This Game

So, I wonder, what could be the difference between these four and "Night To Remember"? Maybe checking this difference help solve the problem?


EDIT: Oops, looks like I missed something
Quote
Changes in 3.2 beta 3:
Fixed error running game and problems with save games if there were unicode characters in the folder path
So it's not a problem anymore for AGS? I wish there could be a way to fix this for existing game though. Otherwise I'll have to make it through without saving/loading :)

monkey0506

AFAIK this solution would still be valid for AGS 3.0+. That would force the game to be run using a different version of the engine. If the game is too old it might not work due to backwards compatibility issues (I think) but for most recent games it should probably do fine.

Edit: Nevermind. I just tested it and the 3.2 engine says it can only run games from 3.2+. :-\

Crimson Wizard

Quote from: monkey_05_06 on Thu 27/08/2009 19:32:36
Edit: Nevermind. I just tested it and the 3.2 engine says it can only run games from 3.2+. :-\
Yeah, me too :) :(

monkey0506

Perhaps since this is a recently released game the author could take advantage of the Game.SetSaveGameDirectory function and you could install the game directly to a path that doesn't have the unicode characters?

Assuming that is your problem. I'm not sure, were those other games compiled in 3.2?

Crimson Wizard

Quote from: monkey_05_06 on Thu 27/08/2009 20:19:29
Perhaps since this is a recently released game the author could take advantage of the Game.SetSaveGameDirectory function and you could install the game directly to a path that doesn't have the unicode characters?
I guess there's some misunderstanding. Game itself is installed (rather simply unarchived) to the path without unicode characters. Problem is (afaik) that it stores saves in the standart Windows folder that has them (Russian version of Vista, at least).

Quote from: monkey_05_06 on Thu 27/08/2009 20:19:29
I'm not sure, were those other games compiled in 3.2?
Hmm.. let's see.
"Heed" is 3.1.2.1072
"Shifter's Box" is 3.1.1.1057
"Limey Lizard" is 3.1.0.1047
"This Game" is 3.0.2.1025

"A Night to Remember" is 3.1.2.1074

So, funny, the game that doesn't work has the most advanced version   ::)

Gilbert

You may try to run the game using the V3.2 engine and see if it fixes your problem.

However, it's not guaranteed to work, as V3.2 is still in beta stage and there're huge change in the audio system that may render game data compiled with older versions incompatible.

SMF spam blocked by CleanTalk