- Create a local copy of all available games to a configurable directory
- Upload your savegames to your Nextcloud/OwnCloud
- Download your savegames from your Nextcloud/ownCloud and put it to the correct game directory automatically
- Preserve old backups in case you accidently overwrite an old savegame
- Add support for a missing game by contributing to a xml list
Make sure you installed tar, gzip, pycURL, make and python 2.7. To install savegamesync:
- Download the tarball
- Extract it
- type
sudo make install
- Run savegamesync with all necessary parameters on the command line
- Enjoy
To uninstall savegamesync just run sudo make uninstall
from the installation directory.
Before you can use the script with your cloud, you need a configuration file in your home directory. Generate one with the setup wizard. If you want your local backup somewhere other than ${HOME}/savegames you also must use the wizard to create a config file:
savegamesync -s [--setup]
Caution: For every option exists a short option. If you want to use only short options following syntax is also okay:
savegamesync -bcdpg $Game1 $Game2
This copies the backup of the savegame to a local defined folder and uploads it to your cloud. It renames the old file on both destinations (Cloud and local). For more explanation only the long options are listed here.
Upload the files to your Cloud. If you want to upload all available games, use "all" for the games parameter:
savegamesync --backup --cloud --games $Game1 $Game2
Copies the savestates from the game directory to the local backup location. If you want to copy all available games, use "all" for the games parameter.
savegamesync --backup --local --games $Game1 $Game2
Download the files from your Cloud to the correct location. If you want to download all available games, use "all" for the games parameter.
savegamesync --restore --cloud --games $Game1 $Game2
Copies the files from your local directory to the correct savestate location. If you want to download all available games, use "all" for the games parameter.
savegamesync --restore --local --games $Game1 $Game2
If you want to preserve the old backup use "-p". It is supported by local and cloud backup Use:
savegamesync --backup --local --preserve --games $Game1 $Game2
List all available games:
savegamesync -l [--list]
Wizard for the configuration file:
savegamesync -s [--setup]
Show the help message:
savegamesync -h [--help]
Show the program version:
savegamesync --version
If you miss a game, which is not listed here, just fork the project, add the missing game to the games.xml and send an submit request. If you don't know where the savestate of your game is located, check-out PCGamingWiki. Linux savegame location is most probably listed there.
Here is an example of a xml snippet containing a game
<game name="$GamenameForTheScript">
<parent>$Relative Path to the parent directory of the game</parent>
<gamedir>savegame directory relative to the parent directory from above.</gamedir>
</game>
- 140
- AVirusNamedTom
- AmnesiaADarkDescent
- AmnesiaAMachineForPigs
- AnomalyKorea
- Antichamber
- Aquaria
- Avadon1
- Bastion
- BeatBuddyTaleOfTheGuardians
- BeatHazard
- BeatHazardUltra
- BioshockInfinite
- BitTripPresentsRunner2
- BitTripRunner
- Botanicula
- Braid
- BreachAndClear
- BrokenAge
- BrokenSword1DirectoresCut
- BrokenSword2
- BrokenSword5
- BrütalLegend
- Capsized
- CaveStory+
- Celeste
- Closure
- Cogs
- ContraptionMaker
- Deponia1
- Deponia2
- Deponia3
- Doom3
- DungeonDefenders
- DustAnElysianTail
- EnemyTerritoryQuakeWars
- FEZ
- Gish
- Guacamelee
- Hacknet
- Hedgewars
- HollowKnight
- HotlineMiami
- HotlineMiami2
- HunieCamStudio
- HuniePop
- Jamestown
- KatawaShoujo
- Limbo
- MarkOfTheNinja
- Minecraft
- NaturalSelection2
- OlliOlli
- OlliOlli2
- OpenArena
- Postal2
- Psychonauts
- Quake3
- Quake4
- Rochard
- Rust
- Shank1
- Shank2
- ShovelKnight
- Skullgirls
- StardewValley
- SuperHexagon
- SuperMeatBoy
- SurgeonSimulator2013
- SwordsAndSoldiers
- Teeworlds
- TheBardsTale
- TheBindingOfIsaacRebirth
- TheBridge
- TheEndIsNigh
- Torchlight1
- Torchlight2
- Trine1
- Trine2
- Trine3
- TrineEnchantedEdition
- UT2004
- Vessel
- save password with a better hash than base64
- use python setup.py instad of Makefile
- consider to use yaml instead of xml