Le projet : Un jeu d'aventure


zuul-bad

zuul-with-images
   

Vous pouvez en savoir plus sur ce type de jeux et même jouer à certains d'entre-eux en allant explorer les 2 sites cités dans la bibliographie. Par rapport aux exemples et aux instructions que vous pourrez y trouver, nous ne nous limitons pas à des versions non graphiques.

Le jeu

Ce projet est décrit dans les 7 versions du livre "Objects First with Java" cité dans la bibliographie.

Ne vous laissez pas décourager par l'ampleur apparente de ce projet.
Pour le mener à bien, étape par étape, il suffit de lire les objectifs détaillés (voir la page web de l'unité) et de suivre les instructions.
Vous n'avez pas aujourd'hui toutes les connaissances nécessaires pour terminer ce projet, mais vous allez les acquérir d'ici à la fin du projet grâce aux unités d'enseignement en cours ou à venir, à la lecture du chapitre 7, à des exemples qui seront fournis sur cette page web, et à vos recherches personnelles.

Il existe plusieurs versions de ce projet qui vous permettent de vous familiariser avec les concepts de base, puis avec des concepts plus avancés, et enfin avec des techniques améliorant l'ergonomie.
Ces versions sont disponibles à partir de la liste officielle des exercices (voir la page web de l'unité).

1) Lire la documentation et le code source de la version initiale

La lecture et la compréhension du source initial sont primordiales.
Toutefois, suivez les conseils donnés sur la page web de l'unité pour savoir quels pré-requis sont souhaitables avant de vous lancer dans la lecture du code source.
La lecture peut être associée au test de chaque classe. Vous pouvez également établir un plan de situation des pièces de cette version par la lecture du source de la classe Game (méthode createRooms()).

La version initiale du jeu est constituée de 5 classes

  • La classe CommandWords recense les mots-clés autorisés et détermine si une commande de l'utilisateur est valide.
  • La classe Command engendre une commande de l'utilisateur.
  • La classe Room permet de créer les pièces du jeu, une pièce représente une scène.
  • La classe Parser permet de lire le texte entré par l'utilisateur et le transforme en commande.
  • La classe Game est la classe principale du jeu (méthode play)

2) Réaliser de petites extensions (juste pour expérimenter)

  1. Changer le nom des pièces
  2. Changer la disposition des pièces, déplacer une pièce par rapport à une autre
  3. Ajouter une ou deux pièces supplémentaires
  4. etc...

3) Concevoir votre jeu

  • Avant tout, vous devez décider du but de votre jeu, dans le genre de ces quelques phrases : Vous êtes dans une certaine situation, vous voulez atteindre tel objectif. Pour cela, vous devez passer par certaines pièces, acquérir certains objets. Pour gagner, il faut se trouver dans tel lieu, avec tels objets, et avant tant de temps.
  • 1er exemple :
    Vous êtes à l'ESIEE, vous avez trouvé la salle des TP Java, pour la trouver vous avez dû demandé à l'accueil, parcouru le hall, pris l'ascenseur ou l'escalier,.... C'est un jour d'examen sur machine, arrivé a temps et avec le polycopié et si vous n'avez pas oublié les notes de cours vous avez gagné. Si vous êtes allé à la cafétéria, bu plus de 5 panachés
    , votre note est divisée par 2, ...
  • 2ème exemple :
    Vous vous êtes perdu au
    château de Chantilly. Après avoir franchi le portail, c'est à la suite de l'exposition consacrée à Jean Clouet que vous avez un pris chemin sans issue, pour sortir du château et afin de rejoindre le temple de Vénus, vous devez découvrir la salle où se trouve la toile intitulée " Le donneur de Sérénades" ou le portrait d'une dame inconnue par Jean Clouet, prendre les 4 tomes de Don Quixot dans le cabinet des livres et avoir acheté à la boutique du château le livre "Java en 21 heures"....
  • Autres exemples dans les archives des jeux déjà réalisés
  • conseils : pas plus d'une quinzaine de pièces, le jeu devenant trop complexe. N'importe quel endroit réel ou imaginaire peut être utilisé. Organisez vos pièces, placez vos objets ou personnes( monstres, trolls, ...). Décidez quelles actions doit réaliser le joueur pour gagner (ou perdre)
  • Caractéristiques (très) minimales pour commencer :
    • Le jeu comporte plus de 5 pièces.
    • Le joueur peut se déplacer de pièce en pièce. Le parcours n'est ni uniquement linéaire, ni uniquement en étoile.
    • Il y a des objets dans certaines pièces. Chaque pièce comporte plusieurs objets que le joueur peut (doit) prendre.
    • Le joueur possède ou peut emporter un ou plusieurs objets. Chaque objet a un poids (et/ou un prix) et le joueur ne peut pas tous les emporter (et/ou les acheter).
    • Le jeu accepte au moins le double de commandes par rapport à la version de base fournie.
    • Le joueur peut perdre de façon prématurée. Le joueur peut gagner ! En fonction de la situation, il doit être informé de sa réussite ou de son échec.
  • Attention ! Votre jeu ne doit ressembler à aucun autre. Ni à un de ceux figurant dans la rubrique "Autres exemples" ci-dessus, ni à de tels jeux trouvés sur le net ...
    D'autre part, il ne doit évidemment pas être illégal (racisme, pédophilie, terrorisme, incitation à la consommation de drogue/tabac/alcool, ...). Enfin, il doit rester de bon goût (éviter le gore, le porno, le dénigrement d'une personne réelle, d'un personnage de fiction, des femmes, d'une communauté quelconque, ...).

 

Bibliographie :

  • Objects First with Java, A Practical Introduction using BlueJ de David J.Barnes et Michael Kölling.
    Prentice Hall / PearsonEducation, 2006

 


--> Dernière mise à jour le par DB