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?
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.
Lyaer, you could easily do it from within the game (on the options screen for instance) using Game.SetSaveGameDirectory(string directory).
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 (http://www.adventuregamestudio.co.uk/yabb/index.php?topic=38012.0) - seems like the same issue, though.
Lyaer, unless I* misunderstand your suggestion, isn't that covered by Game.SetSaveGameDirectory (http://www.adventuregamestudio.co.uk/manual/Game.SetSaveGameDirectory.htm)? (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 :)
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.
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.
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"?
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.
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.
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.
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.
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.
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.
AGS: Always a Step Ahead! ;D
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 :)
AFAIK this solution (http://www.bigbluecup.com/yabb/index.php?topic=36656.msg481403#msg481403) 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+. :-\
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 :) :(
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?
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 ::)
You may try to run the game using the V3.2 engine (http://www.adventuregamestudio.co.uk/kbview.php?id=22) 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.
Quote from: Gilbet V7000a on Fri 28/08/2009 01:56:35You may try to run the game using the V3.2 engine (http://www.adventuregamestudio.co.uk/kbview.php?id=22) and see if it fixes your problem.
Quote from: Crimson Wizard on Thu 27/08/2009 19:56:23
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 :) :(
We've already ruled that one out Gilbot. :-\
I'm curious though to see why this is only affecting this one game. Do the other games save to the game directory as opposed to My Documents?
Quote from: monkey_05_06 on Fri 28/08/2009 03:34:26
I'm curious though to see why this is only affecting this one game. Do the other games save to the game directory as opposed to My Documents?
Nope, all of them save to "My Documents".
well I nearly passed the game last night... ;D since it's short, it's not a big problem, I will try again this evening.
Does AGS use the %CSIDL_DEFAULT_MYDOCUMENTS% variable to determine the location, as this should be langauge-independent?
Uh... I hope there could be some solution for 3.1.2 games, I was trying play current MAGS games, and all 3 do not read savegames on my PC :(
What about sma-a-all patch which fixes this in 3.1.2? ::)
Quote from: SSH on Fri 28/08/2009 13:21:04
Does AGS use the %CSIDL_DEFAULT_MYDOCUMENTS% variable to determine the location, as this should be langauge-independent?
The problem isn't actually
finding the folder (in direct contradiction of what I said ~2 months ago; I was wrong). The problem is unfortunately that prior to 3.2 beta 3 if the file path contains any Unicode characters it won't work properly.
Then to make matters worse with all the major overhauling CJ's been doing it seems that backwards compatibility of the engine is straight out at this point. So if the game is compiled with any version of AGS prior to 3.2 beta 3 then the game author
must:
A) not use 'My Documents' at all which could potentially alienate some Vista users who don't know how to install the game in a writable directory,
ORB) allow for the save directory to be set via Game.SetSaveGameDirectory (which for Vista users would still require they know how to install the game to a writable directory).
Another complication that could arise is whether the Unicode restriction applies only when expanding the My Documents path or whether it applies to the full path of all save game directories. Because even if the game directory is specified, if the Unicode restriction applies to the full path, that would just further narrow down the possibilities as to where Vista users can install the game.
I would
assume that it doesn't require the full path because it should be able to use the "./" directory but again, I don't know for sure.
OMG! I SOLVED THIS! ;D 8)
Stupid me... I reviewed an old thread where I was reporting bug related to similar problem (unicode characters), and found I wrote back then:
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=36544.msg480028#msg480028
So, practically, if one have this problem with saved games, he or she may simply set Compatibilty with Win98 option for game executable, and it seem to work then!
:P