You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							94 lines
						
					
					
						
							2.7 KiB
						
					
					
				
			
		
		
	
	
							94 lines
						
					
					
						
							2.7 KiB
						
					
					
				#!/usr/bin/env python3 | 
						|
 | 
						|
from getpass import getuser | 
						|
from pathlib import Path | 
						|
from steamsync import SteamSync | 
						|
 | 
						|
 | 
						|
sync = SteamSync(Path("~/Nextcloud/Misc/Savegames").expanduser()) | 
						|
 | 
						|
# Find home | 
						|
steamns_home = Path("~/.local/steam/home/%s/" % getuser()).expanduser() | 
						|
if steamns_home.exists(): | 
						|
    sync.home_path = steamns_home | 
						|
 | 
						|
 | 
						|
### ----------------------------------------------------------------- | 
						|
#  Steam Games | 
						|
### ----------------------------------------------------------------- | 
						|
@sync.by_name("zanzarah") | 
						|
def zanzarah(op): | 
						|
    with op.game_directory.prefix("Save") as set: | 
						|
        set += "*.dat" | 
						|
        if set.show_confirm(): | 
						|
            set.execute() | 
						|
 | 
						|
@sync.by_id(787860) # Farming Simulator 19 | 
						|
def fs19(op): | 
						|
    with op.my_documents.prefix("My Games/FarmingSimulator2019") as set: | 
						|
        set.add( | 
						|
            "music/streamingInternetRadios.xml", | 
						|
            "savegame[1-9]", | 
						|
            "savegame[1-2][0-9]" | 
						|
            "VERSION", | 
						|
        ) | 
						|
        set.execute() | 
						|
 | 
						|
@sync.by_name("Fell Seal") | 
						|
def fell_seal(op): | 
						|
    with op.home.prefix("Fell Seal") as set: | 
						|
        set += "saves" | 
						|
        set += "customdata" | 
						|
        set.execute() | 
						|
 | 
						|
@sync.by_name("Sacred Gold") | 
						|
def sacred(op): | 
						|
    with op.game_directory.prefix("save") as set: | 
						|
        set += "GAME*.PAK" | 
						|
        set += "hero*.pax" | 
						|
        set.execute() | 
						|
 | 
						|
@sync.by_id(39540) # SpellForce Platinum | 
						|
def spellforce(op): | 
						|
    sync = op.steam_cloud_ufs() | 
						|
    if sync.show_confirm(): | 
						|
        sync.execute() | 
						|
 | 
						|
@sync.by_id(1282590) # Train Sim World 2 | 
						|
def tsw2(op): | 
						|
    with op.my_documents.prefix("My Games/TrainSimWorld2/Saved/SaveGames") as set: | 
						|
        set += "*.sav" | 
						|
        if set.show_confirm(): | 
						|
            set.execute() | 
						|
 | 
						|
 | 
						|
@sync.by_id(1366540) # Dyson Sphere Program | 
						|
def dyson_sphere_program(op): | 
						|
    with op.my_documents.prefix("Dyson Sphere Program") as set: | 
						|
        set += "Save" | 
						|
        if set.show_confirm(): | 
						|
            set.execute() | 
						|
 | 
						|
### ----------------------------------------------------------------- | 
						|
#  Other Games | 
						|
### ----------------------------------------------------------------- | 
						|
@sync.wine("Final Fantasy XIV", | 
						|
    ['/media/Games/Lutris/Final Fantasy XIV'], | 
						|
    lambda p: p.my_documents / "My Games/FINAL FANTASY XIV - A Realm Reborn") | 
						|
def ffxiv(op): | 
						|
    with op.found as set: | 
						|
        set += "FFXIV_CHR*/*.dat" | 
						|
        if set.show_confirm(): | 
						|
            set.backup() | 
						|
            set.commit() | 
						|
 | 
						|
@sync.wine("Dragon Age Inquisition", | 
						|
    ['/media/Games/Lutris/Dragon Age Inquisition'], | 
						|
    lambda p: p.my_documents / "BioWare/Dragon Age Inquisition") | 
						|
def da_i(op): | 
						|
    with op.found / "Save" as set: | 
						|
        # XXX: Sync ProfileOptions{,_profile} too? | 
						|
        set += "*.DAS" | 
						|
        if set.show_confirm(): | 
						|
            set.backup() | 
						|
            set.commit()
 | 
						|
 |