QuackShot 2 ?
Qu'est-ce donc ?

QuackShot était un jeu Megadrive de très grande qualité sorti en 1991. C'est pour moi l'un des meilleurs jeux de plateforme jamais sorti, encore aujourd'hui.

QuackShot 2 est un projet amateur de type FanGame. Mais c'est surtout pour moi une opportunité d'apprendre sérieusement la programmation. Il est réalisé en utilisant la librairie graphique SDL dans son extension pour le langage Ruby.

QuackShot 2 est un hommage. J'y tenais. Mais si je ferai tout pour me rapprocher autant que possible de l'original, je conserve le droit de le modifier à ma guise pour qu'il soit tel que j'ai toujours rêvé que soit QuackShot. Vous trouverez donc des différences entre les deux quand le jeu sortira, elles sont voulues.


QuackShot 2
est actuellement développé par Guigui et JeeWee. Guigui s'occupe de la programmation, JeeWee de la création et de la recherche des ressources graphiques.

Actuellement :

-
le moteur gère l'affichage de deux plans dont le scrolling est décallé.

- le décor est généré à partir d'un fichier texte contenant les tiles pour une modification plus aisée.

- la caméra scrolle correctement d'un bout à l'autre de l'écran.

- Donald est animé.

- Aucun lag dans l'animation et le scrolling.

- Le système de dialogue est pratiquement terminé, en plusieurs couleurs.

- l'interface InGame est achevée à 99% (reste la détection du drapeau "Call Airplane").

- Six nouveaux personnages ont déjà été créés :

Miss TickRapetouPopopRiriFifiLoulou

En cours :

- Gestion du déplacement de Donald.

- Gestion des propriétés des TILES.


[le 14/04/07]

Pas mal de nouveau ! Pas fait de vidéo Youtube, mais voici :

- grande phase de rip : JeeWee a rippé énormément d'ennemis du jeu, et autres sprites.

- Concernant la prog : début de la programmation des ennemis : ils sont animés et attaquent lorsque Donald est proche. Pas encore de projectile ni de gestion des ennemis qui se déplacent.

- Mise en place de la routine d'animation des sprites : placement du drapeau de fin de niveau, animé. Vais pouvoir terminer totalement l'interface InGame maintenant :)

[le 13/04/07]


Et voilà ! Le moteur a enfin son premier élément terminé : la caméra. La caméra tient bien désormais compte du fait que Donald puisse en quitter le centre lorsqu'il a atteint un bord (gauche ou droit) du décor. Le décor reprend sa priorité de scroll quand Donald retourne au centre de l'écran.

Je saurais pas expliquer pourquoi j'ai pu galérer ainsi, mais bon c'est tout nouveau pour moi la programmation orientée objet, soyez indulgents :)

Sinon, les NPCs sont pratiquement terminés. Reste à gérer les collisions, le message et l'objet délivré. Ils se placent très facilement dans le décor et restent à la bonne position. Par soucis de gourmandise du programme, ils sont d'ailleurs affichés uniquement lorsque la caméra les prend dans le champ. Logique ? Oui et non. Oui c'est logique, mais la création des surfaces elle telle que conçue en SDL n'aurait pas posé de problème à afficher un NPC en dehors de l'écran.

De plus, Donald est désormais controlable. Jusque là, il était dirigé à grands coups de méthodes du genre $donald.scroll("right"), désormais et avec une totale fluidité il est controllé à l'aide des touches directionnelles.

Enfin, la musique fonctionne, et très bien. Le seul soucis que j'ai est la qualité parfois plus que limite des MP3 reprenant les thèmes du jeu...  

[le 12/04/07]


Voici la gestion actuelle des NPC. Popop est placé dans le décor à un endroit précis et la caméra scrolle bien jusqu'à lui. L'affichage du menu est temporairement désactivé jusqu'à décision des valeurs de départ.

Tout le moteur a été repensé autrement dans son organisation et donc un petit retour à 0 à base de copier/coller/modifier.  

[Le 10/04/07]

Interface

Ce n'était pas le plus urgent, mais comme j'étais trop fatigué pour coder du difficile, j'en ai terminé avec l'interface InGame. Elle est entièrement programmée et affiche les bonnes valeurs.

[Le 09/04/07]

(Ouverture de ce mini-site)

Dialbox

Le système de boite de dialogue est prêt, en quatre couleurs.

Voir le moteur actuel en action :

 

Cette page sera mise à jour quand quelque chose de nouveau sera réalisé !

Dernière mise à jour : 14 avril 2007