Voici la présentation de Snake, un jeu créé dans le cadre de notre concours de programmation Python 2024-2025.
Il s'agit d'une participation en équipe de Sacha M. et Ambre V., deux élèves de Seconde au lycée Jean Daudet à La Rochelle. C'est Florian Allard alias Afyu qui y exerce, qui leur a parlé de ce concours.
Il s'agit d'une participation en équipe de Sacha M. et Ambre V., deux élèves de Seconde au lycée Jean Daudet à La Rochelle. C'est Florian Allard alias Afyu qui y exerce, qui leur a parlé de ce concours.
Le jeu se joue ici sur une grille de 16×10 cases affichée en pleine largeur (chaque case étant un carré de 20 pixels de côté) avec une particularité délicieuse ; la grille est raccordable (si ton serpent atteint le bord droit de l'écran il ressort à gauche de l'écran). De quoi te sauver de certaines situations périlleuses... ou pas.
C'est fort bien codé, le jeu est réactif avec des affichages fluides sans défaut visible.
Attention si tu joues sur le firmware officiel Epsilon, l'écran de game over appelle automatiquement la fonction exit() pour terminer l'exécution du script, fonction qui n'existe pas dans l'implémentation Micropython de ce firmware.
Il a été tenu compte de cette spécificité, le jeu se passe ici sur une grille de 19×8 cases.
Nous aurions une remarque et une critique à ce sujet :
- Pour la remarque, avec seulement 8 lignes, le jeu est beaucoup plus difficile et change de plus radicalement l'expérience de jeu. Ton serpent va très vite dépasser 8 cases soit une hauteur d'écran, faisant que tout déplacement vertical sera hautement périlleux, notamment au niveau du passage de haut en bas de l'écran ou vice-versa, et devra donc être suivi presque immédiatement d'un changement de direction pour l'horizontale. Mais ce n'est absolument pas un reproche.
- Pour la critique, le choix d'être resté avec des cases en carré de 20 pixels de côté donne ici des marges blanches à droite et en bas d'écran. Celle en bas d'écran notamment fait plus de la moitié de la hauteur d'une ligne, ce qui est particulièrement trompeur. Peut-être aurait-il été judicieux d'expérimenter d'autres dimensions de cases pour mieux remplir l'écran, d'afficher un cadre autour de la zone de l'écran explorable par le serpent (même si c'est peut-être contre-intuitif par rapport à l'aspect raccordable de la zone), ou encore tout simplement de prendre un tout petit peu plus de place pour l'affichage du score en haut d'écran.
Pas d'erreur ici à l'écran de game over, mais à la place une petite anomalie ; tu peux continuer à jouer sur l'écran en question.
Téléchargements :
- pour NumWorks : https://yaya-cout.github.io/Upsilon-Wor ... 6e1712ad60
- pour Casio Graph Math+ : archives_voir.php?id=4677041