Picross


Introduction


Le Picross est un projet que j'ai réalisé dans un cade scolaire. L'objetctif a été de mettre en pratique l'ensemble des connaissances que j'avais acquise en langage C en première année d'école d'ingénieur à l'ESIEA.


I. Règles de conception du projet


Afin que le projet soit validé, l'école avait exigé d'utiliser diviers notions en programmation, à savoir :

La réalisation de ce projet nécessite, également et logiquement, la maîtrise de notions de bases en programmation, tel que les tableaux unidimentionnels et multidimentionnels, les embrochements et boucle, les fonctions et procédures, ... Le jeu doit contenir deux modes de jeu :

  1. Jeu en mode image : le joueur doit trouver l'image cachée dans la grille.
  2. Jeu en mode aléatoire : une grille aléatoire est généré aléatoirement et le joeur dois la résoudre.

En plus de ces deux modes de jeu, il doit comporter une option pour en sortir. Enfin, il nous a été imposer d'utiliser la librairie Ncurses.


II. Orginisation du jeu

A) Organisation visuel


Afin de faire un projet complet et poussé, j'ai décider de m'organiser de la manière suivante :

  1. Mise en place d'un menu principal :
  2. Il a pour rôle de permettre au joueur de choisir son mode de jeu, mais également de pouvoir sortir de celui-ci.

  3. Mise en place de différents niveaux en mode image :
  4. J'ai mis en place trois niveau de jeu, qui sont : Easy, Medium et Hard.


B) Organisation technique


Côté développement, le projet se décompose en 8 modules, que voici ci-dessous :

liste des différents modules du projet

Le fichier PICROSS.c est le fichier principal du projet. Il m'a été fourni par l'eécole et je l'ai éditer afin de permettre le bon fonctionnement de mon jeu.


III. Manuel d'utilisation du jeu


Après avoir lancé le jeu, l'utilisateur se retrouvera devant le manu principal. Afin de choisir les options présentes dessus, il doit se servir de son pavé numrique. Une fois le mode de jeu et le niveau choisis, il doit utiliser son curseur pour choisir les cases sur lesquelles il veut jouer. Il n'y as pas possibilité de fermé le jeu une fois le mode de jeu choisi.


IV. Demonstration


Voici une video de démontration du jeu :


V. Les points d'amélioration


Bien que je propose un jeu fonctionnel, beaucoup de point son à revoir, notamment le fonctionnement du mode aléatoire et l'implémentation d'un mode de jeu principal s'inspirant du vrai principe de jeu d'un pricross.


Conclusion


Ce premier projet m'a permis de mettre en pratique pour la première fois mes compétences en développement. Ainsi, j'ai pu par la suite apprendre des erreurs que j'avais fait lors de son implémetation, et ainsi m'initier à l'art de la programmation.




Voici l'executable du Picross, pour celles et ceux qui voudrait l'essayer. Le jeu est compatible uniquement sur les environement Linux.