1 Le donjon
Transcription
1 Le donjon
Université de Savoie, UFR SFA M1-IDESSE, M1-MATH-IM INFO719 2007–2008 TD 2, étude de cas On va modéliser progressivement une situation d’un jeu type “Donjons et Dragons” (TSRTM ). Le principe de ce jeux de rôle simple est de réunir un groupe d’aventuriers, joués par les joueurs (!), pour les faire participer à une aventure où ils vont explorer des campagnes et donjons, combattre des ennemis (les monstres) et récolter des trésors. Un autre joueur, le maı̂tre du jeu, connaı̂t l’aventure et joue les monstres contre les joueurs. Cette modélisation sert de support à un travail sur le diagramme de classes avec les concepts de composition, agrégation, navigabilité et généralisation. 1 Le donjon On commence par modéliser le donjon. De manière simplifiée, un donjon est une collection de salles, reliées entre elles par des ouvertures. Exercice 1 : Proposez un diagramme objet représentant le plan ci-dessous : En déduire un premier diagramme de classe simple. On note que la relation ∗—∗ ne s’impose pas vraiment, mais qu’une relation navigable 1 −→ ∗ suffit. Rajoutez un trou qui fait communiquer l’entrée avec la cave. 1 On constate que la relation n’est navigable que dans un sens a priori. Comment faire pour rajouter l’extérieur ? On peut par exemple le considérer comme une salle particulière, dans un premier temps. Exercice 2 : On veut maintenant différencier les liens entre salles. On constate que ce peut-être des portes ouvertes ou fermées, des escaliers, des pont-levis, des herses, des toboggans, des fenêtres. On rajoute donc une classe Passage qui décrit le passage entre deux Salles. Le type de passage est un attribut dans un premier temps. On note qu’on rajoute alors des attributs pour savoir si un passage est traversable dans les deux sens. 2 Aventuriers et monstres Il s’agit maintenant de représenter le groupe d’aventuriers/joueurs. Dans D & D, les joueurs peuvent jouer différents types de personnages : guerrier, magicien, voleur, prêtre. Chaque classe a des caractéristiques et des bonus distincts, des qualités et des défauts. On peut identifier les caractéristiques principales : force, adresse, constitution, intelligence, sagesse, charisme. Suivant le type, le personnage peut ou non faire de la magie, soigner des blessures ou manipuler des armes lourdes. Un personnage engrange de l’expérience et de l’or au cours de ses aventures. Tout personnage a une classe d’armure qui définit sa capacité à éviter et/ou encaisser les coups adverses (le plus bas, le mieux c’est). Exercice 3 : Proposez un diagramme de classe modélisant les aventuriers. 2 Il est naturel d’utiliser ici la généralisation. Exercice 4 : Il y a aussi des monstres dans ce donjon, de types très variés : gobelin, orques, trolls, dragons, mêmes humains guerriers et autres. Eux aussi ont une classe d’armure, des caractéristiques, peuvent combattre, lancer des sorts, etc. Modélisez les monstres. Normalement, on doit déjà se poser la question de fusionner joueurs et monstres, les uns pilotés par les joueurs, les autres par le maı̂tre du jeu. Exercice 5 : Un joueur peut aussi être humain, nain, elfe, hobbit, voire orque, ce qui modifie ses caractéristiques de base. On pourrait penser à de l’héritage multiple, mais une délégation vers une classe abstraite Race est mieux indiquée, car plus souple. 3 3 Donjons & Dragons Les personnages et les monstres se déplacent maintenant dans le donjon. On veut donc les situer dans les salles. Exercice 6 : Mettez à jour le diagramme de classes. Le fait d’avoir fusionné monstre et personnages prend tout son sens. Exercice 7 : Pour le moment, le donjon est uniquement conceptuel. Il n’a pas de réalisation géométrique. Pour simplifier, toutes les salles du donjon seront représentées sur une matrice de cases. A chaque salle correspondra un ensemble de cases. Inversement, une case doit connaı̂tre la salle qui le contient, même si certaines cases (murs et autres) n’appartiennent à aucune salle. Représentez le diagramme de classes. Il devient intéressant d’ajouter une notion globale de donjon, qui se compose de salles et de cases et qui possède une association qualifiée vers les cases, déterminées par les simples coordonnées. Exercice 8 : On place aussi des objets, des meubles et des trésors dans le donjon. Les personnages, comme les monstres peuvent ramasser les objets utiles, les objets décos ne servant pas à grand chose. Dans les objets utiles, on distingue les armes, armures, bijoux, clés. Chaque objet a un poids, une taille, etc. Ne pas oubliez que les personnages et les monstres agrègent des objets utiles, mais pas de composition ! 4