Tutoriel Attract-Mode (partie 1 sur 3)

Bob a décidé de vous expliquer comment tirer le meilleur de l’excellent front-end Attract-Mode. Le sujet étant vaste, trois tutoriels sont prévus, pour une publication en trois semaines (attention, gros défi personnel !). Les tutoriels seront les suivants :

Aujourd’hui, commençons par la base !

PARTIE I – INSTALLATION DE BASE D’ATTRACT-MODE

TABLE DES MATIERES
(Car Bob est parfois bavard)

INTRODUCTION

Depuis que j’ai découvert le concept dans un article de feu Consoles + il y a près de 25 ans, l’émulation m’a toujours intéressée. L’idée de base est simple : faire fonctionner un jeu sur un autre support que celui d’origine, le plus souvent un jeu console sur un ordinateur. Sa réalisation technique est bien plus compliquée, et le tout baigne dans l’illégalité la plus complète (ne croyez pas les aberrations que vous pouvez lire ça et là : seul l’émulateur est légal, même si la rétro-ingénierie que son développement suppose peut être illégale en fonction des territoires, mais tout ce qui concerne les ROMS (et les BIOS !) est parfaitement illégal, sauf si la ROM est librement diffusée par son ayant-droit. Même le fait de dumper sa propre ROM au nom du droit à la copie privée demeure très discutable.

Quoiqu’il en soit, Bob est un rebelle qui ne respecte pas les lois et se vautre dans l’illégalité en permanence : 81 km/h sur les nationales, utilisation d’un VPN pour regarder les rediffusion sportives étrangères et utilisation massive d’émulateurs et de ROMs ! Relativisons tout de même : avec la marge d’erreur légale, les 81 km/h sont encore « dans les clous », je ne viole aucune loi française en utilisant un VPN et… bon ok, les ROMs c’est illégal dans tous les cas. Si vous voulez me suivre dans une vie de débauche, continuez à lire cet article. Sinon, je vous conseille la lecture de ce vieil article, qui pourrait être instructive.

Toujours là ? Ok, je vous apporterai des oranges à Fleury-Mérogis. Si vous n’avez pas bien compris les termes barbares du premier paragraphe (ROM, BIOS, dumper voire même émulation…), vous devriez vous renseigner un peu sur le sujet. Cet article débroussaille un peu le sujet, et Google est votre ami (ou plutôt Qwant) pour la suite. Aujourd’hui, je ne vais pas digresser sur l’émulation (mais c’est une idée d’article intéressante, il y a tellement à raconter) mais me consacrer sur le front-end Attract-Mode.

Késako ? En matière d’émulation, un front-end est un logiciel que je qualifierai de « présentation » : vous lancez le logiciel qui vous permet de naviguer entre vos différents émulateurs et jeux et de les lancer; quand vous quittez le jeu, vous retournez au front-end et pouvez continuer votre navigation. Un bon front-end est indispensable pour monter une MameCab de qualité (cad une borne d’arcade dont la partie logicielle est un ordinateur sur lequel sont installés des émulateurs) et offrir une expérience plaisante à l’utilisateur (sans voir l’OS et sans avoir à passer par le duo souris-clavier notamment). Un exemple de front-end que vous avez peut-être essayé est le mode Big Picture de Steam.

Le front-end est aussi la promesse d’une expérience visuellement intéressante : au lieu de lancer un programme terne par double-clic ou ligne de commande, l’utilisateur est replongé dans l’ambiance ludique avec des visuels, logos, musiques, vidéos… Un vrai plus pour mettre en avant le côté pop-culture rattaché aux jeux. La vidéo ci-dessous vous montre Attract-Mode en action.

Le problème, c’est qu’entre les vidéos de présentation et les différents front-end, il y a souvent un (très) grand écart et un peu de déception. Le vieux Bob expérimente un peu de tout dans ce domaine depuis 2-3 ans, et je pense avoir trouvé un fonctionnement qui me convient, d’où l’idée d’en faire un tutoriel !

POURQUOI CHOISIR ATTRACT-MODE ?

En matière d’émulation, il y a toujours le choix, tant pour ce qui est des émulateurs que des front-ends. Avec autant de choix, il y a beaucoup de déchet et de projets inachevés et/ou abandonnés. Les front-ends populaires ne manquent pas et ils ont tous des points intéressants. Attract-Mode fait partie des plus populaires et soutenus, et est en concurrence directe avec HyperSpin (qui propose probablement les résultats les plus beaux), Emulation Station (référence pour l’émulation sur Raspberry PI) ou encore LaunchBox (qui dispose d’une offre premium payante). Les front-ends sont normalement gratuits, mais ils peuvent proposer de se lier avec des offres payantes pour le contenu média. Car on touche là à la plus grande difficulté du front-end : il faudra le « peupler » avec des médias divers et variés pour obtenir le résultat escompté. Et la tâche peut être barbante !

J’ai essayé un temps tous les front-ends ci-dessus, et les ai écarté pour les raisons suivantes, parfaitement subjectives : HyperSpin nécessite Windows et se transforme très vite en véritable usine à gaz, en plus de demander un PC assez costaud pour tourner avec fluidité. L’émulation sur Raspberry PI est remarquable jusqu’aux 16 bits, et ça se complique ensuite; comme Emulation Station n’a pas vraiment d’autre valeur ajoutée, je l’ai écarté. LaunchBox n’a pas de défaut particulier, si ce n’est qu’il faut prendre un abonnement premium pour bénéficier de l’automatisation que propose Attract-Mode gratuitement.

Attract-Mode m’a séduit pour plusieurs raisons : multi-plateformes, il permet de réutiliser tout son contenu d’un système à un autre (il n’y a que les émulateurs à changer). Il peut également – en choisissant bien les émulateurs – être totalement portable et donc s’installer sur un disque dur externe et fonctionner partout. La configuration des layouts (on y reviendra) est assez souple et simple, tout en permettant quelques effets sympas. Le système est entièrement personnalisable au moyen d’un langage de script basique (le squirrel). Et last but not least, il s’agit d’un front-end léger qui ne va pas monopoliser les ressources de l’ordinateur, que je préfère conserver pour l’émulation !

Maintenant que Bob vous a converti (n’oubliez pas la quête à la sortie), et après plein de bla-bla inutile, entrons dans le vif du sujet. Vous noterez que le style de Bob va devenir moins littéraire et plus scientifique; cela n’est pas dû à une soudaine baisse de quotient intellectuel mais a une simple volonté de concision – et donc possiblement d’efficacité.

INSTALLATION D’ATTRACT-MODE

Allez sur le site http://attractmode.org/index.html et cliquez sur le lien hypertexte « Download » situé sous le titre.

Vous accédez à la page des téléchargements sur laquelle vous pouvez sélectionner la version qui correspond à votre OS. Pour la suite de ce tuto, je prendrai l’exemple de l’installation Windows, mais les utilisateurs des autres OS ne devraient pas avoir de difficulté à suivre. Si quelqu’un le demande en commentaire ou que je m’ennuie un dimanche après-midi pluvieux, je reviendrai sur les autres OS un jour (ou pas).

Vous obtenez une belle archive zip (attract-v2.6.1-win64.zip dans mon cas et au moment de ce tutoriel) que je vous invite à décompresser à l’emplacement de votre choix. Je vous conseille un disque dur (externe ou non) sur lequel il y a assez de place, car pour assurer la portabilité du système, les ROMs et médias seront dans ce même dossier.
Personnellement, j’ai créé un dossier « ATTRACT » sur mon disque dur C:, dans lequel je décompresse l’archive, dont le contenu est le suivant.

Super, il y a un exécutable ! Double-cliquez sur « attract.exe » et contemplez !

Avez les petites flèches, choisissez la langue qui vous convient et frappez la touche « Entrée » (elle l’a bien cherché).

C’est le menu de configuration d’Attract-Mode. Mais pour l’instant, il n’y a rien a configurer car il n’y a pas encore d’émulateurs ni de jeux. Allez sur « Retour » et frappez « Entrée ». Panique, c’est l’écran noir ! C’est normal en fait, car Attract-Mode n’a rien à afficher.
La touche « Tabulation » (les deux flèches inversées sur la gauche du clavier, entre le cadenas et la touche 2/n) vous permet de revenir sur le menu, la touche « Échap » vous permet de quitter Attract-Mode, ce que vous allez faire.

Bon, Attract-Mode est techniquement « installé ». Mais il ne sert à rien. Plusieurs étapes sont désormais nécessaires :

  • Installer un émulateur et des ROMs
  • Configurer l’émulateur et la liste de ROMs dans Attract-Mode
  • Définir un layout
  • Peupler Attract-Mode avec les fichiers médias.

C’est parti mon kiki !

INSTALLER UN ÉMULATEUR ET DES ROMS

Dis tonton Bob, komenkonfé pour trouver et installer des émulateurs et des ROMs ?
Je ne vais pas vous expliquer comment installer et configurer un émulateur, car sinon ce tutoriel ressemblera assez vite à une histoire sans fin. Le Net regorge de tutos sur le sujet, et il faudra sans doute trouver celui qui correspond à votre émulateur. Pour les novices, quelques précisions toutefois : un émulateur peut être spécifique à un système unique ou permettre d’émuler plusieurs systèmes. Les systèmes plus modernes (à partir des 32 bits en gros) nécessitent souvent un ou plusieurs BIOS qui ne sont pas dans l’émulateur (car si l’émulateur est légal, le BIOS ne l’est pas) et qu’il faut donc trouver comme les ROMs.

Pour trouver les émulateurs, la référence demeure Zophar’s Domain mais je vous conseillerait plutôt Planet Emulation qui est ce qui se fait de mieux sur la scène francophone. Les deux sites sont sûrs (en matière d’émulation, c’est comme à Amsterdam, sortez couverts car vous pouvez chopper pas mal de virus). Pour ce qui est des ROMs, Google est votre ami mais gardez en tête que plus le système est récent, plus vous risquez de tomber sur de faux sites qui vous offriront minage de bitcoins et et ransomwares si vous cliquez sans réfléchir. Les torrents demeurent utiles à partir de la Dreamcast (en raison de la taille des fichiers). Comme Bob n’est pas un gros hypocrite, voici deux liens qui pointent vers des sites normalement sûrs : https://wowroms.com/fr/ et https://www.emurom.net/. Attention toutefois, utilisation à vos risques et périls uniquement ! Et rappelez-vous que si vous devez payer quoique ce soit, c’est que vous êtes en train de vous faire enfler profondément.

Enfin, pour ce qui est d’Attract-Mode, veillez à ce que votre émulateur remplisse les conditions suivantes : possibilité de lancer l’émulation en ligne de commande (indispensable), existence d’un mode portable (si vous souhaitez que votre installation soit indépendante du PC) et possibilité de configurer une HotKey pour quitter l’émulateur (plus confortable).

Configuration spécifique Attract-Mode

Je vais vous décrire une configuration que je trouve optimale pour gérer sa collection et conserver un système portable. Vous noterez que la souplesse d’Attract-Mode permet de se passer entièrement de cette configuration. Mais si vos émulateurs, ROMs et médias sont éparpillés un peu partout, ça deviendra vite ingérable. Croyez-moi. Vraiment !

Dans le dossier « ATTRACT », créez un dossier « ROMS », un dossier « MEDIAS » et un dossier « EMULATEURS ». Si vous voulez utiliser d’autres noms, libre à vous, mais ne venez pas vous plaindre quand vous n’arriverez pas à atteindre votre dossier « Roms Naruto-21*52 Très bonne qualité » en ligne de commande ou en script. A bon entendeur… Mon dossier ATTRACT ressemble à ça :

Dans chacun de ces dossiers, créez un dossier pour chaque système émulé. Pour ce tuto, j’ai décidé d’émuler la Super Nintendo européenne, car j’avais envie de me refaire Zelda ALTTP, DKC2 et SF II Turbo. Je crée donc un dossier SNIN dans les dossiers ROMS, MEDIAS et EMULATEURS. Dans le sous-dossier SNIN du dossier ROMS, je copie les ROMs de Zelda ALTTP, DKC2 et SF II Turbo (en version EUR car c’est ma logique, mais si vous aimez le chaos, vous pouvez mélanger les ROMs EUR, JAP, US et autres dans un seul dossier, l’émulateur n’y verra que du feu. Mais sachez alors que Bob vous méprisera pour les mille ans à venir). IMPORTANT : ne changez pas le nom de la ROM, car si le site que vous avez utilisé est sérieux, le nom suit une nomenclature commune à toute la scène émulation, ce qui permettra une récupération sans accroc des médias.

Pour l’émulation SNIN/SFC/SNES, ma préférence va depuis plusieurs années à Snes9X. Je télécharge donc la dernières version de l’émulateur et décompresse l’archive dans le sous-dossier SNIN du dossier EMULATEURS; je renomme le dossier décompressé en « Snes_9X » pour ne pas rencontrer de difficulté pour la configuration d’Attract-Mode (les noms de dossier à rallonge ou contenant des espaces et/ou des caractères spéciaux peuvent – classiquement – poser problème dans les scripts).

Je démarre l’émulateur une première fois pour le configurer selon mes besoins (et notamment pour la configuration de la manette – j’utilise toujours un pad XBox 360 filaire pour l’émulation, c’est fiable et reconnu partout). Notez que Snes9X permet de configurer une Hotkey pour quitter l’émulateur (page 4 de la configuration « Customize Hotkeys »), ce qui fait gagner en confort et permet d’envisager une installation indépendante du clavier.

Les ROMs et l’émulateur sont en place; vous pouvez à ce stade lancer une ROM depuis l’émulateur et jouer, mais le but c’est d’utiliser Attract-Mode pour ce faire !

LIER ATTRACT-MODE A L’ÉMULATEUR ET AUX ROMS

Attract-Mode permet beaucoup de choses et les possibilités de configuration sont étendues; je ne vais pas traiter la question de façon exhaustive mais vous présenter une méthode que je trouve efficiente : à vous de l’adapter à vos besoins !

De façon simplifiée, voilà comment fonctionne Attract-Mode :

  • Le logiciel s’ouvre sur un layout (grossièrement un affichage) « systèmes », qui liste les systèmes disponibles (cad pour lesquels un émulateur a été configuré).
  • En choisissant un système, l’utilisateur passe a un second layout « jeux » qui liste les jeux disponibles pour le système sélectionné.
  • En choisissant un jeu, l’utilisateur provoque son lancement dans l’émulateur; lorsque l’émulateur est quitté, l’affichage revient sur le layout « jeux ».

Notez que le layout système n’apparaît pas si un seul système est configuré.

Avant d’aller plus loin, précisons qu’Attract-Mode propose 10 layouts par défaut (dans le dossier « layouts » de l’application, ça ne s’invente pas) et qu’un layout différent peu être défini pour chaque système. Par ailleurs, ces layouts affichent des médias relatifs à chaque système/jeu, mais ces médias doivent être apportés par l’utilisateur et ne sont pas présents par défaut. Il y a plusieurs types de médias, chaque layout utilise tout ou partie de ces médias (et n’affiche rien s’il ne trouve pas le média attendu). Fin de l’aparté.

Pour lier Attract-Mode à l’émulateur et aux ROMs, il faut donc :

  • Configurer l’émulateur du système dans Attract-Mode
  • Générer une liste de ROMs spécifique au système

Configuration de l’émulateur dans Attract-Mode

Avant toute chose, assurez-vous de bien saisir la différence entre chemin relatif et chemin absolu. Pour assurer la portabilité du système, il est nécessaire de n’utiliser que des chemins relatifs, mais cette méthode peut être source de complication (voir plus bas); vous pouvez rester simple pour commencer en utilisant des chemins absolus, et vous pourrez toujours passer aux chemins relatifs par la suite.
Vous devez aussi connaître le chemin pointant vers l’exécutable de votre émulateur et vous renseigner sur le lancement en ligne de commande dudit émulateur.

Lancez Attract-Mode et dans le menu de configuration sélectionnez « Emulateurs ».

Puis… « Ajouter un émulateur » !

Donnez un nom à l’émulateur. Restez simple.

Attract-Mode vous demande ensuite de choisir un modèle de configuration; choisissez celui de votre émulateur s’il est présent, un du même système sinon.

La page de configuration de l’émulateur s’affiche alors.

Vous pouvez configurer d’ici, mais ce n’est pas pratique. Quittez Attract-Mode en tabassant la touche « Échap ». Dans le dossier de l’application, allez ensuite dans le sous-dossier « emulators » ou vous devriez trouver un fichier .cfg au nom de votre émulateur (celui défini deux paragraphes plus haut).

Ouvrez ce fichier avec un éditeur de texte simple (Notepad suffira; j’utilise personnellement Geany pour tous mes bidouillages et vous le recommande donc !).

# Generated by Attract-Mode v2.6.1
#
executable           $HOME/snes9x//snes9x.exe
args                 "[romfilename]"
rompath              $HOME/snes9x/roms/
romext               .zip;.7z;.bin;.fig;.mgd;.sfc;.smc;.swc
system               Super Nintendo (SNES)
info_source          thegamesdb.net
artwork    flyer           $HOME/snes9x/boxart
artwork    snap            $HOME/snes9x/video;$HOME/snes9x/snap

Il est bien plus simple de configurer son émulateur depuis un éditeur de texte. Exégèse :

  • executable : le chemin vers le .exe de l’émulateur.
  • args : les arguments que l’émulateur lancé en ligne de commande peut recevoir; référez-vous au manuel de l’émulateur choisi. Dans le cas de Snes 9X, je rajoute simplement « -fullscreen » pour que l’émulation démarre en plein écran, dans un souci de confort de jeu.
  • rompath : chemin vers le dossier contenant les roms; si vous avez suivi ce tuto, c’est donc en chemin relatif : ..\ROMS\SNIN. Dans le cas de Snes 9X cependant, je ne vais rien mettre et configurer le dossier par défaut dans l’émulateur directement (voir encadré « Attract-Mode et les chemins relatifs »).
  • romext : les extensions attendues pour les fichiers de ROMs; je vous conseille de laisser par défaut; si une ROM n’est pas récupérée lors de la génération de la liste de ROMs (voir après), le problème vient probablement de cette ligne.
  • system : le nom du système émulé; je vous conseille de laisser par défaut. Si vous n’avez pas trouvé de modèle correspondant à votre système, il faut indiquer le nom « officiel » du système tel qu’indiqué sur https://thegamesdb.net/list_platforms.php.
  • info_source : le site sur lequel Attract-Mode va récupérer les informations concernant les ROMs; je vous conseille de laisser par défaut.
  • artwork : il s’agit des chemins pointant vers les contenus médias relatifs au système. Deux types de contenu sont indiqués : flyer et snap. On ne touche a rien pour le moment.

Le fichier modifié doit donc ressembler à ça :

# Generated by Attract-Mode v2.6.1
#
executable           "..\EMULATEURS\SNIN\Snes_9X\snes9x-x64.exe"
args                 "[romfilename]" -fullscreen
rompath              
romext               .zip;.7z;.bin;.fig;.mgd;.sfc;.smc;.swc
system               Super Nintendo (SNES)
info_source          thegamesdb.net
artwork    flyer           $HOME/snes9x/boxart
artwork    snap            $HOME/snes9x/video;$HOME/snes9x/snap

L’émulateur est désormais configuré ! Mais pour fonctionner, il reste une dernière étape : la génération de la liste de ROMs.

Attract-Mode et les chemins relatifs
En théorie, Attract-Mode s’en sort très bien avec les chemin relatifs. En théorie. En pratique, j’ai rencontré plein de difficultés à ce sujet. Alors si ça bloque et que la portabilité n’est pas votre priorité, utilisez des chemins absolus et passez à la suite.
Si la portabilité est importante pour vous, il va falloir mettre les mains dans le cambouis pour chaque émulateur, ce qui dépasse de loin le cadre du présent tutoriel. Je vous explique quand même les grandes lignes en prenant l’exemple de Snes9x. Quand ça ne fonctionne pas, allez consulter le fichier « last_run.log » qui apparaît dans le répertoir d’Attract-Mode. Ce fichier indique les commandes effectivement passées par Attract-Mode. De là, vous devriez être en mesure de corriger le tir. Pour Snes9x particulièrement, en me référant à la documentation, j’ai noté deux choses importantes : le chemin vers l’exécutable doit être passé entre guillemets et il suffit de passer le nom de la ROM en ligne de commande si un chemin par défaut vers le répertoire des ROMs est configuré dans l’émulateur, ce qui s’est avéré bien plus simple que de trouver la bonne ligne à indiquer pour « rompath » (guillemets ? slash ou antislash ? Répertoires à remonter ? La liste des erreurs potentielles semble infinie !).
Des bidouilles comme celle-ci seront nécessaires pour bien des émulateurs, alors pensez chemin absolu si la portabilité n’est pas votre priorité, vous vivrez plus vieux !

Générer une liste de ROMs spécifique au système

Relancez Attract-Mode et allez dans Emulateurs->Snes_9X->Générer la liste des ROMS->Oui. Attract-Mode va alors générer une liste des ROMs présentes dans le dossier indiqué à la variable rompath du fichier de configuration du système (ceux qui ont suivi auront noté que mon fichier n’indique rien pour les raisons expliquées dans l’encadré ci-dessus. Dans ce cas, je dois donc indiquer le chemin, générer la liste de ROMs et supprimer le chemin; la liste générée fonctionnera très bien, mais je devrai indiquer le chemin vers le dossier des ROMs à chaque mise à jour. Toute une histoire que vous éviterez en conservant des chemins absolus).
Cette liste se retrouve dans le dossier « romlists » du dossier d’Attract-Mode; il s’agit d’un simple fichier texte portant le nom du système. Maintenant que cette liste est générée, vous pouvez constater qu’Attract-Mode affiche désormais un jeu de Pac-Man avec une liste de vos jeux (3 dans mon cas). Si vous sélectionnez un jeu et frappez une nouvelle fois cette pauvre touche « Entrée », le miracle se produit : l’émulation se lance (sinon, il y a une couille dans le potage qui provient très probablement des chemins que je vous conseille de passer en absolus pour vérifier).

Vous remarquerez au passage qu’une immonde vidéo d’introduction s’affiche désormais lorsque vous lancez Attract-Mode. Ceci est bien heureusement désactivable dans les options (vous pouvez même remplacer la vidéo par une de votre cru, mais vous prouverez alors que vous n’avez aucun goût !).

Mais quel est ce « jeu » Pac-Man au fait ? Il s’agit simplement d’un des layouts par défaut d’Attract-Mode (en l’occurence « Attract-Man »). Les layouts sont les différents modes d’affichage d’Attract-Mode, que vous pouvez changer à volonté, avec des modèles téléchargés ou créés par vos soins. Ce qui nous amène à la dernière partie de ce tutoriel.

CONFIGURER ET PEUPLER LES LAYOUTS

Pour bien comprendre ce que fait un layout, relancez Attract-Mode et sélectionnez « Listes d’affichage » puis votre émulateur. Dans le nouveau menu, sélectionnez « Thème » et faites défiler pour changer de thème. Essayons « Basic ».

Ça change n’est-ce pas ? Mais la liste de jeu est la même, et le tout se lance de la même façon. Gardez en tête que le layout est uniquement cosmétique (mais c’est là tout l’intérêt d’utiliser un front-end), que chaque système peut être configuré pour utiliser un layout spécifique (ainsi que le menu principal « Display menu » qui permettra de sélectionner les systèmes lorsque vous aurez configuré plus d’un émulateur) et – surtout – que les layouts ont besoin de fichiers médias pour afficher autre chose que du texte.
Car pour le moment, c’est moche et on est loin de la promesse de la première vidéo. Pas de panique, tonton Bob reprend un café et vous explique.

Tout d’abord, ou se trouvent les layouts ? Dans le sous-dossier « layouts » du dossier d’Attract-Mode. Sans rire. Allez voir par vous-même et gardez en tête que c’est dans ce dossier que vous devrez placer les layouts que vous téléchargerez.

Ouvrez donc le dossier « Basic » puisque nous venons de l’attribuer à notre émulateur.

Dedans se trouvent deux images qui forment l’environnement visuel de base du layout et un fichier layout.nut. Bien plus haut dans ce tuto, j’ai indiqué qu’Attract-Mode est très personnalisable au moyen d’un langage de script, j’ai nommé le squirrel. Comme les programmeurs informatiques sont des gens drôles avec une vie épanouie, les scripts squirrel ont donc l’extension .nut (pour ceux qui ne maîtrisent pas l’anglais – ce que je respecte profondément même si ma philosophie est plutôt « connais ton ennemi » – squirrel signifie écureuil et nut, noix. C’est bon, vous l’avez la blague du siècle ?). Bref, les fichiers .nut s’ouvrent avec un éditeur de texte simple. Que contient donc le layout.nut du layout « Basic » ?

//
// Attract-Mode Front-End - "Basic" sample layout
//
fe.layout.width=640;
fe.layout.height=480;

local t = fe.add_artwork( "snap", 348, 152, 262, 262 );
t.trigger = Transition.EndNavigation;

t = fe.add_artwork( "marquee", 348, 64, 262, 72 );
t.trigger = Transition.EndNavigation;

local lb = fe.add_listbox( 32, 64, 262, 352 );
lb.charsize = 16;
lb.set_selbg_rgb( 255, 255, 255 );
lb.set_sel_rgb( 0, 0, 0 );
lb.sel_style = Style.Bold;

fe.add_image( "bg.png", 0, 0 );

local l = fe.add_text( "[DisplayName]", 0, 15, 640, 30 );
l.set_rgb( 200, 200, 70 );
l.style = Style.Bold;

// The following function tells the frontend to use our title
// text and listbox (created above) for any menus (exit menu,
// etc...
//
fe.overlay.set_custom_controls( l, lb );

// Left side:

l = fe.add_text( "[Title]", 30, 424, 320, 16 );
l.set_rgb( 200, 200, 70 );
l.align = Align.Left;

l = fe.add_text( "[Year] [Manufacturer]", 30, 441, 320, 16 );
l.set_rgb( 200, 200, 70 );
l.align = Align.Left;

l = fe.add_text( "[Category]", 30, 458, 320, 16 );
l.set_rgb( 200, 200, 70 );
l.align = Align.Left;

// Right side:

l = fe.add_text( "[ListEntry]/[ListSize]", 320, 424, 290, 16 );
l.set_rgb( 200, 200, 70 );
l.align = Align.Right;

l = fe.add_text( "[FilterName]", 320, 441, 290, 16 );
l.set_rgb( 200, 200, 70 );
l.align = Align.Right;

Si vous avez une vague expérience de la programmation informatique, tout ceci ne devrait pas vous effrayer. Dans le cas contraire, la partie 2 de ce tutoriel reviendra plus en détail sur l’écureuil et ses noix (moi aussi je suis un gars marrant…). Les deux seules choses qui nous intéressent dans l’immédiat sont les fonctions « add_artwork » et « add_text », car elles permettent de savoir de quels éléments a besoin le layout pour fonctionner correctement.

Le plus simple : « add_text« ; le Layout va piocher des informations textuelles qui ont été automatiquement récupérées en générant la liste de ROMs. Ouvrez celle correspondant au système configuré (qui pour mémoire se trouve dans le sous-dossier « romlists » du dossier d’Attract-Mode) : vous constaterez qu’il s’agit en fait d’un fichier CSV qui contient différentes informations. Ce sont ces informations qui sont obtenues par la méthode « add_text ». Par défaut, de nombreuses informations sont manquantes, mais vous pouvez compléter le fichier manuellement. Je vous conseille alors d’importer le fichier dans un tableur pour avoir quelque chose de plus lisible :

Pour l’instant, seules les informations recherchées par le layout « Basic » nous intéressent (celles marquées entre crochets) : Title, Year, Manufacturer, Category (ignorez pour l’instant les valeurs DisplayName, ListEntry, ListSize et FilterName qui dépendent d’autres fichiers). Seule l’année (Year) manque, il est facile de l’indiquer manuellement (ce sera moins facile avec 500 ROMs, mais l’automatisation sera traité en 3ème partie) : 1995 pour DKC2, 1992 pour ALTTP en France, 1994 pour SFII Turbo (paye ta culture vidéoludique de base !).

La question se corse (légèrement) pour « add_artwork« , qui recherche « snap » et « marquee ». Les artworks sont des catégories de fichiers médias; certaines sont par défaut, et il est possible d’en créer de nouvelles. Nous verrons dans la partie 3 du tutoriel comment affiner ces catégories et les organiser à votre convenance, mais pour aujourd’hui, nous allons nous contenter de ce qu’Attract-Mode propose en automatique, et qui n’est déjà pas si mal.

Redémarrez Attract-Mode et rendez-vous sur la fiche de configuration du système; dans la liste des paramètres, remarquez la ligne « Info Source/Aspiration » : cette ligne permet de définir le site depuis lequel Attract-Mode va « aspirer » les médias; le choix par défaut convient. Sélectionnez ensuite « Aspirer les Artworks ». Tel Cell avec C-18, Attract-Mode va alors avaler les fichiers médias relatifs aux jeux de la liste de ROMs. Cela peut prendre un peu de temps en fonction du nombre de jeux et de votre connexion. Une fois terminé, fermez le menu et admirez !

C’est encore un peu simple, mais le layout ne s’intitule pas « Basic » pour rien ! Essayez le layout « Cools » pour voir :

Mieux ? Ce n’est qu’un début. Pour votre information, les fichiers téléchargés se trouvent désormais dans le sous-dossier « scraper » du dossier d’Attract-Mode (exactement dans un sous-dossier du sous-dossier scraper, au nom du système « aspiré »). Cette méthode – qui a le grand avantage d’être simple – devrait suffire pour peupler tous les layouts classiques qui n’utilisent que les artworks de base. Pour une expérience un peu plus avancée, il faudra avoir recours à une autre méthode, que je vous enseignerai dans la troisième partie de ce tutoriel !

Pour le moment, je vous encourage a essayer plusieurs layouts, a configurer plusieurs systèmes et à essayer les différentes options d’Attract-Mode. Et surtout à jouer. Non, parce que c’est bien la bidouille et l’esthétique, mais le jeu c’est mieux…

Bob Dupneu

Leave a Reply

Votre adresse de messagerie ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.