Posted October 03, 2020 by Quetzakol
#post mortem #aventure #2d #unity #solo
Ça y est. Après un peu plus de 4 ans, j'ai enfin fini par achever et sortir mon jeu, L'Antre du Protecteur. Si vous arrivez ici sans avoir vu le jeu auparavant, je vous invite à aller faire un tour sur la page du jeu, et à y jouer si le cœur vous en dit. Le développement du jeu durant ces 4 années était loin d'être simple, je dirais même chaotique (mais sans doute est-ce le cas pour la plupart des jeux vidéo). Néanmoins, il fut très riche en enseignements et en réflexions, raison pour laquelle je commence ce (long) post mortem.
Dans cette première partie, je vais revenir sur les origines du projet, mes objectifs, et les grandes étapes de mon parcours jusqu'à aujourd'hui. Let's go!
L'Antre du Protecteur est loin d'être mon premier jeu. Lorsque j'ai commencé ce nouveau projet, j'avais déjà un petit nombre de projets derrière moi et je savais (en partie) dans quoi je m'embarquais. Je vais laisser de côté les mini-jeux sans réelles ambitions pour passer directement à mon premier "gros" jeu : Onalyan. C'était en 2008. À l'époque, je n'avais encore que 13 ans et seulement 1 an d'expérience en programmation. Je faisais alors la collection des projets abandonnés : romans, bandes dessinées, jeux, etc. J'avais toujours beaucoup d'ambition mais jamais le courage de vraiment terminer quoi que ce soit, et ça commençait à me frustrer beaucoup.
C'est là que j'ai commencé Onalyan, avec l'objectif de réduire mes ambitions et, pour une fois, enfin terminer un projet ! Je ne sais plus très bien combien de temps j'imaginais passer dessus. Ce qui est sûr, c'est que la dernière des 3 années de développement était inattendue et m'a parue très longue. Mais, après en avoir bavé pendant 3 ans, je sortais enfin mon jeu vidéo ! Il était extrêmement amateur et imparfait, bien sûr, mais j'en étais (et je le suis toujours) fier. J'ai bien compris que ça ne serait pas un gros succès alors je n'ai pas insisté. J'ai préféré laisser le jeu dans un état un peu bugué et moyen et passer à autre chose. Le jeu a d'ailleurs eu son propre post mortem.
Après ça, je pensais attendre un peu avant de démarrer un nouveau projet. Et pourtant, il n'a pas fallu attendre plus d'un ou deux mois avant que la motivation revienne. Motivé par la réussite (du moins, l'aboutissement) d'Onalyan, j'étais prêt à viser plus haut et plus grand ! Jamais plus je n'abandonnerais mes projets, et le futur ne pouvait qu'aller de mieux en mieux ! Ha ha, j'étais si jeune et si naïf.
C'est aussi à ce moment-là (en 2011 donc) que j'ai commencé à participer à des game jams. L'occasion de devoir vraiment limiter ses ambitions vu que la deadline est fixée à l'avance. L'occasion d'essayer des choses qu'on ne ferait pas d'habitude, aussi, parce qu'on n'aurait pas la motivation de le faire sur un projet à long terme. Enfin et surtout, la possibilité d'échanger beaucoup plus avec d'autres créateurs et d'avoir du feedback rapide. Je suis passé des Novendiales sur le forum du feu Games Creators Network, à la Ludum Dare. Et cela m'a toujours énormément plu. En tout, j'ai déjà participé à 8 game jams, et je compte bien continuer.
Revenons à fin 2011. À ce moment-là, je débute un nouveau projet. Plus ambitieux encore, car je me dis que mon expérience gagnée va me permettre d'aller plus vite. Aussi, je ne veux pas être seul sur ce projet, alors je demande à des gens de m'aider. Je me sens super inspiré. 3 ans et demi plus tard, le jeu n'en est nulle part. Je n'ai ni l'envie ni le temps de revenir en détail sur cette période, mais notons néanmoins les obstacles rencontrés :
Bref, j'ai visé trop haut, et largement sous-estimé la difficulté de gérer une équipe, surtout amateure. En juin 2015, seul et ayant perdu toute motivation pour quoi que ce soit, je me résigne à abandonner le jeu pour mon propre bien. Avec l'option de le reprendre un jour à zéro.
Le temps passe et je commence à aller mieux. Fin 2015, alors qu'un nouveau Humble Bundle sort, je décide de l'acheter. À ce moment-là, je ne jouais plus beaucoup. Ce bundle me fait reprendre goût aux jeux vidéo grâce, notamment, à Life Is Strange auquel j'accroche énormément. Toujours aux études à Liège, je me rends également aux cours d'Histoire et analyse des pratiques du jeu vidéo, organisés par le Liège Game Lab. Je reprends peu à peu goût aux jeux et suis bien décidé à retenter la création d'un jeu à l'été suivant. Au même moment, mon frère me parle d'Unity et je suis tenté d'apprendre à l'utiliser.
Juin 2016. Ayant pratiquement achevé mon année d'étude, je commence le développement de mon nouveau jeu. J'ai alors plusieurs objectifs et motivations :
Je prends un peu de temps à me décider. Je change plusieurs fois d'idée, mais je finis par rester sur une idée simple : un jeu d'aventure en 2D de profil avec des petites énigmes à résoudre. En intégrant bien entendu toute une série de créatures dans ces énigmes, le tout racontant une histoire simple centrée sur l'équilibre d'un écosystème.
J'intègre également rapidement la mécanique des notes, un bouquin disponible en permanence et donnant quelques infos sur chacun des animaux et chacune des plantes du jeu. Deux inspirations sont à l'origine de cette idée. D'abord, mes souvenirs d'enfance. Quand j'étais enfant, mon frère avait un "guide illustré de la nature", un livre qui permettait d'identifier n'importe quelle espèce vivante via une clé de détermination, et qui fournissait ensuite quelques infos sur l'espèce en question. Les heures passées à identifier tout ce qu'on trouvait sont des moments précieux pour moi et je voulais essayer de retranscrire cette expérience. Ensuite, il y a un autre jeu de mon enfance : Croisades. Un jeu peu connu avec des personnages en FMV se déroulant au temps des Croisades. Le jeu avait une volonté pédagogique et intégrait une encyclopédie qu'il fallait utiliser pour résoudre les énigmes, même si une grande partie était juste là à but informatif. J'adorais ce jeu et ai toujours rêvé de retrouver ce genre de mécanique dans d'autres jeux.
La mécanique d'infiltration des pensées des créatures arrive un peu plus tard, lorsque je me rends compte qu'il manque quelque chose pour rendre les énigmes plus intéressantes. Cette idée-là ne cessera jamais d'évoluer jusqu'à la fin du développement du jeu, s'appliquant d'abord à tous les êtres vivants puis seulement aux animaux, prenant la forme d'un graphe, puis d'une sphère autour de laquelle on tourne, pour finalement changer vers la version actuelle à peine quelques semaines avant la sortie du jeu.
Toutes mes idées sont là et j'écris très rapidement un brouillon pour le scénario et les différents niveaux du jeu, y compris les énigmes. Je découpe le jeu en 5 parties. Il ne reste plus qu'à créer tout ça.
Je commence donc avec en tête l'idée de terminer pour la fin de l'été. Les débuts avec Unity ne sont pas sans peine, mais pas d'obstacle insurmontable non plus. Je me rappelle assez peu de cette période. Ce que je sais, c'est qu'à la fin de l'été, je n'ai terminé qu'une seule partie sur les 5 prévues. Je reste confiant et me dit que beaucoup de temps a été passé à apprendre Unity et construire le moteur du jeu, et que quelques mois seront suffisants pour le terminer.
Le jeu ressemblait alors à ça :
Mais pour l'heure, je reprends les cours et j'ai un mémoire à écrire, du coup le reste est reporté à l'été suivant. Cela ne m'empêche de participer à deux game jams durant l'année, réalisant The Mysterious Room of Dr Ludum et A Cage of Love, toujours avec Unity.
Mes études terminées, je décide de reprendre le projet et de le finir pour de bon ! C'est là que je me rends compte que :
Cela paraît donc évident : il faut reprendre à zéro. En réutilisant malgré tout ce qui était suffisamment bon, bien entendu. Au lieu des sols tout plat, je veux des formes manipulables. Le village est minuscule et vide, je veux plus de vie ! Et des meilleurs dialogues ! Et des cinématiques plus dynamiques ! Beaucoup d'améliorations qui certes en valent la peine, mais qui demandent beaucoup de temps.
Je donne enfin un vrai sprite au personnage principal. Et argh, je suis tellement nul pour dessiner des êtres humains. Autant je suis à l'aise pour dessiner des créatures, autant le corps humain me rend fou. Si vous en doutez, voici ma première tentative :
Finalement, je me débrouille pour faire mieux et parviens même à faire quelques animations que je trouve pas trop dégueu. Le projet avance, mais le temps aussi. Le 1er septembre approche, mes congés arrivent à leur terme, et je m'apprête seulement à terminer la nouvelle version du premier niveau... Néanmoins, je suis vraiment satisfait du résultat et décide de le poster en ligne fin août pour récolter des premiers avis.
Je poste mon jeu sur le forum d'un site dédié aux jeux indés. Rapidement, je reçois une réponse. La seule réponse que j'aurai sur ce forum. Résumé du feedback :
Pas. Un seul. Point. Positif. Ni même d'encouragement. Au mieux, un "l'idée de base paraît plutôt sympa".
Je prends un peu de temps avant de me calmer, car recevoir un tel commentaire après plusieurs mois de travail, quand on a mis tout son cœur dans un projet et qu'on en est fier, ben... ça ne fait pas plaisir du tout. C'est même carrément démotivant. Tout à coup, et vu l'absence d'autres retours, j'ai l'impression que tout est à jeter. Que j'ai perdu mon temps, et que je ferais peut-être mieux d'abandonner.
Je me rassure en voyant que la personne en question est très critique sur d'autres projets qui à mes yeux n'ont pas l'air si mal. Une amie teste aussi mon jeu et semble l'apprécier malgré tout. Mais ça fait tout de même mal. J'accepte cependant la critique, et demande plus d'informations pour comprendre mieux comment m'améliorer. Il a la gentillesse de m'expliquer en détail tout ce qui ne va pas, et ce feedback me sera très utile par la suite.
Néanmoins, tout à coup, ce niveau 1 amélioré n'est déjà plus acceptable, et il va falloir revoir la qualité avant de passer aux niveaux suivants. En espérant avoir le temps, car mes congés se terminent et ayant fini mes études, je commence alors à travailler.
Commence alors une longue, très longue période d'incertitude et de difficultés. Je garde la motivation au début, et tente tant bien que mal de travailler sur mon jeu pendant mon temps libre après le boulot et les weekends. J'y arrive quelques jours seulement. Rapidement, je passe un jour, puis un autre. Les jours où je progresse se font rares. Je suis généralement trop fatigué pour avoir le courage de lancer Unity et tout le reste en fin de journée, et surtout, me replonger dedans demande beaucoup d'énergie. Les jours où je ne travaille pas sur mon jeu, je culpabilise.
En plus de ça, je commence à perdre l'intérêt à force de travailler sur le même premier niveau, encore et toujours, juste pour améliorer des détails. Je commence à croire que les 4 niveaux suivants ne verront jamais le jour. Pourtant, ils me font de l'œil, il y a tant de choses que j'aimerais déjà développer sur ces parties-là !
Troisième souci : je me noie sous les bugs. La physique de mon jeu est vraiment galère. Le personnage n'arrête pas de rester bloquer sans raison, ou au contraire de tomber subitement dans le vide ! À l'époque, j'avais essayé d'avoir des embranchements dans la route sans jamais devoir changer d'écran. Mais c'était horriblement compliqué à gérer, aussi bien en terme de code que de Level Design, et je n'en voyais pas le bout.
Bref, il faut faire quelque chose. Et après quelques mois à tourner en rond, je prends plusieurs décisions.
Il faut être réaliste. Avancer tous les jours, ce n'est pas possible. Passer de mon travail à mon jeu demande un changement de contexte et une énergie conséquentes. Et puis surtout, j'ai tout simplement le droit de faire autre chose de ma vie sans culpabiliser. Alors bien sûr, personne ne m'a jamais forcé à faire ce jeu, mais je m'étais mis inconsciemment cette pression sur moi-même.
Pour toutes ces raisons, je décide "officiellement" de ne pas avancer sur mon jeu la semaine, à part si j'en ai vraiment envie, et de m'y consacrer uniquement les weekends. En fin de compte, c'est déjà plus ou moins ce qu'il se passait, mais le décider sérieusement a permis de me libérer d'un poids inutile.
Je revois aussi ma manière de travailler. J'ai besoin d'avancer sur des choses qui me motivent ! Avancer niveau par niveau pose plusieurs problèmes :
Je décide donc d'utiliser plutôt une approche "couche par couche". C'est-à-dire, travailler un aspect du jeu (graphismes, sons, level design, dialogues, etc.) sur son ensemble plutôt que sur un niveau particulier. Avec la possibilité de passer d'un aspect à un autre quand j'en ai envie, même si je n'ai pas tout terminé. Pour les graphismes, en particulier, il était nécessaire de s'attarder quand même par niveau pour garder une cohérence graphique par niveau.
Le seul inconvénient de cette approche : je n'aurai aucun niveau fini, aucun véritable "jeu" avant la toute fin, où toutes les parties finiront par s'emboîter. Ce qui veut aussi dire, pas de nouvelle démo jouable dans l'immédiat. Mais la motivation revient grâce à ça, et avec le recul je pense que ça en valait le coup.
Je n'arrive pas à avancer avec ces 5 gigantesques niveaux et cette physique abominable. Alors je revois mes ambitions :
Un meilleur équilibre et la motivation retrouvée, il est maintenant temps de créer ! La motivation va et vient, mais je tiens le coup. Je prends de temps en temps des semaines de congés que je consacre en grande partie à ça. C'est bien souvent durant ces semaines que les avancées les plus significatives ont lieu. Encore une question d'élan : se plonger dedans et être vraiment concentré prend du temps, et y dédier plusieurs jours d'affilée permet de ne pas briser cet élan.
Je fais de mon mieux en espérant une démo jouable pour fin 2018. Fin 2018, j'en suis très loin, alors je repousse à 2019. Fin 2019, toujours pas. N'en pouvant plus, je décide de me mettre une deadline pour mi-2020. Je sortirai un jeu à cette date quoiqu'il arrive, quel que ce soit le niveau de finition. Tant pis si ça ne correspond pas à ce que je voulais, tant pis si ça tombe dans l'oubli aussitôt posté. Mais je veux passer à autre chose.
Avant de passer à la suite, j'aimerais revenir sur certains des aspects qui ont marqué cette longue période.
Je crois m'être rarement autant planté dans une estimation, passant de "petit projet de 2-3 mois" à "énorme masse de travail sur 4 ans". Mais je crois que c'est bien là le plus difficile dans la création de jeu vidéo : limiter ses ambitions et estimer la charge de travail. Et encore, cela aurait pu durer 1 ou 2 ans de plus si je n'avais pas fait un choix difficile : supprimer du contenu. Je vous propose donc une petite liste en mémoire de toutes ces créatures, idées, lieux qui sont morts en chemin. Adieu Alek, adieu Sage, adieu village des branchevêches, adieu lacs souterrains et toutes tes créatures...
Quand la tâche est longue et s'étale sur autant de temps, il est facile de rapidement travailler mécaniquement sans plus trop savoir pourquoi on le fait. À terme, il est normal que la motivation s'en aille. J'ai songé plusieurs fois à abandonner à cause de cela. Ce qui m'a sauvé la plupart du temps est finalement assez simple : se rappeler des motivations initiales.
Alors bien sûr, ça parait simple dit comme ça. Mais il ne suffit pas de se dire "je fais ça parce que j'aime bien les jeux vidéo" dans sa tête, et hop! motivation retrouvée pour les 6 prochains mois. Ce qu'il faut, c'est prendre le temps de retrouver les émotions de départ, les espoirs un peu fous, l'excitation un peu naïve. Dans mon cas, cela se traduit souvent par une pause où je vais marcher et prendre le temps de repenser au début du projet, mais aussi tous les moments de satisfaction que j'ai pu avoir depuis. Je suis aussi retourné lire les premières pages d'idées écrites au début du projet, pour m'aider à me rappeler. Les souvenirs, et les émotions qui y sont liées, reviennent alors plus facilement.
Je n'aime pas beaucoup parler de mes projets à mes proches tant qu'ils ne sont pas terminés. Pour différentes raisons, j'ai tendance à penser qu'à moins d'en parler à quelqu'un qui connaît bien le développement de jeux vidéo, cela a plutôt un impact négatif. Mais à un moment donné, il faut bien justifier ces longues heures enfermé devant mon PC.
De nouveaux obstacles viennent alors s'ajouter :
Déjà 2020. Plus que 6 mois avant la deadline que je me suis fixée. Comme je l'imaginais, cela me motive énormément et je commence à progresser bien plus vite qu'auparavant. Je recommence même à bosser certains jours de la semaine, ce qui devient de plus en plus courant à mesure que la deadline approche. Les dernières semaines, je bosse dessus tous les jours.
Je prends plusieurs semaines de congé pour avancer, semaines épuisantes mais très satisfaisantes. C'est l'occasion d'enfin avancer sur des aspects du jeu qui étaient restés à l'abandon pendant des années : le sound design, les décors, le level design ou encore le comportement des créatures. Beaucoup de choses qui transforment petit à petit le tas d'images et de dialogues en un tout véritablement cohérent, jouable, et qui commence tout doucement à me plaire réellement.
Il faut dire qu'au début de l'année, face à la situation actuelle, j'avais très peu d'espoir d'avoir quelque chose qui me satisfasse. J'étais résigné à poster mon jeu sur 2-3 forums une fois terminé puis ne plus jamais y repenser. Sur les 3-4 derniers mois, tout a subitement pris vie. En comparant un nouveau screenshot avec le même réalisé 3 ans plus tôt, la différence me frappe. Alors je commence à espérer une sortie qui passe moins inaperçue.
Fin juin, le jeu n'est pas fini, mais je suis déterminé à sortir quelque chose de bien, alors je décide malgré tout de repousser la deadline d'un mois. Les choses avancent, tout se débloque, les bugs disparaissent, et 2 semaines avant la fin je décide même de tenter quelques compositions. Ce qui résultera en 2 minutes 30 de musique au ukulélé. Pas grand-chose, mais infiniment fois plus que ce que j'imaginais.
Le dimanche 2 août au soir, L'Antre du Protecteur, ainsi nommé 2 semaines avant la fin, sort enfin après 4 ans.
Ceci était l'histoire du développement chaotique de ce jeu jusqu'à sa sortie. Comme je le découvre encore au moment d'écrire ceci, cela n'est que le début d'une autre étape : la promotion du jeu et les retours des joueurs. Mais je garde ça pour un prochain post.
Alors, quel est mon sentiment après ces 4 ans ? Je serais tenté de dire que c'était bien trop long et que cela était une énorme perte de temps quand mon objectif était que cela dure 3 mois. Et c'est vrai que c'est beaucoup de temps et il me tarde de faire toutes les choses que j'ai dû laisser de côté pendant toute cette période. Néanmoins, je relativise :
Tous ces apprentissages seront d'ailleurs le sujet des parties suivantes de ce post mortem ! Si vous m'avez lu jusqu'ici, vous êtes fous, mais je suis ravi que ma vie vous intéresse autant. On se retrouve pour la partie 2 : Un jeu en 2D avec Unity3D.