Aller au contenu

Et maintenant ?

Si vous êtes arrivé jusqu’ici, ça veut dire que le jeu fonctionne.

Vous avez :

  • une base Entity
  • des joueurs et des ennemis qui en héritent
  • des armes, des sorts, des bonus sous forme d’objets
  • une boucle de jeu courte et lisible
  • de manière générale une architecture de code très solide

Et une fois que l’architecture est là, vous allez pouvoir rajouter plein de trucs sans trop d'effort.


Ce que vous pouvez rajouter

À partir de là, vous pouvez vous faire plaisir.

Nouvelles classes de personnage

  • un mage avec plein de sorts
  • un assassin qui fait beaucoup de dégâts mais meurt très vite
  • un vampire qui récupère des pvs à chaque coup

C’est juste des classes qui héritent de Player.


Nouveaux ennemis

  • des mobs plus résistants
  • des ennemis qui tapent fort mais meurent vite
  • un boss avec un comportement spécial

Même logique : une classe qui hérite de Mob.


Dégâts plus intéressants

Une première idée serait de faire un système de dégâts à la D&D/Dark Souls où les dégâts que font une arme scalent en fonction de la force/dextérité/intelligence/foi de votre personnage (par exemple la hache scale avec la force, le sort de feu avec l'intelligence et l'épée scale un peu avec la force et la dextérité).

Vous pouvez également rajouter

  • coups critiques
  • résistances
  • dégâts élémentaires (plus ou moins efficaces sur certaines entitiés)
  • effets sur plusieurs tours

Vous pouvez enrichir ça progressivement, sans toucher à la boucle principale.


Montée de niveau

  • de l’XP
  • des niveaux
  • des stats qui augmentent
  • des choix à chaque level up

Littéralement du pain béni pour ce genre de structure.


Roguelike plus complet

  • difficulté qui augmente avec les étages
  • ennemis aléatoires
  • événements spéciaux
  • score final

Vous avez déjà tout ce qu’il faut pour aller loin.


Le vrai takeaway

Si, pour ajouter une fonctionnalité :

  • vous devez réécrire la moitié du code
  • vous rajoutez des if partout
  • la boucle principale devient immonde

alors c’est qu’il y a un problème.

Ici, normalement, ce n’est pas le cas.

Vous n'avez qu'à rajouter des classes. Et le reste suit.

De manière générale, vous n'êtes pas censé retenir de ce boss “comment faire un roguelike” spécifiquement.

Mais :

  • comment structurer un projet
  • comment éviter le code spaghetti
  • comment faire évoluer un programme sans le détruire
  • à quoi sert vraiment la POO

Bref, amusez-vous à développer ce projet aussi loin que vous le souhaitez si ça vous fait amuse.