Cyberfield

Un hommage à Volfied

Mise à jour du 05/06/2026 – Sur ordi, tablette ou mobile, le jeu fonctionne !

De l’Amiga 500 à l’intelligence artificielle : la genèse de Cyberfield

En 1985, j’avais 15 ans et je découvrais l’informatique pour la première fois. Un ami issu d’un milieu aisé m’offre un ORIC ATMOS (Jean-Julien, si tu me lis…). Une machine qui ferait mourir de rire le plus petit des smartphones d’aujourd’hui tellement ses spécificités étaient ridiculement basses. Mais c’est fou ce qu’on arrivait à faire à l’époque avec 48K. Cela permettait de faire tourner des jeux, du BASIC, de la bureautique simple, et même des démos graphiques. C’était une machine sérieuse. Cette machine, à l’origine de mon intérêt pour les ordinateurs et l’informatique en général, a très vite été rattrapée par d’autres monstres de ces années-là, les ZX Spectrum et autres Commodore 64. Pour ma part, après l’Oric, je suis passé à l’Amstrad CPC 464, puis au 6128.

Un peu plus tard encore, j’ai travaillé dur et je me suis offert une pure source de jouissance ludique : l’Amiga 500. Alors bien sûr, la liste des jeux de l’Amiga est si longue qu’il faudrait des centaines de lignes pour les énumérer… Mais ici, je veux m’arrêter sur l’un d’eux. Un jeu sorti sur bornes d’arcade en 1989 et porté sur l’Amiga en 1991, un jeu qui ne payait pas de mine comparé à certains monuments vidéoludique de l’Amiga mais un jeu ultra addictif sur lequel j’ai passé de très nombreuses heures : je veux parler de Volfied.

Volfied Logo
Le logo de Volfied par Taïto

Le concept est simple : on y pilotait un petit vaisseau pour découper l’écran en zones closes, tout en évitant des boss extraterrestres aux trajectoires vicieuses.

Que d’heures passées les yeux rivés sur l’écran cathodique, le joystick au creux de la main, le cœur battant à chaque pixel grignoté sur le territoire ennemi.

Volfield Original
ScreenShot du jeu original sur Amiga 500

Et puis le temps a passé. Les machines ont changé, les pixels se sont lissés et ce gameplay est devenu un souvenir, une trace de nostalgie gravée dans un coin de ma mémoire de joueur. Une envie me titillait pourtant depuis des années : y rejouer. Pas sur un émulateur impersonnel, non. J’avais l’envie profonde de retrouver cette étincelle, de ressentir à nouveau la tension de cette mécanique si particulière.

Nous vivons une époque formidable ! Aujourd’hui, nous avons à notre portée des outils que le jeune adolescent que j’étais face à son Amiga n’aurait même pas pu concevoir dans ses rêves de science-fiction les plus fous : les intelligences artificielles génératives. Des alliées capables de coder, de comprendre et d’analyser à la vitesse de l’éclair. Une idée un peu folle a alors germé : et si je le recréais ? Et si, avec mon IA préférée, je redonnais vie à cette petite pépite ?

Le défi est lancé. Mon objectif est donc de créer un jeu vidéo de toutes pièces, jouable directement dans un navigateur. Commençons par lui donner un petit nom : Cyberfield. Mon IA préférée et moi (Gemini pour le pas la citer) avons formé un binôme de développement improbable. Moi, dans le rôle du directeur créatif, gardien du temple des souvenirs, de la pédagogie et de la physique du jeu ; elle, la machine à coder infatigable, prête à aligner les lignes de script encore et encore, et autant de fois que nécessaire.

On démarre par la base : un simple prompt

Tout a commencé par une simple description textuelle. J’ai exposé les règles de base à l’intelligence artificielle, comme je l’aurais fait à un collègue développeur. La réponse ne s’est pas fait attendre : un premier canevas en HTML5 et JavaScript, utilisant un élément <canvas> pour le rendu graphique. En quelques minutes, j’avais un carré, un point mobile simulant le vaisseau et un tracé rudimentaire. À ce stade, la sensation est grisante. On a l’impression d’avancer à une vitesse phénoménale.

Pour l’ambiance, je ne voulais pas de sons génériques. J’ai utilisé l’IA Suno pour composer une bande-son « très énervée », un morceau rythmé qui colle parfaitement à l’urgence de ce jeu d’arcade rétro-futuriste. L’intégration de la gestion audio s’est faite naturellement, et l’atmosphère générale de Cyberfield commençait à prendre forme. Mais la lune de miel avec le code a rapidement laissé place à la dure réalité de la logique algorithmique, et c’est là que les aller-retours ont commencé.

Le cauchemar du FloodFill

Dans un jeu de conquête de territoire, la plus grande difficulté réside dans le calcul des zones. Lorsque le joueur quitte la bordure sécurisée, trace une ligne à l’intérieur du carré et rejoint un autre bord, le jeu doit comprendre qu’une zone a été fermée, calculer sa surface et la remplir graphiquement. C’est ici qu’entre en scène l’algorithme de FloodFill (ou remplissage par diffusion).

Au détour d’une ligne de code, l’IA m’a balancé ce mot : FloodFill. Derrière ce jargon technique qui sonne comme un groupe de rock alternatif se cache en réalité un grand classique absolu de l’histoire de l’informatique. Si vous avez déjà utilisé l’outil « Pot de peinture » sur Photoshop ou même sur le Microsoft Paint de votre enfance pour remplir un carré blanc en bleu, vous avez utilisé le FloodFill (ou algorithme de remplissage par diffusion) sans le savoir.

Le principe de base est d’une logique enfantine : l’algorithme part d’un point donné (le pixel où vous cliquez), regarde ses voisins directs (haut, bas, gauche, droite), et si ces voisins ont la même couleur d’origine, il les colorie à leur tour avant de passer aux voisins des voisins. Il progresse ainsi, comme une inondation contrôlée, jusqu’à ce qu’il rencontre une frontière d’une autre couleur qui lui barre le passage.

Dans le jeu vidéo, c’est une technique générique ultra-répandue. On la retrouve pour calculer la « Brume de guerre » qui cache la carte dans les jeux de stratégie, ou encore dans les générateurs de donjons de jeux comme Minecraft pour vérifier que toutes les pièces créées aléatoirement sont bien reliées entre elles et qu’un joueur ne se retrouvera pas enfermé dans une salle sans porte.

Pour Cyberfield, nous avons dû sacrément lui tordre le cou et le complexifier. Il ne s’agissait pas seulement de peindre une zone. L’algorithme devait « inonder » séparément les deux nouveaux espaces créés par le tracé du vaisseau, compter le nombre de cellules de chaque côté pour calculer la surface, et surtout, repérer dans laquelle de ces deux zones le boss était en train de patrouiller. Une fois le boss localisé, l’ordre était donné : « Tu valides et tu colories la zone vide pour donner les points au joueur, et tu ne touches surtout pas à celle où se trouve l’ennemi. » C’est cette gymnastique invisible, répétée instantanément sur des milliers de cellules à chaque fois que le joueur ferme une ligne, qui a fait fumer nos processeurs (et parfois mes nerfs) ! Une magnifique leçon d’algorithmique appliquée, apprise sur le tas.

C’est précisément sur cette partie que le développement a failli s’embourber. L’algorithme devait non seulement colorer la zone capturée, mais aussi déterminer dans quelle sous-zone se trouvait l’ennemi pour ne pas la fermer par erreur. Le cœur du jeu repose sur ce découpage de polygones et cette détection de collision. Et cette difficulté est allée grandissantes quand j’ai eu l’idée de rajouter des Boss…

Le plus compliqué à gérer a été le bug de l’inversion des zones. Lors de mes premiers tests, quand le vaisseau fermait un tracé, le jeu se trompait une fois sur deux : il éliminait la zone vide et considérait que le boss était désormais prisonnier d’un espace minuscule… faisant instantanément exploser le score et mettait fin au niveau. J’avais gagné alors que ne j’avais conquis qu’un faible pourcentage du territoire.

Lorsque j’ai ajouté des boss, la capture d’un Boss pouvait induire l’algorithme en erreur et là encore me faire gagner la partie, alors que la surfacenon conquise était encore immense et que d’autres boss étaient toujours en circulation.

C’est là que le travail collaboratif a pris tout son sens. Ce ne fut pas un simple monologue où je passais des commandes à une machine. C’était une véritable partie de ping-pong intellectuel. Je lançais le jeu, j’analysais le comportement anormal à l’écran : « Attends, quand je coupe par le bas, le calcul de l’aire s’inverse. Regarde la fonction de remplissage. » L’IA reprenait le code, analysait la faille, me proposait une correction géométrique : « Effectivement, l’algorithme de calcul de point à l’intérieur d’un polygone ne tenait pas compte de l’orientation horaire des sommets. Voici le correctif. »

Lorsque l’IA ne parvenait pas à trouver l’erreur, ou lorsque l’explication n’était pas facile, je suis passé par des captures écran. Gemini étant multimodal en entrée, il est en capacité d’analyser l’image que je lui donne ce qui souvent était plus efficace qu’un long discours.

Bug#1
Le tracé bleu au milieu aurait du conduire au remplissage de la zone de droite.. pourtant l’algorithme n’a pas compris ici…

Des échanges constructifs : C’est dans ces instants que le dialogue avec l’IA devient super pointu. Il ne suffit pas de dire « ça ne marche pas ». Il faut analyser le comportement à l’écran, décrire avec précision ce qui se passe, expliquer pourquoi ce n’est pas le comportement attendu et réexpliquer la logique à prendre en compte. C’est un exercice de rétro-ingénierie textuelle passionnant, bien qu’un peu éprouvant pour les nerfs après la quatorzième tentative infructueuse 😉

Nous avons donc enchaîné les itérations pour polir le gameplay, pour assainir la captures des Boss, la capture des patrouilleurs — puisque Boss et Patrouilleurs évoluent de façon très différente dans le jeu — ou la capture des blocs bonus. Et on est revenu un nombre incalculable de fois sur la fameuse fonction Floodfill si capricieuse.

Quand c’est vraiment devenu compliqué, j’ai demandé à l’IA de générer un fichier .log qui me permette de savoir avec une grande précision l’état des différentes mécaniques de calcul.

=====================================================================
   RAPPORT D'ANALYSE DE FIN DE SECTEUR - CYBERFIELD DIAGNOSTIC
=====================================================================
Instant T de la victoire : [09:29:19.954]
Condition validée      : OUI
Déclencheur            : DESTRUCTION TOTALE DES ENNEMIS MAÎTRES
Pourcentage final      : 100% (Objectif: 90%)

--- ANALYSE DE CAPTURE DES BOSS (SEUIL CRITIQUE : 2500 CELLULES) ---
* Aucun boss éliminé par enfermement lors de la dernière action.

--- CHRONOLOGIE DES COMPORTEMENTS (5 DERNIÈRES SECONDES) ---
F#    | T-Timer | Zone % | Pos Joueur | Tracé ? | Boss | Patr. | Détail Cellules (0 / 1 / 2 / 3 / 6)
-----------------------------------------------------------------------------------------
  #000 |    2073 |  43%   | (40,25) | OUI     | 1    | 3     | V:5394 B:340 R:16 P:3804 F:446
  #001 |    2074 |  43%   | (40,25) | OUI     | 1    | 3     | V:5394 B:340 R:16 P:3804 F:446
  #002 |    2075 |  43%   | (41,25) | OUI     | 1    | 3     | V:5393 B:340 R:17 P:3804 F:446
  #003 |    2076 |  43%   | (41,25) | OUI     | 1    | 3     | V:5393 B:340 R:17 P:3804 F:446
  #004 |    2077 |  43%   | (42,25) | OUI     | 1    | 3     | V:5392 B:340 R:18 P:3804 F:446
  #005 |    2078 |  43%   | (42,25) | OUI     | 1    | 3     | V:5392 B:340 R:18 P:3804 F:446

Et comme ce n’était pas suffisant pour me permettre de comprendre, j’ai demandé à l’IA de me faire un Screenshot dynamiquement au moment de la victoire … Bluffant.

Capture d’écran 2026 05 31 à 09.29.28
Prise en un centième de seconde au moment de la victoire

Et puis il y a l’esthétique aussi. L’ajout du Sound Design, les explosions, les petites animations à créer que ce soit pour l’explosion des ennemis, la réapparition de notre vaisseau, l’apparition des petits textes fugitifs en cas de capture ou de bonus…

Ajouter du piment : l’équilibrage et le bloc mystère

Une fois le cœur de l’algorithme stabilisé, nous sommes passés à l’étape de l’habillage et des fonctionnalités de jeu. Pour rendre les parties dynamiques, nous avons implémenté un système de bonus apparaissant aléatoirement sur la carte : des blocs SPEED pour accélérer notre vaisseau, BOMB pour nettoyer l’écran des patrouilleurs actifs, FREEZE pour figer les Boss pendant quelques secondes ou encore un bloc LIFE clignotant pour obtenir une vie supplémentaire.

Mais pour ajouter une touche de perversité et casser la monotonie, j’ai pensé à ajouter un bloc mystère. Ce bloc introduit une vraie mécanique de gestion du risque : le joueur a une chance sur quatre d’obtenir un bonus avantageux (une vie) et trois chances de déclencher un malus pénalisant. C’est ce genre de petit détail qui transforme un simple exercice technique en un jeu amusant et addictif, où l’on hésite avant de foncer sur le bloc.

Et puis, un soir, après une énième modification sur la gestion des collisions, le miracle s’est produit. J’ai lancé la dernière version (la 62). J’ai déplacé le vaisseau. J’ai tracé une ligne, le rectangle s’est coloré, le boss a été repoussé, le signal sonore a retenti et l’affichage a indiqué la progression vers les 80 % requis. Tout était là. La fluidité, la tension, la magie.

Le regard du formateur : l’IA comme partenaire de réflexion

Qu’est-ce que cette expérience m’a appris ? En tant que formateur, j’accompagne régulièrement des professionnels et des apprenants dans la compréhension des technologies numériques et je vois dans cette collaboration un changement de paradigme total. Je n’ai pas écrit chaque ligne de JavaScript à la main, mais j’ai dû orchestrer l’ensemble, concevoir l’architecture, valider la logique de programmation et corriger les bugs de structure. L’IA ne me remplace pas, elle agit comme un amplificateur de compétences (et au vu de mes compétences de programamtion, j’aime autant vous dire qu’elle m’a sacrément augmentée ;-))

Prochainement, je vais animer des sessions de formation et d’initiation à l’intelligence artificielle générative. Il est certain que je vais utiliser l’histoire de la création de Cyberfield comme étude de cas. C’est l’exemple parfait pour illustrer qu’avec de la méthode, de la clarté dans ses consignes et une bonne dose de persévérance, l’IA permet à toute personne dotée d’un minimum de logique et d’organisation de donner vie à ses idées, sans être freinée par la barrière de la syntaxe d’un langage de programmation.

Le jeu est désormais en ligne, fonctionnel, et le code est propre. Mais il n’est pas fini ! Il y a encore quelques petits points que je souhaite corriger, et encore plein d’amélioration que je souhaite lui apporter, nous en reparlerons sûrement.

Ce projet n’a pas seulement été la recréation d’un jeu perdu de mon enfance. Il a été la preuve concrète que la technologie moderne des IA générative est un formidable tremplin qui nous permet d’ouvrir des portes que nous n’aurions jamais osé ouvrir avant. Quand je forme des gens sur Excel, la première chose que je leur dit c’est : si vous avez besoin de faire quelque chose dans Excel, partez du principe que c’est possible.

Avec l’IA Générative, c’est de plus en plus vrai et Cyberfield en est un exemple criant.

Allez, après vous avoir « tenu la jambe » durat tout cet article, il est temps de vous laisser découvrir le jeu !

Je travaille à une prochaine version et si vous jouez à Cyberfield et que vous trouvez un bug, n’hésitez pas à me le transmettre. C’est aussi valable pour vos suggestions d’améloration. Gemini et moi, on est prêts !
Je ne propose pas encore le jeu au téléchargement, je vais attendre un certain niveau de maturité pour ça.

À très bientôt et … restez curieux !