#4 Rick Dangerous premiere version jouable


Après la Gamejam, j’ai donc repris mon projet de Rick Dangerous que j’avais laissé de coté durant 1 mois et demi. Je pensais pas pouvoir le reprendre et comprendre ce que j’avais fait, n’étant plus dans le bain. Mais au bout de 2 jours j’avais repris mes repères et je pouvais donc continuer mon projet.

Allez un petit challenge pour moi c’était de livrer une version jouable pour Noël.

Et c’est réussi, malgré des bugs, les 5 premiers levels sont opérationnels, d’ailleurs pour ceux qui veulent continuer à suivre le projet, voilà mon Trello https://trello.com/b/e7NOZrEc/rick-dangerous , je l’utilise tous les jours pour m’organiser.

Allez passons au choses sérieuse, que m’a t’il fallut faire pour cette dernière version.

Le dernier devlog, je m’étais fixé comme objectif :

– Le placement des ennemies dans une map et les faire apparaitre au moment voulu.

– les collisions avec les ennemis, en les touchant ou en tirant dessus

– la collecte d’objet.

– gestion du score et autres bonus.

 

Bref finir le gros du jeux quoi !

Mais bon, je suis parvenu à dégrossir tout cela avec la technique de l’éléphant, et malgré le faite que tout n’est pas géré, j’ai pu faire un version jouable.

Le gros du travail à été de faire du refactoring du code, car j’avais fait mes fonctions mais elle ne marchaient que pour Rick et pas pour les ennemis par exemple. Un gros travail, mais maintenant c’est presque fini, même si c’est pas parfait.

Voilà le résultat en image

Cliquez sur le Gif :

Ensuite il a fallut travailler sur la map pour afficher les ennemis les bonus et les pièges. J’utilise Tiled pour la gestion. Lors de mon projet de FutFut la sorcière pour la gamejam Francophone, j’avais mis en place deux calques pour gérer la map, une pour le décor et une pour les objets et ennemis. Cette fois c’est pareil, sauf que j’ai 4 niveaux de calques à gérer.

J’ai mon décor et j’ai mes autres calques pour placer mes ennemis et gérer les pièges.

 

J’ai un calque d’objets qui me permet de placer mes ennemis, j’ai également rajouté des propriétés personnalisées pour mieux définir mes objets.

Par exemple sur l’objet « flèche » j’ai la propriété droite qui indique qu’elle devra se déplacer vers la droite, et ref qui lui donne un numéro de référence. A coté de la flèche il y a un rectangle qui est ma zone qui active la flèche, ce rectangle à lui aussi la même ref que la flèche.

Dans le code j’ai une fonction qui récupère les coordonnées du rectangle qui sont en faites la hitbox du piège, si le personnage rentre en collision avec alors je regarde la référence et j’active le piège qui possède la même référence. Avec ce système je peux faire maintenant des pièges en quelque clique.

Sur la photo on peut également voir que vers les ennemis il y a des triangles bleus, ils sont là pour délimiter la zone ou l’ennemi peut se déplacer, s’il rencontre un triangle pointant vers la droite il va à droite, etc …

Je suis encore loin de maîtriser Tiled, mais je commence à être plus à l’aise.

pour exemple, voilà un gif résumant en action ce que je viens d’écrire.

Cliquez sur le Gif :

 

Maintenant que j’ai des ennemis et des pièges, il faut que je me défende, j’ai donc rajouté la possibilité de tirer des balle avec le pistolet.

Cliquez sur le Gif :

Ensuite je devais détruire des blocks de pierre pour libérer le passage, j’ai rajouté les bombes

Cliquez sur le Gif :

et pour me sentir moins seul j’ai également rajouté la chauve souris

Cliquez sur le Gif :

Pour rester fidèle à l’époque, j’ai rajouté une petite démo au début du jeu, comme les Crackers le faisaient quand ils distribuaient des jeux piratés. Là c’est un test pour faire ma fonction d’affichage de texte un peu comme celle d’Hydrogène (voir son devlog d’ailleurs https://www.gamecodeur.fr/devlogs/56566/ )

En image :

Cliquez sur le Gif :

 

Et pour finir je suis bien content d’avoir trouvé un bug qui me prenait la tête depuis 4 jours, en effet lorsque j’active une bombe, la zone de collision ne s’active que lorsque la bombe explose, pas quand la mèche se consume. Et j’avais rien trouvé de mieux que de mettre toutes les variables de la hitbox à 0 pensant que ça fonctionnerait, et bien non, ma zone de collision était un point en haut à gauche du sprite de la bombe ! Sur le coup ça marchait parce que j’étais du bon coté de la bombe, à droite, et du coup je me suis pas aperçut de l’erreur. C’est bien plus tard que je l’ai découvert et j’ai pas fais le lien directement. Maintenant c’est résolu

Voilà, j’espère que ça fonctionnera chez vous.

Pour la liste des bugs, allez voir le trello https://trello.com/b/e7NOZrEc/rick-dangerous , y en a déjà pas mal, mais si vous en avez un nouveau, dites le moi et hop je le rajouterai à la liste.

A bientôt

Files

Exe_RickDangerous_Version_4_64.zip 7 MB
Dec 21, 2018
RickDangerous_version_4.love 3 MB
Dec 21, 2018

Get Remake Rick Dangerous

Leave a comment

Log in with itch.io to leave a comment.