Bonjour Indiemag !
J'ai décidé de me lancer dans le développement d'un jeu indé. Chaque semaine, je vais rédiger un article pour faire le point sur l'avancement du projet. Je publie également mes articles sur Gameblog.fr & Hedg.fr. Si vous souhaitez participer au projet par vos remarques (ou vos talents), n'hésitez pas ! Bonne visite ;).
Après 1 semaine d'absence, me revoilà pour la suite du projet Shoota ! J'ai malheureusement été un peu pris par mon travail ces 2 dernières semaines. Bref, dans mon dernier billet, j'avais commencé à vous parler du Game Design que nous allions utiliser (je vous invite à relire l'article précédent pour vous rafraichir la mémoire). Nous avions réussi à intégrer faire coexister l'aléatoire, le Die-and-Retry et le scoring. Reste donc l'exploration ...
Mais comment intégrer l'exploration dans un Shoot em up ? Explorer, mais pour quoi faire ? Pour que le joueur ait l'envie d'explorer, il faut d'une part qu'il y ait quelque chose à explorer, et d'autre part qu'il y ait un intérêt ou une obligation d'explorer.
Dans Sonic 2, le joueur était inviter à explorer les niveaux: nouveaux passages, nouveaux power-ups, mais surtout, il pouvait trouver des chaos emerald (7 au total), lui conférant non seulement une transformation le rendant surpuissant, mais lui permettant aussi d'accéder à une nouvelle fin. Aucune obligation, mais les plus habiles étaient récompensés de leurs efforts.
A l'inverse, Yoshi Story imposait au joueur de collecter un certain nombre de fruits pour pouvoir terminer le niveau. L'exploration était donc obligatoire, ce qui a été pour beaucoup, une grande source de frustration.
J'ai décidé d'introduire l'exploration sous deux formes:
- Des zones bonus, proposant un challenge relevé et une récompense appropriée (power-up, munitions, gain de temps, ...). Ces zones pourraient se trouver au même niveau que le téléporteurs ramenant au début de la dernière séquence, ou elles pourraient même être cachée dans les séquences elle-même.
- Chaque séquence pourrait "cacher" des éléments tels que des power-ups. Le joueur pourrait donc avoir envie de refaire une séquence pour être sûr de ne pas être passé à côté de quelque chose.
Mais ce qui a fait le succès de The Binding of Isaac, c'était non seulement l'aléatoire dans la génération des niveau, mais aussi dans le gameplay du personnage. Les power-ups ne sont pas choisi n'importe comment. On peut imaginer que le personnage ne dispose que d'une seule arme (ses larmes), mais que celle-ci possède un nombre impressionnant de propriétés (vitesse, puissance, nombre de larmes par tir, cadence de tir, si les larmes sont à tête chercheuses, si elles explosent à l'impact, si elles passent à travers les murs, ...).
Chaque power-ups de ce jeu ne fait que modifier les propriétés de l'arme du joueur. La diversité du gameplay vient donc de la diversité des propriétés de l'arme (les bonus étant aléatoires, chaque partie donne donc lieu à un gameplay différent).
J'ai donc décidé de reprendre le même concept dans Shoota.
- Une zone bonus, qu'est-ce qu'on y ferait ? Qu'est-ce que l'on y gagnerait ?
- Quelles "propriétés" originale imagineriez-vous pour l'arme dans une Shoot em up ?
A la semaine prochaine ;).
Nouvel article disponible ! J'essaie de faire court pour ne pas vous surcharger d'informations, mais rassurez-vous, j'aurais des choses concrètes à vous montrer d'ici 2 articles je pense :). Il faut que l'on ait au moins défini clairement les mécaniques de base du "Projet Shoota" avant de commencer à programmer un premier prototype.
Nouvel article ! On commence (tout doucement) à attaquer le Game design :).
Après 1 semaine d'absence, me revoici avec un nouvel article ! On continue sur notre lancée pour le Game Design de Shoota :).
Salut djidane535 !
Je voulais juste laisser un petit message rapide en voyant que cela fait déjà cinq semaines que tu partages tes avancées, sans qu'il n'y ait eu de retours dessus... :/
Je ne suis certainement pas le seul à lire ton Topic en fantôme, mais c'est super intéressant et passionnant de lire tes progrès et tes réflexions, et merci beaucoup de les partager avec nous ! J'ai hâte de voir ou cela te mène
Voilà, juste pour que tu ne laisses pas abattre par le manque éventuel de retours dessus... moi j'ai bien envie de lire la suite !
Et désolé de ne pas me prendre le temps pour répondre à tes questions et réfléchir aux idées proposées. :/
Xezarior
Don't panic.
Merci pour ton commentaire :).
Rassure toi, je ne m'attendais pas à avoir des retours massifs dès le début. Tant qu'il n'y a rien de concret, je comprends que certains suivent le projet de loin en attendant qu'il ressemble à quelque chose. Je le prends plus comme un "carnet de développement" pour garder les idées claires et savoir d'où je suis parti et où j'en suis.
Salut Djidane,
Merci de partager ainsi en détail l'avancée de tes réflexions, c'est très intéressant de voir le cheminement qui mène à la création d'un jeu depuis ses prémices.
Je ne répondrai pas directement aux interrogations précises que tu poses chaque "semaine" mais je me permettrai quelques pistes de réflexions.
Tu comptes associer l'aspect scoring à l'aspect aléatoire tout en limitant l'aléatoire pour permettre aux scores d'être un vrai reflet du niveau de maitrise du joueur, en minimisant au maximum l'influence de l'aléatoire que tu veux malgré tout instiller dans ton jeu. Le problème de cette exigence à mon sens, c'est que de toute façon les deux principes sont d'une certaine façon antinomiques: plus tu mettras l'accent sur l'un, plus il faudra sacrifier l'autre. Le résultat c'est que finalement tu n'oses pas aller au bout de ton concept d'un shoot'em up avec les mécanismes aléatoires d'un "rogue like", et tu te retrouve vachement bridé pour exprimer quelque chose qui serait vraiment original.
A mon avis il y a un moyen d'associer d'une certaine façon ces mécanismes sans ne rien sacrifier ni à l'aléatoire, ni au scoring (bien au contraire même aurai-je envie de dire ), c'est proposer deux modes de jeu:
- un mode "aventure" (ou "campagne", ou tout ce que tu voudras de cet ordre ) où le joueur devra enchainer des niveaux répartis au sein de plusieurs types d'environnements (impliquant des ennemis, des décors, voir des spécificité de gameplay différents), chaque niveau étant généré de façon procédural (mais pas "n'importe comment": répondant à un certain nombre de règles, se basant sur des schémas de base paramétriques s'associant entre eux), ce mode proposant une "progression" d'un niveau à l'autre permettant de découvrir au fur et à mesure de la progression de nouveaux ennemis, de nouveaux environnement, de nouveaux boss, de nouveaux mécanismes, de nouveaux bonus... (important pour motiver le joueur à progresser: il ne faut pas que le joueur puisse rencontrer "n'importe quel ennemi" dés le départ, sinon il explorera autant le jeu en recommençant 100 fois le premier niveau qu'en progressant réellement de niveaux en niveaux!) ; ce mode pourra proposer une dimension exploration via des embranchements conduisant à différents types de niveaux, ou conduisant à des niveaux "bonus", qui ne feront pas progresser vers un niveau suivant mais proposeront des "super bonus", au risque en revanche d'y mourir et de devoir tout recommencer depuis le début (mort permanente évidemment ;)) ; donc un risque à bien évaluer par le joueur!
- un mode "arcade" (ou "scoring", ou tout ce que tu voudras de cet ordre :P) ou le joueur pourra rejouer n'importe quel niveau de son choix en en rentrant la seed correspondante! Il faut en revanche absolument limiter l'accès à ce mode, p.ex. on débloque l'accès environnement par environnement (et éventuellement niveau de difficulté par niveau de difficulté au sein de chaque type d'environnement) en accomplissant dans chaque type d'environnement un certain nombre d'"objectifs secondaires" (qui se cumuleront pour le coup partis après partis ,ou pas d'ailleurs selon, p.ex. "tuer au total 300 ennemis niveau 1", "tuer 10 ennemis niveau 3 en 1 partie", "parcourir 3 niveaux de [l'environnement correspondant] au cours d'1 partie", etc.) ; le but de cette accès limité étant de pousser le joueur à découvrir le jeu via le mode "aventure" en l’empêchant de rencontrer des éléments de jeu via ce mode "arcade" sans les avoir découvert antérieurement dans donc le mode "aventure" (y décuplant du coup l'intérêt de l'aspect exploration). Mais dés lors via ce mode "arcade", les joueurs pourront partager des seed et scorer dessus, les seed les plus intéressantes pourront devenir plus populaires que d'autres, etc. En plus si tu fais le choix que la seed d'un niveau détermine l'ensemble des éléments aléatoires qui vont survenir (y compris les bonus laissés par les ennemis), alors les plus superplayer des joueurs pourront peaufiner le passage d'une seed au poil de pixel près ;). Dans ce mode "scoring" en revanche, pas de progression de niveau en niveau: on joue un niveau isolément.
De cette façon, ces 2 modes vont te permettre d'explorer à fond chacun des aspects du jeu (aléatoire et scoring), non seulement sans que l'un empiète sur l'autre, mais avec en plus une interactions stimulante entre les deux (puisque les niveaux accessibles en mode "arcade" s'étofferont plus on parcourera le mode "aventure").
Après pour coller au plus près à l'esprit shoot'em up, il faudrait que la génération des niveaux réponde à des règles précises, mais donc paramétriques, sous forme de vagues donc mais qui pourront varier en nombre, en nombre d'ennemi, en type d'ennemi, en variété d'ennemi ; et à chaque fois ces variations encore répondront à des règles là encore précises: on pourra retrouver certains type de formations, de trajectoires, de déplacement, de type d'ennemi (taille, résistance, zone prenant les dégâts limitée ou non,...), type de tir (type de projectile, taille, façon de les envoyer...), qui s'associeront de façon très variables (mais là encore pas "n'importe comment", il faut vérifier qu'il y aura compatibilité entre p.ex. chaque type de tir et chaque façon de les envoyer) au sein desquels, toutes "aléatoires fussent-elles, on retrouvera à force d’expérience des patterns connus, et donc on apprendra petit à petit à s'adapter aux nouvelles associations rencontrées.
Un peu comme dans Rogue Legacy, ou chaque ennemi offre des façon d'attaquer très particulière, et avec des variantes, et d'une partie à l'autre on rencontrera ces ennemis associés entre eux de façon variable, dans des contextes variables, mais finalement on apprend à connaitre les grands mécanismes et à partir de là ...on s'adapte :P.
Très bonne idée d'intégrer 2 modes de jeux distincts pour cibler les deux aspects indépendamment ! Je trouve que ça serait effectivement très intéressant (notamment le fait de ne pas tout débloquer dès le départ). Si on arrive jusque là, on pourrait même imaginer un système qui mettrait en avant certaines seed (en fonction de leur popularité par exemple).
La génération des niveaux, je compte justement en parler dans le prochain billet donc je me réserve pour la semaine prochaine ;).