vendredi 18 décembre 2009

les jeux, le C et la SDL :)

yop la foule en délire.

Depuis quelques années, il m'arrive d'utiliser Gamemaker pour concevoir des démos de jeux, tester des gameplays, des interfaces, des graphismes (personnages, etc..) ou faire du café. Ah non, pas le café, c'est vrai.

Par exemple, les images des 3 arks des messages précédents sont issues de tests avec GM. Y'est trop fort ce gameMaker.
Enfin, il fait pas tout tout seul non plus, hein.

Pour réaliser des démos ou des jeux rapidement et facilement GameMaker est assez excellentissizm. Il est un peu "limité", quoique c'est surtout celui qui fait le jeu quie st limité en fait :), mais permet tout de même de faire pratiquement tout ce que l'on veut, pour peu qu'on soit bien organisé et pas trop bête. Surtout pas trop bête, oui.

Un des aspects intéressants qu'on peut découvrir avec GameMaker, c'est le GML.
Meuh, quoi que c'est ce truc ?
C'est une sorte de langage de script assez simple (au début en tout cas) qui permet de faire encore plus de choses que le drag&drop de base de Gamemaker.
En utilisant le GML, on apprend en quelque sorte les bases de programmation, puisqu'on peut utiliser les variables, les conditions (if, else..), les boucles (switch, while, ...), les tableaux, créer des fonctions, des scripts, utiliser des dll, etc..
Bon, ça ne vous parle peut être pas trop, mais ce sont des trucs de programmers tout ça.

Bref, ça m'a permis de me familiariser un peu avec quelques notions du développement et ça m'a donné envie d'approfondir ça. Et du coup, je me sens un peu moins bête (un peu seulement).

Et c'est ce que j'ai commencé à faire en regardant le site du zéro et les tutoriaux sur la programmation en C, puis avec la SDL (bibliothèque graphique).
Donc, voilà, pour le moment, je ne sais pas faire grand chose à part afficher quelques images, et gérer des évènements (clavier/souris)... Mais après tout, ça suffit pour réaliser un jeu solo.

J'espère que prochainement, lorsque j'aurai une petite démo sympathique, je pourrais la rendre publique (enfin, si j'arrive à faire une démo pas trop beuguée).

lundi 7 décembre 2009

3Arks, suite de la démo

Yop

Voici quelques news de ce que j'ai réalisé ce week end pour la démo de mon jeu 3 Arks.
Pour réaliser cette démo, j'utilise un soft vraiment plutôt pas mal, j'ai nommé "GameMaker le bienheureux". Enfin, ce sont surtout ceux qui l'utilisent qui sont heureux, tellement il est trop bien of the waleugaine.

D'ailleurs, comme je suis hyper balèze en développement hum-hum :), j'en ai profité pour concevoir un petit éditeur de map qui fonctionne bien, sans trop de bugs quoi, et qui dispose des fonctions suivantes :
- création d'objets sur la map de manière automatique et positionnement aléatoire de ceux-ci (je peux déterminé les objets et le nombre d'éléments à placer sur la ma)
- suppression des objets souhaités en cliquant dessus, ou déplacement des objets à la souris des objets.
- sauvegarde de la map / loading de la map.
- je peux aussi me balader dans la map avec le personnage si besoin.


Au niveau du "jeu", Voici donc ce que j'ai actuellement intégré à ma démo :
- 1er Ecran (à revoir) avec divers choix avec touche de clavier pour le moment : éditeur de map et loading d'une partie enregistrée.
- Déplacement du joueur (sans animation pour le moment), 3 choix : click & go, suivant le mouvement de la souris, ou au clavier (flèches)
- loading d'une map pré-enregistrée avec l'éditeur (au choix pour le moment)
- ajout de mobs de manière aléatoire sur la carte (je peux en déterminer le nombre bien sur)
- mob : vie aléatoire, drop s'ils meurent (potion d'hp, de mana, or), et donne de l'xp s'il meurt au joueur. Attaque le jouer et/ou le pet du joueur si le joueur en a crée un.
- le joueur : statistiques de vie, mana, or, nombre de potion de vie (hp) et de mana dans l'inventaire, points d'xp et level, points de dégâts.
- UI : affichage (simple) des stats, d'un inventaire (très sommaire).
- variation de la vie, du mana en fonction : des attaques des mobs, de l'utilisation de sorts. Régénération automatique de la vie et du mana en fonction du temps (2 points toutes les secondes).
- Sorts : 1 sort pour le moment >le cercle de magie. Il reste actif pendant un certain temps et enlève des points aux ennemis qui passent dessus, le temps qu'ils restent dessus.
- loading et sauvegarde des données du joueur : vie, mana, points d'xp, contenu de l'inventaire (potion, or).
- invocation de "pet" : durée d'invocation 2 minutes. Le pet attaque les mobs s'ils sont près de lui, perd de la vie s'il reçoit un sort.
- création de coffre cliquable sur la map de manière aléatoire : si on clique dessus le coffre s'ouvre et l'or est déposé sur le sol.
- les objets que le joueur touche avec son personnage sont ajoutés à son inventaire (inventaire à continuer).
- la plupart des images sont chargées depuis l'extérieur du jeu, ce qui allège considérablement le lancement du jeu.

Voilà, c'est tout pour le moment, mais c'est déjà pas mal :).

Par la suite (le soir ou le week end prochain), je vais :
- ajouter d'autres sorts (à gérer en fonction de la sélection du sort) : soins, autres sorts d'attaque...
- ajouter de nouvelles maps, des mobs, d'autres objets, PNJ...
- changer /modifier les UI, les compléter (UI générale)
- permettre la customisation du jouer : habits, armes, boucliers, sorts...
- ajouter des caractéristiques au joueurs (magie, force, intelligence..)
- ajouter des xp différentes (métiers, combats, magie, quêtes...)
- ajouter le commerce : vendre acheter des objets.
- concevoir les changement de map
- créer un / des compagnons pour le joueur (personnage qui l'accompagnent) : comme c'est une démo de rpg et non de jeu en ligne ce sera plus sympa que de jouer tout seul :).

Je suis en train de réaliser une petite vidéo, que je posterai par la suite pour montrer ce à quoi ça ressemble.

Voiloutch.