- Un projet qui transforme en jeu d’arcade PICO-8 de 45 secondes ce moment que tout le monde attendait enfant : « quand le logo DVD touche exactement un coin de l’écran »
- Grâce à une portée réduite centrée sur une seule blague, la complexité de l’UI et la charge de production ont diminué par rapport au projet précédent, ReShape, ce qui en a fait une bonne expérience pour apprendre PICO-8
- PICO-8 est une fantasy console très contrainte, où il faut gérer soi-même jusqu’aux collisions et aux particules, ce qui donne même aux petits jeux une sensation cohérente
- Les limites peu pratiques de l’éditeur de code intégré ont été contournées avec l’extension VS Code
pico8-lset une configurationinclude code.pb, mais la recherche dans la référence du langage reste décevante - Même une mécanique simple devient plus facile à expliquer et à partager avec un thème fort, et les contraintes de PICO-8 facilitent la publication telle quelle de petites créations
Un jeu de logo DVD de 45 secondes
- « Put the DVD Logo in the Corner » est un court jeu d’action arcade dont le but est de faire toucher au logo DVD un coin de l’écran
- Il a été réalisé avec PICO-8, sur une période de 4 jours, du 27 au 30 juin 2023
- Une partie dure environ 45 secondes, et le jeu a été conçu autour d’une blague et d’un souhait d’enfance, sans intention de l’allonger davantage
- Le jeu est disponible sur itch, et son code peut être consulté sur GitHub
- Recevoir les high scores des amis a été une expérience amusante ; au moment de l’écriture, le meilleur score d’un ami était de 21 points, contre 26 pour le développeur
Premier jeu créé avec PICO-8
- PICO-8 est une fantasy console comparable à un émulateur pour une console qui n’existe pas réellement
- Elle impose des limites de graphismes, de son, de taille de code et de puissance de calcul qui imitent les consoles des années 1980
- On peut y créer sprites, musique, effets sonores et écrire le code directement dans la console
- Ses outils sont plus simples et plus rudimentaires que ceux des moteurs de jeu modernes
- Les collisions doivent être gérées manuellement, au pixel près
- Les effets de particules doivent eux aussi être implémentés en dessinant directement des pixels à l’écran
- Cette simplicité et ces contraintes donnent aux jeux PICO-8 une sensation relativement homogène, et amènent à voir positivement l’idée que les contraintes stimulent la créativité
- L’un des jeux PICO-8 les plus connus est la version originale de Celeste, créée lors d’une game jam
- Cette version PICO-8 de Celeste est jouable comme easter egg dans le jeu final
Expérience avec les outils de développement PICO-8
- PICO-8 inclut un éditeur de sprites, un éditeur d’effets sonores, un éditeur musical et un éditeur de code
- L’éditeur de sprites faisait regretter Aseprite, mais la possibilité d’éditer directement les sprites dans PICO-8 était appréciable
- L’éditeur d’effets sonores n’était pas du tout intuitif au départ, mais il est devenu rapidement plus clair après avoir regardé la vidéo de Gruber
- L’éditeur musical n’était pas idéal pour quelqu’un habitué à jouer au clavier, mais restait relativement intuitif
- L’éditeur de code était la partie la plus inconfortable
- Même en élargissant la fenêtre, la longueur des lignes n’augmente pas : seule la taille de la police change
- L’équipe de PICO-8 visait clairement une sensation de console très particulière, et si cela répondait à cet objectif, c’était malgré tout trop difficile à supporter dans ce cas précis
Écrire le code via VS Code
- Pour utiliser VS Code à la place de l’éditeur intégré, l’extension pico8-ls a été installée
- Elle fournit la coloration syntaxique et une référence de l’API
- Le fichier principal PICO-8 ne contenait que
include code.pb, tandis que le vrai code était écrit danscode.pb - Cette configuration est nécessaire parce que PICO-8 stocke le code et les données de sprites et de musique dans un seul et même fichier
- L’idée n’était pas de modifier simultanément ce même fichier dans VS Code et dans PICO-8
- Dans l’ensemble, cette façon de travailler a donné satisfaction, mais il manquait un moyen plus pratique d’explorer la référence du langage PICO-8
- Le manuel PICO-8 ne permettait pas facilement une recherche restreinte, par exemple uniquement sur les noms de fonctions
Les contraintes facilitent la sortie de petits jeux
- Pendant le développement, plusieurs idées d’extension sont apparues
- ramasser des jetons pour augmenter le temps
- des améliorations pour la TV ou le logo DVD
- des ennemis qui perturbent le logo
- une direction proche d’un clone de Vampire Survivors
- Avec Godot, il est probable que ces envies auraient été explorées davantage
- PICO-8 étant simple, mettre un tout petit jeu dans son état actuel sur itch paraissait naturel
- La simplicité de PICO-8 agit comme une forme d’autorisation à publier aussi des résultats simples
Un thème rend le jeu plus facile à expliquer
- En tant que joueur, l’auteur avait souvent tendance à ignorer l’histoire ou le thème pour se concentrer sur les mécaniques
- Enfant, il passait les cinématiques, et même après avoir joué des centaines d’heures à Path of Exile, il dit ne pas être capable d’en expliquer l’histoire
- À l’inverse, dans l’un de ses jeux préférés, Outer Wilds, histoire et mécaniques comptaient toutes les deux
- En créant des jeux aussi, il lui est arrivé de penser que le thème n’avait pas tant d’importance
- ReShape TD et click, click, trick ont des mécaniques, mais il est difficile d’expliquer de quoi parlent vraiment ces jeux
- « Put the DVD Logo in the Corner » était l’exact opposé
- La mécanique se résume à « faire toucher à un petit rectangle le coin d’un grand rectangle »
- La mécanique en elle-même n’est pas passionnante, mais grâce au thème, c’était le jeu le plus amusant à présenter aux autres
- C’est un point que l’auteur veut garder en tête pour ses prochains jeux
La suite
- Ce jeu et le travail avec PICO-8 ont été très appréciés, et l’envie est de créer d’autres jeux plus petits avec une sensation arcade
- Ensuite, l’auteur expérimentait une idée consistant à créer quelque chose qui s’exécute dans la barre d’adresse de Firefox à l’aide de la spécification OpenSearch
- Une mise à jour du 5 juillet 2024 indique qu’OpenSearch a ensuite été utilisé pour faire tourner Wordle dans la barre d’adresse de Firefox
1 commentaires
Commentaires sur Hacker News
Surpris de découvrir le Recurse Center. Ça ressemble à une résidence d’artistes pour programmeurs.
J’ai déjà séjourné en résidence en tant qu’artiste, et ça m’a beaucoup aidé à ouvrir de nouvelles perspectives. J’aimerais qu’il y ait davantage d’occasions, dans les sciences aussi, de faire des choses « absurdes » : non commerciales et non compétitives. Ce serait bénéfique pour la société, ou au moins certainement utile aux personnes qui ont la chance d’y entrer.
https://www.recurse.com/
Même si vous êtes accepté, vous pouvez différer jusqu’au moment qui vous convient, et c’est gratuit. Le modèle économique repose sur le placement professionnel, mais j’avais clairement indiqué en postulant que je ne cherchais pas d’emploi.
Ce que Recurse a surtout fait pour moi, c’est me reconnecter à mon goût. Quand j’y suis arrivé, je faisais un jeu assez classique façon Flash, avec un score et un thème léger ; là-bas, je suis parti dans une direction beaucoup plus étrange. L’un de mes premiers projets consistait à détourner la spécification OpenSearch pour créer un Wordle qui s’exécutait dans la barre d’adresse de Firefox.
https://eieio.games/nonsense/implementing-wordle-in-the-fire...
C’était l’endroit parfait pour fabriquer ce genre de choses. Les gens m’encourageaient, me soutenaient et s’y intéressaient, ce qui m’a fait comprendre que le type de travail que j’avais vraiment envie de faire pouvait aussi intéresser d’autres personnes. Je crois avoir sorti huit jeux pendant mes 12 semaines à RC, et sans RC je n’aurais probablement pas commencé à faire le genre de choses que je fais aujourd’hui. Beaucoup de gens vivent sans doute des expériences similaires, dans les jeux comme dans d’autres domaines techniques. C’est un peu comme trouver le product-market fit de ses propres centres d’intérêt.
RC m’a aussi mis en relation avec des gens qui faisaient des choses proches. La communauté est grande, bienveillante et bizarre dans le bon sens du terme. C’est comme un atelier d’écriture pour des personnes qui veulent programmer et devenir de meilleurs programmeurs.
On pourrait croire que je fais trop la promotion de RC, et c’est un peu le cas, mais je ne suis pas payé pour ça : je suis juste un ancien reconnaissant. J’écris encore ceci depuis l’espace de RC, où je passe parfois pour discuter avec les participants de la session ou travailler.
Aujourd’hui encore, j’ai du mal à expliquer précisément pourquoi je n’y ai pas trouvé de valeur.
C’était peut-être lié au lieu. New York City est chère ; j’avais les économies nécessaires pour tenir un congé sans solde, mais beaucoup de choses me paraissaient déraisonnablement coûteuses. La réputation d’impolitesse des New-Yorkais a aussi renforcé cette distance. J’avais entendu les louanges des autres, mais, comme certains visiteurs qui ne se sentent pas pleinement accueillis par la ville, je ne me suis pas bien accordé avec l’environnement du Recurse Center.
Cela dit, un point positif est que certains résidents et anciens sont devenus assez connus dans le secteur tech. Les croiser par hasard dans l’espace peut mener à des conversations profondes. À mon époque, on pouvait y rencontrer des gens comme Robert Lefkowitz et Filippo Valsorda, et c’était une expérience assez chouette.
https://www.recurse.com/residents
https://www.linkedin.com/in/r0ml
https://filippo.io
La School for Poetic Computation est une école expérimentale basée à New York City et en ligne, qui soutient l’apprentissage à la croisée de l’art, du code, du hardware et de la théorie critique. C’est un lieu où l’on apprend et où l’on réfléchit à ce qu’on a appris.
https://youtu.be/QOtuX0jL85Y?si=Kwo8OZSYOVzoI-Uh
La référence incontournable à The Office.
En fait, je ne vois même pas très bien comment il peut toucher exactement un coin.
Pendant quelques secondes, j’ai cru que c’était moi qui déraillais.
Je suis le développeur. Ça a été une surprise amusante de voir ça arriver en une, et je suis content que ça parle aux gens ; j’espère que vous essaierez aussi PICO-8.
Si vous avez des questions, je peux y répondre. Depuis, je n’ai terminé aucun autre jeu PICO-8 et mon travail est devenu encore plus étrange, mais PICO-8 me manque et je bidouille des idées pour Playdate et Picotron.
https://news.ycombinator.com/item?id=40800869
Ce genre de chose me fait vraiment aimer PICO-8. C’est l’un des environnements de codage les plus amusants que j’aie utilisés depuis la découverte d’ActionScript dans Macromedia Flash MX.
J’aimerais pouvoir travailler le code, le son et les graphismes avec des éditeurs modernes haute résolution, tout en conservant les contraintes de résolution, de puissance CPU et d’API.
Cette histoire, qui traite de la souffrance psychologique et sociale causée par le fait que le logo DVD ne touche presque jamais le coin de l’écran, mérite aussi d’être mentionnée : https://www.youtube.com/watch?v=_ws0QtAiiXQ
Si vous voulez juste voir l’économiseur d’écran, j’en ai fait un il y a longtemps.
https://stanchak.github.io/dvd/
Ce serait vraiment amusant sur Playdate. On pourrait faire avancer le temps avec la petite manivelle, et donner des points bonus si l’on maintient le bon rythme.
Je viens de le faire, donc c’est assez basique, mais vous pouvez le forker.
https://github.com/uguu-org/playdate-dvd
Pam affirme avoir vu le logo DVD toucher le coin quand elle était seule dans la salle de réunion. Elle semble croire que c’est vraiment ce qu’elle a vu.
Lien pour lancer directement le jeu : https://itseieio.itch.io/dvdlogo
Code source (PICO-8) : https://github.com/nolenroyalty/put-the-dvd-logo-in-the-corn...
C’était vraiment amusant, et l’explication de l’environnement PICO-8 était bonne. J’ai obtenu 19 points, mais je crois avoir eu de la chance sur la fin.