Quest of Dofus

EN : Quest of Dofus is a small personal project that I did in a few weeks to try my hand at Pixel Art and to do a solo project with what I learned during my training. This is my first project and my first Pixel Art.

I love the Ankama universe and I wanted to try the challenge of reproducing a character and two enemies from this same universe in Pixel Art on a kind of platformer game.

------

FR : Quest of Dofus
est petit projet personnel que j'ai réalisé en quelques semaines pour m'essayer sur le Pixel Art et pour réaliser un projet en solo avec ce que j'ai appris pendant ma formation. Il s'agit de mon premier projet et de mes premiers Pixel Art.

J'aime particulièrement l'univers d'Ankama et je voulais tenter le défi de reproduire un personnage et deux ennemis de ce même univers en Pixel Art sur un genre de jeu de plateforme.

Controls

or  : Move Left/Right
or : Jump / Double Jump
Move mouse: Aim
: Shoot


Sound:
8-Bit Sound Effect Pack - OwlishMedia
Sound effects Pack 2 - phoenix1291
10 8bit coin sounds - Luke.RUSTLTD

512 Sound Effects (8-bit style) - SubspaceAudio
8-bit/NES powerup sound effects - TeamAlpha
8 bit SFX pack - Maskedsound
8-bit Game Sound Effects Collection - harvey656
8-bit / 16-bit Sound Effects (x25) Pack - JDWasabi
H/Mix

Music:
8Bit Title Screen - Joth
Long Away Home [8bit] - nene
Leap [8bit] - nene

Comments

Log in with itch.io to leave a comment.

Salut !
Je suis tombé par hasard sur le repost d'Ankama sur twitter.

Eh bien déjà, félicitations ! Tu as finis un projet que je trouve très sympa.

J'ai beaucoup aimé les graphismes, les différentes animations, l'utilisation de plusieurs sons différents pour chaque action, le parallax

Je te note quelques trucs que j'ai remarqué, au cas où ça pourrait t'aider :

Dans le fond, les premières collines sont sur deux profondeurs différentes visuellement mais ça ne se reflète pas dans le parallax. Peut être que ça faisait trop en les incluant dans un nouveau plan ? Dans ce cas tu pourrais jouer avec les couleurs pour atténuer la notion de distance entre ces collines ?

L'anglais du tutoriel est à vérifier : j'ai noté quelques erreurs ("to move" et pas "for moving", il manque un point après "Press Left Click to shoot", "if you die" et pas "if you are to die").

Peut être que commencer le tutoriel avec 2 coeurs sur 3 et afficher un texte expliquant qu'en ramasser un te soigne (avant d'atteindre le premier checkpoint) serait une idée à creuser.

Les checkpoints ne soignent pas, d'ailleurs, c'est volontaire ?

Tu inclus la première variation de commandes dans des paranthèses : "Use LeftArrow and RightArrow  (or Q and D) [to move].", mais la seconde est présentée différemment : "Use UpArrow or Z once to jump.". Tu devrais utiliser la même façon de présenter les contrôles pour chacun d'entre eux (donc ou bien des parenthèses ou bien un "or").

D'ailleurs, dans un tutoriel en anglais, ce sont les raccourcis WASD que tu devrais présenter.

Je trouve la courbe de progression un peu trop exponentielle (mais je suis nul aux jeux vidéos) : on enchaîne vite les premiers checkpoints du début, puis, passé le troisième (je crois), la distance et le nombre d'obstacle sont vraiment grands et demandent au joueur d'assimiler très vite les mécaniques (ou de s'y reprendre a de nombreuses reprises) pour avancer.

Peut être qu'indiquer où le joueur en est dans son avancée du niveau pourrait être intéressant. Que ce soit de façon permanente sur le haut de l'écran (x pièces / y, x monstres / y ...) ou bien avec un texte flottant qui se dégrade lorsqu'un élément est activé (checkpoint x / y par exemple) . Par manque de ces informations, je n'ai pas osé chercher d'éventuels passages secrets pour atteindre le "100%".

Le double saut ne fonctionne pas quand on touche un obstacle et que l'on a le clignotement du personnage signifiant l'invulnérabilité. Si c'est volontaire, peut être que l'indiquer dans le tutoriel serait utile ?

Il arrive qu'il ne fonctionne pas non plus lorsque le personnage saute, touche le plafond, retombe et tente de re-sauter. C'est peut être moi qui ne le lance pas au bon moment ceci-dit. J'ai essayé juste après le troisième checkpoint dans la zone souterraine. Si c'est volontaire, sache que procéder de la même façon fonctionne en revanche quand on teste sous la plateforme flottante (sur laquelle est collée l'interrupteur) juste avant.

Enfin, un truc un peu plus subjectif : je trouve qu'il y a un soucis entre ton animation de tir et son fonctionnement.
Tu as mis plusieurs réponses du personnage sur une seule action du joueur : ton personnage sort son arc, le bande, tire quand le joueur clique.
Voilà quelques pistes auxquelles j'ai pensé :
Tu pourrais accélérer l'animation durant laquelle le personnage sort et bande son arc avant de tirer pour limiter l'attente entre l'action du joueur (le clic) et la réponse du personnage (le tir), mais ça demanderait peut être de changer ton animation et les sons associés.
Faire en sorte que ton personnage ait toujours son arc sorti (sauf peut être quand il saute ?) de façon a supprimer une étape d'animation n'est à mon avis pas une solution envisageable puisque ça rendrait ton personnage moins "vivant".
Le tir pourrait se faire en plusieurs temps : cliquer pour sortir l'arc et préparer la flèche, maintenir pour tendre la corde, relâcher pour tirer. D'un côté ça ralentirait peut être un peu le gameplay (enfin, en théorie seulement puisqu'en pratique on attend déjà le tir de la flèche), de l'autre ça te permettrait potentiellement d'inclure une jauge de force de tir par la suite, si tu le souhaites !

Ça fait beaucoup de remarques, mais j'ai du creuser et chercher volontairement les petits détails pour essayer, à ma façon, de te suggérer des améliorations possibles. J'espère que ça t'aidera d'une façon ou d'une autre et que tu ne le prendra pas mal, puisque comme dit plus haut j'ai trouvé ton jeu vraiment sympa !

Bon courage pour la suite ! :)

Hello !

Je suis vraiment content que des personnes ont pu tester, et je suis content également de voir des retours pour voir ce qui va et ce qui ne va pas ! :)

C'était mon premier projet personnel en solo, il y a forcément des ratés à droite à gauche, et j'ai vu que tu en as remarqué. x)

Pour le fond avec les collines, je vais essayer de voir pour améliorer ça !

Mon anglais est vraiment pas terrible, merci pour la correction, je vais appliquer ça sur le patch correctif. :)

Un tutoriel présentant les cœurs, pourquoi pas !

Les Checkpoints ne soignent pas et c'est volontaire, en effet !

Effectivement, je vais arranger la façon de présenter le tuto pour que ça corresponde partout. :)

Je vais rajouter le W et le A pour les anglais, j'avais oublié qu'ils utilisent d'autres touches. ^^'

Pour la courbe de difficulté, c'est normal, n'ayant qu'un seul niveau et peu de mécanique, j'ai voulu faire quelque chose de plus difficile sur la fin. Je peux toujours simplifier ce passage si vraiment il est trop difficile.

Pour l'avancement dans le niveau, je peux rajouter le nombre max de pièce du niveau sur le HUD.

Le double saut qui ne fonctionne pas quand on touche un obstacle, ça par contre, c'est un bug, et ce n'est pas volontaire, idem quand on clignote et qu'on ne peut pas utiliser le double saut. ^^'

Je vais enquêter sur le problème.

Pour le plafond, je vais le rehausser un peu, histoire de ne pas avoir ce problème de double-saut qui ne se lance pas.

L'animation de tir, ça a été ma hantise, je ne savais pas du tout quoi faire, ni comment pour le rendre crédible ! L'animation est longue, et le fait de devoir changer toutes les animations ça va prendre beaucoup de temps. Malheureusement, je ne sais pas faire ce système de force et de puissance, j'y ai pensé aussi, mais pour le moment c'est pas dans mes cordes sans mauvais jeu de mot.

Je voulais intégrer une flèche grappin, mais je n'ai pas su le faire. :/

Je suis allé au plus simple pour cette première expérience !

En tout cas, merci beaucoup pour tes retours ! Ça m'a permis de voir des choses que je n'avais pas forcément vu, et ça va permettre l'amélioration de ce petit projet !

Merci ! :)

Salut !

J'ai certes relevé quelques petits trucs, mais l'important reste que tu ai réussi à faire un jeu seul : c'est mine de rien un sacré boulot et une belle réussite ! :)

Je comprends bien que tu ai voulu représenter différents niveaux de difficulté dans le niveau que tu as créé, comme c'est un essai. Je voulais surtout faire remarquer que, dans le cas où ce niveau ferait partie d'un jeu en comprenant plusieurs, la courbe de difficulté poserait sûrement problème (mais tu en as conscience donc izoké). Donc du coup simplifier le niveau n'est pas utile à priori puisqu'avec quelques essais il est tout à fait possible (pour moi qui ne suis pas très fort aux jeux de plateformes en tous cas) de le terminer.

Pour l'avancement, j'ai re-réfléchis et je me rends compte que c'était une préférence perso : après tout, je ne suis pas sûr que l'indication du total des pièces ou du nombre de checkpoint soient donnés en cours de partie dans le peu de jeux de plateforme dont j'ai connaissance !

Tiens moi au courant pour le "bug"  de saut, dans ce cas ! J'aurai tendance à dire que l'état de chute / d'invincibilité est incompatible avec la fonction de saut (qui nécessite vraisemblablement l'état "normal" du personnage), mais je ne sais pas comment tu as procédé.

Si tu résous le soucis du double saut en amont, tu n'as du coup peut être pas besoin de rehausser le plafond ?

Je comprends pour l'animation de tir. Après tout ça peut rester comme ça pour l'instant !
Si jamais tu veux tenter de mettre en place un tir avec le bouton maintenu, j'aurais tenté quelque chose de simple pour commencer comme :
- vérification de la possibilité de tirer (je suis pas sûr d'où l'inclure)
- quand je clique, le personnage sort l'arc
- si le bouton est maintenu et que l'animation précédente est finie, alors une flèche peut être lancée (et donc, plus tard quand tu aura une idée de comment t'y prendre pour le calcul de force, insérer la notion de charge du tir)
- lorsque je relâche le bouton, la flèche part en direction du curseur comme tu l'as fait
A priori, ça ne demanderait pas de changer les animations, mais juste de les découper (éventuellement rajouter quelques frames pour la charge ?)

Pour la flèche grappin, je ne saurais pas non plus comment procéder.
Peut être qu'il est possible d'enregistrer la position de départ du personnage, tirer une flèche, enregistrer sa position d'arrivée,  faire suivre au personnage le même déplacement avec le vecteur utilisé par la flèche pour commencer ? Ca te permet déjà de suivre ta flèche et de passer d'une plateforme à une autre.
Si tu parles d'un grappin pour faire des mouvements balanciers à ton personnage, ça me parait plus complexe (j'ai gribouillé des trucs mais sans essayer ça sert à rien). J'imagine qu'il y a des tutoriels pour ça !

Bon courage pour la suite !

Hello !

L'essentiel c'était de terminer un petit projet en solo, effectivement. ^^
Merci beaucoup pour les encouragements, ça me fait vraiment plaisir ! :)

Peut-être que j'ajouterais des niveaux supplémentaires, un jour, et si c'est le cas, je modifierai celui-ci en conséquence pour faire une courbe de difficulté plus logique et plus intéressante au fil des niveaux.

Si je fais d'autres niveaux, je penserais à mettre un indicateur de pièces récoltées dans le niveau en question ou un truc du genre. :p

J'ai toujours pas trouvé comment régler ce bug de saut, peut-être que j'ai besoin de le refaire. J'utilise les fonctions de Construct pour faire ça (les behaviors), et je sais qu'ils ne sont pas toujours au point.

Pour le tir avec l'arc, je vais continuer mes recherches pour l'améliorer. J'avais commencé à regarder sur le net, et jusque ici, rien qui ne m'intéressait mais je ne désespère pas.

Pour la flèche grappin, ce qui m'intéressait, c'était de réutiliser le même système que Celeste 2 et ajouter éventuellement un Wall Jump pour enrichir un peu plus le niveau. En gros, tu tires une flèche en ligne droite sur une certaine distance, la flèche s'agrippe, et le câble attire le joueur jusqu'à la flèche.

Bref, je verrai si je rajoute des trucs plus tard ! ^^

Encore merci pour ton test et tes retours, ça fait plaisir ! :)

Ca marche. Je ne connais pas Construct donc je ne peux pas t'aider davantage que pour les concepts hehe.

C'était un plaisir partagé, à une prochaine fois peut être ! ;)