[TOOL] BestArcade sorting tool


  • Themer

    I just released version 0.1 of BestArcade sorting tool, this is a beta version, and I would like some testers, especially for the following points :

    • validate the script works on Windows 32
    • validate the script works with missing romsets (one of the three mame2003, mame2010 and fba_libretro)
    • validate the generated dats are usable in clrmamepro
    • validate the generated gamelist are valid but I may validate myself pretty quickly

    The tool can be found here : https://github.com/Voljega/scripts4recalbox/releases/tag/0.1

    Nonetheless here is the description of the tool :

    Best Arcade Tool

    Use this tool to generate sorted romsets keeping only the games referenced in the BestArcade4Recalbox list, above and equal to the working state level you choose.

    FBA_Libretro version currently handled is 0.2.97.43

    WHAT THIS TOOL DOESN'T DO :

    • It's not clrmamepro and will not check that your romsets are in the right version number
    • It only works with non-merged sets, split and merged sets are not supported, use clrmamepro to generate non-merged sets if needed
    • It's not a scrapper per se, it will generate gamelists though, so be aware to remove them if you don't want to use them
    • It doesn't handle CHD
    • It only works on Windows

    WHAT THIS TOOL DO :

    • Generate BestArcade romsets by using your fba_libretro, mame2003 and mame2010 non-merged sets, your original sets will be kept intact
    • Generate csv files documenting the generated sets
    • Generate a scoresheet comparing working level in generated sets
    • Generate dat files for the generated romsets

    USAGE :

    First modify the conf.conf file with your own parameters :

    • exportDir : the target directory for generation, warning its whole content will be erased (you will be prompted) at the begining of the script
    • fbaSet, mame2003Set, mame2010Set : the path to your original sets, this will be left untouched by the script
    • keepLevel: the working state level at which you will keep the roms in the generated romset (i.e keepLevel 2 will keep only MOSTLY_WORKING and WORKING roms)
    • keepNotTested: determines if untested roms will be kept or not
    • exclusionType: determines how roms will be kept (based on their working state level) if you use several romsets
    • genreSubFolders: determines if your romset will use sub folders for genre or not

    Then just execute BestArcade.exe
    After execution your will find your generated romsets in your exportDir

    Build instructions are in build.txt

    FRENCH VERSION :

    Best Arcade Tool

    Cet outil permet de générer des romsets triés en gardant uniquement les jeux référencés dans la liste BestArcade4Recalbox, avec un état de fonctionnement égal ou supérieur au niveau souhaité.

    La versiond de FBA_Libretro actuellement supporté est 0.2.97.43

    CE QUE CET OUTIL NE FAIT PAS :

    • Il ne remplace pas clrmamepro et ne vérifiera pas que vos romsets sont bien dans la bonne version
    • Il ne fonctionne qu'avec des sets non-merged, les sets split et merged ne sont pas supportés, utilisez clrmamepro si vous avez besoin de générer un set non-mergedsets if needed
    • Ce n'est pas un scrapper en soit, cependant il peut générer les gamelists, alors pensez à les effacer si vous ne souhaitez pas les utiliser
    • Il ne gère pas les CHD
    • Il ne fonctionne que sous Windows

    CE QUE CET OUTIL FAIT :

    • Il génère des romsets BestArcade en utilsant vos sets fba_libretro, mame2003 and mame2010 non-merged, vos sets originaux seront gardés intacts
    • Il génère des fichiers CSV documentant les romsets générés
    • Il génère une feuille de score comparant les niveaux de fonctionnement entre sets
    • Il génère les fichiers dat correspondant à vos romsets générés

    USAGE :

    Tout d'abord modifiez le fichier conf.conf avec vos propres paramètres :

    • exportDir : le répertoire cible de la génération, attention tout son contenu sera supprimé (une confirmation sera demandée) au démarrage du script
    • fbaSet, mame2003Set, mame2010Set : les chemins vers vos sets originaux, ceux-ci seront laissés intacts par le script
    • keepLevel: le niveau d'état de fonctionnement à partir du lequel vous souhaitez garder les jeux dans le romset généré (par exemple keepLevel 2 gardera seulement les jeux en état MOSTLY_WORKING et WORKING)
    • keepNotTested: détermine si les roms non testées dans un romset seront gardées ou non
    • exclusionType: détermine comment les roms de différents romsets seront gardées (selon leur état de fonctionnement) si vous utilisez plusieurs romsets originaux
    • genreSubFolders: détermine si vos romsets générés utiliseront des sous-répertoires pour les genres ou non

    Il suffit ensuite d'exécuter BestArcade.exe
    Après exécution vous trouverez vos romsets générés dans votre répertoire exportDir

    Les instructions de build sont dans build.txt


  • Themer

    @voljega side note : this tool works with tests for Pi3, if you use a more powerfull platform, use keepLevel = 1 or even 0 as some games in level 1 could work fine on a better platform and some non-working games on ARM platform could work on x86 processors



  • C'est top çà !
    Quand je pense au temps qu'il m'a fallu pour trier à la main ... (bon ca permet aussi de découvrir des perles parfois)

    Beau boulot !


  • Themer

    @kaoru_requiem Je pense que là il y a peu près tous les jeux qui valent le coup post-84-85



  • Une petite suggestion.

    Determine how roms are kept if they are in different sets

    STRICT (only keep the best working one), EQUAL (keep in several sets if equals in both), NONE (keep in all sets)

    Serait-il possible d'ajouter la possibilité de choisir quelle rom garder si elle fonctionne de manière identique avec plusieurs émulateurs (FBA, MAME2003, MAME2010) ?
    D'une manière générale, lorsque çà fonctionne parfaitement, je préfère utiliser FBA (plus simple à parametrer dans retroarch) mais je suppose que certains préfèrent Mame.


  • Themer

    @kaoru_requiem ah oui bonne idée ! Par contre il faudra me laisser quelque temps pourle faire et faudra que tu testes si ça te dérange pas ;)



  • @voljega
    pas de soucis ;-)



  • Je vais complexifier un peu ma demande.

    Est-il possible de choisir la rom a garder (si elle fonctionne pareil dans fba et mame) par type de jeu ?
    Je m'explique : d'une manière générale je préfère FBA mais sur ma borne branchée en gpio, les jeux de type [gun] et [race] ne peuvent pas fonctionner à cause des contrôles analogique requis. Avec Mame par contre, pas de soucis, les contrôles sont reconnu avec les directions du stick. C'est un problème que je n'aurai pas avec une manette xbox360.

    Je ne sais pas si mon explication est clair.


  • Themer

    @kaoru_requiem si si je comprends bien mais alors là ça devient plus compliqué au niveau du fichier de conf...



  • Ce que j'ai fait pour le moment, c'est que j'ai laissé en NONE avec les répertoires par genre et j'ai ensuite supprimé les repertoires [gun] et [race] dans FBA


  • Themer

    @kaoru_requiem Hello j'ai implémenté les deux fonctionnalités que tu avais demandé, je ne sais pas si tu passes toujours par là :p

    En tout cas version 0.2 dispo sur mon github

    0.2 Notes :

    EN

    • Added prefered set and prefered set for genre features, to be used only with STRICT mode
    • WARNING This version is not yet fully compatible with fba_libretro FBA 0.2.97.44 used in Recalbox 6.0 RC1/2/3/Finale due to my beeing unable to find a correct romset for it
      However if you wish to use this romset, just copy your dat for FBA 0.2.97.44 in data folder in place of the name for FBA 0.2.97.43 (so keep the same filename 'FBAlphav0.2.97.43.dat' and then point fba_libetro parameter in conf.conf to your 0.2.97.44 romset folder, it should work

    FR

    • Ajout des fonctionnalitées prefered set et prefered set for genre, utilisable en mode STRICT uniquement
    • ATTENTION Cette version n'est pas encore entièrement compatible avec fba_libretro FBA 0.2.97.44 utilisé dans Recalbox 6.0 RC1/2/3/Finale car je n'ai pas trouvé de romset correct pour l'instant.
      Cependant si vous voulez utiliser ce nouveau romset, il suffit de copier votre dat pour FBA 0.2.97.44 dans le folder data à la place du dat FBA 0.2.97.43 (donc gardez le même nom de fichier 'FBAlphav0.2.97.43.dat') et de modifier ensuite le paramètre fba_libetro dans conf.conf vers le répertoire de votre romset 0.2.97.44 folder, ça devrait marcher


  • @voljega pour le romset 44 de fba, prends comme base mame 0.208 pour le construire, va te manque deux roms pour deux set de hack


  • Themer

    @cissou said in [TOOL] BestArcade sorting tool:

    va te manque deux roms pour deux set de hack

    J'en ai un mais il est chelou divisé en deux, avec des jeux dans un répertoire et d'autres dans un répertoire debug, et le set n'est pas non merged... Faut juste que je trouve le courage d'utiliser clrmamepro et il m'en faut beaucoup beaucoup :)



  • 4 ou 5 click et le romset est buildé :)


  • Themer

    @cissou ouais un peu plus que ça et surtout faut cliquer sur des trucs abscons super mal nommé avec une UX qui même il y a 15 ans avait 15 ans de retard, c'est vraiment une plaie ce soft



  • Super outil, bravo. J'espère que de nouvelles fonctionnalités vont arriver


  • Themer

    @anthony33 pourquoi pas, mais quoi comme fonctionnalités ? je suis ouvert aux propositions :)



  • Great tool...thank you for creating it.

    Request: Is it possible to only create CSVs without copying ROMs? I want to have the lists of best core per rom but plan on creating my own collections based on genre and will move ROMs manually.

    Thanks


  • Themer

    @johnodon yes this is actually pretty easy to do I will add it :)



  • Some observations/questions...

    I am using the FBA 0.2.97.44 DAT. My conf is as follows:

    exportDir = E:\Downloads\BestArcade-0.1\BestArcade\MySet
    fbaSet = Z:\ROMS\Arcade\FBA\FB Alpha 0.2.97.44 non-merged\roms
    mame2010Set = Z:\ROMS\Arcade\MAME\MAME_2010_full_nonmerged_romsets\roms
    mame2003Set = Z:\ROMS\Arcade\MAME\MAME_2003-Plus_Reference_Set_2018\roms
    keepLevel=0
    keepNotTested=0
    exclusionType = STRICT
    genreSubFolders=1

    Do the CSVs in the data folder ever get refreshed? I noticed that the all have dates from July 2018.

    If a ROM scores 3 for every emulator, does it use FBA as the default? (the question below is related)

    64street has the same score (3) for all sets. It was copied only to the FBA folder.

    • What do the errors below suggest? Is this the expected result and can these errors be ignored?
    • Is FBA used as the default emulator for all roms that have tie scores?

    Possible errors
    ERROR 64street should be exported for mame2003
    ERROR 64street should be exported for mame2010

    If I set 'keepNotTested=1', the tool will keep a copy of the rom for the emulators that were not tested even if the other emulator has a score of '3'. Is this expected or could we put some more control around this (i.e. if one emulator has a high score do not copy to the other emulator folders)?



Want to support us ?

Join us on :

Download Recalbox

321
Online

37413
Users

16496
Topics

124450
Posts

Looks like your connection to Recalbox Forum was lost, please wait while we try to reconnect.