Evolution du mini-jeu "Qui est-ce" 1


   En préambule, il est nécessaire d'avertir que ce premier devlog arrive relativement tard dans le processus de développement et ne sera consacré uniquement qu'au mini-jeu de type "Qui est-ce" dont je suis chargé , relatif au suspect dans le jeu global. Nous aborderons donc pour ce mini-jeu, dans l'ordre : le game design de départ, une discussion technique sur la mise en place et en forme sur l'UE4, les problèmes rencontrés lors de ce début de développement, les évolutions et les solutions s'ensuivants, et enfin les prochaines étapes prioritaires. C'est parti.


Game Design

   Premières idées de Gameplay.

   La première idée à la base de ce mini-jeu était de créer une expérience pouvant au maximum ( enfin ça ne reste qu'un mini-jeu ) se rapportant à une simulation de détective.  Or en pensant à un détective, deux mots se sont imposés : observation et déduction. Les deux me sont alors apparus comme nécessaires mais aussi comme non miscibles dans un format de petit scope. Il devait alors y avoir deux phases : La recherche d'indices, et leur utilisation pour faire des déductions. Si l'aspect "Qui est-ce" avec indices imposés et limitées a été ma première piste, le passage de "Chaud-Froid" n'était à la base que temporaire pour la recherche d'indice. Un mini puyo-puyo avait même été envisagé. Mais avec du recule le "Chaud-Froid" m'est apparu comme une excellente transposition de l'aspect "observation" recherchée. 

   L'expérience à la loupe.

   Une fois les deux gameplays trouvés, il a fallu réfléchir à un moyen de les connecter tout en mettant en forme cette expérience de détective. Une réflexion sur l'UI a alors démarré. Il a fallu se pencher dessus comme un détective se penche sur son bureau et son enquête. Naturellement j'en suis venu à un bureau en vue top-down avec le dossier sur les suspects ouvert, ainsi que les différents outils de notre enquêteurs. Et la première évidence fut la loupe. Pour faire le lien entre le bureau et le "Chaud-Froid" et même pour faire le "Chaud-Froid".  Ensuite les menottes, pour arrêter sons choix et le suspect, un stylo, pour rayer certains noms de la liste des suspects, et un objet pour symboliser le fait d'aller interroger un suspect. Ce dernier sera la clé de vieille voiture parce que... pas mieux.  Et pour instaurer une ambiance de film noir à l'ancienne je voulais avoir ce cendrier fumant dans le coin de l'écran. Et en réfléchissant à un moyen de le rendre utile, j'ai pensé aux cigarettes comme points d'action. D'une part à cause du stéréotype des fumeurs ne pouvant réfléchir sans cigarette, et d'autre part je trouvait amusant d'imaginer des cigarettes comme des points de "vie".  Et voilà l'expérience à mettre en place était définie.


Unreal Engine 4

   Solution de facilité?

   Il a été unanimement décidé de développer sous l'UE4 pour plusieurs raisons. D'une part beaucoup de mini-jeu étaient pensées en 3D, et en cela l'UE4 est vraiment confortable. D'autre part nous avions tous déjà développé dessus l'année dernière lors de nos études. Néanmoins, a certains égards cela représente également un défi. Les blueprints peuvent simplifier bien des choses mais elles peuvent également rendre confus certains algorithmes un peu dense, bien plus lisibles à mon sens en version code. Mais globalement le choix de l'UE4 se révèle plutôt pratique pour tout le monde.

   Il est temps algo...

   Le principale défi technique auquel je m'attendais en lançant la production de ce mini-jeu était de créer en blueprints un algorithme de génération procédurale de liste de suspects. Et cela afin de créer de la re jouabilité. Or en concertation avec mes collègues, il est apparu que cela ne serait pas forcément nécessaire, et qu'une liste de suspects fixe ferait parfaitement l'affaire.  Néanmoins il restait à générer des indices pertinents, dépendants du succès au "Chaud-froid", mais également équilibré pour le "Qui est-ce". Heureusement, le fait d'avoir planché en amont du projet sur la génération procédurale de suspects a grandement facilité la génération des indices.  Et donc d'un point de vue prog, l'un dans l'autre, on est très bien.

   Blender est ton ami.

   Nous voici donc sur un projet en 3D alors que mon GD est en 2D... Qu'a cela ne tienne et me voilà parti a faire mes asset sur Blender. Sur cela pas grand chose à dire si ce n'est que la production a été nettement plus courte que prévu et ce notamment car la partie texturing (la plus délicate à mon sens) a été remise à plus tard sous UE4. Ayant eu des problèmes d'importation des textures l'année dernière, c'était préférable pour ne pas faire un travail en double. Bref Blender c'est le meilleur.


Problèmes de production

   Les aléas du direct

   En mettant de côté les sempiternels problème de documentation sur les blueprints, de nodes pas reconnectés et autres spaghettis confusants, le code a jusqu'ici été plus que clément. Là ou je suis un peu déçu voir embêté, c'est que nous avions reçu une proposition d'aide de la part d'artistes 2D. J'avais donc adapté le design et l'ergonomie du jeu en fonction. Or alors que pas mal de travail avait déjà été abattu nous avons appris que les assets ne pourraient pas être livrés avant la deadline de février. Heureusement le précédent design faisait fi des graphs. Néanmoins m'étant attaché à l'aspect que pourrait donner le jeu avec ces petits plus, j'envisage de prendre un peu de temps pour produire quelque chose moi même en fin de production. (Note : toujours prévoir un plan B pour ce qui ne dépend pas de nous!) A noter également un petit manque à gagner à la productivité lors d'un jour férié que je n'avais pas vu venir, et que j'avais prévu d'utiliser pour rapatrier mon code d'un projet offline à l'école sur le projet Git. Mais au vu de mes heures de travail à la maison, ce n'était pas une très grosse perte bien heureusement! (Mais penser quand même à checker les jours fériés à l'avenir ça peut aider!)


La To-Do-List

   Boucler le Core Gameplay

   On y est presque! Reste tout de même certains détails : Le chronomètre pour le "Chaud-Froid", une "fin" en bonne et due forme, ainsi que le liens avec le hub. Mais on est optimiste quand à la possibilité très bientôt de pouvoir jouer à une alpha du mini-jeu!

   L'écriture et les tutos

   Etant des évènement scriptés à coder dans les blueprints, les tutos seront certainement les premiers éléments textuels à être écrit et implémentés dans le jeu, dans la foulée du core gameplay. Après il faudra continuer sur l'écriture avec les indices et les personnages. Car même si cela n'impacte pas directement le core gameplay, ce sera nécessaire pour l'équilibrage et les playtests. Enfin tous les commentaires annexes du détective pourront être temporairement laissés de côté jusqu'au polish. Histoire d'avoir le temps de bien travailler ses punchlines!

   Si c'est joli, bah, c'est joli...

   Bien sûre, même si ce n'est pas du tout la priorité, je m'autoriserai m'écarter un peu de temps en temps de la liste des priorités pour faire un peu de graphismes et feedbacks. Il est toujours motivant de voir l'avancée d'un projet, et le code ne nous le montre pas toujours. D'ailleurs les modèles 3D réalisés en début de projet m'ont non seulement aidés à aller plus vite car pas besoin de place holder, mais m'ont en plus motivé en donnant un aperçu de l'ambiance que pourra dégager le mini-jeu. En plus cela diversifie les activités, ce qui fait quand même pas mal de bien à la caboche! (Presque) Tout benef!


Conclusion

   On pourrait donc grossièrement résumer ce début de projet en disant que ça commence pas trop mal. Mais on va rester vigilent, on ne sait jamais quand les ennuis déboulent. Bref merci à toi d'avoir lu ce devlog jusqu'ici, en espérant ne pas avoir été ni trop ennuyant ni trop technique dans mon écriture, et en espérant surtout que le bilan du prochain devlog sera au moins aussi bon que celui-là! 


Sayounara, Arsène.

Get How to Find a Culprit

Leave a comment

Log in with itch.io to leave a comment.