Vous êtes sur la page 1sur 58

Remerciement

Nous voudrions remercier notre encadrant à la UAS, Mr Boubakri Anis,


pour son soutien et ses recommandations judicieuses. Aussi, remercions-nous
tout personnel de la UAS ayant contribué de près ou de loin dans le bon
déroulement du projet.

Nous devons chaque bribe de notre connaissance à nos enseignants à


l’UAS qui ont si bien mené leur noble quête d’enseigner les bases de
l’informatique. Nous les remercions non seulement pour le savoir qu’ils nous
ont transmis, mais aussi pour la fierté et l’ambition que leurs personnes nous
aspirent.

Non loin de tout projet ambitieux, il existe des gens qui partagent sans
jamais se lasser ses meilleurs et ses pires moments. Ce sont des personnes qui
nous ont soutenus dans chacun de nos instants de faiblesse, et qui, sans leurs
extrême attention et gentillesse, nous ne serions pas ce que nous sommes devenu
aujourd’hui.

En tête de liste de ces gens nous placerons nos familles bien aimées qui
n’ont jamais hésité à nous offrir le meilleur qu’elles pouvaient. Viennent alors
tous nos camarades de promotion ainsi que tous nos amis qui nous ont aidés de
façon directe ou tout simplement par leur présence et leur soutien moral.

2
Dédicace …
A mes très chers parents
Quenelle dédicace en épuise exprimer ce que je leurs dois, pour leur amour, leur
patience, leur générosité et leur confiance en moi…
Trésors de bonté, de tendresse, en témoignage de ma profonde affection et ma
grande reconnaissance «Que Dieu vous garde».

A mon adorable frère et ma chère sœur,


A toute ma famille,
A celle que j’aime,
A tous mes amis,
Que ce travail soit l’expression et le témoignage de mon profond amour.
A tous ceux qui comptent pour moi,
A tous ceux pour qui je compte,
Je le leur dédie cet humble travail en témoignage de mon grand amour et ma
gratitude infinie.

3
Sommaire
Introduction
Générale…………………………………………………………………………………………….………………………………………….7
Chapitre I Etude de l’existant et spécification…………………………………………………………………………………8
Introduction ………………………………………………………………………………………….……..……………………………9
I. Etude de l’existant………………………………………………………………………….…………..………………………………9
1. Objectifs souhaités …………………………………………………………………………………………………………………9
II. Le cahier de charges………………………………………………………………………………………………….………………9
1. Identification des acteurs…………………………………………………………………………………………………………10
2. Capture des besoins……………………………………………………………………………………………………………..…10
Besoins fonctionnels…………………………………………………………………………………………………………..…………10
Besoins non fonctionnels…………………………………………………………..………………………………………………….11
III Les méthodes : Méthodes agiles………………………………………………..………………………………………………11
1. RAD - Développement rapide d'applications ……………………………………………………………………………12
2. DSDM ……………………………………………………………………………………………..…………..…………………………13
3. UP - Unified Process ……………………………………………………………………………….………………………………13
4. RUP - Rational Unified Process ……………………………………………………………………..…………………………13
5. XP - eXtreme Programming………………………………………………………………………………..……………………14
VI. Tableau comparatif des méthodes ………………………………………………………………………..…………………15
V. Explication de choix de la méthode …………………………………………………………………………………………20
Conclusion …………………………………………………………………………………………………….……………….……………21
Chapitre II Conception …………………………………………………………………………………………………………………22
Introduction …………………………………………………………………………………………………………………………………23
I. Les diagrammes de cas d’utilisation ……………………………………………………………………………………………24
I.1 Diagramme de cas d’utilisation général…………………….………………………………………………………………25
I.2. Raffinement des cas d’utilisation ……………………………….……………………………………………………………26
I.3. Diagramme de séquence …………………………………………….…………………………………………………………28
II. Diagramme de classes ………………………………………………………………………………………………………………29
III. Diagramme d’activité ……………………………………………………….……………………………………………………30
III.1. Diagramme d’activité général …………………………………………….…………………………………………………31
III.2. Diagramme d’activité du donjon de la caverne infernale …….…………………………………………………32
III.3. Diagramme d’activité du donjon abyssal………………………………..………………………………………………33
Conclusion ………………………………………………………………………………………..…………………………………………34
Chapitre III Réalisation …………………………………………………………………………..……………………………………35
Introduction………………………………………………………………………………………..……….………………………………36
I. Environnement matériel ……………………………………………………………………………………………………………36
II. Environnement et outils utilisés ……………………………………………………………………..…………………………36
III. Scénarii d’utilisation ………………………………………………………………………….…………….………………………39
Conclusion Générale ……………………………………………………………………………………………………………………50
Webographie ………………………………………………………………………………..……………………….……………………51
Bibliographie ……………………………………………………………………………………………..……………..…………………51

4
Liste des figures
Figure 1: Le cycle de l'Extreme Programming ....................................................................................... 11
Figure 2: Diagramme de cas d’utilisation général ................................................................................. 18
Figure 3 : Raffinement des cas d’utilisation courir ................................................................................ 20
Figure 4 : Raffinement des cas d’utilisation conduire ........................................................................... 20
Figure 5 : Raffinement des cas d’utilisation tirer .................................................................................. 20
Figure 6 : Raffinement des cas d’utilisation viser .................................................................................. 21
Figure 7 : Raffinement des cas d’utilisation se défendre ...................................................................... 21
Figure 8 : Raffinement des cas d’utilisation acheter ............................................................................. 21
Figure 9 : Raffinement des cas d’utilisation vendre .............................................................................. 22
Figure 10 : Raffinement des cas d’utilisation s'enregistrer ................................................................... 22
Figure 11 : Raffinement des cas d’utilisation gerer compte ................................................................. 22
Figure 12 : Raffinement des cas d’utilisation acheter arme.................................................................. 23
Figure 13 : Raffinement des cas d’utilisation achat équipement .......................................................... 23
Figure 14 : Raffinement des cas d’utilisation achat munnissions ......................................................... 23
Figure 15 : Raffinement des cas d’utilisation régler le son ................................................................... 24
Figure 16 : Raffinement des cas d’utilisation régler le graphisme ........................................................ 24
Figure 17 : Raffinement des cas d’utilisation régler le gameplay ......................................................... 24
Figure 18: Diagramme de séquence insription ..................................................................................... 25
Figure 19: Diagramme de séquence login ............................................................................................. 26
Figure 20: Diagramme de classes .......................................................................................................... 27
Figure 21: Diagramme d’activité général .............................................................................................. 29
Figure 22 : Diagramme d’activité du donjon de la caverne infernale ................................................... 31
Figure 23: Diagramme d’activité du donjon abyssal ............................................................................. 33
Figure 24: Capture d’écran de l’interface d’inscription......................................................................... 39
Figure 25: Capture d’écran de l’interface d’authentification ................................................................ 40
Figure 26: Capture d’écran de l’interface du choix du caractère .......................................................... 41
Figure 27: le sanctuaire en vue de haut ................................................................................................ 42
Figure 28: le centre du sanctuaire ......................................................................................................... 43
Figure 29: les camions menant aux donjons ......................................................................................... 44
Figure 30: l'animation de l'un des élits.................................................................................................. 45
Figure 31: pop point du mini boss du premier donjon.......................................................................... 46
Figure 32: les serviteurs attaquent un personnage joueur ................................................................... 47
Figure 33: combat entre le boss et un personnage joueur ................................................................... 48

5
Liste des tableaux

Tableau comparatif de la méthode à choisir…………………………………………………15

6
Introduction Générale

Alors que le jeu vidéo, après plus de trente ans d'existence commerciale, s'est largement
démocratisé, il inspire toujours autant d'espoirs que de peurs. Certains utilisent ce nouveau
média pour développer des thérapies pour enfants alors que d'autres font souvent
l'amalgame entre, par exemple, un attentat et les habitudes de joueur de son auteur. La
recherche scientifique commence doucement à s'intéresser à cet objet, considéré de plus
en plus comme légitime. Aux États-Unis, une première publication dédiée aux Game
Studies a vu le jour. En France, l'Observatoire des Mondes Numériques en Sciences
Humaines, s’il ne s'occupe pas uniquement des jeux vidéo, contribue à centraliser les
recherches dans ce domaine et à renforcer leur crédibilité. Le site lemonde.fr héberge un
jeu vidéo sur la politique française et organise un concours pour promouvoir la création
vidéo ludique. Ajoutons à cela les nombreuses productions de serious games à travers le
monde, ces jeux à messages, éducatifs ou militants, qui donnent de nouvelles perspectives
sur ce que les jeux vidéo peuvent réaliser.

Malgré la construction et la légitimation progressive de ce champ, ainsi que les fantasmes


que suscitent les jeux, il n'existe pas d'analyse idéologique des œuvres vidéo ludiques.
C'est ce domaine précis, qui reste à défricher, que nous avons choisi d'explorer en nous
fixant pour objectif la mise sur pied d'une méthode originale et rigoureuse.

C’est dans ce cadre que s’insère notre projet de fin d’année qui consiste à concevoir,
réaliser et modéliser le jeu vidéo 3D « Cyborgs »pour pouvoir répondre aux besoins et
proposer des solutions pour son évolution en présentant une nouvelle forme de
conception.

Pour réaliser cet objectif, nous avons adopté la technique UML pour les étapes de
spécification et de conception, les langages C++, C# et Unity Javascript comme langages
de développement du jeu et les langages HTML, Javascript et PHP pour la création du site
web officiel.

1
Le présent rapport s’articule en quatre chapitres. Le premier chapitre intitulé «Etude de
l’existant et spécification » s’intéresse, dans sa première partie, à la présentation de jeu
vidéo dans la société ainsi que l’ensemble des besoins fonctionnels et non fonctionnels.
Dans la seconde partie, nous décrivons la spécification des besoins. Le deuxième chapitre
«Conception» traite l’analyse du système d’une manière plus formelle et présente la
conception détaillée des niveaux données, traitements et présentation.

Le troisième chapitre «Réalisation» est consacré à l’environnement de réalisation. Nous


présentons ainsi quelques captures d’écran. Enfin, nous clôturons ce rapport par une
conclusion générale qui récapitule notre travail effectué et qui présente des perspectives
futures du jeu développée.

2
Chapitre I

Etude de
l’existant et
spécification

3
Introduction
Dans ce premier chapitre nous présenterons brièvement l’organisme du menu principal.
Ensuite, nous exposerons les problèmes rencontrés dans le jeu. Puis, nous présenterons le
cahier des charges. Enfin, nous présenterons la technique de conception retenue et les
diagrammes de cas utilisation, de classe et d’activité.

I. Etude de l’existant

1. Objectifs souhaités

Le jeu à réaliser a un message précis a emmètre. Contrairement aux autres jeux de tire et
d’aventure dont le but principal et purement commercial. Cyborgs est un jeu est réalisé pour
monter au joueur que :
 Le monde apocalyptique est une évidence si on ne trouve pas de solution
 Combattre pour survivre

II. Le cahier de charges

1. Identification des acteurs

Un acteur est l’idéalisation d’un rôle joué par une personne externe, un processus ou une
chose qui interagit avec un système.

Nous distinguons deux acteurs en interaction avec notre système dont ils ont un profil
particulier en termes de fonctionnalités. Il s’agit de :

* Joueur :

Rôle : jouer le jeu.

Attentes : défoulement et éducation.

4
2. Capture des besoins
Le jeu doit être bien conçu au niveau des graphismes, la jouabilité et sur tout l’histoire du jeu.
Pour cela, le système à réaliser doit satisfaire les exigences de la totalité des utilisateurs.
Nous présentons dans ce qui suit tous les besoins fonctionnels ainsi que les besoins non
fonctionnels.

Besoins fonctionnels :

 Interface d’authentification
Dans cette partie, le jour à une multitude de choix entre :
o S’authentifier
o Basculer vers le site officiel du jeu pour créer un nouveau compte
o Option/paramètres
o Quitter le jeu

 Menu du choit du caractère


A ce stage du jeu, le joueur peut choisir sa personnage jouable qui va l’incarner
durons son aventure.

 Le sanctuaire
C’est la vile principale ou tous les joueurs se réunissent, ils peuvent faire leurs
approvisionnements de nourriture, de munitions, de rejoindre les troupes de
combattants…etc.

 Le donjon de la caverne infernale


C’est le premier donjon ou les joueurs engageront leurs premiers combats. Ils
doivent tuer le gardien de la caverne infernale pour accéder au coffre, mais après
avoir tué ses serviteurs.

 Le donjon de cristal
C’est un donjon ou les combattants affronteront d’autre élite dans un
environnement de cristal et des péisages splendeur.

 Le donjon abyssal
Les joueurs affronteront un grand nombre de serviteurs.

 Le donjon de la prison
C’est le dernier donjon du jeu, ou les joueurs affronteront l’élite ultime du jeu.

5
Besoins non fonctionnels
Efficacité

Désigne la capacité d’un produit logiciel à fournir des performances appropriées,


relativement à la quantité de ressources utilisées, dans certaines conditions.

Comportement temporel

Désigne la capacité d’un produit logiciel à fournir des temps de réponses, de traitement et un
débit appropriés quand ses fonctions sont utilisées sous certaines conditions. Cela implique,
bien sûr, de définir ces conditions, c’est à dire la charge (surtout les pics de charges, puisque
le système sera dimensionné sur ce pic) estimée par fonctions mais également les volumes
impliqués, et toutes les exigences non-fonctionnelles (cohérence des données, sécurité, etc.).

Utilisation des ressources

Désigne la quantité et le type de ressources utilisés (CPU, disque, réseau, mémoire, etc.) et la
durée associée quand ses fonctions sont invoquées

Modifiabilité

Désigne la capacité d’un produit logiciel à permettre une modification spécifiée d’être
implémentée.

Couplage

Le couplage est une propriété indiquant le niveau de dépendances entre composants d’un
système. C’est une propriété globale obtenant à partir du calcul de dépendances entrantes et
sortantes pour chaque composant.

Stabilité

Désigne la capacité d’un produit logiciel à éviter des effets imprévus suite à la modification
du logiciel.

6
Portabilité

Désigne la capacité d’un produit logiciel à être transféré d’un environnement à un autre.
L’environnement peut inclure l’environnement organisationnel, matériel ou logiciel. Un sous-
attribut est l’installabilité que je range avec l’exploitabilité, c’est à dire « une fois mon produit
terminé comment son exécution et son exploitation sont-elle facilité ?»

III Les méthodes : Méthodes agiles

Les méthodes de développement dites « méthodes agiles »(en anglais Agile Modeling,
noté AG) visent à réduire le cycle de vie du logiciel (donc accélérer son développement) en
développant une version minimale, puis en intégrant les fonctionnalités par un processus
itératif basé sur une écoute client et des tests tout au long du cycle de développement.

L'origine des méthodes agiles est liée à l'instabilité de l'environnement technologique et au


fait que le client est souvent dans l'incapacité de définir ses besoins de manière exhaustive dès
le début du projet. Le terme « agile » fait ainsi référence à la capacité d'adaptation aux
changements de contexte et aux modifications de spécifications intervenant pendant le
processus de développement. En 2001, 17 personnes mirent ainsi au point le manifeste
agile dont la traduction est la suivante :

 individus et interactions plutôt que processus et outils


 développement logiciel plutôt que documentation exhaustive
 collaboration avec le client plutôt que négociation contractuelle
 ouverture au changement plutôt que suivi d'un plan rigide

Grâce aux méthodes agiles, le client est pilote à part entière de son projet et obtient très
vite une première mise en production de son logiciel. Ainsi, il est possible d'associer les
utilisateurs dès le début du projet.

1. RAD - Développement rapide d'applications

La « méthode de développement rapide d'applications » (en anglais Rapid Application


Development, notée RAD), définie par James Martin au début des années 80, consiste en un
cycle de développement court basé sur 3 phases (Cadrage, Design et Construction) dans un
délai idéal de 90 jours et de 120 jours au maximum.

2. DSDM
La méthode DSDM (Dynamic Software Development Method) a été mise au point en
s'appuyant sur la méthode RAD afin de combler certaines de ses lacunes, notamment en
offrant un canevas prenant en compte l'ensemble du cycle de développement.
7
Les principes fondateurs de la méthode DSDM sont les suivants :
 Une implication des utilisateurs
 Un développement itératif et incrémental
 Une fréquence de livraison élevée
 L'intégration des tests au sein de chaque étape
 L'acceptation des produits livrés dépend directement de la satisfaction des besoins

3. UP - Unified Process
La méthode du Processus Unifié (UP pour Unified Process) est un processus de
développement itératif et incrémental, ce qui signifie que le projet est découpé en phases très
courtes à l'issue de chacune desquelles une nouvelle version incrémentée est livrée.

Il s'agit d'une démarche s'appuyant sur la modélisation UML pour la description de


l'architecture du logiciel (fonctionnelle, logicielle et physique) et la mise au point de cas
d'utilisation permettant de décrire les besoins et exigences des utilisateurs.

4. RUP - Rational Unified Process


RUP (Rational Unified Process) est une méthode de développement par itérations promue par
la société Rational Software, rachetée par IBM. RUP propose une méthode spécifiant
notamment la composition des équipes et le calendrier ainsi qu'un certain nombre de modèles
de documents.

5. XP - eXtreme Programming
La méthode XP (pour eXtreme Programming) définit un certain nombre de bonnes pratiques
permettant de développer un logiciel dans des conditions optimales en plaçant le client au
coeur du processus de développement, en relation étroite avec le client.

L'eXtreme Programming est notamment basé sur les concepts suivants :


 Les livraisons de versions du logiciel interviennent très tôt et à unefréquence élevée pour
maximiser l'impact des retours utilisateurs.
 L'équipe de développement travaille en collaboration totale sur la base de binômes..
 Le code est testé et nettoyé tout au long du processus de développement.
 Des indicateurs permettent de mesure l'avancement du projet afin de permettre de mettre à
jour le plan de développement.
VI. Tableau comparatif des méthodes :
Dans cette partie on fera une comparaison entre les méthodes pour pouvoir en choisir
la plus compatible et cohérente a notre projet.

8
Méthodes Avantages Inconvénients

RAD Cycle de développement Notre projet demande une


court basé sur le Cadrage, période de développement
Design et Construction) plus large que 120 jours.
DSDM Un développement itératif C’est un travail individuel
et incrémental. donc pas d’implication
Une fréquence de des utilisateurs.
livraison élevée.
L'intégration des tests au
sein de chaque étape.

UP Permettant de décrire les Le projet ne peut pas être


besoins et exigences des découpé car c’est un travail
utilisateurs. séquentiel et tout est relatif.
RUP promue par la Nécessite une équipe pour
société Rational Software, être appliqué
rachetée par IBM
XP Le code est testé et nettoyé mesure l'avancement : on ne
tout au long du processus de peut pas le planifier à cause
développement. du temps que prend le
debuging.
Tableau comparatif de la méthode à choisir

I. Explication de choix de la méthode :


En informatique et plus particulièrement en génie logiciel, extreme programming (XP) est
une méthode agile plus particulièrement orientée sur l'aspect réalisation d'une application, sans
pour autant négliger l'aspect gestion de projet. XP est adapté aux équipes réduites avec des
besoins changeants. XP pousse à l'extrême des principes simples.

Origine

L'extreme programming a été inventée par Kent Beck, Ward Cunningham et Ron
Jeffries pendant leur travail sur un projet « C3 » de calcul des rémunérations chez Chrysler.
Kent Beck, chef de projet en mars 1996 commença à affiner la méthode de développement
utilisée sur le projet. Celle-ci est née officiellement en octobre 1999 avec le livreExtreme
Programming Explained de Kent Beck.

9
Pratiques extrêmes

Dans le livre Extreme Programming Explained, la méthode est définie comme :

 une tentative de réconcilier l'humain avec la productivité


 un mécanisme pour faciliter le changement social
 une voie d'amélioration
 un style de développement
 une discipline de développement d'applications informatiques
Son but principal est de réduire les coûts du changement. Dans les méthodes traditionnelles,
les besoins sont définis et souvent fixés au départ du projet informatique ce qui accroît les
coûts ultérieurs de modifications. XP s'attache à rendre le projet plus flexible et ouvert au
changement en introduisant des valeurs de base, des principes et des pratiques.
Les principes de cette méthode ne sont pas nouveaux : ils existent dans l'industrie du logiciel
depuis des dizaines d'années et dans les méthodes de management depuis encore plus
longtemps. L'originalité de la méthode est de les pousser à l'extrême :

 puisque la revue de code est une bonne pratique, elle sera faite en permanence (par un
binôme)
 puisque les tests sont utiles, ils seront faits systématiquement avant chaque mise en œuvre
 puisque la conception est importante, elle sera faite tout au long du projet (refactoring)
 puisque la simplicité permet d'avancer plus vite, nous choisirons toujours la solution la
plus simple
 puisque la compréhension est importante, nous définirons et ferons évoluer ensemble des
métaphores
 puisque l'intégration des modifications est cruciale, nous l'effectuerons plusieurs fois par
jour
 puisque les besoins évoluent vite, nous ferons des cycles de développement très rapides
pour nous adapter au changement.

10
Cycle de développement

Figure 1: Le cycle de l'Extreme Programming

L'extreme programming repose sur des cycles rapides de développement (des itérations de
quelques semaines) dont les étapes sont les suivantes :

 une phase d'exploration détermine les scénarios "client" qui seront fournis pendant cette
itération
 l'équipe transforme les scénarios en tâches à réaliser et en tests fonctionnels
 chaque développeur s'attribue des tâches et les réalise avec un binôme
 lorsque tous les tests fonctionnels passent, le produit est livré

Le cycle se répète tant que le client peut fournir des scénarios à livrer. Généralement le cycle
de la première livraison se caractérise par sa durée et le volume important de fonctionnalités
embarquées. Après la première mise en production, les itérations peuvent devenir plus courtes
(une semaine par exemple).

Programmation comme discipline collective

Tout en mettant l'accent sur les bonnes pratiques de programmation, XP préconise un


déroulement par itérations courtes et gérées collectivement, avec une implication constante du
client. Il en découle une redéfinition de la relation entre client et fournisseur avec des résultats
surprenants sur le plan de la qualité de code, de délais et de satisfaction de la demande du
client.

Valeurs

L'extreme programming repose sur cinq valeurs fondamentales.

11
Communication

C'est le moyen fondamental pour éviter les problèmes. Les pratiques que préconise l'XP
imposent une communication intense. Les tests, la programmation en binôme et le jeu du
planning obligent les développeurs, les décideurs et les clients à communiquer. Si un manque
apparaît malgré tout, un coach se charge de l'identifier et de remettre ces personnes en
contact.

Simplicité

La façon la plus simple d'arriver au résultat est la meilleure. Anticiper les extensions futures
est une perte de temps. Une application simple sera plus facile à faire évoluer.

Feedback

Le retour d'information est primordial pour le programmeur et le client. Les tests unitaires
indiquent si le code fonctionne. Les tests fonctionnels donnent l'avancement du projet. Les
livraisons fréquentes permettent de tester les fonctionnalités rapidement.

Courage

Certains changements demandent beaucoup de courage. Il faut parfois changer l'architecture


d'un projet, jeter du code pour en produire un meilleur ou essayer une nouvelle technique. Le
courage permet de sortir d'une situation inadaptée. C'est difficile, mais la simplicité, le
feedback et la communication rendent ces tâches accessibles.

Respect

Cette valeur fut ajoutée dans la deuxième édition de Extreme Programming Explained de K.
Beck. Cette valeur inclut le respect pour les autres, ainsi que le respect de soi. Les
programmeurs ne devraient jamais valider les modifications qui cassent la compilation, qui
font échouer les tests unitaires existants ou qui retardent le travail de leurs pairs. Les membres
respectent leur propre travail en cherchant toujours la qualité et la meilleure conception pour
la solution et cela grâce au refactoring.

Pratiques

Ces cinq valeurs se déclinent en treize pratiques qui se renforcent mutuellement :

Client sur site

Un représentant du client doit, si possible, être présent pendant toute la durée du projet. Il doit
avoir les connaissances de l'utilisateur final et avoir une vision globale du résultat à obtenir. Il
réalise son travail habituel tout en étant disponible pour répondre aux questions de l'équipe.

12
Jeu du planning ou planning poker

Le client crée des scénarios pour les fonctionnalités qu'il souhaite obtenir. L'équipe évalue le
temps nécessaire pour les mettre en œuvre. Le client sélectionne ensuite les scénarios en
fonction des priorités et du temps disponible.

Intégration continue

Lorsqu'une tâche est terminée, les modifications sont immédiatement intégrées dans le produit
complet. On évite ainsi la surcharge de travail liée à l'intégration de tous les éléments avant la
livraison. Les tests facilitent grandement cette intégration : quand tous les tests passent,
l'intégration est terminée.

Petites livraisons

Les livraisons doivent être les plus fréquentes possible. L'intégration continue et les tests
réduisent considérablement le coût de livraison.

Rythme soutenable

L'équipe ne fait pas d'heures supplémentaires. Si le cas se présente, il faut revoir le planning.
Un développeur fatigué travaille mal.

Tests de recette (ou tests fonctionnels)

À partir des scénarios définis par le client, l'équipe crée des procédures de test qui permettent
de vérifier l'avancement du développement. Lorsque tous les tests fonctionnels passent,
l'itération est terminée. Ces tests sont souvent automatisés mais ce n'est pas toujours possible.
En effet, seuls les tests de non régression peuvent être potentiellement automatisés du fait de
leur récurrence. La recette fonctionnelle d'une application est de plus en plus souvent confiée
à des experts du test indépendants des développeurs.

Tests unitaires

Avant de mettre en œuvre une fonctionnalité, le développeur écrit un test qui vérifiera que son
programme se comporte comme prévu. Ce test sera conservé jusqu'à la fin du projet, tant que
la fonctionnalité est requise. À chaque modification du code, on lance tous les tests écrits par
tous les développeurs, et on sait immédiatement si quelque chose ne fonctionne plus.

13
Conception simple

L'objectif d'une itération est de mettre en œuvre les scénarios sélectionnés par le client et
uniquement cela. Envisager les prochaines évolutions ferait perdre du temps sans avoir la
garantie d'un gain ultérieur. Les tests permettront de changer l'architecture plus tard si
nécessaire. Plus l'application est simple, plus il sera facile de la faire évoluer lors des
prochaines itérations.

Utilisation de métaphores

On utilise des métaphores et des analogies pour décrire le système et son fonctionnement. Le
fonctionnel et le technique se comprennent beaucoup mieux lorsqu'ils sont d'accord sur les
termes qu'ils emploient.

Refactoring (ou remaniement du code)

Amélioration régulière de la qualité du code sans en modifier le comportement. On retravaille


le code pour repartir sur de meilleures bases tout en gardant les mêmes fonctionnalités. Les
phases de refactoring n'apportent rien au client mais permettent aux développeurs d'avancer
dans de meilleures conditions et donc plus vite.

Appropriation collective du code

L'équipe est collectivement responsable de l'application. Chaque développeur peut faire des
modifications dans toutes les portions du code, même celles qu'il n'a pas écrites. Les tests
diront si quelque chose ne fonctionne plus.

Convention de nommage

Puisque tous les développeurs interviennent sur tout le code, il est indispensable d'établir et de
respecter des normes de nommage pour les variables, méthodes, objets, classes, fichiers, etc.

Programmation en binôme

La programmation se fait par deux. Le premier appelé driver (ou pilote) tient le clavier. C'est
lui qui va travailler sur la portion de code à écrire. Le second appelé partner (ou copilote) est
là pour l'aider en suggérant de nouvelles possibilités ou en décelant d'éventuels problèmes.
Les développeurs changent fréquemment de partenaire ce qui permet d'améliorer la
connaissance collective de l'application et d'améliorer la communication au sein de l'équipe.

14
Autres principes

 Ne pas ajouter de fonctionnalités plus tôt que prévu


 N'optimiser qu'à la toute fin
 Cette méthode s'appuie sur :
 une forte réactivité au changement des besoins du client
 un travail d'équipe
 la qualité du code
 la qualité des tests effectués au plus tôt

Environnements défavorables

En lieu et place d'inconvénient de la méthode, on parlera plus aisément d'environnements


défavorables dans lesquels la méthode XP n'est pas applicable. Dans ce cas, seule une partie
des pratiques peut être réalisée. Les principaux contextes défavorables sont :

 un blocage culturel : quand le client ou les développeurs ont l'habitude de fonctionner


autrement. L'ingénieur à qui l'on attribue des mini-tâches quotidiennes et qui doit les
réaliser avec un binôme peut avoir le sentiment que sa fonction est déqualifiée. Son
principal rôle n'est plus d'être force de proposition, mais bel et bien de produire et
d’accroître sa productivité (Taylorisme, Fordisme). Une telle vision peut en effet
provoquer un blocage culturel qui peut conduire à un turn-over important
 une équipe de vingt développeurs ou plus car la communication devient difficile : Il
est fréquent de voir au fil du temps des binômes travailler toujours ensemble, toujours
sur les mêmes sujets, et former ainsi des sous-équipes spécialisées, ce que ne veut pas
XP. Par ailleurs, les évolutions possibles dans l'entreprise sont très limitées dans la
mesure où tous les membres de l'équipe jouent tous les mêmes rôles
 un coût de changement exponentiel car « XP nécessite du code propre et simple »
 un feedback long ou difficile à obtenir : le retour sur investissement est visible sur le
moyen/long terme
 un aménagement qui empêche la communication ou la programmation en binôme (il
est nécessaire d'avoir une infrastructure open-space)
 respect d'une discipline collective et travail en binôme au quotidien : cette méthode ne
peut pas être appliquée avec n'importe qui, car elle dégage très peu de temps à
l'autonomie et au travail individuel, dans la mesure où systématiquement le travail se
fait à deux sur un même poste de travail. Les développeurs auront de la difficulté à
établir un projet professionnel dans leur entreprise la résistance au changement

Conclusion
Dans ce chapitre, nous avons décrit les principales fonctionnalités de notre application. Ainsi,
nous avons analysé le système et ses besoins. Nous allons passer par la suite au chapitre
suivant qui s’intéressera à la conception.

15
Chapitre II

Conception

16
Introduction
Afin de concrétiser les attentes attendues, une bonne conception s’avère cruciale et
indispensable. En effet, l’étape de conception constitue le noyau de développement d’un
projet. Pour cela, nous utilisons UML qui fournit une vue complète des aspects statiques et
dynamiques du système dans ses différents états. Nous aborderons la conception selon deux
axes : statique et dynamique. Nous présenterons alors le diagramme de classes correspondant
à notre système.

Mais dans la création des jeux vidéo, la partie conception ne prend pas une grande partie de
l’étude du projet, par contre la partie réalisation prend son ampleur.

17
I. Les diagrammes de cas d’utilisation
I.1 Diagramme de cas d’utilisation général

La figure 1 représente le diagramme de cas d’utilisation générale. Dans les jeux on a un seul
diagramme de ca d’utilisation. Une fois le joueur a ouvert le jeu, il a un accès direct à
l’interface d’authentification. Il a une multitude de choix, il règle le son, la qualité du
graphisme ou commencer à jour et là il peut faire tout ce que une personne ordinaire peut faire
(courir, se battre, marcher, etc…) et bien sûr faire une pause, et enfin il puisse quitter le jeu.
Dans ce jeu, la carte se divise en plusieurs emplacements. Le sanctuaire ou la ville principale,
c’est l’endroit où tous les joueurs connectés se réunissent. Ils ont accès au marchand pour se
procurer d’arme de munitions, d’armure et bien sûr de nourriture. Apres on a les donjons, ou
les joueurs affronterons des serviteurs et leurs maitre, c’est un élit à combattre pour s’emparer
de son précieux butin. Il y en a plusieurs et selon l’équipement des joueur que ce dernier est
franchissable ou ils se feront massacrer ou même mort par un seul coup.

Mais avant tout ça, le joueur doit se connecter sur le jeu. Pour cela il a besoin d’avoir un
compte. Il peut s’en procurer un sur le site officiel du jeu. Il a aussi accès a la boutique en
ligne ou il peut acheter des pièces d’or, des pièces d’armures épique, de la munissions
puissante ou il ne les trouvera pas dans le jeu.

18
Figure 2 : Diagramme de cas d’utilisation général

19
I.2. Raffinement des cas d’utilisation :

 Courir

Figure 3 : Raffinement des cas d’utilisation courir

Titre : Courir
But : faire déplacer le personnage joueur en courant.
Résumé : Une fois authentifié le joueur clique sur les touches Z, Q, S et D pour couri.
Acteur : Joueur.

 Conduire

Figure 4 : Raffinement des cas d’utilisation conduire

Titre : Conduire
But : faire déplacer le véhicule que conduit le joueur.
Résumé : Une fois authentifié le joueur clique sur les touches Z, Q, S et D pour déplacer son
véhicule
Acteur : Joueur.

 Tirer

Figure 5 : Raffinement des cas d’utilisation tirer

Titre : Tirer
But : Tirer une balle
Résumé : Une fois authentifié le joueur clique sur le bouton gauche de la sourie pour tirer
une balle ou une rafale sur les ennemies qui est en train de combattre.
Acteur : Joueur.

20
 Viser

Figure 6 : Raffinement des cas d’utilisation viser

Titre : Viser
But : Zoomer avec son arme
Résumé : Une fois authentifié le joueur fais tourner la roulette de son sourie pour avoir plus
de précision lors de son tire sur les ennemies
Acteur : Joueur.

 Se défendre

Figure 7 : Raffinement des cas d’utilisation se défendre

Titre : Se défendre.
But : Ne pas mourir.
Résumé : Une fois authentifié le joueur peut se défendre en se cachant derrière son bouclier
si le joueur clique sur le bouton droit de la sourie.
Acteur : Joueur.

 Acheter

Figure 8 : Raffinement des cas d’utilisation acheter

Titre : Acheter
But : Acheter des objets chez le marchand.
Résumé : Une fois authentifié le joueur peut interagir avec les marchands en avoir
l’opportunité d’acheter de la nourriture, des armes, des armures et de la munissions contre
des pièces d’or.
Acteur : Joueur.

21
 Vendre

Figure 9 : Raffinement des cas d’utilisation vendre

Titre : Vendre
But : Vendre des objets au marchand.
Résumé : Une fois authentifié le joueur peut interagir avec les marchands en avoir
l’opportunité de lui vendre de la nourriture, des armes, des armures et de la munissions
contre des pièces d’or.
Acteur : Joueur.

 S’enregistrer

Figure 10 : Raffinement des cas d’utilisation s'enregistrer

Titre : S’enregistrer
But : Créer un compte
Résumé : Une fois sur le site officiel du jeu, le joueur peut se procurer un compte en
introduisant le nom du comte et un mot de passe et sa confirmation. Avoir un compte est
primordial pour s’authentifier sur le jeu.
Acteur : Joueur.

 Gérer compte

Figure 11 : Raffinement des cas d’utilisation gerer compte

Titre : Gérer un compte.


But : Modifier un compte.
Résumé : Une fois authentifié sur le site officiel du jeu, le joueur peut modifier son mot de
passe.
(dans les jeux, un nom du compte ne changera jamais, et un compte ne sera jamais
supprimer).
Acteur : Joueur.

22
 Achat arme

Figure 12 : Raffinement des cas d’utilisation acheter arme

Titre : Achat arme


But : Acheter des armes épiques depuis le site officiel du jeu.
Résumé : Une fois authentifié sur le site officiel du jeu, le joueur peut se procurer des armes
épiques et puissantes qui ne sont pas disponibles en vente chez les marchands du sanctuaire.
Acteur : Joueur.

 Achat équipement

Figure 13 : Raffinement des cas d’utilisation achat équipement

Titre : Achat équipement


But : Acheter des équipements épiques depuis le site officiel du jeu.
Résumé : Une fois authentifié sur le site officiel du jeu, le joueur peut se procurer des
équipements épiques et puissants qui ne sont pas disponibles en vente chez les marchands du
sanctuaire.
Acteur : Joueur.

 Achat munissions

Figure 14 : Raffinement des cas d’utilisation achat munnissions

Titre : Achat munissions


But : Acheter des munissions épiques depuis le site officiel du jeu.
Résumé : Une fois authentifié sur le site officiel du jeu, le joueur peut se procurer des
munissions épiques et puissantes qui ne sont pas disponibles en vente chez les marchands du
sanctuaire.
Acteur : Joueur.

23
 Régler le son

Figure 15 : Raffinement des cas d’utilisation régler le son

Titre : Son
But : Ajuster le son
Résumé : Une fois authentifié le joueur peut ajuster le volume du son, le bruitage, les effets
spéciaux et la musique à ses envies.
Acteur : Joueur.

 Régler le graphisme

Figure 16 : Raffinement des cas d’utilisation régler le graphisme

Titre : Graphisme.
But : Ajuster les détails de l’environnement.
Résumé : Une fois authentifié le joueur peut ajuster la résolution de l’affichage, la qualité
des détails, et la distance de vue à ses envies.
Acteur : Joueur.

 Régler le gameplay

Figure 17 : Raffinement des cas d’utilisation régler le gameplay

Titre : Gameplay.
But : Ajuster le mode de jeu.
Résumé : Une fois authentifié le joueur peut ajuster la jouabilité à ses envies en réglant les
touches de déplacement et la sensibilité de la sourie.
Acteur : Joueur.

24
I.3. Diagramme de séquence :

Figure 18: Diagramme de séquence insription

 Description des enchainements :


Pré condition :
Le joueur se rend sur le jeu et n’as pas de compte pour s’authentifier.
Enchaînement :
 Le joueur accède au site
 La page d’inscription s’affiche
 Le joueur remplie le formulaire
 Envoie des donné à la base des données
 Vérification des données
 Envoie du résultat vers le site
 Affichage d’un message d’erreur en cas de problème
 Validation de l’inscription si tout va bien

25
Figure 19: Diagramme de séquence login

 Description des enchainements :


Pré condition :
Le joueur se rend sur le site officiel ou le jeu pour s’authentifier.
Enchaînement :
 Le joueur accède au site/jeu
 La page d’authentification s’affiche
 Le joueur remplie les champs d’authentification
 Vérification des données
 Affichage d’un message d’erreur en cas de problème
 Validation de l’authentification si tout va bien

26
II. Diagramme de classes :

Figure 20: Diagramme de classes

27
 Classe joueur : désigne l’utilisateur de l’application, et dans notre cas l’utilisateur est
le joueur.
 Classe caméra : désigne la camera qui suivra la personnage joueur dans le jeu, les
yeux du joueur.
 Classe environnement : représente les bâtiments, voiture, l’eau, le ciel, etc…
 Classe ennemie: définit les personnages non joueurs (PNJ) dans le jeu que le joueur va
affronter.
 Classe vendeur : représente les personnages non joueurs que les joueurs achète ses
approvisionnement de armes, munitions…etc.
 Classe obstacle : c’est les difficultés que le joueur doit franchir pour atteindre son but.
 Classe objet : c’est les différentes composent de l’environnement.
 Classe item : c’est tout ce qui est arme, armure ou munissions acheté ou vendu chez un
marchand.

28
III. Diagramme d’activité
III.1. Diagramme d’activité général

Figure 21: Diagramme d’activité général

29
La figure 3 représente le diagramme d’activité général, le joueur est au menu
d’authentification, il peut faire plusieurs choix entre régler le son et le graphisme, se
connecter au jeu et commencer à jouer ou le libre choix de quitter le jeu.
Le site officiel du jeu offre l’opportunité de crée un compte, de choisir son nom et le mot de
passe. L’onglet boutique du site permet d’acheter des pièces d’armure épiques, de la
munissions et des armes puissante qui ne se trouvent pas dans le jeu.
Pour ce qui concerne le jeu, les MMORPG sont connue par l’open world, ce qui signifie que
la carte et tellement large qu’on peut passer des heures pour la parcourir. Mais aussi le joueur
a le libre choix de faire absolument ce qu’il veut. Autrement dit il n’est pas guidé par un
scénario.

30
III.2. Diagramme d’activité du donjon de la caverne infernale

Figure 22 : Diagramme d’activité du donjon de la caverne infernale

31
La figure 4 représente le diagramme d’activité du donjon de la caverne infernale c’est le
premier donjon qui aide le joueur à se familiariser avec l’environnement et à la mode jeu.
Ici le niveau du jeu n’est pas trop difficile, il doit tuer des serviteurs tout au long du donjon.
Mais les deux principaux élit sont plus dure. Pour récupérer le butin il doit tuer le dernier,
mais pour ouvrir le passage il doit tuer le premier.

32
III.3. Diagramme d’activité du donjon abyssal

Figure 23: Diagramme d’activité du donjon abyssal

La figure 5 représente le diagramme d’activité du donjon abyssal, c’est un donjon


d’endurance ou le joueur sera face à des vagues de serviteurs. Plus il en tue plus il ramasse de
butin pour acheter dont ce qu’il a besoin chez les marchands. Le nom Abyssale du donjon
refaire a son mode infinie. Les vagues de serviteurs n’arrêteront pas de venir si le joueur ne le
souhaite pas ou il est à court de munissions.

33
Conclusion
Tout au long de ce chapitre, nous avons présenté le niveau conceptuel à travers différents
diagrammes et nous avons dégagé tous les éléments et modules conceptuels qui aident à la
bonne réalisation de notre jeu. Cette phase permet d'avoir un passage souple et facile à
l'étape suivante, à savoir étape de réalisation.

34
Chapitre III

Réalisation

35
Introduction
L’étape de réalisation consiste à la mise en œuvre de ce qui a été élaboré durant la phase de
conception. Nous commençons, dans ce chapitre, par présenter l’environnement matériel et
logiciel ainsi que les étapes de déploiement du jeu. Enfin, nous terminerons par la
présentation de quelques interfaces du travail réalisé.

I. Environnement matériel
Pour la réalisation de ce jeu, nous avons utilisé un micro-ordinateur puissant ayant les
caractéristiques suivantes pour pouvoir gérer la gourmandise en ressources des logiciels
utilisés:

Principales caractéristiques :

Ordinateur portable Asus X550JK :

 Ecran 15.6" HD LED.


 Processeur Intel Core i7-4710HQ Quad-Core 4é Génération, up to 3.5 Ghz, 6 Mo de
mémoire cache.
 Mémoire 8 Go DDR3L
 Disque 1 To
 Carte graphique Nvidia GeForce GTX 850M, 4 Go de mémoire dédiée

II. Environnement et outils utilisés


 l’outil d’analyse et de conception: ArgoUML version 0.34
 le moteur de jeu : Unity3D version 5.3.2f1 (64-bit)[1]: Unity est un moteur de
jeu multiplateforme (Smartphone, Mac, PC, consoles de jeux vidéo et web)
développé par Unity Technologies. Il est l'un des plus répandu dans l'industrie du
jeu vidéo, du fait de sa rapidité aux prototypages pour les très gros studios, aussi
pour la sphère du jeu indépendant qui développe directement dessus pour sortir
leurs applications sur tous supports. Il a la particularité de proposer une licence
gratuite sans limitation au niveau du moteur.
 logiciel de modélisation de rendu en 3D :Blender version 2.76a [2]: est un logiciel
libre de modélisation, d’animation et de rendu en 3D. Il dispose de fonctions
avancées de modélisation, de sculpture 3D, de dépliage UV, de texturage,
de rigging, d’armaturage, d’animation 3D, et de rendu. Il gère aussi le montage
vidéo non linéaire, la composition, la création nodale de matériaux, la création

36
d’applications 3D interactives ou de jeux vidéo grâce à son moteur de jeu intégré
(le Blender Game Engine), ainsi que diverses simulations physiques telles que les
particules, les corps rigides, les corps souples et les fluides. Disponible dans de
nombreuses langues, Blender est également disponible sur plusieurs plates-formes
telles que GNU/Linux, IRIX, Solaris, FreeBSD, SkyOS, MorphOS etPocket PC.
De plus, c’est un programme extensible (ajout de scripts) à l’aide du
langage Python.
 Manipulateur de données audio : Audacity [3]: est un logiciel libre pour la
manipulation de données audio numériques. Audacity permet d'enregistrer du son
numérique par le biais des entrées ligne/micro/cd des cartes sons. Il permet d'éditer
(copier, coller, sectionner…) les sons sur plusieurs pistes, et il est accompagné de
divers filtres et effets : pitch, tempo, réduction de bruit, égaliseur, filtres de
Fourier, augmentation de fréquences précises, compression,
amplification, normalisation, écho, phaser, wahwah, inversion…
L'auteur d'Audacity, à l'origine, est Dominic Mazzoni, de l'Université Carnegie-
Mellon et travaillant actuellement chez Google. Au total, une vingtaine de
développeurs et une trentaine de traducteurs participent ou ont participé à ce
projet.
 Unity javascript [4]: Bien que beaucoup dans la communauté de développement de
l'unité (et même dans la société de l'unité) se réfèrent à UnityScript et JavaScript
comme si elles étaient équivalentes ou interchangeables, les deux sont très
différentes langues. Bien qu'ils se ressemblent syntaxiquement, ils ont très
différentes sémantiques.

 C++ [5]est un langage de programmation compilé, permettant la programmation


sous de multiples paradigmes comme laprogrammation procédurale,
la programmation orientée objet et la programmation générique. Le langage C++
n'appartient à personne et par conséquent n'importe qui peut l'utiliser sans besoin
d'une autorisation ou obligation de payer pour avoir le droit d'utilisation.
C++ est l'un des langages de programmation les plus populaires, avec une grande
variété de plates-formes matérielles et de systèmes d'exploitation.
Le langage C++ est normalisé par l'ISO. Sa première normalisation date
de 1998 (ISO/CEI 14882:1998). Le standard a ensuite été amendé par l'erratum
technique de 2003 ISO/CEI 14882:2003. Le standard actuel a été ratifié et publié par
l'ISO en septembre 2011 sous le nom de ISO/IEC 14882:2011 (aussi appelé C++11).

37
Une mise à jour mineure a été publiée en 2014 sous le nom de ISO/CEI 14882:2014.
Le prochain standard devrait être publié en 2017.
En langage C, ++ est l'opérateur d'incrémentation, c'est-à-dire l'augmentation de la
valeur d'une variable de 1. C'est pourquoi C++ porte ce nom : cela signifie que C++
est un niveau au-dessus du C. Il existe de nombreuses bibliothèques C++ en plus de
labibliothèque standard de C++ (C++ Standard Library) qui est incluse dans la norme.
Par ailleurs, C++ permet l'utilisation de l'ensemble des bibliothèques C existantes.
 C#[6] est un langage de programmation orienté objet, commercialisé
par Microsoft depuis 2002 et destiné à développer sur la plateforme
Microsoft.NET.
Il est dérivé du C++ et très proche du Java dont il reprend la syntaxe générale ainsi
que les concepts, y ajoutant des notions telles que la surcharge des opérateurs, les
indexeurs et les délégués. Il est utilisé notamment pour développer
des applications web sur la plateforme ASP.NET.
 L’Hypertext Markup Language[7] généralement abrégé HTML, est le format de
données conçu pour représenter les pages web. C’est un langage de
balisage permettant d’écrire de l’hypertexte, d’où son nom. HTML permet
également de structurer sémantiquement et de mettre en forme le contenu des
pages, d’inclure des ressources multimédias dont des images, des formulaires de
saisie, et des programmes informatiques. Il permet de créer des
documents interopérables avec des équipements très variés de manière conforme
aux exigences de l’accessibilité du web. Il est souvent utilisé conjointement avec
des langages de programmation (JavaScript) et des formats de présentation
(feuilles de style en cascade). HTML est initialement dérivé duStandard
Generalized Markup Language (SGML)

 PHP: Hypertext Preprocessor[6], plus connu sous son sigle PHP (acronyme
récursif), est un langage de programmation libre, principalement utilisé pour
produire des pages Web dynamiques via un serveur HTTP, mais pouvant
également fonctionner comme n'importe quel langage interprété de façon locale.
PHP est un langage impératif orienté objet.
PHP a permis de créer un grand nombre de sites web célèbres,
comme Facebook, Wikipédia, etc. Il est considéré comme la base de la création
des sites Internet dits dynamiques.

38
III. Scénarii d’utilisation
Dans cette partie, nous allons présenter des imprimés écran qui décrivent le déroulement de
quelques opérations de notre jeu. Elle sera devisée en deux parties, le site web officiel et le jeu
lui-même.

 L’interface d’inscription :

Figure 24: Capture d’écran de l’interface d’inscription

 Description :
Cette figure montre l’interface de d’inscription et d’authentification sur le site officiel
du jeu. Si le joueur entre un nom du compte avec le bon mot de passe
l’authentification est valide et l’accès au compte et permis et le joueur peut modifier
son compte. Sinon si le compte existe déjà mais un mauvais mot de passe est
introduite, un message d’erreur s’affiche demandant au joueur de vérifier le mot de
passe. Et sinon si le joueur tape un nom de compte non existant, un message d’erreur
s’affiche en demandant au joueur s’il veut enregistrer ce nouveau compte.
Les champs sont obligatoires.
Le bouton ‘’ Valider ‘’ envoie les données à la base de données.
Le bouton ‘’Annuler’’ est un bouton RESET.

39
 L’interface d’authentification :

Figure 25: Capture d’écran de l’interface d’authentification

 Description :

En ouvrant le jeu, le menu d’authentification s’affiche. Le joueur doit s’authentifier pour


accéder au jeu. Remplir les champs nom du compte et mot de passe est obligatoire. Si c’est
validé et que le joueur ouvre son compte pour la première fois, il bascule vers l’interface du
choix du caractère sinon il retourne ou il était pour la dernière fois. Sinon si le nom du compte
est non existant un message d’erreur s’affiche en demandant de le vérifier ou qu’il n’existe
pas. Et si le nom du compte est correcte mais le mot de passe est fausse, un message d’erreur
s’affiche en informant le joueur et s’il la oublier, veut-il la récupérer.
Le bouton’’ Login’’ est pour envoyer les données pour la comparer avec celle de la basse des
données.
Le bouton ‘’Cite officiel’’ dirige le joueur vers le site officiel.
Le bouton ‘’Quitter ‘’ c’est le bouton qui permet de quitter le jeu.

40
 l’interface du choix du caractère :

Figure 26: Capture d’écran de l’interface du choix du caractère

 Description :

C’est interface ou le joueur choisira un personnage jouable parmi plusieurs qui va l’incarner tout au
long de son aventure. Et bien sur chaque caractère a ses propres pouvoirs qui le caractérisent des
autres et permet au joueur de varier leurs expériences et de la vivre différemment.

41
 Le sanctuaire en vue de haut :

Figure 27: le sanctuaire en vue de haut

 Description :

C’est la carte du sanctuaire en vue de haut qui montre la ville ou se groupent les joueurs pour
former leur raids, communiquer se procurer des armes, munissions, armures et de la
nourriture chez les marchands.

42
 Le centre du sanctuaire :

Figure 28: le centre du sanctuaire

 Description :

La figure montre quelques boutiques d’approvisionnement ou les joueurs peuvent en acheter


ou vendre de la nourriture, des armes, munissions et des pièces armures ce qui les rendrons
plus fort et plus résistants contre les serviteurs et les élites.

43
 Les camions menant aux donjons :

Figure 29: les camions menant aux donjons

 Description :

Pour partir en combat et affronter les serviteurs et les élites, les joueurs doivent emprunter des
véhicules de combat pour assurer leur déploiement en toute sécurité.

44
 L'animation de l'un des élits :

Figure 30: l'animation de l'un des élits

 Description :

C’est l’interface du logiciel Blender 3D[2], un logiciel de rondeur 3D, la figure montre la façon
de faire animer un objet 3D. Dans ce cas c’est l’un des élites que les joueurs vont affronter
pendant leurs combats. Ici on voit les ‘’bones ‘’ ou les os, c’est réellement les objets qui
bougent pendant l’animation, le reste ce n’est que de l’habillage.

45
 Pop point du mini boss du premier donjon :

Figure 31: pop point du mini boss du premier donjon

 Description :

L’endoit ou se déroule le premier combat est réalisé d’une manière pour que ça soit plus
proche possible de la réalité. 278 points d’éclairages[7] 352 fontaines de laves[7] et plus de 80
lignes de programmation en Unity Javascript ont étais placé pour seulement donner à l’eau un
effet de lave coulante.

46
 Les serviteurs attaquent un personnage joueur :

Figure 32: les serviteurs attaquent un personnage joueur

 Description :

Pour arriver au élites et les combattre, les joueurs doivent parcourir des couloirs remplis de
serviteurs qui défendent leurs donjon et leur boss. Ils sont facile à tuer mais leur grand nombre
devient la difficulté pour se frire un chemin vers l’élite.

47
 Combat entre le boss et un personnage joueur :

Figure 33: combat entre le boss et un personnage joueur

 Description :

C’est un combat contre le premier des scinques élites ultimes du jeu. Il réside dans le donjon
de la caverne infernale. Pour le tomber, les joueurs doivent être bien synchronisés et suivre
une stratégie bien étudier.

48
Conclusion

Générale

49
Tout au long de ce rapport, nous avons tenté d’expliquer le plus clair possible les procédures
du développement de l’application que nous avons élaborée, à savoir, la phase de
spécification, la phase de conception et la phase de réalisation.

Notre projet a commencé par étudier les objectifs du projet, présenté dans le cahier des
charges et par la suite nous sommes intéressés à l’analyse des différentes fonctionnalités.

A travers la conception, nous avons pu modéliser les différents niveaux de l’application grâce
aux différents modèles de la technique UML que nous avons adoptée tout au long de ce
travail. En plus, le choix des outils de développement, qui ont prouvé leur efficacité dans un
tel type de projet, nous a bien aidés à achever cette application.

Nous avons bien essayé d’accomplir toutes les fonctionnalités du système indiquées dans la
spécification, mais, faute de temps, nous n’avons pas pu terminer l’opération qui traite les
statistiques et nous espérons de l’accomplir dans les dates futures.

Enfin, cette expérience pratique dans un environnement aussi riche présente une occasion
fructueuse pour nous qui a fortement enrichi nos acquis académiques et théoriques à grande
échelle d’autant plus que l’on considère, au-delà de son aspect éducatif, comme expérience
professionnelle au vrai sens du mot.

50
Webographie
[1]https://unity3d.com/get-unity 02/04/2016

[2]https://www.blender.org/download/ 12/05/2016

[3]http://www.audacityteam.org/download/ 13/04/2016

[4]https://developer.mozilla.org/fr/docs/Web/JavaScript 05/05/2016

[5]http://php.net/ 17/05/2016

[6]https://www.assetstore.unity3d.com/en/ 13/06/2016

[7]http://dotnet.developpez.com/csharp/ 24/05/2016

Bibliographie
PFE Conception et réalisation d’une application de gestion de parc informatique 2009-2010

PFE Conception et réalisation d’une application mobile de gestion d’un magasin 2014-2015

51
Résumé :
Ce projet est réaliser avec les moyens les plus sophistiqué de la technologie qu’a pu exister
de nos jours, une machine parmi l’une des plus puissantes au marché, les dernières versions
de logiciels disponibles, les langages de programmation les plus utilisée au monde, des
méthodes qui ont montrer leurs efficacité dans les plus grande boite de développement et une
conduite de projet bien structuré qui assure la bonne déroulement du travail.
L’objectif de ce travail et de mettre en évidence toutes les connaissances que j’ai pu appris
pendant les trois ans d’apprentissage de mon cycle d’ingénieur dans la UAS. J’ai utilisé 95%
des matières que j’ai appris, l’intelligence artificielle, la programmation, la conception, la
conduite de projet, la base de données… etc.

Summary :
This project is realized with the most sophisticated means of technology has been able to
exist today, a machine from one of the most powerful in the market, the latest versions of
software available, the most used programming languages in the world , methods that have
shown their efficacy in larger box development and a well structured project management
that ensures good workflow.
The aim of this work and to highlight all the knowledge that I have learned during three years
learning my engineering cycle in the UAS. I used 95% of the material that I learned, artificial
intelligence, programming, design, project management, database ... etc.

52

Vous aimerez peut-être aussi