Le flowchart… ça se mange?

[Note: l’article n’est pas terminé à 100%, n’hésitez pas à me dire ce que vous n’avez pas comprit, ce que vous n’avez pas aimé ou au contraire apprécié, le but est d’améliorer au maximum mes articles]

Certains en ont déjà entendu parler, d’autres en ont déjà eut sous les yeux sans savoir que ça s’appelait comme ça, mais quel est cette étrange bestiole: le « Flowchart ».

Voici un petit article rapide qui va survoler le sujet pour répondre a quelques unes des questions que certains d’entre vous peuvent se poser: A quoi ça sert ? Comment le mettre en forme ? Est-ce obligatoire ? Y a t’il des règles pour en créer un ? etc.

1/ Un Flowchart, c’est quoi?

C’est un schéma de type diagramme qui représente de façon normalisée un processus, étape par étape.

C’est un outil servant aux « Game designer » a structurer l’intégration d’un processus dans un jeu.

Il permet de :

  • visualiser le processus idéal que l’on souhaite mettre en place
  • détecter rapidement les problèmes qui peuvent survenir
  • communiquer aux autres membres de l’équipe (game designer, programmer) sa vision du processus

Exemple d’un flowchart :

L’une des règles à toujours garder en tête est que le flowchart doit être comprit par les personnes qui vont être amené à l’utiliser.

2/ Les symboles

Il existe plusieurs symboles normalisés ayant chacun une fonction bien définit dans le flowchart:

Rectangle arrondi: représente le début et la fin du processus. On y note généralement « Start » et « End ». On peut utiliser un rond pour ce symbole.

Diamant: Contient une question à laquelle on attend une réponse du type « oui »/ »non » ou « vrai »/ »faux » (Est ce que le monstre a des points de vie inférieurs à 10 ?).

Rectangle: Représente une étape clef du processus (lancement d’un sort, modification d’état, etc…).

Rectangle/rond: Représente un délai d’attente durant le processus. (intervalle de lancement d’un sort faisant partie du processus).

Chacun de ces symboles est relié par un trait. Le sens de lecture d’un flowchart est de haut en bas, si le sens de lecture change il est nécessaire de flécher les traits pour indiquer le sens de lecture.

3/ Etude de cas

Rien de mieux que de prendre un exemple concret et tant qu’à faire autant prendre comme base un jeu que je connais bien: Wakfu, les gardiens.

Nous allons partir du principe que le joueur se retrouve face à un monstre que l’on appellera « Flauche Art ».

Objectifs:

  • Créer un combat avec un début scénariser en 2 sorts de scénarisation: « Apparition » + « Provocation « 
  • Ce monstre doit avoir 1 phase fixe déclenchée lorsque « Flauche Art » arrive à 30 points de vie ou moins, il lance le sort « Furie ».
  • Ce monstre doit lancer le sort « Fuite » lorsqu’il a 10 points de vie ou moins. Ce sort ne peut être lancé que si le sort « Furie » a été lancé précédemment, il met fin au combat.
  • Les actions de scénarisation présentes dans ce flowchart sont prioritaires sur les actions basiques du monstre
  • Nous ne ferons pas apparaitre dans ce flowchart les actions basiques qui sont disponibles à tous moment.

Chaque étape du Flowchart représente un tour de jeu.

Que fait le monstre « Flauche Art » en jeu lorsqu’il a lancé « Apparition » et « Provocation » mais qu’il possède plus de 30 PV ?

Si Flauche Art ne peut pas lancer l’un des sorts de scénarisation que nous avons définit, il aura recours aux sorts basiques à sa disposition.

C’est alors l’IA (Intelligence Artificielle) qui définira quel sort utilisé en fonction des paramètres du combats (portée, position, etc…).

Que se passe t’il si Flauche Art peut lancer un sort de scénarisation et un sort basique au même moment ?

Comme nous l’avons définit en règle de base, un sort de scénarisation sera toujours prioritaire sur un sort basique.

Le sort de scénarisation sera donc lancé.

4/ Le Flowchart… son utilité

Je parlerai ici de l’utilité du flowchart dans le cadre d’un jeu-vidéo et plus précisemment sur « Wakfu, les gardiens ».

Dans le cadre du jeu « Wakfu, les gardiens », le flowchart est principalement utilisé pour mettre en place certains combats partiellement ou complétement scripté (ex: Dance Dance Goultard de l’épisode 22).

Le premier intérêt du flowchart est de permettre au game designer de structurer son idée avec un processus logique. De nombreux problèmes peuvent ainsi être évités en se rendant compte rapidement des incohérences ou in-faisabilité du design.

Sur « Wakfu,les gardiens » nous avions des délais relativement court (1 semaine par épisode), nous devions rapidement mettre nos idées en formes et créer les tâches destinées aux graphistes (décors, animations, sprites). Il fallait donc être sure que les mécaniques mises en place soit en accord avec l’expérience joueur souhaitée et qu’elles soient réalisables d’un point de vue technique et temps.

Si un problème survient sur un combat alors que le Game Designer l’ayant créé n’est pas disponible, le flowchart permet à n’importe quel autre GD de comprendre la logique et d’avoir une vision globale du combat (avec les tenants et aboutissants).

L’une des difficulté auquel doit faire face un game designer est de pouvoir rapidement déterminer une expérience de jeu, puis la traduire sous forme de mécanique et faire en sorte que toute les personnes travaillant sur le projet aient la même vision.

5/ Adaptation et simplification

L’une des règle principale de tout Game designer, à mon sens, et de savoir communiquer avec toute les branches de métier du jeux-vidéo et pour cela il doit adapter son discours en fonction de la personne avec qui il parle.

Il est évident que pour parler d’un même point du jeu, nous n’allons pas aborder la chose de la même manière en fonction de notre interlocuteur (programmeur, game designer ou graphiste), il en va de même pour le flowchart.

Dans la majorité des boites, le flowchart circulera entre un game designer et un programmeur, mais ce ne sera peut être pas toujours le cas !

Gardez en tête, que comme tout outil, le flowchart doit s’adapter a vos besoins et non l’inverse.

Voici un exemple de Flowchart non normalisé, qui n’est pas professionnel mais qui est compréhensible par tout le monde !


Et le pire c’est que c’est très proche de la réalité !

6/ Les logiciels

Il existe certains logiciel destiné à créer des flowvhart de manière plus intuitives et rapide, en voici une petite liste:

* Edraw: l’un des plus complets, mais payant.

* OppenOffice.org Draw: Loin d’être le meilleur, mais il est gratuit.

* Yed: Mon préféré, il est gratuit et en java. Il peut importer des fichiers Excel et permet l’export sous forme de fichier graphique (jpeg, PNJ, etc.). Simple et efficace je l’utilise aussi pour les playboard.

Bien entendu il est possible de réaliser un flowchart directement sur des logiciels tels que Word ou Excel.

About Jerome Echalard

Gamer, Game Designer and producer. Co-founder of Fundation Studio.