So i started using ludusavi and i really like it! I can just dump all my saves onto my NAS and i’m good to go.

I now made two .sh files, one for ludusavi restore --force and one for ludusavi backup --force I made the global Lutris setting to exectute the restore BEFORE launching a game and backup AFTER exiting.

This should then give me a steamcloud like automatism where my savegames would be always on the newest version regardless on what PC i played on last time.

But this only works if i play them via Lutris. I have a steamdeck and a minipc with chimeraOS (steam gamepadui per default). I start the games via steam there, not lutris… does anyone know of some possibility to globally start a script or command before starting and another one after exiting the game in steam?

Because i have quite the few non-steam games in my library and also have all my emulated games in there.

That would be fantastic!

  • Nibodhika@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 year ago

    I don’t remember the file specifically, but steam uses a script to launch games if I remember correctly. That script sets up some library paths and other stuff that’s needed, I remember editing that script a long while back to include either prime-run or gamemode, but I couldn’t find any references to that script on Google, whenever I’m on the computer I’ll try to find it.

    Edit: I think the file is ~/.steam/debian-installation/ubuntu12_32/steam-runtime/run.sh or similar, look for a run.sh in some of the steam runtimes.

    • RandomLegend [He/Him]@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Heyho,

      thanks! I found the script but tbh it’s a bit over my head^^ But the solution presented by @neoney@lemmy.neoney.dev is good enough for me…yes i do have to set it up manually for each game but it works reliably and is a simple copy&paste process where i just go through my games while watching something on youtube 😀

      • Nibodhika@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Just modify the script, right near the end where it says exec "$@", and add one line before to do anything before launching the game and one after to do anything after, e.g.

        ludosavi restore --force
        exec "$@"
        ludosavi backup --force
        

        If you do it per game you can write ludosavi restore --force && %command% && ludosavi backup --force which should execute the commands before and after the game.

  • SuperiorOne
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    If you already use gamemode it has custom section in gamemode.ini file to execute custom scripts before and after game sessions. You simply use gamemoderun %command% as launch option for all of your games.

    Another option is directly chaining your scripts with %command% but your mileage may vary.

    I was able to log game start and end with this naive launch option.

    echo "start" >> ~/Desktop/test.txt && %command% && echo "end" >> ~/Desktop/test.txt
    
    • RandomLegend [He/Him]@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      to do that via gamemode is interesting, yes!

      I could absolutely do that…still had the manual part of adding it to all games…but then atleast it works Thanks!

  • inode
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    for steam its possible for native linux games. Kind of possible for proton games(but its pretty ugly and I have had varying results). If you are playing steam games though, they are probably already using the steam cloud. If these are non steam games, I would install lutris and check the box making a steam shortcut. Then when you launch them it will ask lutris to launch them and the pre/post commands should run even though using the steam launcher. (I did this recently for some dos games I own on gog. I needed to start timidity before the game launched and stop it on exit so I could have a midi music server. I installed them via lutris but I launch them via steam.)

  • neoney@lemmy.neoney.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Well for steam games, you can set launch options. Maybe you could do something like commandbefore; %command%; commandafter? Keep %command% literally as it is, Steam interprets that and executes the game in its place.

  • lckdscl [they/them]@whiskers.bim.boats
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Are you just talking about the ability to set a run/launch command on steam? This is set per game by going to the game settings (cog icon) and it’s right there at the bottom.

    Edit: not sure for post-exit though…

    • RandomLegend [He/Him]@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      yeah i could put the restore command at the launch command…but as you already said: manually for each game and it doesn’t do anything on exit.

      And tbh it would be really cumbersome to add them all by hand…