Maxime Perniola
← Retour au journal

#041 · · Catalogue PS Plus · 8 min

WhatToPlay, ou savoir quoi lancer ce soir

En France, l’abonnement PS Plus Premium donne accès à 628 jeux. Sur playstation.com, la liste est rangée par ordre alphabétique, avec une jaquette et un titre. Pas de note, pas de durée, rien pour dire ce qui vaut la peine. Je voulais simplement savoir quoi jouer, et la seule façon de le savoir était de chercher les jeux un par un.

Le 30 août, j’ai commencé WhatToPlay. Le principe tient en une phrase : tout le catalogue PS Plus, classé par qualité, pour trouver quoi lancer maintenant.

WhatToPlay : le catalogue PS Plus classé par note presse, avec les durées HowLongToBeat et les filtres Pépites, Gratuits du mois, Bientôt retirés

Ce que fait le site

On ouvre whattoplay.games, et on voit le catalogue de son pays trié par note presse. Chaque ligne donne la note Metacritic, la note des joueurs sur le PlayStation Store, l’année, le genre et trois durées de jeu : l’histoire seule, l’histoire avec les à-côtés, et le jeu terminé à 100 %.

En un clic, on filtre ce qui répond aux questions qu’on se pose vraiment :

  • Pépites : les jeux notés 90 et plus par la presse.
  • Courts : ceux dont l’histoire se termine en moins de 15 heures.
  • Gratuits du mois : les jeux offerts chaque mois aux abonnés Essential, avec l’historique.
  • Bientôt retirés : ceux qui quittent le catalogue, pour les jouer avant qu’ils partent.
  • À venir : ceux qui sont annoncés, pas encore arrivés.

On peut aussi trier par écart entre la presse et les joueurs. C’est mon tri préféré. Il fait remonter les jeux encensés par les critiques et boudés par le public, et l’inverse.

Chaque jeu a sa fiche, avec sa présentation, ses notes, ses durées et des jeux du même genre. Un article paraît chaque jour sur un jeu du catalogue, avec un flux RSS et un compte Bluesky qui le relaie. Le site est gratuit, sans publicité et sans traceur.

D’où viennent les données

C’est là qu’est le vrai travail. Personne ne publie le catalogue PS Plus avec les notes. Il faut le reconstituer.

Le catalogue. Avant d’écrire une ligne, j’ai regardé comment la liste publique de playstation.com se remplissait. Elle interroge un point d’accès qui renvoie tout le catalogue d’un pays : identifiants, jaquettes, plateformes. C’est la base de tout. Il répond pour 44 pays. Le catalogue n’est pas le même partout, à cause des droits de distribution : 628 jeux en France, 792 jeux différents si on cumule tous les pays.

Les notes presse. Metacritic ne propose pas d’accès ouvert. La note arrive par trois chemins, RAWG, Steam et Wikipedia, avec IGDB en complément. En France, 490 jeux sur 628 ont une note presse. Les autres affichent un tiret, et l’aide du site le dit clairement : un tiret veut dire « pas de donnée trouvée », jamais « mauvais jeu ».

Les notes joueurs. Ce sont les étoiles du PlayStation Store, celles des acheteurs. 627 jeux sur 628 en ont une.

Le reste. Les durées viennent de HowLongToBeat. Les départs du mois viennent des articles de PlayStation LifeStyle, les annonces du PlayStation Blog, l’historique des jeux gratuits du PlayStation Wiki.

Le plus difficile n’est pas de collecter. C’est de reconnaître le même jeu d’une source à l’autre. « Nom du jeu », « Nom du jeu™ » et « Nom du jeu Remastered » sont parfois le même jeu, parfois non. J’ai raconté une partie de ces pièges dans l’entrée 011, et d’autres suivront.

Comment c’est construit

L’architecture est volontairement simple, pour qu’une seule personne puisse la tenir.

Un site statique, sans framework. HTML, CSS et JavaScript, servis tels quels. Pas de React, pas d’étape de build. Le site s’ouvre même en double-cliquant sur le fichier.

Une collecte quotidienne dans GitHub Actions. Chaque jour à 5 h 17 UTC, un script Node parcourt les 44 pays, interroge les sources, met à jour les notes et les durées. Il génère aussi les fiches, les articles, les plans de site et les images de partage. Au total, près de seize mille pages statiques et neuf cents jaquettes hébergées sur le site.

Les données dans le dépôt Git. Le résultat est commité chaque jour. J’ai ainsi l’historique des entrées et des sorties du catalogue sans base de données, et un retour arrière tient en une commande. Vercel voit le commit et redéploie le site tout seul.

Des garde-fous. Si une source tombe en panne, elle est abandonnée pour la journée sans bloquer les autres. Si le catalogue d’un pays arrive soudain avec 30 % de jeux en moins, le script refuse de l’écrire. Un rapport de chaque passage arrive dans une issue GitHub.

Le choix d’Actions plutôt que d’une tâche planifiée chez l’hébergeur est délibéré. Le plan gratuit de Vercel limite la durée d’exécution, et 44 pays fois plusieurs centaines de jeux n’y tiennent pas. Il aurait aussi fallu une base de données pour stocker le résultat. Avec Git, je n’ai rien de plus à gérer.

Comment je l’ai fait

Seul, le soir, avec Claude Code. En cinq semaines : 176 commits et 54 pull requests, une par sujet. Le site est passé de la France seule à 10 pays le 13 septembre, puis à 44 pays et 19 langues le 16.

L’outil écrit vite et bien le code de collecte, les pages, les styles. Ce qu’il ne fait pas, c’est décider. Quel jeu est le même qu’un autre. Quel seuil fait passer une note au vert. Quelle source croire quand trois se contredisent. Ce qu’on affiche quand on ne sait pas. Ce sont des centaines de petites décisions, et c’est là que j’ai passé l’essentiel de mon temps.

Il a aussi fallu apprendre à douter des chiffres. Plusieurs pannes de ce projet ont été silencieuses : une source qui rend zéro résultat sans erreur, une rubrique du Store qui ne contenait pas ce que son nom laissait croire. Les prochaines entrées du journal en racontent quelques-unes.

Ce que j’en retiens

Je me sers de WhatToPlay presque chaque soir. C’est le meilleur test que je connaisse. Les défauts que je n’aurais jamais vus en relisant le code me sautent aux yeux quand je cherche simplement quoi jouer.

Et le projet m’a confirmé une chose que je soupçonnais. Le code n’est plus la partie la plus longue. La partie longue, c’est de savoir ce qu’on veut montrer, d’où viennent les chiffres, et ce qu’on fait quand ils manquent.

Six cents jeux rangés par ordre alphabétique, c’est un catalogue. Les mêmes jeux rangés par note, avec leur durée, c’est une réponse à « qu’est-ce que je lance ce soir ? ».

Recevoir le journal

Une entrée par semaine environ. Ce que je construis, ce qui casse, ce que j'apprends. Pas de promotion, désinscription en un clic.

Vous pouvez aussi suivre le flux RSS.