Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Sauvegarde et restauration des favoris

    Recalbox Général
    favorites backup restore
    5
    20
    3081
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Ftagn92
      Ftagn92 last edited by Ftagn92

      Hello,
      Comme beaucoup d'entre vous, j'aime bien faire et défaire ma borne, tester des nouveaux "packs" et à chaque fois, je me tapais la sélection de mes favoris, notés précieusement sur un papier.

      Mais bon, à la longue, ça devient fastidieux, donc j'ai écrit un programme en python pour gérer ça

      Pour ceux qui veulent pas installer python, je pourrais le compiler avec Cx_freeze, mais certains préféreront avoir le source (les virus, tout ça, je suis parano aussi :D)

      Donc voilà comment ça fonctionne :
      Vous créez un répertoire temporaire sur votre pc, vous y mettez le programme
      Ensuite vous l'appelez avec la commande
      python recalbox_fav.py \recalbox\share\roms backup
      Il va vous créer un sous répertoire pour chacun des systèmes, et créer dedans un fichier favoris.txt avec les jeux que vous aviez sélectionné dans chaque gamelist

      Ensuite vous bidouillez votre recalbox, rasez tout, etc, bref...

      pour restaurer vos favoris, vous lancez la commande
      python recalbox_fav.py \recalbox\share\roms restore

      Le programme lit chaque gamelist distante si vous avez un fichier favoris.txt en local, et compare les deux.
      Ensuite il ajoute ou modifie la section <favorite> de chaque jeu que vous aviez sélectionné si il le trouve dans la gamelist
      Enfin il écrit la gamelist.xml résultat en local, dans le sous-répertoire concerné

      Je précise en local parce que mon programme n'écrit rien sur le share, vous pouvez même le lancer sur une copie locale de votre carte SD ça marche aussi. Bref, c'est safe, je fais du readonly sur les listes)

      Ensuite il ne vous reste plus qu'à copier chaque gamelist.xml créée dans le répertoire correspondant de votre recalbox à la place de l'ancienne, et redémarrer emulationstation pour voir vos favoris chéris 🙂

      Voili voilou 🙂

      J'ai mis ça sur le site PasteBin pour que ça vous conserve les indentations

      Je voulais mettre le lien ici, mais je reçoit l'erreur suivante du forum :

      ERROR
      Post content was flagged as spam by Akismet.com

      edit : alors bon... https, pastebin point com slash mndqY8ks
      lol

      https://github.com/Ftagn92/recalbox_fav

      voljega Substring 2 Replies Last reply Reply Quote 0
      • voljega
        voljega Banned @Ftagn92 last edited by

        @ftagn92 euh ok mais pourquoi ne pas juste sauvegarder les gamelist.xml ?

        Ftagn92 1 Reply Last reply Reply Quote 0
        • Substring
          Substring @Ftagn92 last edited by

          @ftagn92 python marche sur recalbox 😉

          Former dev - Please reply with @substring so that i am notified when you answer me
          Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

          1 Reply Last reply Reply Quote 0
          • Ftagn92
            Ftagn92 @voljega last edited by Ftagn92

            @voljega Parce que tu mets pas forcément les mêmes packs de roms deux fois de suite donc si tu dois te palucher tous tes favoris parmis une collection différence ou entre deux scraps de test c'est barbant 🙂

            @substring Je sais bien, mais l'idée c'était de faire ça depuis le pc pour ne manipuler que le share, pas de faire se connecter l'utilisateur lambda en ssh pour lancer des scripts 🙂

            Avoir les favoris perdus au milieu de gamelists de 10 kilomètres c'est pas toujours pratique
            Et puis j'ai déjà vu passer la demande plusieurs fois donc comme je savais pas quoi faire cette nuit 😄

            https://github.com/Ftagn92/recalbox_fav

            supernature2k voljega 2 Replies Last reply Reply Quote 0
            • supernature2k
              supernature2k @Ftagn92 last edited by

              @ftagn92 Awesome!!!

              Tu pourrais faire une version qui va écrire direct dans les gamelists plutôt que créer de nouveaux fichiers?

              @Substring intégration dans ES?

              Pi powered NES | Gameboy HD | RecalStation | RecalDrive
              Upvote messages if it has been useful ;)

              Ftagn92 Substring 2 Replies Last reply Reply Quote 0
              • Ftagn92
                Ftagn92 @supernature2k last edited by

                @supernature2k Bah en fait c'était mon idée première, mais je me suis dit que c'était le meilleur moyen de m'attirer les foudres du public si je pétait une gamelist d'un malheureux qui avait pas de sauvegarde à cause d'un pépin réseau ou n'importe quoi d'autre

                Là je fait une gamelist modifiée en local, à charge pour toi d'écraser celle du partage réseau de recalbox, ceinture et bretelles 😉

                https://github.com/Ftagn92/recalbox_fav

                1 Reply Last reply Reply Quote 0
                • voljega
                  voljega Banned @Ftagn92 last edited by

                  @ftagn92 said in Sauvegarde et restauration des favoris:

                  @voljega Parce que tu mets pas forcément les mêmes packs de roms deux fois de suite donc si tu dois te palucher tous tes favoris parmis une collection différence ou entre deux scraps de test c'est barbant 🙂

                  Je vois pas trop l'intérêt de changer de packs de roms sur un même système si elle te convient.
                  Accessoirement comment tu vas le trouver ton favori si entre deux packs différents ta rom change de nom voire de nom scrappé ?

                  Ftagn92 supernature2k 2 Replies Last reply Reply Quote 0
                  • Substring
                    Substring @supernature2k last edited by

                    @supernature2k said in Sauvegarde et restauration des favoris:

                    @Substring intégration dans ES?

                    Non aucun intérêt.

                    Former dev - Please reply with @substring so that i am notified when you answer me
                    Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                    1 Reply Last reply Reply Quote 0
                    • Ftagn92
                      Ftagn92 @voljega last edited by

                      @voljega Bin peu importe la raison, ça peut être tester un rom pack 32gb, puis un 64gb ou un autre, va savoir
                      Tester un mode de scrap différent, ou même un site de scap différent ?

                      Ou bien lors de la release 17.12.01 de recalbox, ou fba_libretro a changé de version de rompack 0.2.97.39 à 0.2.97.42, il a fallu rescraper si je dis pas de bétise...

                      Quand j'ai demandé pourquoi j'avais perdu mes favoris c'est là qu'on m'a expliqué qu'ils étaient dans chaque gamelist
                      Quand j'ai demandé s'il était possible de les sauvegarder, on m'a aimablement fait comprendre que je pouvais le faire à la main et que oh hein, une petite liste sur un papier c'est pas la mort à resaisir

                      Donc comme on est jamais mieux servi que par soi même j'ai fait le programme, et j'en fait profiter ceux qui y voient un intérêt

                      Pour ta dernière question, le programme fait au mieux, si il me manque un ou deux favoris sur 200 je vais pas pleurer 😕

                      https://github.com/Ftagn92/recalbox_fav

                      voljega 1 Reply Last reply Reply Quote 0
                      • voljega
                        voljega Banned @Ftagn92 last edited by

                        @ftagn92 said in Sauvegarde et restauration des favoris:

                        Ou bien lors de la release 17.12.01 de recalbox, ou fba_libretro a changé de version de rompack 0.2.97.39 à 0.2.97.42, il a fallu rescraper si je dis pas de bétise...

                        Euh non absolument pas besoin de rescraper dans ce cas précis

                        Ftagn92 1 Reply Last reply Reply Quote 0
                        • Ftagn92
                          Ftagn92 @voljega last edited by

                          @voljega Bon c'était un autre cas alors je sais plus faudrait que je retrouve mais est-ce vraiment important...

                          https://github.com/Ftagn92/recalbox_fav

                          1 Reply Last reply Reply Quote 0
                          • supernature2k
                            supernature2k @voljega last edited by

                            @voljega C'est utile en cas de re-scrap par exemple

                            Pi powered NES | Gameboy HD | RecalStation | RecalDrive
                            Upvote messages if it has been useful ;)

                            1 Reply Last reply Reply Quote 0
                            • Ftagn92
                              Ftagn92 last edited by

                              Tiens, autre exemple "tordu" 🙂

                              Je suis en train d'installer la legendary 128gb de retro vers le Futur, ils ont fait un super boulot de tri, etc, je vais pas casser leurs gamelist en les écrasant avec les miennes

                              Je suis en train d'enrichir mon programme pour qu'il me backup aussi les hidden, playcount, lastplayed de ma recalbox actuelle, c'est juste quelques lignes de code en plus.

                              Avec ma fonction restore, je les injecterai dans la legendary (les ronchons me dirons "pas tous, ils ont sûrement des gamelist spéciales pour les collections") et je pourrais retrouver les tris (nombre de parties jouées, etc) avec mon historique ^^

                              https://github.com/Ftagn92/recalbox_fav

                              Substring 1 Reply Last reply Reply Quote 0
                              • Substring
                                Substring @Ftagn92 last edited by

                                @ftagn92 si tout est basé sur un nom de fichier, c'est very risky

                                Former dev - Please reply with @substring so that i am notified when you answer me
                                Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                1 Reply Last reply Reply Quote 0
                                • Ftagn92
                                  Ftagn92 last edited by Ftagn92

                                  Le programme ne fait rien si il trouve pas de correspondance à l'étape "restore", il traite que les répertoires qui ont le même nom que ceux qu'il a traité à l'étape "backup" dans le répertoire/roms/, et dans les gamelist.xml qu'il traite idem, il ne touche que les roms qui ont le même nom entre les deux étapes
                                  Si la rom n'existe pas, bah il passe à la suivante, on aura juste moins de favoris qu'espéré

                                  Franchement j'ai du mal a voir ce qui peut être risky si tu as un cas pratique je suis preneur

                                  En revanche je suis curieux de savoir comment réagit recalbox quand ya des roms en double dans la même gamelist, j'ai eu le cas dans un pack snes "trouvé je n'sais où" , ya des sections <game></game> en double, même jeu, même rom

                                  Je saurais pas te dire si c'est un vieux recalbox qui a fait le scrap ou un programme tiers genre universal scraper, ça vient du net, je m'en sert de jeu d'essai, mais quelle section est mise à jour et laquelle est lue au chargement des menus, est-ce que les jeux apparaissent en double a l'écran ? mystère. En tout cas pour chaque doublon, y'en a une avec un played, l'autre est vierge

                                  https://github.com/Ftagn92/recalbox_fav

                                  Substring 1 Reply Last reply Reply Quote 0
                                  • Substring
                                    Substring @Ftagn92 last edited by

                                    @ftagn92 le nom d'un fichier n'est pas fiable, encore moins le hash de l'archive. Seul le hash du fichier est fiable

                                    Former dev - Please reply with @substring so that i am notified when you answer me
                                    Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                                    1 Reply Last reply Reply Quote 0
                                    • Ftagn92
                                      Ftagn92 last edited by

                                      Bon j'ai tenu compte de vos remarques (à part le j'vois pas l'interêt :D)

                                      Le programme sauve au choix les favoris, les playcount, les lastplayed et les status hidden, enfin n'importe quelle combinaison de ces 4 sections en fait

                                      La comparaison des roms se fait aussi au choix, sur le nom de la rom ou sur le MD5 calculé dessus pendant le backup (si elle est dézippée, sinon sur le zip mais c'est moins fiable comme dit SubString), comme ça vous avez le choix aussi

                                      Il restaure aussi ce que vous voulez, tout ou partie de ce que vous avez sauvegardé

                                      Et enfin en option il copie le résultat directement sur la recalbox, en renommant les anciennes gamelist avec un timestamp

                                      Par défaut il fait tout en local, rien sur la recalbox

                                      Voilà ça brosse large ^^

                                      https://github.com/Ftagn92/recalbox_fav

                                      1 Reply Last reply Reply Quote 0
                                      • GDEHON
                                        GDEHON last edited by

                                        Salut
                                        Intéressant la sauvegarde des favoris
                                        Vous n'auriez pas un tuto vidéo ?
                                        Je ne connais pas python...

                                        1 Reply Last reply Reply Quote 0
                                        • Ftagn92
                                          Ftagn92 last edited by

                                          Video je sais pas si j'aurai le temps, mais un tuto screenshot je vais voir 🙂

                                          https://github.com/Ftagn92/recalbox_fav

                                          1 Reply Last reply Reply Quote 0
                                          • GDEHON
                                            GDEHON last edited by

                                            Ca serait super

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Want to support us ?

                                            78
                                            Online

                                            90.9k
                                            Users

                                            26.5k
                                            Topics

                                            182.3k
                                            Posts

                                            Copyright © 2021 recalbox.com