À propos du projet
Stable Retro est un fork maintenu par la communauté de gym-retro d'OpenAI, qui transforme des jeux vidéo classiques en environnements Gymnasium pour l'apprentissage par renforcement. Le projet original étant en mode maintenance, les nouveaux jeux et fonctionnalités sont désormais acceptés ici.
Systèmes émulés
Le projet intègre plusieurs cœurs d'émulateur et documente la prise en charge des plateformes Linux, Windows et Apple. Les systèmes couverts incluent Atari 2600, NES, SNES, Nintendo 64, Nintendo DS, Game Boy/Color, Game Boy Advance, Sega Genesis, Master System, Sega CD, 32X, Saturn, Dreamcast, PC Engine et les machines d'arcade. Certains cœurs ont des restrictions : la Nintendo 64 nécessite BUILD_N64=ON et les en-têtes OpenGL ; la Sega Dreamcast nécessite le rendu matériel (ENABLE_HW_RENDER=ON), actuellement uniquement sous Linux ; Gambatte (Game Boy) est ignoré par défaut sur Apple Silicon arm64.
Jeux et environnements
Plus de 1000 jeux sont intégrés dans des catégories telles que les jeux de plateforme (Super Mario World, Sonic 2, Mega Man 2, Castlevania IV), les jeux de combat (Mortal Kombat Trilogy, Street Fighter II, Fatal Fury, King of Fighters '98), les jeux de sport, de puzzle, les shmups, les beat-em-ups, les jeux de course et les RPG expérimentaux. Chaque intégration inclut des emplacements mémoire pour les variables en jeu, des fonctions de récompense, des conditions de fin d'épisode, des savestates de début de niveau et des hachages de ROM. Les ROMs et certains fichiers BIOS ne sont pas inclus et doivent être obtenus par l'utilisateur ; une commande retro.import vérifie les hachages et importe les ROMs correspondantes. Une ROM Sega Genesis non commerciale, Airstriker, est fournie pour les tests.
Installation et utilisation
Stable Retro prend en charge Python 3.10 à 3.14 et peut être installé depuis PyPI ou directement depuis le dépôt Git. Les installations modifiables sont recommandées lors de l'intégration de nouvelles ROMs, de nouveaux états ou de nouveaux cœurs d'émulateur. Une documentation spécifique à chaque plateforme couvre Linux (Ubuntu/Debian, WSL2, configuration des cœurs N64 et Dreamcast) et macOS (Apple Silicon, Homebrew). Un exemple entraîne un Nature CNN avec PPO sur l'environnement Airstriker-Genesis à l'aide de Stable Baselines3, et des scripts plus avancés sont liés en externe.
Outils et documentation
Un outil d'intégration aide à ajouter de nouveaux jeux, avec une playlist vidéo expliquant son utilisation. La documentation est hébergée sur stable-retro.farama.org et est décrite comme un travail en cours. Des tutoriels couvrent Windows 11 avec WSL2 et l'exécution d'une version personnalisée de RetroArch qui permet aux modèles entraînés de remplacer les entrées du joueur. Les spécifications prises en charge listent Windows 10/11 via WSL2, macOS 10.13/10.14, Linux (manylinux1, Ubuntu 24.04 recommandé) et des processeurs avec SSE3 ou mieux.
Communauté et recherche
Les contributions sont orientées via CONTRIBUTING.md, GitHub Issues et le Discord de la Farama Foundation. Le README liste plusieurs articles universitaires qui mentionnent stable-retro, couvrant les environnements d'apprentissage par renforcement, les modèles génératifs du monde, les benchmarks d'agents LLM et la recherche sur l'IA de jeu.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.