PureBasic:Realiser un RPG2D


Sommaire



[modifier] Avant-propos

Schéma de gestion des sprites

Le but de cette page est d'arriver, étape par étape, à réaliser toutes les tâches de programmation menant à la conception d'un RPG en 2D.

Le jeu sera écrit en PureBasic et va tenter de respecter au mieux le tutoriel Réaliser un RPG en C avec SDL et FMOD.

Le rendu final du jeu sera proche des jeux Final Fantasy sur SNES. Tous les méchanismes de base seront implémentés, cependant l'accent ne sera pas mis sur la création d'un gameplay permettant au jeu d'être intéressant. Par exemple, le système de magie pourra gérer plusieurs dizaines de magies mais seulement deux ou trois seront fournies avec les démos. Libre à vous de développer la jouabilité de ce noyau de jeu afin d'arriver à vos fins.

De plus, le code source fourni tente de rester le plus simple possible. Les solutions les plus complexes et les plus optimisées seront implémentées à la fin de la série dans des étapes spéciales. Le but est de ne pas exclure dès le départ des lecteurs potentiels par la difficulté du code.


Bonne lecture!


[modifier] Les étapes de la création d'un RPG

[modifier] Etape n°1: Préparation

Dans cette étape, nous installons les médias nécessaires au jeu.


[modifier] Etape n°2: Commençons!

Il faut désormais poser les bases du jeu: écrire la fonction Main(), initialiser les bibliothèques, lier les fichiers nécessaires au projet.

 

[modifier] Etape n°3: Les cartes

Démo 1: Génération et affichage d'une carte
Démo 1: Génération et affichage d'une carte

La réalisation des décors est un point important du développement du jeu afin d'obtenir un rendu visuel intéressant au final.


 

[modifier] Etape n°4: L'éditeur de carte

Démo 2: L'éditeur de carte de notre jeu
Démo 2: L'éditeur de carte de notre jeu

L'éditeur de carte va nous permettre de créer des cartes complexes à utiliser dans notre jeu.


 

[modifier] Etape n°5: Les sprites et les collisions

Exemple de planche de sprite
Exemple de planche de sprite

La gestion des sprites permet à notre héros d'apparaître. On peut d'ores et déjà le déplacer à l'aide des touches directionnelles et il ne traverse pas les obstables (murs, caisses, etc.).

  • Démo n°3: le héro, déplacé à l'aide des touches directionnelles, se déplace sans passer à travers les obstables


 

[modifier] Etape n°6: Les événements et les PNJ

Démo 4: gestion des événements et des pnj
Démo 4: gestion des événements et des pnj

L'ajout d'un PNJ à notre carte est relativement aisé grâce au système que nous avons conçu durant l'étape 5, mais créer de toute pièce un système gérant toute l'interactivité du jeu est un vrai défi!

  • Démo n°4: un nouveau pnj se déplace et des événements se produisent
  • Lire cette étape


 

[modifier] Etape n°7: Interface, inventaire et boutiques

Démo 5: gestion des menus, de l'inventaire et des boutiques
Démo 5: gestion des menus, de l'inventaire et des boutiques

Les fondations de notre jeu sont posées: il est temps de compléter notre jeu avec des fonctionnalités totalement inédites tel que: un menu permettant de gérer notre inventaire et les armes et armues équipées, une boutique et même une auberge.


 

[modifier] Etape n°8: Combats, fondus enchaînés et coffre

Démo 6: des combats, des fondus enchaînés et un coffre
Démo 6: des combats, des fondus enchaînés et un coffre

Dans cet article, nous allons ajouter un système très important pour notre jeu: le système de combat. La gestion des fondus enchaînés est également au rendez-vous. Enfin, nous ferons encore un petit peu évoluer notre système d'événement avec l'implémentation d'un nouveau type d'événement permettant de gérer (entre autre) les coffres.