Cette application a été suggérée par Elise, membre du Discord belginux.
Si vous connaissez EmulatorJS, RomM devrait vous ravir car maintenant EmulatorJS est inclus dedans.
Un beau manager de ROMs avec la possibilité de jouer directement à partir de celui-ci, que demander de mieux?
Quoi? Un tutoriel? Et bien le voici! 👍
⚡Caractéristiques
- Analyse votre bibliothèque de jeux existante et l'enrichit avec les métadonnées d'IGDB et de MobyGames
- Prend en charge un grand nombre de plates-formes
- Jouez à des jeux directement depuis le navigateur en utilisant EmulatorJS
- Partagez votre bibliothèque avec un ami tout en limitant l'accès et les autorisations
- Prend en charge les schémas de dénomination MAME, Nintendo Switch et Sony Playstation
- Détecte et regroupe les jeux multifichiers (par exemple les jeux PS1 avec plusieurs CD)
- Peut analyser les balises dans les noms de fichiers (par exemple (E), (USA), (rev v1), etc.)
- Afficher, télécharger, mettre à jour et supprimer des jeux depuis n'importe quel navigateur Web moderne
Prérequis
API MobyGames (payante)
Procédure très simple. Vous pouvez prendre un abonnement d'un mois pour faire votre collection et annuler ensuite.
Pour commencer il vous faudra une clé API afin que RomM puisse récupérer les métadonnées des ROMs.
Rendez-vous sur ce site:
Créez un compte, vous allez recevoir un lien par mail pour valider celui-ci.
Une fois votre compte confirmé, en haut à droite du site Moby Games, allez sur votre profil:
Cliquez sur API:
Remplissez sommairement le formulaire:
- Application Name => nommez cela comme vous voulez.
- Description of your application or use case => indiquez une description.
- Ne cochez pas I intended to use the MobyGames API for a commercial application, qui veut dire "J'avais l'intention d'utiliser l'API MobyGames pour une application commerciale".
Par contre cochez I agree to the terms of access to the MobyGames API, "J'accepte les conditions d'accès à l'API MobyGames" et cliquez sur Submit:
Juste à côté de API key, copiez la clé commençant par moby_ et mettez-là de côté précieusement:
API IGDB (gratuite)
Procédure légèrement plus contraignante car il faut absolument un compte Twitch.
Suivez la procédure décrite ici:
https://api-docs.igdb.com/#getting-started
- Inscrivez-vous avec Twitch pour un compte gratuit.
- Assurez-vous que l'authentification à deux facteurs est activée.
- Enregistrez votre application sur le portail des développeurs Twitch: le champ URL de redirection OAuth n'est pas utilisé par IGDB. Veuillez ajouter « localhost » pour continuer.
- Gérez votre application nouvellement créée.
- Générez un secret client en appuyant sur [Nouveau secret].
- Prenez note de l'ID client et du secret client.
Générer une clé
Dans votre terminal, tapez cette commande afin de créer un clé:
openssl rand -hex 32
Mettez celle clé de côté précieusement également.
L'installation
- On va créer le dossier romm, adaptez suivant votre configuration ou habitudes:
mkdir /srv/appdata/romm
- Créez votre docker-compose.yml:
version: "3"
services:
romm:
image: docker.io/rommapp/romm:latest
container_name: romm
environment:
- DB_HOST=romm_db
- DB_PORT=3306
- DB_USER=romm-user
- DB_NAME=romm # Should match the MYSQL_DATABASE value in the mariadb container
- DB_PASSWD=db-password
- IGDB_CLIENT_ID=ID-KEY
- IGDB_CLIENT_SECRET=API-key
# - MOBYGAMES_API_KEY=moby_mOJ2QufhuLsNUZ13U3nIfaJCXpS
- ROMM_AUTH_SECRET_KEY=addeac7caa639a8a0962ada27fcc8d8400571557c9c3b4168369ce08a43efc0d # Generate a key with `openssl rand -hex 32`
- ROMM_AUTH_USERNAME=collector # default: admin
- ROMM_AUTH_PASSWORD=admin # default: admin
volumes:
- /srv/appdata/romm/library/:/romm/library
- /srv/appdata/romm/resources:/romm/resources # [Optional] Path where roms metadata (covers) are stored
- /srv/appdata/romm/config:/romm/config # [Optional] Path where config is stored
- /srv/appdata/romm/logs:/romm/logs # [Optional] Path where logs are stored
- /srv/appdata/romm/assets:/romm/assets
ports:
- 8060:8080
depends_on:
- romm_db
restart: always
romm_db:
image: docker.io/library/mariadb:latest
container_name: romm_db
environment:
# - PUID=1000
# - PGID=1000
# - TZ=Europe/Paris
- MYSQL_ROOT_PASSWORD=db-root
- MYSQL_DATABASE=romm
- MYSQL_USER=romm-user
- MYSQL_PASSWORD=db-password
volumes:
- /srv/appdata/romm/mariadb:/var/lib/mysql
restart: always
Veillez à modifier les points suivants:
Soit l'API MobyGames:
- MOBYGAMES_API_KEY= indiquez juste après le = la clé API crée sur MobyGames.
Ou l'API de IGDB:
- IGDB_CLIENT_ID=ID-KEY
- IGDB_CLIENT_SECRET=API-key
Passez à la suite:
- ROMM_AUTH_SECRET_KEY= indiquez juste après le = la clé obtenue avec la commande openssl rand -hex 32.
- ROMM_AUTH_USERNAME=collector => modifier collector par le nom d'utilisateur que vous souhaitez pour votre compte utilisateur.
- ROMM_AUTH_PASSWORD=admin => modifier admin par le mot de passe que vous souhaitez pour votre compte utilisateur.
- On installe l'application:
docker-compose up -d
ou avec docker-compose V2:
docker compose up -d
- Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8060 par défaut:
http://ip:8060/
Première connexion
Sur la page d'accueil, indiquez votre Username et Password choisi. Cliquez sur Login pour vous connecter:
Vous arrivez sur le page principale de RomM:
Ajouter une ROM
Cliquez sur l'onglet Library se trouvant dans la colonne de gauche, ensuite cliquez sur Upload roms:
dfdf
Vous aurez une petite fenêtre qui va apparaître:
Dans mon exemple je vais ajouter Super Mario. Il faudra indiquer la plateforme sur laquelle était sortie le jeu en cliquant sur la flèche et choisir Nintendo Entertainement System:
Maintenant choisissez la ROM en elle-même en cliquant sur + ADD ROMS et cliquez sur UPLOAD:
Patientez un peu et la voilà ajoutée:
Comment jouer?
Très simplement. Cliquez sur le bouton Play sous le jeu pour le lancer:
Cliquez sur PLAY:
Et c'est partiiiiiiiiiiiiiiiiiiiiiiiiiiii!
Activer le mode sombre ou le mode clair
Dans Settings, Control Panel, dans THEME, sélectionnez votre préférence:
Ou trouvez des ROMs?
Au palais de justice le plus proche.
Je ne peux évidemment pas fournir de ROMs car c'est... Heu. Pas conseillé du tout.
Illégal.
Une simple recherche sur votre moteur de recherche préféré devrait suffire.
Bon jeu!