BEAUCHET Quentin (Quentin Beauchet)
CARLENS Jean-Philippe (Coruscant11) ("BuildTools" également pour la plupart des commits)
FORNER Yann (Yann-Forner) ("Yann" également pour les commits du début du projet)
MASSE Gillian (GillianMASSE)
Attention : le jdk est en version 15 !
Attention : le jeu est pensé pour etre joué sur linux car la console windows n'affiche pas assez vite les characteres !
Le but du jeu est d'avancer le plus loin possible dans un labyrinthe composé de plusieurs etages eux même composés de plusieurs pieces aux attributs differents les unes des autres le tout genéré proceduralement. Le joueur va devoir survivre face à de nombreux monstres, boss et divers pièges tout aussi mortels. Heureusement pour lui il va pouvoir s'equipper d'armes et d'armures de plus en plus puissantes et avoir recours a des objets lui facilitant son aventure.
Le jeu est jouable est sur Linux et sur Windows.
Attention toutefois à son utilisation sur Windows :
- Les smileys seront remplacés par des lettres.
- Le jeu sera lancé de base en tour par tour, il faudra appuyer sur T pour changer ce mode si désiré.
Ces spécifications seront de même valables sur l'IDE.
Mode Tour par tour : T
Attaque à distance : A
Utiliser la potion courante : P
Changement d'armes : I
Changement de potion : O
Lâcher arme : L
Lâcher potion : M
Sauvegarder : W
Quitter : ESC
Le joueur est doté de différents attributs lui permettant d'évoluer dans le jeu.
La vie est la donnée la plus importante du jeu. Si celle-ci tombe à 0, le joueur a perdu.
Le joueur peut perdre de la vie par les dégats que peuvent lui infliger les monstres et en regagner grâce à la nourriture ou aux potions de vie
A chaque attaque, celui-ci perd de l'endurance.
Il sera possible de regagner de l'endurance grâce aux potions d'endurance ou au burger.
L'argent permet au joueur d'acheter des objets au marchand.
Le joueur peut en gagner en vendant des objets au marchand ou directement en trouvant des stacks d'argent au sein du labyrinthe.
La carte se compose en plusieurs types d'etages: Toutes les pieces de cet etage sont des cercles.
Toutes les pieces de cet etage sont des rectangles.
Les pieces de cet etage sont un mélange de tout les types commun de pieces.
C'est un etage piege qui apparait lorsque l'on marche sur une case piegée.
C'est un étage où un boss apparaît .
C'est la salle de base, elle est rectangulaire.
C'est un triangle, c'est aussi une des salles de base.
C'est un cercle, c'est une plus petite version de salle de boss.
Salle dans lequel le marchand apparaît Non implementé Le joueur peut choisir sa classe au debut du jeu ce qui lui permet d'influencer sur ses statistiques au debut de la partie.
Ses statistiques sont:
-Points de vie (PV)
-Puissance d'Attaque (PA)
Le joueur est representé par cet emoji 🤓 sur Linux et @ sur Windows. Les monstres ont les mêmes statistiques que le joueur mais avec une vitesse et un champ de vision en plus ce qui leurs permet de le detecter s'il s'approche trop et de s'arreter s'il s'eloigne trop loin. Linux: 👽
Windows: &
Il se deplace vite et detecte le joueur de très loin de plus des qu'il reçoit un coup il se teleporte a l'autre bout de l'etage. Linux: 🐝
Windows: B
L'abeille n'est pas si dangereuse en revanche des qu'elle meurt deux nouvelles abeilles deux fois moins puissantes apparaissent. Linux: 🐦
Windows: ù
Il suit un chemin periodique en diagonale et n'attaque pas le joueur a moins que celui lui bloque le passage. Linux: 👻
Windows: H
Il peut traverser les murs pour venir attaquer le joueur. Linux: 🐀
Windows: M
Il est rapide et se deplace en diagonale mais a tres peu de point de vie. Linux: 💀
Windows: S
Il peut attaquer le joueur a distance et recule des qu'il s'approche de lui pour garder une certaine distance de securité. Linux: 🐌
Windows: G Il se deplace en ligne droite et des qu'il est façe a un obstacle fait demi tour. Linux: 🌋
Windows: V
Il cause des dégats a toutes les entités s'approchant dans son champs d'activation. Linux: 🧟
Windows: Z
Il se déplace tres lentement et a beaucoup de points de vie.
Le marchand, même si considéré comme un monstre dans notre implémentation, est bien différent des autres entités du labyrinthe
Il apparaît dans le labyrinthe de manière aléatoire.
Pour engager la conversation avec celui-ci, il suffit de le colisionner.
Le prix est fixé en fonction de l'équilibrage du jeu.
Le joueur peut de même vendre ses objets auprès du marchand.
Il est possible de rompre la pacificité du marchand en essayant de le voler.
Le marchand devient alors une entité aggressive.
Ce sont des monstres bien plus fort que les précédents, dotés de capacités uniques et prenant plusieurs cases d'affichage.
Le boss "Big Monster" est un monstre puissant doté de deux bras. Sa particularité est qu'il double sa puissance à chaque perte de bras.
Le boss "Snake" est doté d'une longue queue qu'il faudra détruire avant de pouvoir le tuer.
Le boss "Invoqueur" tire de puissant rayons lazer. Il invoque de même des rats lorsque celui-ci se voit infligé des dégats.
Les armes, peuvent être trouvées tout le long du labyrinthe :
- En les ramassant directement dans le labyrinthe
- En les récupérant sur un monstre tué
- En les achetant au marchand
Elles permettent au joueur d'attaquer les différents monstres qu'il va rencontrer durant son aventure.
Le type d'attaque va changer en fonction de l'arme portée par le joueur.
Clé à molette :
Linux: 🔧
Windows: "m"
Epée :
Linux: 🔪
Windows: "m"
Hache :
Linux: 🪓
Windows: "m"
Châine :
Linux: 🔗
Windows: "m"
Les armes mélées sont les armes corps à corps du jeu. Elles infligent des dégats conséquent à courte portée.
Il existe des clés à molette, des épées, des haches et des chaînes.
Les différentes armes influent sur la portée d'attaque du joueur.
Canne à pêche
Linux: 🎣
Windows: "b"
Arc
Linux: 🏹
Windows: "b"
Tridant
Linux: 🔱
Windows: "b"
Revolver
Linux: 🔫
Windows: "b"
Il existe dans le jeu des arme à distance. Elles permettent d'attaquer un monstre à partir du moment où il est à portée de l'arme
Si aucun monstre n'est à portée du joueur, ce dernier ne peut pas attaquer.
Il existe des Cannes à pêche, des arcs, des tridents et des revolvers
Les différentes armes influent également sur la portée d'attaque du joueur.
Balais
Linux: 🧹
Windows: "w"
Balais
Linux: 🦴
Windows: "w"
Balais
Linux: 🥢
Windows: "w"
Balais
Linux: 🦯
Windows: "w"
Les armes magiques sont les armes à distance du jeu. Le joueur, en les utilisant, attaquera en ligne droite devant lui.
Contrairement aux armes à distance classiques, peu importe qu'il y ait des monstres sur sa trajectoire, le joueur peut quand même utiliser son arme.
Il existe des balais, des os, des baguettes et des cannes
Les différentes armes influent également sur la portée d'attaque du joueur.
Les potions, tout comme les armes, peuvent être trouvées tout le long du labyrinthe :
- En les ramassant directement dans le labyrinthe
- En les récupérant sur un monstre tué
- En les achetant au marchand
Une fois ramassées, les potions se disposent dans l'inventaire du joueur et peuvent être utilisées à tout moment.
Celles-ci ont des effets qui diffèrent en fonction du type de la potion.
Linux: 🍼
Windows: "h"
La potion de vie est une potion tout de ce qu'il y a de plus classique : elle restaure de la vie au joueur à l'utilisation.
Linux: 🍺
Windows: "s"
Une fois utilisée, la potion de force rend le joueur plus fort en augmentant ses dégats d'attaque.
Linux: 💉
Windows: "i"
Après avoir consommé cette potion, le joueur devient invulnérable pendant un court instant
Linux: 🥃
Windows: "e"
L'utilisation de cette potion octroie au joueur une endurance illimitée pendant une courte durée, permettant au joueur d'utiliser ses attaques sans coût.
A la différence des potions et des armes, le joueur ne peut pas stocker de nourriture dans son inventaire.
Une fois ramassée, la nourriture est instantanément consomée et rend de la vie et/ou de l'endurance au joueur. Les fruits permettent de rendre de la vie au joueur.
Ils sont identifiable dans le jeu par les symboles suivant :
Pomme :
Linux: 🍎
Windows: "p"
Banane :
Linux: 🍌
Windows: "b"
Carrote :
Linux: 🥕
Windows: "c"
Orange :
Linux: 🍊
Windows: "o"
Pêche :
Linux: 🍑
Windows: "g"
Windows: "b"
Le burger permet de rendre de la vie et de l'endurance au joueur.
2.4.4.1 Les stacks d'argents Les stacks d'argent sont des objets trouvables par le joueur dans le labyrinthe.
Une fois ramassés et comme la nourriture, les stacks d'argent disparaissent et créditent le joueur du montant de celui-ci.
L'affichage va varier en fonction du montant du stack d'argent.
Entre ... et ... : Linux:
Windows:
Entre ... et ... : Linux:
Windows:
Entre ... et ... : Linux:
Windows:
Entre ... et ... : Linux:
Windows:
Les cases du jeu se divisent en deux categories, les fonctionnelles et les cosmétiques: les premières ont une utilité que cela soit dans le jeu ou la programmation alors que les deuxièmes n'apporteront qu'un intérêt esthétique. Ce sont les cellules de base.
Ce sont les bordures de l'étage, aucune entité ne peut les traverser (sauf exceptions).
Ce sont des cellules vides.
Elle permet de remonter à l'étage precedent.
Linux: 👍
Windows: ^
Elle permet de descendre à l'etage precedent.
Linux: 👎
Windows: v
Ce sont des cellules invisibles qui teleportent le joueur dans un etage piégé. Un coffre est placé dans cette cellule. L'inventaire du joueur permet de stocker les objets et la monnaie du joueur.
Il affiche tout ceci dans une interface visible sur la droite de l'écran.
![](https://user-images.githubusercontent.com/74865920/118412636-5fe59680-b69b-11eb-95e2-fd7d81c02104.png)
Exemple quand aucune partie n'est sauvegardée :
![](https://user-images.githubusercontent.com/74865920/118412972-33cb1500-b69d-11eb-9bdf-7695a60f3b42.png)
Exemple de sauvegarde de partie:
![](https://user-images.githubusercontent.com/74865920/118412916-e9499880-b69c-11eb-9510-4d5d00eaa095.png)
Exemple de chargement d'une partie sauvegardée :
![](https://user-images.githubusercontent.com/74865920/118412930-febec280-b69c-11eb-9092-f8695850bbc6.png)