Actuellement, j’essaie de programmer un shoot 'em up à défilement horizontal en utilisant le même moteur de sprites (ainsi que son éditeur de sprites) que celui que j’avais développé pour mon jeu « Sternenschwarm ».
En réalité, deux programmes tournent ici « en parallèle ». Le shoot 'em up proprement dit et le défilement de l’arrière-plan. Comme il s’agit d’un défilement matériel (hardware scrolling), je ne peux pas le ralentir sans qu’il commence à saccader.
Remarques :
CONSEIL : N’oubliez pas de basculer les contrôles sur le clavier
Je n’ai pour l’instant réalisé que 4 des 20 niveaux.
J’ai désactivé le son pour le moment. Il est encore atroce.
Chaque niveau a son propre design.
Les meilleurs scores sont enregistrés, à condition que la disquette ne soit pas protégée en écriture.
Il y a des « power-ups » dans le jeu
La disquette est déjà presque pleine, je vais donc probablement devoir repenser l’ensemble du jeu. De plus, j’ai cette fois-ci de très grandes difficultés à trouver le bon équilibre entre difficulté et plaisir de jeu. Pour l’instant, je n’ai pas d’idées passionnantes, à part d’autres thèmes visuels.
Salut. Tu sors un nouveau jeu tous les deux jours et il y a une certaine « aura d’IA » qui commence à se faire sentir. Alors, pour être franc, à quel point l’IA a-t-elle été utilisée ici ?
J’ai demandé à ChatGPT de me fournir et de m’expliquer le code pour le scrolling matériel (hardware scrolling). Je l’ai ensuite adapté précisément à mes besoins (voir le redessin continu des graphismes sur le côté droit. À chaque frame, il s’agit de 2 nouvelles colonnes de pixels (= 1 octet, Mode 0). Voir également à ce sujet mon éditeur de sprites publié, il gère comme format d’exportation l’agencement mémoire requis pour cela).
La séquence de notes pour la musique de fond provient à 100 % de l’IA. (Désactivée dans le mockup, car c’est encore horrible à écouter).
Comme lecteur, j’utilise le génial ArkosTracker3. Il existe déjà, donc je n’ai pas eu besoin de l’écrire moi-même.
Les autres outils (effets sonores, moteur de sprites, gestionnaire d’interruptions) sont de mon cru. Au fait : le gestionnaire d’interruptions et la gestion de la pile de tous les objets sont écrits en C. Tirés d’un projet de microcontrôleur. C’est toujours et partout la même chose. C’est bien ça qui est beau.
Mon éditeur de sprites (fichier HTML, publié ailleurs) a été créé avec l’aide de l’IA. Mais il ne sert qu’à créer les graphismes. Particularité : il peut convertir n’importe quelle image en sprites CPC. Il maîtrise un agencement des données qui permet un affichage rapide des sprites.
Combien d’IA y a-t-il donc dans ce mockup ? Tout bien considéré, énormément. L’IA est un bon professeur et apporte de la motivation. C’est ainsi que je l’utilise.
Regardez un peu dans le mockup actuel les petits détails comme : la flamme de l’avion bouge en fonction de son propre déplacement. C’est du travail fait main. C’est l’âme d’un programme. Une IA intégrerait-elle des détails soignés avec autant d’amour ? Je ne sais pas…
De plus, les graphismes deviennent moins bons de niveau en niveau. J’ai perdu la motivation. Une IA aurait-elle mené ça à terme sur un simple prompt ?!
Deux mots sur moi :
J’ai 59 ans et je suis diplômé en informatique (angl. : Computer Scientist).
Ma motivation est de faire revivre une vieille passion. J’arrive à un âge où les défis professionnels s’estompent.
À l’époque où l’on trouvait encore des magazines CPC en kiosque, j’y avais déjà publié plusieurs articles et programmes sur le CPC. Des jeux, des utilitaires de copie et de disquette… Depuis ce temps-là, mon cœur est toujours resté attaché à cette machine. (Quel choc, ça fait plus de 40 ans !)
J’ai aussi publié sur d’autres forums (avant le Covid, voir Asteroids dans une version antérieure) ; malheureusement, ces forums ont disparu entre-temps.
Cela m’amène à une réflexion : serait-il intéressant de publier ici une série d’articles sur la façon de développer des logiciels sur CPC à l’aide d’un cross-assembleur ? Mais une IA peut aussi l’expliquer… Hmmm… donc plutôt non ? Des cours sur YouTube existent déjà aussi…
C’est vrai :
Sans l’IA, ce mockup n’existerait pas.
Avec plus d’IA, il serait plus agréable à regarder et sans doute mené à son terme.
Il ne reste plus que trois ou quatre thèmes qui m’intéressent vraiment. Tous mes mockups et jeux jusqu’à présent vont exactement dans cette direction :
Une idée de jeu inspirée d’Elite, mais avec une simulation économique intégrée où chaque décision du joueur a un impact direct sur l’ensemble du système. Le jeu se déroulerait uniquement dans notre système solaire (planètes et lunes).
Une idée de jeu inspirée de The Bard’s Tale (le premier opus). Mais avec un moteur graphique qui visualise les rotations (comme dans mon premier mockup). Les énigmes devraient être si difficiles qu’il faudrait faire des recherches dans la vraie vie pour pouvoir terminer le jeu.
Un jeu avec un défilement diagonal continu. Dans le genre du vieux jeu Zaxxon.
(Éventuellement une version plus complexe du jeu Amiga Carrier Command. Une évolution de ma simulation économique façon Elite. Mais là, je n’en suis encore qu’à l’étape des croquis sur papier. Je n’ai pas non plus encore choisi la plateforme cible : peut-être uniquement pour le Raspberry Pi (en natif), sous Linux en général, en jeu sur navigateur, sur CPC 6128, selon ce qui m’intéressera le plus à ce moment-là.)
Après cela, je me consacrerai à d’autres passe-temps
Tu vois, ce n’est pas si sorcier. Allez, un peu de courage. Maintenant, pour en revenir au jeu.
Tu y as joué ? Je l’ai littéralement terminé rien qu’en appuyant sur le bouton de tir, sans même déplacer le vaisseau d’un seul pixel par rapport à sa position de départ. Anecdote amusante : si ton navigateur est en mode fenêtré et que tu lances le jeu avec l’émulateur intégré, tu martèles la touche de tir jusqu’à ramasser tous les bonus, puis tu maintiens le bouton de tir enfoncé et tu cliques avec la souris en dehors de la fenêtre du wiki. Tu peux faire ce que tu veux sur ton PC tout en regardant le jeu se finir tout seul.
Du coup, ça m’a tout l’air d’être un cas typique (et cela ne vise pas ce jeu en particulier, c’est une observation plus générale) où « la conception du jeu a été laissée à l’IA et la personne derrière les prompts ne comprend rien à ce qui se passe » ; ou alors s’en fiche complètement.
L’autre chose qui me sidère (encore une fois, c’est une remarque générale), c’est de voir à quel point les gens s’extasient en criant au génie pour une sortie, alors que c’est objectivement d’une nullité abyssale.
(édit : juste pour clarifier, les deux dernières phrases visent les créations générées par IA en général, et non cette sortie en particulier)
Et pour être honnête, ses sorties commencent à me faire changer d’avis sur l’utilisation de l’IA dans les jeux rétro. Ils sont clairement inspirés des classiques — mais ils apportent aussi, d’une certaine façon, un souffle nouveau avec des graphismes nets et colorés, et ne sont pas juste une vulgaire copie conforme d’un original d’arcade.
Bien sûr, il leur manque cette touche finale qui transforme une preuve de concept (PoC) en un jeu amusant et réussi, mais en voyant le jeu, j’en perçois déjà tout le potentiel. J’ADORERAIS jouer à ce jeu une fois que le level design aura été ajusté manuellement pour en faire un véritable défi.
Mais ouais, pas avec ce level design en l’état. Mais bon… j’adore le scrolling, j’adore les graphismes, j’adore l’ambiance générale — et je suis surpris de dire ça d’un jeu où l’IA a joué un rôle aussi déterminant.
Il semble que la non-divulgation de l’utilisation de l’IA soit un sujet sensible, donc je suppose qu’il faudrait en tenir compte. De plus, les gens ne peuvent commenter que ce qui est mis à leur disposition. Je ne vois pas trop l’intérêt de publier un « prototype » si l’on ne cherche pas à obtenir des retours.
J’ai publié ce prototype pour recueillir des retours. Peu importe sous quelle forme. Jusqu’à présent, je trouve la discussion constructive. Je lis chaque commentaire. Merci beaucoup pour vos avis et vos pistes de réflexion.
Eh bien, je crée des jeux de tir (la partie graphique), donc je m’y connais en shooters. Et je suis très pointilleux quand il s’agit de ce genre de jeu. Ce que tu recevras de ma part, ce sont exactement les mêmes retours que je me ferais à moi-même.