Concevoir un jeu vidéo : l’algo

Qu’est-ce qu’un algorithme ?

L’algorithme est un outil qui vous aide à décrire et à poser à plat tous les méandres de votre programme et de votre jeu, en fonction de ce qu’il y surviendra. Autrement dit, il va s’agir de prévoir et d’établir tous les « chemins » logiques possibles que pourront emprunter votre programme avec leurs « conséquences » logiques mais aussi avec leurs chemins de causalité multiples, leur marge d’aléas et de tirage au sort.

Il ne s’agit pas de faire, ici, un cours complet sur la mise en place d’algorithmes. L’idée est simplement de vous faire toucher du doigt ce à quoi vous devrez vous affronter en amont de la réalisation et si possible avant de vous jeter, la tête la première, en phase de production intensive, sur Unreal ou Unity. Si vous comprenez bien ce qu’est un algorithme et si vous avez la capacité de vous y coller sereinement, d’une certaine façon, vous aurez déjà fait vos premiers armes dans le domaine de la programmation. Citons ici quelques-uns des outils (logiques) qui pourraient vous être utiles au moment de cette conception logique de votre jeu vidéo amateur (ou pas d’ailleurs).

  • Des listes de propriétés numériques et des variables : des qualités de votre personnage qui iront en augmentant (habileté, force, santé, nombre de vies, etc… Des difficultés de terrains variables… Des zombies plus ou moins forts et qui sont plus difficiles à tuer ou cause des dégâts plus grands, etc…
  • Des conditions : SI « le joueur touche le zombie avec son arme ALORS » 1/ le zombie sera détruit 2/ 100 points seront ajoutés au score du joueur 3/un son de victoire sera lu, etc…
  • Des boucles : TANT « que le joueur ne réussira pas a détruire le zombie » ALORS le zombie retraversera l’écran » ( ou sera présent sur la map, etc…)
  • Des compteurs : Si le joueur est tué il aura une vie – 1. Le joueur à N points d’habileté et s’il décroche un bonus ou réussit une action particulière il aura N+100 points d’habileté, …
  • Des tirages au sort et des règles aléatoires : cela équivaut à un tirage de dés. Avec cela vous pourrez résoudre tout un tas de choses, des scores aux résultats variables et qui contiennent un part d’aléas, l’apparition à des emplacements aléatoires d’une zombie, une loterie qui se lance et attribut un bonus au joueur, etc, etc…
  • Des routines d’affichage, d’événements, de calculs, etc : SI « le joueur réussit à dégommer le zombie », ALORS « appelle la séquence d’animation où il saute de joie »
  • Des coordonnées de terrain : dans votre programme, vous aurez encore quelque part des coordonnées pour définir votre terrain. En 2D (sous forme de « tableaux » de jeu d’arcades) ou en 3D (avec plus de relief et de profondeur), ces terrains contiendront des objets, des obstacles, des difficultés. Certains pourront être fixes et revenir à chaque fois (arbres, maisons, routes). D’autres pourront être disposés aléatoirement. D’autres encore pourront également déclencher des événements de manière localisée et interactive : « Si le joueur entre dans cet espace alors les zombie ne pourront plus l’atteindre ». « Si le Zombie entre dans le rayon d’action de cette mitraillette automatique alors un tirage sera effectué » « Si le résultat du tir est de Y alors enlève Y points de vie au zombie, S’il est inférieur à ….etc, etc…

    Rassurez-vous certains programmes ou plateformes vont vous aider de manière « User friendly » à mettre en place ce terrain et peut-être même ses éléments de décors et l’emplacement de ces zombies. Il reste que quelque part dans l’univers virtuel de votre jeu, cet aspect sera aussi codé de manière logique et mathématique.

Une meilleure architecture

Voilà pour quelques outils qui vous attendent au moment de découper le déroulement et les éléments de votre jeu. Dans l’idéal, cette phase de conception qui s’accompagne d’une certaine partie de réflexion logique va vous permettre d’avoir une vision beaucoup plus claire de votre création. Plus vous partirez en production en ayant une vision logique du résultat escompté, plus vous gagnerez du temps en réalisation. Plus votre architecture sera propre aussi. Cette phase permet également de mettre en valeur et de résoudre, dès le départ, de possibles incohérences ou déséquilibres dans votre jeu. Elle pourra même vous permettre d’ajouter assez simplement un peu de créativité et de complexité à quelques endroits bien sentis. Bref c’est un atout majeur.

Puis-je en faire l’économie ?

Pouvez vous en faire l’économie ? Peut-être. Si votre jeu possède des règles simplissimes, mais s’il est un peu ambitieux vous devrez y passer. Il faut bien comprendre que les jeux vidéos les plus élaborés comme les langages de programmation les plus sophistiqués ne font que s’efforcer de répondre, de manière plus ou moins complexe, à des ensembles de problèmes logiques et à leur articulations. Posez-vous la question. Pouvez vous construire une voiture, pièce par pièce, sans savoir comment fonctionne la mécanique ? Et surtout à quoi ressemblerait le résultat final ?

Ajoutons qu’on trouve en ligne de très bonnes formations aux bases de l’algorithmie et même des éditeurs gratuits qui mettent à disposition tous les outils logiques pour construire facilement ses propres algorithmes. Si vous êtes programmeur vous savez déjà tout cela. Cela ne s’adresse donc pas à vous. Si vous ne l’êtes pas et que vous avez une véritable ambition dans le domaine de la conception de jeu vidéo même amateurs, nous vous déconseillons de zapper cet aspect des choses. Vous le recroiserez, tôt ou tard, sur votre chemin aussi mieux vaut plus tôt que tard.

Vous avez l’idée, une bonne idées de fonctionnalités et le scénario, c’est le moment de passer en production : les outils d’aides à la création de jeu vidéo.

Commencez à saisir votre recherche ci-dessus et pressez Entrée pour rechercher. ESC pour annuler.

Retour en haut