Compte-rendu du projet d’algorithmique
Cours : Compte-rendu du projet d’algorithmique. Recherche parmi 300 000+ dissertationsPar louism96 • 5 Mars 2018 • Cours • 14 379 Mots (58 Pages) • 540 Vues
Compte-rendu du projet d’algorithmique
A rogue-like Dungeon crawler
Table des Matières
- Introduction …………………….………………………………3
- Analyse et Conception ………………………………………3
- Analyse globale du programme……………………………………………………………………3
- Conception ………………………………………………………………………………………………….5
- Fonctionnement général ……………………………………………………………………………...5
- Affichage du donjon ………………………………………………………………………………...…..6
- Le choix du héros ………………………………………………………………………………………...6
- Combattre …………………………………………………………………………………………………...7
- Jeu d’essais ……………………………………………………….8
- Création du héros ……………………………………………………………………………………….
- Gestion des objets ………………………………………………………………………………………9
- Ouvertures des portes…………………………………………………………………………………11
- Combats …………………………………………………………………………………………………….12
- Fin de l’exploration …………………………………………………………………………………….13
- Conclusion ………………………………………………………14
- Annexe ……………………………………………………………15
I. Introduction
Avant l’attribution, nous avions l’idée de nous mettre ensemble. En effet nous nous entendions très bien et nous avions déjà réalisé plusieurs travaux de groupes ensemble. Notre niveau était à peu près équivalent, ce qui nous a permis de partir de la même base. Nous avons donc interchangé nos binômes respectifs afin de pouvoir travailler ensemble.
Notre projet était de créer un donjon dans lequel notre héros pourrait évoluer, affronter des monstres, ramasser des objets, récolter de l’or… Nous nous sommes heurtez à différentes difficultés pour afficher le donjon et faire déplacer notre personnage car cette matière était complètement nouvelle pour nous. Nous avons donc du fournir un travail plus important que certains codant depuis plusieurs années, mais nous y sommes arrivés.
II. Analyse et Conception
- Analyse globale du programme
Nous avons décidé d’analyser notre programme à l’aide d’un diagramme simplifié afin de représenter clairement les objectifs et les paramètres de ce dernier :
[pic 1]
Données en entrée :
- L’utilisateur saisit des nombres qui correspondent à des actions (choix de commencer une nouvelle partie, choix du personnage, déplacement, interactions avec les éléments du donjon, etc…)
Règles du jeu :
- Suivre les instructions préalablement affichées sur l’écran.
Données en sortie :
- affichage d’un donjon (lancement de la partie) ;
- affichage de légendes ;
- affichage d’instructions ;
- modification du donjon affiché (déplacement du héros)
Evolutivité et limites :
Notre jeu n’est pas parfait, il y aura toujours des améliorations qui pourront lui être apportées. Cette partie à pour but de lister les points à approfondir :
- nous pourrions étoffer notre bestiaire (monstre et maitre des monstres pour le moment) en créant d’autres types de monstres, qui auraient des caractéristiques/pouvoirs propres à leur genre ;
- nous aurions pu développer plus en profondeur les personnages en créant encore plus de choix possible de personnages. De plus, chaque héros aurait pu avoir des pouvoirs propres à son type qu’il aurait débloqué au fur et à mesure que son niveau augmente ;
- nous aurions pu également créer plusieurs niveaux que le héros aurait traversé afin d’atteindre le boss final et terminer le jeu.
Notre programme comporte certaines limites. En effet, avec notre méthode, le nombre de lignes de nos légendes ne peut pas augmenter, la faible taille de notre bestiaire rend l’exploration de plus en plus facile. De plus, le fait que le donjon et les objets ne soient pas générés aléatoirement fait que l’utilisateur connaît rapidement la solution du donjon par cœur.
- Conception
- Fonctionnement général
[pic 2]
Le schéma ci-dessus résume parfaitement le fonctionnement de notre programme. Il peut paraître légèrement compliqué au premier abord, cependant il résume le plus simplement possible les différentes possibilités de notre algorithme. Il aboutit soit sur la victoire du personnage, soit sur sa mort.
- Affichage du donjon
Nous avons choisi de créer une fonction secondaire afin d’afficher notre donjon. Nous avons utilisé une fonction de type void() car aucune valeur ne sera renvoyé. On utilise sCaseDonjon comme argument car elle a besoin de cette information pour pouvoir s’exécuter. Après vérifier que la case n’est pas occupé par le personnage (à l’aide du statutCase qui doit être égale à 0), le switch() va permettre d’imprimer le caractère correspondant au type de la case détecté. Si le statutCase correspond à celui du personnage, ce sera le personnage qui sera imprimé dans la couleur du héros.
...