Lemmings by night
- Encadrants: Eric GASCARD (tuteur), Michael PERIN
- Elèves RICM3: Paul LABAT (Chef de projet), Robin EUDES, Rodolphe FREBY, Pierre-Henri GINOUX, Adji-Ndèye-Ndaté SAMBE
- File:LemmingByNight-Flyer.pdf
- File:LemmingByNight-Poster.pdf
- File:LemmingByNight-ScreenCast.wav
- File:LemmingByNight-Presentation.pdf
- [Dépôt des sources]
Description (Contrat)
Lemmings est un jeu paru dans les années 1990. L’objectif est d’amener de charmants petits bonshommes en robe bleue avec des cheveux verts vers la sortie. Cependant, ces nobles créatures ne peuvent effectuer que des actions très basiques. Mais elles peuvent également se spécialiser, pour creuser un tunnel dans un mur, ou pour escalader celui-ci. Le but du jeu est de trouver la meilleure combinaison possible pour permettre au plus grand nombre d’atteindre l’arrivée sans encombre, et d’avoir un nombre de lemmings sauvés supérieur ou égal au nombre de lemmings requis pour gagner le niveau ! Cependant, la nuit rôde... vous pouvez perdre de vue le décor, ou même vos lemmings...
L’application vous propose une interface graphique avec une carte, dans laquelle se déplacent vos lemmings. Vous avez à votre disposition une palette d’actions que vous pouvez affecter à vos lemmings afin de résoudre le puzzle et d’atteindre la sortie ! Au travers de boutons, vous pouvez également mettre le jeu en pause, accéder au menu ou même quitter le jeu. Chaque carte est unique, et il n’existe pas forcément une seule combinaison de Lemmings afin de réussir le niveau. Personnalisez à volonté votre configuration afin de vous amuser à chaque fois !
Voici le contrat de base qui nous a été fixé :
. Jeu classique . Map décrite en XML avec texture . Défilement de la nuit . Chargement d'un lemmings utilisateur . Lemmings contrôlable . Bruitage . Notification d'un XML invalide
En bonus :
. Pop-up au dessus du lemming sélectionné . Portails de téléportation
En extension :
. Chargement du XML par gui . S&auvegarde
Architecture
Manuel Utilisateur
1. Fonctionnalités du logiciel
Lemmings : Night is Coming vous permet de configurer un grand nombre d’objets pour votre jeu :
● Ajoutez l’automate de votre choix, pour avoir un type de lemmings supplémentaire et personnalisable.
● Personnalisez vous-même les automates de base.
● Spécifiez le nombre de lemmings que vous désirez avoir pendant le jeu.
● Spécifiez le nombre d’actions bonus supplémentaires
● Créez votre propre monde en personnalisant la carte.
2. Installation
Pour jouer au jeu Lemmings : Night is Coming, vous devez avoir un interpréteur Ocaml ainsi qu’une machine virtuelle Java en version 1.7. Il vous faut ensuite désarchiver le fichier Lemmings_NIC.tar.gz puis suivre les instructions suivantes :
Étape 1 : édition du fichier de configuration
D’abord, il faut saisir tous les paramètres du jeu. Pour cela, il faut éditer le fichier ParserXML.ml, tout en consultant le fichier types.ml où ont été définis tous les types de façon explicite pour vous guider.
Un fichier Ocaml de base est fourni. Vous pouvez soit éditer ce fichier de configuration soit éditer le fichier XML généré par l’exécution du fichier Ocaml.
- Syntaxe du langage
Il y a des procédures à respecter. Seules les actions définies ci-dessous sont prises en compte : marcher
tourner
tomber
monter
mourir
atterrir
grimper bloquer retourner creuserH creuserV creuserD construire
Il en est de même pour les conditions que sont : isEau isVide isMortel isSol isObstacle isBloqueur hautMap isCorniche isEscalier isEsca isCreusableH finH finV isCreusableV finD isCreusableD finE
En cas de non-respect de ces primitives (conditions et actions), lors du lancement du jeu, non seulement le fichier XML ne sera pas exécuté mais une fenêtre d’erreur s’affichera pour indiquer l’emplacement de l’erreur que vous serez amené à rectifier.
En ce qui concerne le sens des blocs, vous avez 2 possibilités : horizontal et vertical. De même, on a 9 types de blocs:
1 = vide 2 = earth 3 = water 4 = escalier 6 = nondestructible 7 = creusable 8 = le spawn 9 = la sortie
Il faudra faire aussi attention à ce que les noms des boutons définis correspondent aux noms des comportements de l’automate. Vous pouvez aussi donner le nom d’utilisations de vos boutons.
Dans le jeu, vous disposez de 9 automates qui définissent les comportements des lemmings dont 8 déjà initialisés. Vous avez alors la possibilité de rajouter un seul et un seul nouvel automate, et pas plus. Si cette contrainte n’est pas respectée, un message d’erreur sera généré lors du lancement du jeu. Il faut cependant souligner qu’un ordre de priorité a été établi dans la déclaration des automates. Si vous voulez rajouter votre nouvel automate, il faut veiller à le déclarer à la suite de ceux déjà définis.
Pour les autres paramètres, vous pouvez les définir comme bon vous semble, vous êtes le maître du jeu.
- Exemple de fichier de configuration
Comme évoqué, les paramètres que vous allez définir doivent être en accord avec les types prédéfinis et les contraintes évoquée.
Voici un exemple de fichier de configuration :
Voici la liste des boutons accessibles :