Program For Backing Up Saved Games

sanmadjack

Chieftain
Joined
Feb 22, 2008
Messages
18
I've been working on a program that can automatically back up and restore save games and settings called MASGAU. All the Civ 3 & 4 and all their addons are supported, as well as Civ 4: Colonization. More information is available at http://masga.sourceforge.net/ and I would greatly appreciate feedback. Since there is no universal way to detect a save game each game has to be manually configured, so information (save paths, registry keys, start menu shortcut locations) on games not listed as supported on the site would be very helpful.
 
This sounds like a worthwhile project, but the information for geeks is a little opaque. Are you performing updates at fixed intervals, or only when files actually change? I'd use a .Net FileSystemWatcher in order to perform backups whenever save files change. I also would use a proper revision control system as archive backend instead of 7z archives. This will provide a ready made mechanism for labeling and timestamping backups.

Edit: Good luck! :)
 
MASGAU backs up when you hit the backup button, or when a scheduled task is run. It has been suggested that it back up saves when they are made, but I'd imagine monitoring the entire system for every possible save would be a bit resource intensive. Beyond that, the little stutter when an autosave occurs would grow into a pause, and if the reaction to FEAR 2 was any indication, people aren't going to be happy about it.

The revision control system idea is an interesting one. I'm gonna have to give it some thought.
 
Well, if you are going to backup while the game is running, there will be a slight delay in any case. At least with the monitor, you only have it when there actually is something worth saving.

I don't think the overhead would be very large. You'd have to register an observer for every save game folder, not every save. The observers would use negligible resources, unless MS seriously blundered with the implementation. As you only have one game running at the same time, and games only use one savegame folder each (or can be made to use only one), there would be only one folder to monitor at a time.

If you don't make backups during games, at least trigger an automatic backup whenever a configured game closes. Personally, the only time i ever wishe for backups is during a play session, though.
 
I'm of the mind that if enough people suggest something, I should at least give it a shot. On Monday night I put together a hasty monitoring program for watching detected save paths for activity. Tonight I finished a few thread-safety tests and I'm fairly certain I have a fully functional realtime backup for MASGAU. Since I'm sure people running it would like the ability, I'm looking into methods that will allow MASGAU's archives to store several versions of files, allowing the user to "roll back" to a prior save. Suggestions for how to achieve this are quite welcome.
 
People saving over each other's games. System wipes. Uninstalling a game but not wanting to lose your progress. A save getting corrupted. E-mailing a save to a friend. Your mentioned hard drive crash. It has come up enough in my personal life for me to see the value in spending all these hours writing MASGAU.
 
I have my own system.

I just rar them and back them up somewhere.
 
I have my own system.

I just rar them and back them up somewhere.

MASGAU essentially works the same but automated, along with providing an easy restore. The backups it makes are even easy to open 7-zip files.
 
Release time! Today brings with it the release of version 0.4! HIGHLIGHTS!

A real-time monitor that watches for new and updated saves AS THEY ARE MADE!
The ability to create custom archives that only contain files you specify! Perfect for sending just one save to a friend or uploading saves to a save sharing site or forum!
The ability to exclude games! Feel the loneliness!
The ability to create multiple backups over a period of time!
Only 4 new games! Come on people I need more information!
Bug fixes! Less crashes!

As usual more info and downloads can be found at the poorly addressed http://masga.sourceforge.net/
 
0.5 today. The rundown:

New MASGAU Analyzer for generating reports on save games that can then be submitted by e-mail.
NSIS-based installer instead of MSI installer. Makes everyone's life easier.
Installer can now install .NET and 7-zip if necessary (after asking, of course).
5 more supported games.

Not much, I'm mostly focusing on fixing bugs these days. If anyone has any ideas for new functionality, I'd love to hear them.
 
Sounds interesting, but I'm not sure of the advantages of this over simply burning a CD/DVD - unless you're talking about game saves on computers other than your own.
 
0.6 kicked the me in the face yesterday, so I threw it out into the wild.

New relative path! %SAVEDGAMES%!
Games that don't keep their saves in the install folder no longer require detection!
MASGAU no longer uses the archive's name to determine what game it is for, so you can name and rename any new archives whatever you want (as long as it ends with .gb7)!
So many bug fixes! SO many!
22 new games!

According to Sourceforge's super-broken download counter, MASGAU recently hit 1,000 total downloads. I did a little dance at work yesterday to celebrate. You should too!

I would also like to remind everyone that MASGAU now has a save game analyzer that can be used to generate reports to e-mail to me. This way you can contribute information without ever needing to open an XML file! I'm running super-low on games that I can get my hands on, so if MASGAU is going to continue to support more titles I'm going to need more info. To those who have already contributed information, thanks for the help! It's much appreciated!
 
That's actually pretty close to the 7-zip command MASGAU uses internally. I always found the aspect of the UNIX philosophy to design programs that do single tasks and then just have them chain with each other to perform more complicated tasks to be quite cool. My program handles finding games, then passes on the archiving work to 7-zip. It's the linear path of life.
 
0.7! Released!

Loads of interface polishing!
Ability to back up G4W user data (necessary for restoring saves for Arkham)!
So many crash fixes it boggles the mind!
Superficial Windows 7 integration!
42 new games!

Feature wise there's not much new. This release is mostly focusing on interface and stability. I'd like to thank everyone who contributed save information for this release, without you this'd be the least impressive release yet.
 
It came to my attention earlier today a pattern between using MASGAU in All Users mode and my brother's account logging in with a temp account. Turns out MASGAU hasn't been releasing each user's registry hive after scanning them for path information, resulting in the system being unable to log into the account until the system was rebooted. I'm not sure how long this has been going on, but it's resolved now. I posted a 0.7.1 release to http://masga.sourceforge.net/ that contains a fix for the problem. I'd like to emphasize that this is a non-destructive problem, but it may give the impression that an account has become corrupted when it has not. I apologize to anyone whom this bug may have inconvenienced.
 
Top Bottom