Home
Télécharger le rapport
Contents
1. Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 IRISFIGAT p8 65 Iris Fight A 4 M thodologie de travail en groupe Afin de r aliser ce projet en groupe nous avons opt pour l utilisation du cycle en V que nous avons appris tout les trois en BTS IRIS Jean Fran ois s tant rattach au groupe par la suite a accept cette m thodologie simple que nous lui avons expliqu e Nous l aidons dans la r alisation de ses parties Cahier des charges D R sultat A N Analyses et sp cifications lt Plan de test de validation p Tests de validation 1 A Conception pr liminaire A EE SEN Tests d int gration 1 A Plan de test Conception d taill e Care Tests Unitaires Codage Le Diagramme du Cycle en V se lit de haut en bas et de la gauche vers la droite Nous avons dans un premier temps r alis le cahier des charges voir annexe p 62 puis r alis l analyse et la sp cification des besoins d termin la conception pr liminaire et la conception d taill e ainsi que certains plans de tests associ s Ces diff rentes parties repr sentent les grands axes de ce rapport Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p9 65 Iris Fight A A
2. 1664 Etat 0K Ecoute sur l entree du serveur LISTEN 1664 1 0K Client accepte ACCEPT 0K Instanciation d un IFCommunication lt 2 0K Creation d un thread Trame recus itest faux Thread Client STOP 0K Envoie de la trame inr sur 1896 0K Client lt Fermeture du thread Impr cran 3 Tentative d identification chou e Le serveur re oit la trame d identification itest nfaux voir d codage des trames p 20 Ce compte n existe pas ou le mot de passe est faux le serveur envoie donc une trame de refus r au client puis ferme le thread ouvert 2 Login Miranda mdp a 0K Client accepte ACCEPT 0K Instanciation d un IFCommunication lt 3 0K Creation d un thread Trame recus iMiranda u 0K Envoie de la trame Ina sur 1864 Impr cran 4 Tentative d identification r ussie Le serveur re oit la trame d identification iMiranda na voir d codage des trames p 20 Ce compte existe de plus le mot de passe est juste le serveur envoie donc une trame d acceptation a au client 3 Demande de liste des clients connect s 1 Un seul client connect gt Trame recus YI OK Envoie de la trame i2Nnn Miranda sur 1864 Impr cran 5 Demande liste des clients 1 seul client Le joueur demandant la liste re oit le seul num ro 0 et pseudo Donc le sien 2 Deux clients connect
3. Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p16 65 Iris Fight A Analyses amp Sp cifications Actions v rifier Tests effectu s R sultats attendus J2 d j en combat Ne rien faire combat ou non J1 d fi J2 J2 n est pas en combat Indiquer J2 le d fi de J1 J1 n a pas EE d fi Ne LL ou l a annul D accepte le d fi de J1 AA Eeer I E E EE combat maintenant J1 propos un d fi et n est pas Lancer la fen tre de combat pour en combat les deux joueurs J2 refuse le d fi de J1 QUEUE SOCCER M ES dt ra Sort dans un combat Choisir 3 orbes de feu Lancer attaque de feu Choisir 2 orbes d eau Lancer sort d fensif d eau Choisir 3 orbes t n bres puis 2 orbes terre Lancer sort d fensif terre puis sort attaque t n bres Fin de combat Mort d un joueur amener la vie d un joueur 0 ou moins Indiquer fin de partie au deux joueurs et attribuer des points d exp rience Abandon d un joueur D connexion volontaire ou non Indiquer fin de partie au joueur restant en le d clarant vainqueur Les tests de validation sont effectu s de fa on visuelle lors de l ex cution du programme serveur et du programme client Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p17 65 Iris Fight A Conception pr liminaire VII Conception pr lim
4. la fois int Clientidentification const unsigned char pseudo const unsigned char mdp Le client s identifie aupr s du serveur En r ponse le serveur envoie en retour un code d acceptation ou de refus int Accepter Duel unsigned long num_client Informe le serveur qu un duel est accept termine automatiquement les demandes de duel en cours H faut pr ciser le nom du client qui avait lanc le d fi int RefuserDuel unsigned long num_client Informe du refus d un duel int GererReceptionRequete struct_reception_donnee amp Cette m thode permet de g rer les retours au travers d une structure voir exemple sur le diagramme des classes p 21 Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p36 65 Iris Fight Annexes 3 R gles de combat Jean Yves MARIN 1 Introduction IRIS FIGHT est un jeu o s affrontent 2 personnes Le combat se d roule en tour par tour pendant lequel les deux joueurs lancent leurs sorts dans un ordre pr cis 2 D roulement d un match Les deux joueur choisissent 3 orbes qu ils auront pour d buter le combat Il y a 6 types d orbes Air Terre Feu Eau Lumi re T n bres Les deux joueurs choisissent un orbe qu ils vont invoquer pour le rajouter leurs ressources puis un autre leur est donn de fa on al atoire Ensuite les joueurs choisissent de faire ou non un ou plusieurs sorts
5. Afficher connexion r ussie Cr ation d un compte Saisir toutes ses infos dans le formulaire cr er un compte sur le site puis valider Ajout d une nouvelle ligne dans la table Se connecter en mode administrateur pour le v rifier Ne pas saisir toutes les informations Ne rien ajouter indiquer veuillez saisir tous les champs obligatoires Suspension d un compte Se connecter en admin puis d cocher la case compte actif Modifier le compte et d cocher la case se connecter en mode admin pour v rifier Saisir l identifiant et mot de passe d un compte pr alablement d sactiv Le serveur doit refuser la connexion Passage de niveau 10 points r partir Le joueur r partit tous ses points Modifie la table avec les nouvelles valeurs Le joueur ne r partit pas tous ses points Ne modifie rien Connexion un compte Login faux mdp faux Login juste mdp faux Login faux mdp juste Afficher Login ou mot de passe incorrect Login juste mdp juste Ouvrir la fen tre de tchat et afficher la liste des pseudos des joueurs connect s Discussion entre les joueurs dans la fen tre de tchat Saisir le message Bonjour dans la zone pr vue puis valider Tous les joueurs connect s re oivent le message Bonjour de la part du joueur metteur Jean Fran ois BERNARD Jean Yves MARIN
6. Ainsi il existe trois types de sorts les sorts d fensifs les sorts offensifs et les sorts de d fense offensifs voir annexe Principe de base de l alchimie des orbes p 37 e Les sorts d fensifs n cessitent deux orbes de m me cat gorie e Les orbes offensifs n cessitent 3 orbes minimum dont deux de la m me cat gorie L orbe unique d finit l l ment du sort ainsi que les effets secondaires qui s ensuivront Les deux orbes identiques d finissent le domaine pouvant en augmenter consid rablement les effets voir annexe Domaines et effets secondaires p 38 e L attaque la plus puissante d un personnage est le pentacle il correspond une suite de cinq orbes de m me cat gorie ce CI 000082 2 Vriuver 2 TOR image 2 Ar ne de combat Choix des actions 1 Liste des orbes disponibles du 1 joueur ainsi que sa vie Les m mes informations sont disponibles pour le 2 joueur dans le coin oppos de l cran 2 Repr sentation du 2 joueur ici la m me image que pour le premier joueur 3 Barre d action permet au joueur de s lectionner plusieurs combinaisons d orbes en validant chacune d elles puis une fois toutes les actions valid es de terminer le tour Jean Fran ois BERNARD A A douard BOUCHER IUT Fontainebleau Projet 2008 p5 65 Iris Fight Introduction image 3 Ar ne de combat pr sentant un sort de feu Un duel se termine par la perte totale des poi
7. Conception d taill e IX Conception d taill e 1 Plan de Tests Unitaires 1 Partie Serveur Actions v rifier Tests effectu s R sultats attendus Lancer un client test sur le l IP et Annonce d une nouvelle le port connexion sur le serveur coute des clients Lancer deux clients sur l IP et le Annonce d une nouvelle port connexion puis d une seconde KEEN Login test mdp faux Refuser la connexion Identification d un client Login Miranda mdp a Accepter la connexion Envoyer le num ro du client et 1 seul client connect son pseudo Demande de liste des clients connect s l Envoyer un par un le couple 2 clients connect s num ro de client et pseudo pour chacun des deux clients Le serveur re oit le message et le Le joueur 1 envoie le message retransmet tout le monde y bonjour tout le monde compris l exp diteur en indiquant Envoyer un message 3 clients le num ro de J1 0 connect s Le serveur re oit le message et le Le joueur 3 envoie le message retransmet tout le monde y salut tout le monde compris l exp diteur en indiquant le num ro de J3 2 Vous trouverez les tests dans l annexe p 41 Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p29 65 Iris Fight A Bilan X Bilan 1 Triangles des projets Comme demand dans le document
8. VI Plan de Tests de Validation du syst me seen ans pli VI Conception D MOS dans p18 1 D finition d s axes entre les tudiants E p18 douard EE p18 2 Jean Yves OVIE E p18 douard E p18 2Jean Francois EE a a E S AETERNA sg p18 2 M thode du dialogue r seau Olivier LONZI dansante p19 1 Sch ma de connexion d un client E p19 2 Sch ma de connexion d un client Acceptation ss p19 3 Le fonctionnement des trames Olivier LONZI esessssssssssesssssesresssssssssseresssereessseeesssseessssrese p20 3 Diagrammes des Classes eege ee eet p21 1 Classes de la partie Serveur Olivier LONZI sisi henaneetesniehestes p21 2 Classes de la partie Web Jean Fran ois BERNARD AAA p23 3 Classes de la partie SDL Jean Yves MARIN p24 4 Classes de l interface client douard BOUCHER serre p26 Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p2 65 Iris Fight Sommaire 4 Diagr mme s des composants ee EE p27 1 Composants de la partie Serveur Olivier LONZI ss p27 2 Composants de la partie interface graphique douard BOUCHER sssssssssissseisseeissereen p28 IX Conception d taill e sinciera ennestaan aiae ea a aaea p29 L Plan d Tests UnitaireS sis nain nine teint hits p29 l Partie E Ai LONZI sm na nement p29 D EE p30 L Itiansl s d s Projets nn ee eer p30 2 Explication OM tangle Sn de ne p30 XI R s m r du Pr
9. est compos e d un attribut correspondant aux diff rentes pages autoris es tre afficher Elle poss de aussi deux m thodes qui sont le constructeur et la m thode affichant les pages autoris es Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p23 65 Iris Fight A Conception pr liminaire 3 Classes de la partie SDL lt lt enume gt TypeAction ListeAction _Nb amp ction _tabclient1 _tabclient2 ListeAction Liste4ction action2char add ction setTabClient getTabClient Les donn es correspondant aux actions effectuer sont ordonn es de cette mani re une liste d actions ayant les orbes de chaque joueur les jauges de vie afficher ainsi que la liste des action faites Jean Fran ois BERNARD Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p24 65 Iris Fight A Conception pr liminaire ListOrbe _ListOrbhe _NkListOrbe ListOrbe ListOrbe AddListOrbe Interface LiaisonSDL rInterface TT FaireUnTour S LireUneAction EventLoop gt name EcrireUneAction A Affiche _musik Event ffiche _nframe Presentation AffichePerso AfficheEffect reverselMG getpixel putpixel Interface est une classe ayant comme m thode principale faire un tour Elle consomme une liste d actions et renvoie une liste d orbes Dans un premier temps el
10. mettez le mot de passe de l utilisateur que vous avez d finie ci dessus 6 Manuel d utilisation 1 Cr er un compte utilisateur Pour cr er un compte vous devez aller dans la partie Compte du site Internet et ensuite cliquer sur le lien Cr er un compte Dedans vous devez rentrer vos noms pr noms email utilis pour l envoi du mot de passe nom du personnage et mot de passe de 6 caract res minimum 2 Gestion du compte Pour g rer votre compte vous devez vous tre connect ce dernier Pour cela il vous suffit d aller dans la partie Compte et d y entrer votre nom de personnage et votre mot de passe puis de valider Dedans vous avez la possibilit de modifier vos informations personnelles en modifiant les champs pr vus cet effet De plus vous pouvez aussi distribuer les points d orbe qui sont disponibles l aide des boutons et situ s de part et d autre de vos points d orbe actuels 3 Acc der l interface d administration Pour acc der l interface administrateur il suffit de se connecter au site Internet l aide d un compte administrateur et en bas de cette page de cliquer sur le lien vers cette interface 4 D sactiver Activer un compte Vous avez la possibilit de choisir l activation ou non d un utilisateur en cliquant sur la partie Activation D sactivation de compte de l interface d administration Dedans une liste des comptes est Jean Fran ois BERNARD A Jean Yves
11. uogeun UAUOD Z Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI Edouard BOUCHER p21 65 IUT Fontainebleau Projet 2008 Iris Fight A Conception pr liminaire EXPLICATION DU DIAGRAMME DES CLASSES LA PAGE PR C DENTE Toutes les classes pr sentes sur ce diagramme sont utilis es par le serveur l exception de la classe IFCommunicationClient qui permet la jonction entre ma partie et celle de mes coll gues ayant dialoguer avec le serveur Ce diagramme est une version modifi e prenant en compte certains ajouts suite au codage cependant n apparaissent pas les attributs ou m thodes propres un syst me d exploitation Les quatre classes principales sont celles entour es e IFCommunication permet la connexion un socket ainsi que la gestion de l envoi r ception des trames par petits paquets de plus sa m thode ResoudreDNS permet de trouver une adresse IP en fonction d un alias DNS e IFCommunicationGestionTrames est la classe qui sert de pied d change entre le serveur et le client en simplifiant humainement l envoi des trames Par exemple le client appellera la m thode ClientIdentification pseudo mot de posscls et le serveur recevra dans son thread d coute l information de l arriv e d une nouvelle trame d identification qui sera rang e automatiquement dans une structure s parant pseudonyme et mot de passe en deux variables texte afin d tre trait e plus
12. but l on travaillerait diff remment Du point de vue de la programmation j ai d couvert la biblioth que SDL et la biblioth que FMOD Le projet m a aussi permis de travailler avec du XML J ai pu apporter mon soutient et mes connaissances pour la conception des Makefile et des fichiers projet Qt J ai limit au maximum les m thodes de mon API pour n avoir utilis que deux actions Ex cuter une liste d action et renvoyer une liste d action de l utilisateur J ai pu aussi utiliser le programme doxygene pour pouvoir fournir mes quipiers une documentation simple 2 douard BOUCHER Travailler sur ce projet fut gratifiant pour moi sur plusieurs points Sur le plan humain j ai pu apprendre ce que c est de travailler en groupe sur un projet important Notre projet nous obligeant avoir des r les troitement li s afin de combiner nos sources et avoir un ex cutable unique la communication et l organisation taient plus que primordiales sur ce projet Sur le plan informatique et dans le cadre de ma formation cela m a permis de renforcer grandement mes connaissances en Qt une librairie que je connaissais peu et que j ai pris plaisir d couvrir plus en profondeur J ai galement renforc mes connaissances en C afin de faire des sources les plus simples possibles pour que mes camarades puissent comprendre facilement comment elles sont structur es Tout ces points seront certainement une exp rience positive pour m
13. e 4 Renvoi erreur identification Le joueur entre ses informations de login et mot de passe s ils sont incorrects le serveur renvoi une erreur 2 R ussite d identification Syst me Joueurs 1 Saisit son identifiant g gt 2 Saisit son mot de passe P passe 3 Clique sur S identifier ES q e 0 a 4 Renvoi identification r ussi 5 Envoi les informations du personnage Le joueur entre ses informations de login et mot de passe s ils sont corrects le serveur accepte la connexion et lance la fen tre de chat Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p12 65 Iris Fight A Analyses amp Sp cifications 3 Dialogue entre deux joueurs O Syst me O Joueur A i 1 Envoyer texte au Joueur BI Joueur B T 2 Afficher J oueur A Texte i 3 Envoyer Merci au J oueur A 4 Afficher J oueur B Merci Le joueur A envoi un message au syst me qui rel gue l information au joueur B et ainsi de suite 4 Un joueur lance un d fi un autre joueur CL e Syst me Joueurs 1 Affiche liste des personnages connect s au serveur 2 Selectionne un personnage dans la liste 3 Clique sur D fier personnage Le syst me envoie la liste des clients connect s au serveur Le client peut donc s lectionn
14. 10 1 5 Passage au niveau 4 23 points d exp rience 15 1 5 Passage au niveau 5 35 points d exp rience 23 1 5 et ainsi de suite 275 250 225 200 175 150 125 100 75 50 25 0 Ligne Ligne Ligne Ligne Ligne Ligne Ligne Ligne Ligne Ligne 1 2 3 4 5 6 7 8 9 10 Exp rience n cessaire Niveaux Les joueurs terminant un combat morts gagne 1 point d exp rience les joueurs remportant le match gagne 3 points d exp rience Les joueurs se d connectant d un match ne gagne aucun point d exp rience le joueur restant gagne 2 points d exp rience 8 D g t Faible 1D4 Moyen 1D4 3 Fort 2D4 2 Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p40 65 Iris Fight Annexes 4 Tests Unitaires 1 Partie Serveur Pour illustrer les r sultats j effectue des impressions cran de la console dos en inversant les couleurs pour viter d avoir trop de noir lors de l impression Les r sultats obtenus sont strictement identiques ceux du syst me d exploitation Linux mis part l indicateur d tat en haut droite qui permet de savoir tr s approximativement la vitesse de bouclage du serveur et qui n est pas impl mentable sous Linux pas de moyen de r cup rer la position du curseur 1 coute des clients 1 Lancer un client test sur le l ip et le port 0K Instanciation d un IFCommunic
15. 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Ex1 1 n D ir aljn d a ln Ex2 1 12 n EM 0 0 0 0 Mi ilr a n dla Ex3 7 n HT estint e L exemple 1 annonce qu un client pr c demment accept par le serveur souhaite s identifier et fourni son pseudonyme Miranda et son mot de passe a e L exemple 2 annonce que le joueur Miranda num ro identifiant 0 vient de se connecter L exemple 3 annonce que le client Test tente de se connecter mot de passe t e Attention Les toiles blanches peuvent tre n importe quoi et ne sont pas envoy es par l exp diteur ou alors c est une seconde trame qui devra tre analys e part 4 Comment d coder la trame Le r cepteur client ou serveur va dans un premier temps lire le buffer du socket puis analyser les premiers caract res jusqu au premi re n le chiffre ainsi trouv correspond la longueur de la trame finale cela permet de ne pas allez plus loin que la trame et de ne pas endommager une possible information importante Le caract res suivant d finit le type de trame voir le type num ratif enum_type du diagramme des classe p 21 Connaissant le type de trame il est maintenant ais de d coder celle ci e Pour les trames de type i le pseudo est le texte avant le d limiteur n puis le mot de passe jusqu la fin de la trame e Pour les trames de type n les 4 prem
16. 2008 p53 65 Iris Fight Annexes 4 Installation pas pas Linux 32bits e Attention Si vous utilisez une base de donn es distante veuillez passer au grand point suivant sans d tailler les sous parties de ce point o Suivant votre distribution les commandes d installation devraient permettre d installer la derni re version de MySQL m Debian apt get install mysql server m Gentoo emerge mysql server m Fn cas de probl me r f rez vous au site officiel de MySQL http dev mysql com doc refman 5 0 fr installing binary html o Une fois MySQL install e taper la commande MySQL pour vous connecter en ligne de commande au serveur MySQL m Taper la commande CREATE DATABASE iris fight pour cr er la base de donn es de jeu e Attention N oubliez pas les points virgules finaux m Puis USE iris fight e CREATE TABLE persos ID_perso int 10 unsigned NOT NULL auto_increment actif int 1 NOT NULL default 0 admin int 1 NOT NULL default 0 joueur_prenom varchar 50 NOT NULL default joueur_nom varchar 50 NOT NULL default nom varchar 50 NOT NULL default pass varchar 50 NOT NULL default courriel varchar 100 NOT NULL default niveau int 2 unsigned NOT NULL default 1 experience int 10 unsigned NOT NULL default 0 point_vie int 2 unsigned NOT NULL default 1 pont orbe Um unsigned NOT NULL default 0 pont orbe 2 int 2 unsigned NOT
17. 7 indud include i KH include i ii IFCommunicationGestionTrames cpp incl de EN IFGestionReglesCombat cpp include x IFCommunicationClient h IFCommunicationServeur h i I acc de includ KE Ba includ KH che g IFCommunicationClient cpp Za Ba IFCommunicationServeur cpp SE lt lt table gt gt Cl include eege ES main cpp Dans ce diagramme nous pouvons voir les diff rents fichiers sources utilis s ainsi que les fichiers qui ont besoin d acc der certaines tables MySQL Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p27 65 Iris Fight A Conception pr liminaire 2 Composants de la partie interface graphique C fonctions_login cpp BEE EEN L fonctions_fiche cpp E LA El include include include _ fonctions_login h C fonctions _fiche h e ES include include l include TT main_login cpp E Le fichier main_login cpp est le fichier principal incluant les headers des fen tres de login de chat et de fiche personnage Les fichiers fonctions_login cpp fonctions_chat cpp et fonctions_fiche cpp regroupent les fonctions propres aux fen tres correspondantes Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p28 65 Iris Fight
18. MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p56 65 Iris Fight Annexes affich e et il ne vous reste plus qu cliquer sur le bouton Activer D sactiver de l utilisateur souhait 5 Passer un utilisateur au statut d administrateur Vous avez la possibilit de modifier les privil ges d un utilisateur en cliquant sur la partie Comptes administrateur de l interface d administration Dedans une liste des administrateurs est affich e et il ne vous reste plus qu cliquer sur le bouton Enlever de l administrateur souhait pour le transformer en utilisateur A l inverse il suffit de rentrer le nom d un utilisateur dans le champ en bas de page et de cliquez sur OK afin de voir l utilisateur s lectionn devenir administrateur 7 Client 8 Manuel d installation 1 Windows 32 bits e Copier le dossier ClientWin32 fournit avec le CD et ou disponible sur le site du jeu sur votre disque dur ex C iris fight e Ex cuter C inis fighth ris fight exe 2 Linux 32 bits Copier le dossier ClientLinux32 fournit avec le CD et ou disponible sur le site du jeu sur votre disque dur ex home vous iris fight Se placer dans le r pertoire cd home vous iris fight gt Ex cuter la commande make Ex cuter la commande make install Taper la commande iris fight pour lancer le jeu Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A
19. d change entre le client et le serveur Toutes les m thodes list es sont utilisables par un objet de type IFCommunicationClient IFCommunicationGestionTrames Le constructeur par d faut IFCommunicationGestionTrames SOCKET SOCKADDR_IN IF Ce constructeur permet d instancier un objet de gestion des trames avec les informations d un socket d j ouvert CommunicationGestionTrames Le destructeur de l objet int EnvoyerMessageSalon const unsigned char Cette m thode permet au client d envoyer un message tous les autres joueurs int EnvoyerMessageClient unsigned long vum client det const unsigned char zl Le client envoie un message un autre client Ce message n est pas envoy tout le monde int DemanderListeClients Fait la demande au serveur pour connaitre la liste des clients actuellement connect s En r ponse le serveur enverra une liste de Connexion client Attention Les nouveaux clients qui rejoindront le serveur par la suite seront automatiquement notifi s aux clients d j pr sents int Quitter Serveur Le client informe qu il souhaite quitter le serveur Tous les clients encore connect s re oivent une notification de d connexion int ProposerDuel unsigned long vum client Un client propose un duel avec un autre client le serveur envoie une notification ce second client Attention Un client ne peut envoyer qu une demande de duel
20. douard BOUCHER IUT Fontainebleau Projet 2008 p57 65 Iris Fight Annexes 9 Manuel d utilisation 1 Connexion Le client entre son login son mot de passe et l adresse du serveur auquel il souhaite se connecter Puis il valide son choix en cliquant sur le bouton Connect Jean Fran ois BERNARD Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p58 65 Iris Fight Annexes 2 Fen tre de discussion Joueurs D fi i SE i al g SEX d ever DS ET ees LETA V P Apr s s tre connect et identifi un serveur de jeu le client arrive sur la page de chat lui permettant de dialoguer avec les utilisateurs dans un salon de discussion g n ral se situant sur la gauche Dans la partie sup rieure gauche se trouve le champs de discussion o apparaissent les messages des joueurs qui souhaitent dialoguer Dans la partie inf rieur gauche se situe le champs de saisie du message qui permet au client d envoyer son message aux autres joueurs dans le salon de discussion Sur la partie droite de la fen tre l utilisateur peut voir la liste des clients connect s et d cider de proposer refuser un duel avec ceux ci en cliquant sur les boutons correspondants Enfin dans la partie inf rieure droite l utilisateur peut acc der sa fiche de comp tence en cliquant sur le bouton correspondant Si un d fi est accept l utilisateur acc dera dire
21. dupliquer le r pertoire C ServeurlrisFight pour instancier un nouveau serveur avec une autre bdd e Maintenant que le serveur est lanc il faut le tester o Pour ce faire lancer le client local en utilisant votre compte administrateur se r f rer au chapitre d utilisation du client o Si vous souhaitez administrer la BdD il faudra utiliser l application web se r f rer au chapitre d utilisation de l application web e Une fois les tests effectu s et concluant en local nous allons permettre l acc s la machine depuis l ext rieur o 1 cas Vous tes connect internet directement avec un modem RTC ou un routeur branch en USB m Aucune manipulation sur les ports n est n cessaire ce niveau o 2 cas Vous utilisez un routeur g rant les redirection NAT m R f rer vous au manuel de configuration NAT de votre routeur pour rediriger les ports utiles 3306 par d faut pour la bdd si vous l avez install en local 1664 par d faut pour le serveur de jeu o Dans tout les cas m V rifier qu aucun firewall ne bloque les port utiles 3306 par d faut pour la bdd si vous l avez install en local 1664 par d faut pour le serveur de jeu Vous pouvez divulguer votre adresse 1p internet ou votre dns aux personnes susceptibles de jouer sur votre serveur Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet
22. faut pour le serveur de jeu e Vous pouvez maintenant divulguer votre adresse IP internet ou votre dns aux personnes susceptibles de jouer sur votre serveur 3 Manuel d utilisation Aucune utilisation particuli re n est effectuer sur le serveur de jeu une fois celui ci install Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p55 65 Iris Fight Annexes 4 Site Internet 5 Manuel d installation 1 Besoin mat riel e Afin d installer le site Internet il faut avoir pr alablement install sur une machine les logiciels Apache PHP et MySQL 2 Installation pas pas e Copier le dossier Sitelnternet fournit avec le CD et ou disponible sur le site du jeu sur votre disque dur ex C Sitelnternet e Modifier le fichier C Sitelnternet script conf php afin de configurer o ligne 9 define DB_HOST localhost Si l utilisation est autre que locale mettez la place de localhost l ip h bergeant et le port de la base de donn e utilis pour le jeu o ligne 10 define DB_NAME iris fight A la place d iris fight mettez le nom de la base de donn e utilis e o ligne 12 define DB_USER iris fight A la place d ris fight mettez le nom de l utilisateur ayant les droits de s lection insertion et mise jour pour la base de donn e d finie ci dessus o ligne 11 define DR PASS met A la place d iris
23. impl mentation du langage C Le c ur de cette version a part la suite t remani par deux tudiants en 1997 afin de lui donner la forme qu on lui conna t actuellement sachant que le mod le objet n est disponible que depuis sa version 5 Ce langage est tr s populaire dans le milieu du web car il permet la cr ation de page Internet dynamique De plus son utilisation dans les plateformes LAMP lui a permis de se d mocratiser dans la majeure partie des site Internet 2 Pourquoi PHP Nous avons choisit la cr ation du site web l aide de cette technologie pour les raisons suivantes Grotte de l utilisation du langage PHP e Actuellement l un des moteurs de page web les plus utilis avec les base de donn es MysSQL e Connaissance dans son utilisation pour la cr ation de site Internet 3 Les avantages de PHP e Programmation proche du langage C e Possibilit d utiliser le mod le objet e Facilit d acc s aux bases de donn es MySQL e Nombreuses fonctions pr existantes 4 Les inconv nients de PHP e Pr sence de quelques failles de s curit Pr sence de diff rences dans les fonctions PHP selon la version utilis e Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p51 65 Iris Fight Annexes 6 Les manuels 1 Serveur de jeu 2 Manuel d installation 1 Besoin mat riel e Afin d installer le serveur il faut disposer d une machine connec
24. joueurs r cup rent des orbes au d but des tours puis ils peuvent les consommer afin de r aliser des sorts Un sort de protection co te moins d orbes qu un sort offensif Les tours se d roulent en trois phases e Phase Pr paration Les joueurs consomment leurs orbes ou non e Phase D fensive Les sorts d fensifs sont lanc s e Phase Offensive Les sorts offensifs sont lanc s Une fois les trois phases d un tour termin es un nouveau tour commence sauf si les conditions de fin de partie sont atteintes 3 Choix du langage de programmation Nous avons choisi pour r aliser ce jeu de programmer exclusivement en C avec la librairie SDL pour l interface de jeu et la librairie Qt pour les autres interfaces graphiques Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p62 65 Iris Fight Annexes 4 Diagramme des cas d utilisation rnnnenn gt 3IU9H92dX2 p WMaugsulns IS NEJAIU 3P 4IJUOW lt lt apnpui gt gt 7 D D D y lt lt apnpus gt pp Up fant Y Pnp un 4aubes lt lt apnpui gt gt lt lt apnpu gt gt np un 439d322 cu np lt lt 8PNPUI gt gt sinanog SE Ce 2beuuosisd un p uone OK EK abeuuosiad unpuopgupuafpt E AN3A4135 UN E UOIK3UUO7 lt lt apnpurs gt er sebeuuosiad un p uonesijnn 31puadsns sanazensiuupy s33 sabeuuosiad sap sanbns13122182 Sal 121JIPOLN USA 2 J
25. messages afficher sur la console j ai d couvert l importance de cette classe pendant le codage et les tests Le fait est qu il y a autant de threads que de clients et sans cr er un objet statique je ne savais pas dans quel sens allaient s afficher les messages avec la possibilit que ceux ci s intercalent l un dans l autre e IFGestionReglesCombats est une classe qui permet de traiter les combats entre deux joueurs Apr s la cr ation de l objet rattach aux threads respectifs des deux joueurs l objet de type IFCommunicationServeur appelle la m thode GestionAutomatique des objets de type IFGestionRegles Combat qui permet de traiter les tapes du combat Attention Cette classe ne g re pas la compl tude des demandes du cahier des charges quelque soit l l mentaire utilis lors des combats les d g ts sont les m mes voir bilan p 30 pour les d tails 2 Classes de la partie Web cheminHeader cheminFooter be __construct __contruct __destruct redirect afficheHeader afficheFooter d k pageOK afficheMessage La classe Page est compos e de deux attributs correspondant aux chemin d acc s de l ent te et du pied de page du site Internet Elle poss de aussi cinq m thodes dont le constructeur et le destructeur ainsi que les m thodes permettant l affichage de l ent te du pied de page et aussi des messages aidant la d tection des bugs La classe Index
26. DDE Affaiblissement l eau peut tre contr pas une d fense contre l eau LLE Archimede vol 2 orbes d air peut tre contr pas une d fense contre l eau EEEFE Pentacle d eau Sort de terre TT D fense contre la terre TTT Attaque moyenne de la terre FFT Lance ardente d g t lourd de terre pas d effet secondaire AAT Pierre guid e d g t faible double les chances d effet secondaire EET Corps d argile soin faible d fense contre la terre DDT Affaiblissement la terre peut tre contr pas une d fense contre la terre LLT Aimant vol 2 orbes de terre peut tre contr pas une d fense contre la terre TTTTT Pentacle de terre Sort de feu FF D fense contre le feu FFF Attaque moyenne de feu TTF Mur de feu d g t faible de feu d fense contre le feu AAF Brasier attis d g t faible double les chances d effet secondaire EFF Corps d huile ardente soin faible d fense contre le feu DDF Affaiblissement au feu peut tre contr pas une d fense contre le feu LLEF Feu follet vol 2 orbes de feu peut tre contr pas une d fense contre feu FFFFF Pentacle de feu Sort de lumi re LL D fense contre la lumiere LLL Attaque moyenne de lumiere TTL Mur aveuglant d g t faible de lumi re d fense contre la lumi re AAL Mirage d g t faible double les chances d effet secondaire EEL Corps luisant soin faible d fense contre la lum
27. Jean Fran ois BERNARD Jean Yves MARIN douard BOUCHER Olivier LONZI IUT Fontainebleau 77300 Acad mie de Cr teil IRIS FIGHT RAPPORT DE PROJET Tuteur par M Luc HERNANDEZ Licence Professionnelle Session 2008 Syst me Informatique et Logiciel Conception et Maintenance de Logiciel Libre Iris Fight Sommaire L Sommaire EE eet p2 II Pr sentation des personnes en charges du projet 2 hisser nantes p4 MI re E p4 IV RE E p7 1 Rappel d c hier des MARS nnar E E tn note p7 2 Solutions techniques Change esgeeegusetes tggeehkigeeEsEeEELE dee EENEEeEd Eeer p7 3 R partition des EE p8 4 M thodologie de travail en groupe ege p9 V Analyses amp Sp cifications eseu eebe Ehe p10 Marche suivre pour un joueur an eee de nee p10 Sc as d utilisation du syst me chent ss snaunmaiandainitanmateisiidiameanediene pll 3 Diagramme de d ploiement client serveur eseesseseeeseerissreeserresstteresresseretesreestestserestesereeseresse pll 4 Di tr mimes EEN 2 Lu p12 1 chec KE p12 2 R ussie d identification EE p12 3 Dialogu entre deux JOVES dde a oi ne p13 4 Un joueur lance un d fi un autre joueur uen ieheninnnndeienens p13 5 Un jpneur accepte E E p13 CORBEILLE Rd hs p14 5 a base de donn es Ke E p15 1 Pourquoi une base de donn es sesesesesreesessesersresresstesrsenstestesrtestesstsernrtenseneeestesseseeesse p15 2 Qui utilise ASE pis 3 La table de la base de donn e nn nie nd eeh p15
28. NULL default 0 point_orbe_3 int 2 unsigned NOT NULL default 0 Dom orbe A int 2 unsigned NOT NULL default 0 pont orbe 3 int 2 unsigned NOT NULL default 0 point_orbe_6 int 2 unsigned NOT NULL default 0 PRIMARY KEY ID_perso UNIQUE KEY nom nom TYPE InnoDB m Nous allons ici ajouter un compte administrateur de jeu avec la commande INSERT INTO persos nom pass admin VALUES admin irisfight 1 e Une fois la base de donn es disponible il faut configurer et installer le serveur de jeu o Copier le dossier ServeurlrisFight linux32 depuis le CD ou le site web sur votre disque dur ex home vous ServeurlrisFight o Modifier le fichier home vous ServeurlrisFight config ini m dans la section BdD e ip localhost ou dns du serveur distant Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p54 65 Iris Fight Annexes e port 3306 ou tout autre num ro de port suivant celui choisit pr c demment base iris fight nom par d faut si vous avez install la BdD avec les tapes pr c dentes user root pass m dans la section SERVEUR e port 1664 ou tout autres num ro de port e max_client 100 indique le nombre maximum de client connect s simultan ment o Lancer le serveur m Taper la commande home vous ServeurlrisFight IFServeur pour lancer le serveur e Attention Les nu
29. NUUOD H HOUS reet qui peu isun pod na A 2Ssuoreun WUO TS H TIONOD VH HAY JO TIOSNOD DYH HY TIONOD PYH Hdv ess w od wnu DEELEN T Jeup peuBisun dpu Jeup pouBisun opnosd uore2ujuspl aanu 120 EE T ee i T Te Ssa TNA SI VE ONI NOLLVOIH UNIA Auen LNO NYAL INVAL ON adi wnu lt lt uopeaunu gt gt J n ndu u faute 12Lp OpBessanedA 1e eer dA nue eessen U T Dua pousun au aen Jeu aen Dau effi Tunus d yj bess nu Nofy Jul OSSBesSWA OSSBESSENA1 x OPESSANIS SVJ 2BESSANNS IS s ess WdI ua DIU Hous Quopeuuos ul usteet Qui peuBisun 20 Je 1SU0 di jua DUORLIUNULUOD j E dau 1e1p opnesd x 1eLP UONeAUP RUIDH BI 9 aaucp Uondere Drums kertouuordereuaee UH OSaue11U0 SS2DUONEUNULUOT 4 IN Wide LDIDOS SEUR11U0NSSDUONEILQULUOD A H S amp UR11U0RS8DU0HEUNULUOTD4 H OmedenpnasisAayen Ul seuuop uondesau pnus emp s we Luoys Duo yeun UAUOD 0 jui Deeg JeLP di y JEU JSUCD SUP SNG1PNOSSH JUH ts Bus auen aueiLIONSDSN UH T HOYS pouBss ZS y ED ISUOD auen aue1LIB OAUT UH Ru unaprusuo pion NITHIAYADOS LDOOS UOL uNUUOD H uoeamuerut t Duopeum Auen Eet 1 Ee E gt 1IDOS 2poS NU MOES ug au peuBisun 2
30. R IUT Fontainebleau Projet 2008 p33 65 Iris Fight A Modifications apporter au programme dans le futur XIII Modifications apporter au programme dans le futur Dans le futur il serait dans un premier temps envisageable de terminer compl tement la gestion des r gles Par la suite nous pourrions envisager d effectuer les am liorations suivantes e Gestion d une intelligence artificielle e Apporter une finition au graphisme e diteur d animation e Ft s rement plein d autres choses euphoriques Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p34 65 Iris Fight Annexes XIV Annexes 1 Sources de r f rences http www developpez com De bonne r f rences et des exemples clairs d algorithmes sur diff rents langages de programmation http tangentsoft net mysql Site de la librairie officielle pour lier les applications c MySQL Documentation MANuel Linux La documentation MAN donne toutes les informations n cessaires sur les fonctions C C http www php net Site donnant toutes les informations n cessaires sur les fonctions PHP http www selfhtml fr Site expliquant la plupart des fonctionnalit s HTML et CSS Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p35 65 Iris Fight Annexes 2 Liste des m thodes
31. U CS ACLLLLLLA aunnnus KEE Le joueur dispose d un panel d action assez important durant le jeu il peut ainsi cr er un personnage via le site web se connecter un serveur dialoguer avec les autres clients lancer ou refuser un d fi jouer le d fi puis gagner de l exp rience et par extension des niveaux pour am liorer son personnage L administrateur quant lui dispose de tout les droits sur le syst me il est donc habilit faire la totalit des actions des joueurs Il dispose galement de deux choix d actions suppl mentaires Modifier les caract ristiques de n importe quel personnage et suspendre l utilisation d un personnage en cas de tricherie par exemple 3 Diagramme de d ploiement client serveur socket socket 1 Da Le serveur peut supporter une infinit de clients connect s simultan ment la limite maximum est choisie dans le fichier de configuration du serveur et ne peut d passer 4294967296 entier long non sign Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p11 65 Iris Fight A Analyses amp Sp cifications 4 Diagrammes des sc narios 1 chec d identification Syst me Joueurs Sg 1 Saisit son identifiant i p gt 2 Saisit son mot de passe f passe b 3 Clique sur S identifier gen q U i
32. an ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p64 65 Iris Fight Annexes 4 Les participants du projet et leurs objectifs Jean Yves MARIN e R alisation de l ar ne de combat C avec librairie SDL O R cup ration des actions du client O Graphisme du jeu et effet sonore O Invention des r gles du jeu Georges douard BOUCHER e R alisation des interfaces graphique type Window C avec Qt O OOO Olivier LONZI Demande des identifiants pour la connexion au serveur Cr ation des personnages Fen tre de discutions avec liste des joueurs et possibilit de lancer des d fis Interface graphique de l cran d accueil et du chat e R alisation du serveur de jeu C en mode console O Cr ation du service de communication avec les clients Socket TCP IP O Gestion des r gles de jeu 5 Tableau des risques Travailler de fa ons plus ee SUN Retard du sur la D passement du Respecter le organis e et en lev ie sortie du projet planning planning avance sur le particulier i planning maximum PE Travail refaire Donn es absentes Sau VE DATES Appliquer Ia Faible donn es r guli res sauvegarde Application des Retard sur le Trop de temps pour Consolider les Se mettre jour i 8 Moyen connaissances planning faire quelque chose bases sur les bases Bugs Produit instable Bu
33. ation lt 1 0K Creation du socket 1664 0K Creation du serveur lt BIND 1664 Etat N 0K Ecoute sur l entree du serveur LISTEN x 1664 0K Client accepte lt ACCEPT 0K Instanciation d un IFCommunication lt 2 0K Creation d un thread Impr cran 1 Connexion d un client non identifi Un client se connecte au serveur celui ci affiche la connexion comme sp cifi dans les r sultats attendus du plan de test 2 Lancer deux clients sur l IP et le port 0K Instanciation d un IFCommunication lt 1 0K Creation du socket 1664 0K Creation du serveur BIND x 16641 Etat N 0K Ecoute sur l entree du serveur LISTEN 1664 0K Client accepte ACCEPT 0K Instanciation d un IFCommunication lt 2 0K Creation d un thread 0K Client accepte lt ACCEPT 0K Instanciation d un IFCommunication lt 3 0K Creation d un thread Impr cran 2 Connexion de deux client non identifi s Dans le cas o deux clients se connectent le serveur affiche les deux connections l une apr s l autre comme sp cifi dans le plan de test Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p41 65 Iris Fight Annexes 2 Identification d un client 1 Login test mdp faux 0K Instanciation d un IFCommunication lt 1 0K Creation du socket x 16641 0K Creation du serveur lt BIND
34. ce qui consomme des orbes Les sorts sont ensuite lanc s dans un certain ordre les d fenses les d fenses offensives et les attaques Si plusieurs sorts ont la m me priorit on d termine de mani re al atoire qui le lancera en premier Les d g ts sont inflig s 3 Principe de base de l alchimie des orbes Pour tre plus intuitif les l ments d orbes ont un domaine et un effet secondaire L gende A Air F Feu T Terre L Lumi re E Eau D T n bres darkness Deux orbes d un m me l ment font une protection contre cet l ment Trois orbes d un m me l ment font une attaque basique de cet l ment Exemple Le joueur 1 d cide de lancer un sort de feu FFF et une protection contre l eau EE Le joueur 2 d cide de faire un sort d air AAA et un protection au feu FF Les sorts se lancent toujours dans le m me ordre sort de d fense sort de d fense offensive sort offensif Les protections des deux joueurs se lancent al atoirement J1 est prot g contre l eau J2 contre le feu n y a pas de d fense offensive On passe au sort d attaque JI n inflige pas de d g ts car J2 avait bien anticip mais J2 inflige bien les d g ts Les d fenses ne durent que pendant le tour courant Deux orbes de m me type et un orbe d un autre l ment lanceront un sort du type de l orbe unique avec les caract ristiques de domaine des orbes majoritaires Example Le feu a comme doma
35. ctement dans la partie Duel du jeu Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p59 65 Iris Fight Annexes 3 Fiche de personnage ER A S g e l es N TN S gt Cy Trei E Disponibles AS e _ EC arr AT H Pa a 7 if d me Dans cette fen tre l utilisateur peut voir le nom de son personnage dans la partie sup rieure de la fen tre suivi de son niveau et de la liste de ses comp tences Dans la partie inf rieure de la fen tre l utilisateur peut cliquer sur le bouton Chat Room pour acc der au Chat g n ral et faire des duels En cas de passage de niveau l utilisateur peut modifier ses comp tences en attribuant les points se situant dans la partie Points Disponibles la comp tence qu il souhaite am liorer Pour augmenter les points de comp tence il suffit de cliquer sur le bouton et pour diminuer les points comp tence il suffit d appuyer sur le bouton Jean Fran ois BERNARD Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p60 65 Iris Fight Annexes Le joueur 1 d cide des orbes s lectionner pour sa premi re action et valide sa premi re action en s lectionnant l option valider Il fait ensuite ses autres actions de la m me mani re et valide la fin de son tour en cliquant sur le bouton Fin de tour Le jo
36. dans l axe pr c dent douard I Olivier De ce fait le syst me tant le m me tant transparent pour le serveur il faut se r f rer l axe suivant pour voir comment Jean Yves peut utiliser les m mes fonctions que douard pour dialoguer avec le serveur 1 douard Jean Yves Afin de faire la jonction des deux parties Edouard envoi Jean Yves une fonction lui permettant de dialoguer avec le serveur Jean Yves transmet ensuite Edouard sa r ponse que ce dernier se charge de faire suivre au serveur 2 Jean Fran ois Olivier La jonctions entre ces deux parties se fait intuitivement par rapport la BdD les deux parties peuvent modifier et ou s lectionner les donn es des tables pour leurs traitements respectifs Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p18 65 Iris Fight A Conception pr liminaire 2 M thode du dialogue r seau Olivier LONZI Pour dialoguer entre la partie serveur et la partie client nous avons choisi les protocoles TCP et IP souvent appel s le protocole TCP IP ces protocoles sont utilis s via les m thodes de gestion des sockets en C 1 Sch ma de connexion d un client Refus Client Serveur Ss 1 Cr ation socket port 2 Attendre connexion 3 Cr ation socket ip port 4 se connecte 5 refuse la connexion 6 fin de la connexion Le serveur peut refuser un
37. de nos cursus 4 Jean Fran ois BERNARD Suite l arr t de mon projet tutor initial j ai pris plaisir rejoindre ce groupe qui a accept que je me joigne eux pour le d veloppement de ce projet Sachant qu ils avaient d j effectu le partage des diff rentes t ches de ce projet j ai propos de m y int grer par l interm diaire d un site Internet permettant de g rer la cr ation et l volution du personnage d un joueur D un point de vue humain j ai appr ci travailler dans ce groupe qui m a bien expliqu les principes et but de leur projet lors de mon arriv e De plus le soutien et l aide qu ils m ont apport lors de la cr ation du site Internet m a permis de le construire dans un but s int grant parfaitement dans les objectifs de ce projet D un point de vue informatique j ai pu approfondir mes connaissances dans les diff rents langages que j ai utilis HTML CSS PHP MySQL De plus mes connaissances en gestion de serveur et h bergement de site web se sont enrichies gr ce aux discussions que j ai pu avoir avec les membres de mon groupe propos de l int gration fonctionnelle de mon site Internet vis vis de ce projet H Pour conclure je consid re que mon int gration ce projet a t des plus r ussi qu elle m a permis d appr cier le travail en groupe ainsi que d approfondir mes connaissances en d veloppement Internet Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHE
38. e Directmedia Layer 1 Pr sentation Le but de la partie SDL est de pouvoir afficher de fa on conviviale la partie en cour Cette partie n a qu un but d interface le minimum de donn es relatives la partie y est trait L interface affiche l action donn e par le serveur puis r cup re les actions du joueur Non Jean Fran ois BERNARD Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p44 65 Iris Fight Annexes 2 Avantages et inconv nients La librairie SDL est une librairie simple et bas niveau Elle permet aussi de g rer les entr es clavier et souris Il devient facile de pouvoir mouvoir des personnages si l on a des fichiers image disposition mais en revanche il est beaucoup plus difficile de faire un menu Elle reste bas niveau et crite en C non en C Les images doivent tre construites une une en pla ant les sprites dans le bon ordre pour ne pas qu ils se masquent les uns les autres 3 Utilisation de XML L interface utilise la biblioth que graphique SDL pour afficher image par image le d roulement de l action Elle puise les information n cessaires aux animations dans des fichiers XML pouvant par la suite tre modifi s Le fichier XML contient le nombre d images afficher pour l animation le chemin de l image la couleur de transparence et le son associ Cela permet l utilisateur de changer le skin de son personnage ou des actions
39. e connexion par exemple si le nombre de clients max est atteint 2 Sch ma de connexion d un client Acceptation Client Serveur i 1 Cr ation socket port p 2 Attendre connexion 3 Cr ation socket ip port 4 se connecte 5 accepte la connexion 6 connexion initialis e 7 transmission de trame y Dee 9 mise fin de la connexion Le client peut dialoguer de fa on asynchrone avec un client et il peut tout moment accepter ou refuser d autres clients Jean Fran ois BERNARD Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p19 65 Iris Fight A Conception pr liminaire 3 Le fonctionnement des trames Olivier LONZI 1 Introduction La transmission des trames peut tre repr sent e par une cha ne de caract res Afin de pouvoir d coder n importe quelles trames d un cot comme de l autre et donc de savoir comment les encoder j ai utilis un syst me de s rialisation de trames 2 Le besoin e Cha nes de caract res dimensions variables s rialiser o N cessite de g rer des trames de taille variable e Donn es variables d finissant un grand nombre d informations sans rapport o N cessite de diff rencier les trames d un seul coup 3 Exemple de trames Afin de r pondre aux besoins j ai mis en place un syst me de trame sous cette forme octet 1 3141516 718 9
40. ean Fran ois BERNARD A Jean Yves MARIN A Olivier LONZI A Edouard BOUCHER IUT Fontainebleau Projet 2008 p63 65 Iris Fight A Annexes 2 tudes ou r alisations pr alables Avant de d buter notre projet nous avons fait toutes sortes de recherches afin d tre s r qu il serait faisable abordable et homog ne Pour cela nous avons port notre attention sur ces diff rents points X X Librairies de programmation Pour faire ce projet nous avons opt pour certains langages utilisant des librairies que nous n avons pas ou peu vu durant nos formations respectives De ce fait nous avons fait des recherches pour comprendre ces librairies Comme la SDL et nous assurer que nous serions en mesure de mener bien notre projet Aspect graphique du projet Afin de disposer d une bonne ergonomie et d un graphique unique nous nous sommes mis d accord sur l aspect graphique que nous voulions donner notre projet de mani re ne pas avoir refaire une tape qui s av re longue et non primordiale 3 Liste des livrables attendus A la fin de notre projet nous serons en mesure de fournir les l ments suivants X X Ex cutable du serveur de jeu Windows et Linux Ex cutable du client Windows et Linux Documents permettant la mise en place du serveur Documents expliquant comment lancer le client et comment jouer Rapport de projet comprenant toutes notre d marche de cr ation du syst me Jean Fr
41. er un autre client et cliquer sur le bouton d fier pour lancer la demande de d fi au joueur adverse 5 Un joueur accepte un d fi Jean Fran ois BERNARD Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p13 65 Iris Fight A Analyses amp Sp cifications I Syst me Joueurs 1 Annonce qu un autre joueur lance un d fi 2 Accepte le d fi Le serveur annonce au client qu un adversaire vient de le d fier Le client accepte en cliquant sur le bouton accepter 6 Gagner un d fi ra Syst me _ Joueur A oueur B 1 D but tour N a 2 D but tour N i 3 Choix action Attaque T 4 Choix action Ne rien faire 5 Calcule le d roulement du tour 6 Affiche d roulement du tour 7 Affiche d roulement du tour 9 Joueur A gagne le duel 1 Le serveur annonce aux Joueurs A et B le d but du tour N Le joueur A d cide alors de l attaque mener tandis que le joueur B d cide de l action faire ou ne pas faire Le serveur r cup re et traite les informations puis affiche aux joueurs A et B le d roulement du tour A la fin de la partie le serveur annonce aux deux joueurs que le joueur A a remport le duel 8 J oueur A gagne le duel Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p14 65 Iris Fight A Ana
42. eur et d une partie client permettant respectivement d h berger un jeu et de s y connecter Le logiciel dispose galement d une extension Internet d velopp en PHP permettant de cr er ou de se connecter son compte personnel de modifier ses caract ristiques ou encore de t l charger les derni res versions du jeu Le principe de ce logiciel est un jeu de combat en tour par tour durant lesquels l utilisateur choisit ses attaque en combinant diff rentes orbes magiques chaque combinaison ayant des effets distincts A l issue de chaque combat les personnages obtiennent de l exp rience leurs permettant d augmenter de niveau et ainsi de se sp cialiser dans des domaines sp cifiques Pour ce faire l utilisateur peut d penser ses points durement acquis gr ce la puissance de ses sorts lors d un passage de niveau dans les six cat gories offensives disponibles que sont la terre l air l eau le feu la lumi re et les t n bres Il peut aussi les d penser dans une cat gorie correspondant son niveau de vie Les diff rentes cat gories sont symbolis es par des orbes voir image 1 distribu s au hasard au joueur durant la partie ils lui permettent d invoquer des sorts plus ou moins puissants 60060082 image 1 Repr sentation des orbes Air Eau Feu Terre T n bres Lumi re Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p4 65 Iris Fight Introduction
43. facilement Le proc d est le m me dans l autre sens le serveur utilise des m thodes relativement simples comprendre d apr s leurs noms et le client r cup re le tout dans une structure Ladite structure impl mente une union pour viter l utilisation d une trop grande zone m moire alors que les informations re ues n utilisent jamais tous les champs existants Attention La liste des m thodes n est pas repr sent dans sa totalit sur le diagramme mais vous pourrez trouver la documentation compl te en annexe page 36 e IFCommunicationServeur est la classe utilisatrice de ses parents d un point de vu serveur elle permet d indiquer le port utiliser pour l coute ainsi que g rer la connexion entre les clients e IFCommunicationClient permet de lier la communication simple entre le client et le serveur comme dit plus haut cette classe est impl ment e c t client afin de se connecter une IP et un port la g n ralisation avec ses classes parentes permet aux d veloppeurs d utiliser nativement l objet de type IFCommunicationGestionTrames Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p22 65 Iris Fight A Conception pr liminaire Les deux autres classes pr sent es sur le diagramme permettent respectivement d afficher des messages sur la console et de g rer les r gles de combat e IFMessages permet de cr er sous forme de file la liste des
44. fourni pas M JAGOURY Professeur de Gestion de projet la notion de co ts sera adapt e en comparant la quantit de travail fournie par rapport la quantit de travail th orique affect au projet Objectifs temps 2 Explication du triangle Comme le montre le triangle du projet le syst me final ne correspond pas parfaitement aux exigences du cahier des charges ceci est d la non gestion des r gles de combat exactement comme l exigeait l analyse Un syst me plus rudimentaire a t mis en place des points de d g t sont attribu s suivant le niveau du personnage et de ses affinit s avec l l ment utilis mais tous les effets d taill s dans l annexe p 38 ne sont pas fonctionnels Ce retard s explique par des probl mes dus l int gration et la d finition des r gles apr s le cahier des charges et les analyses du projet Les temps sont quant eux respect s car le projet tait fond autour d une date limite nous ne pouvions donc pas prendre plus de temps Le cahier des charges n tant pas rempli nous ne pouvions pas annoncer une fin pr matur e En ce qui concerne les co ts quantit de travail fournie quantit de travail affect aucune affectation de travail n a t r alis lors de l analyse car nous n avions pas fait le cours correspondant et aucun d entre nous n avait de connaissance de ce syst me Cependant il est certain que nous avons tous eu plus de travail r aliser ne serai
45. g num cli uint msg QString textBrowserChat QTextBrowser textEditChat QTextEdit tableListe oueurs QTableWidgetitem CHAT void on_pushButtonMoinAir_clicked CHAT QWidget parent void on_pushButtonPlusAir_clicked CHAT void on_pushButtonMoinTerre_clicked void on_pushButtonEnvoyer_clicked void on_pushButtonDefier_clicked void on_pushButtonignorer_clicked pushButtonChat void afficher _nouveau_pseudo QString pseudo i void afficher_message uint num cli QString msg void on_pushButtonFiche_clicked void on_pushButtonPlusTerre_clicked void on_pushButtonMoinEau_clicked void on_pushButtonPlusEau_clicked void on_pushButtonMoinFeu_clicked void on_pushButtonPlusFeu_clicked void on_pushButtonMoinTenebre_clicked void on_pushButtonPlusTenebre_clicked void on_pushButtonMoinLumiere_clicked void on_pushButtonPlusLumiere_clicked void on_pushButtonMoinVie_clicked void on_pushButtonPlusVie_clicked void on_pushButtonChat Les 3 classes principales sont les classes de LOGIN de CHAT et de FICHE La classe LOGIN permet gr ce au signal on_ConnectPushButton_clicked d acc der la fen tre de chat en prenant en compte les param tres de login et de password La classe CHAT permet gr ce aux fonctions afficher _nouveau_pseudo et Taffcher message d afficher la liste des personnes connect es au serveur et d afficher des messages des utilisateur
46. ght Siune erreur survient vis vis du port re modifier le fichier my ini pour changer le port utilis o Info Vous disposerez d une base de donn es vide avec un compte administrateur par d faut login admin mot de passe irisfight pensez le changer e Une fois la base de donn es disponible il faut configurer et installer le serveur de jeu o Copier le dossier ServeurlrisFight win32 gt depuis le CD ou le site web sur votre disque dur ex C ServeurlrisFight o Modifier le fichier C ServeurlnsFight config ini gt Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p52 65 Iris Fight Annexes m dans la section BdD ip localhost ou dns du serveur distant port 3306 ou tout autre port suivant celui choisit pr c demment base iris fight nom par d faut si vous avez install la BdD avec les tapes pr c dentes user root pass m dans la section SERVEUR port 1664 ou tout autre num ro de port max_client 100 indique le nombre maximum de client connect s simultan ment o Lancer le serveur m Taper la commande IFServeur exe pour lancer le serveur Attention Les num ros de port doivent tre compris entre 1 et 65535 de plus il est d conseill d utiliser les port inf rieurs 1000 car il sont standardis s Info Vous ne pourrez pas lancer plusieurs instances simultan ment sur le serveur mais vous pouvez
47. gs p Verifications D bugage Moyen fr quents r guli res V rifier le Mat riel Retard sur le Mat riel mat riel bien R installer R par e degen Elev d ficient planning inutilisable avant la date er limite Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p65 65
48. i re DDL Affaiblissement la lumi re peut tre contr pas une d fense contre la lumi re FFL Laser d g t lourd pas d effet secondaire LLLLL Pentacle de lumiere Sort des t n bres DD D fense contre les t n bres DDD Attaque moyenne des t n bres TTD Mur des abysses d g t faible des t n bres d fense contre les t n bres AAD Voile des tenebres d g t faible double les chances d effet secondaire EED Corps noir soin faible d fense contre les t n bres LLD Clair obscure vol 2 orbes de t n bres peut tre contr pas une d fense contre les t n bres FFD Flamme noire d g t lourd pas d effet secondaire 1 DDDDD Pentacle des t n bres Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p39 65 Iris Fight Annexes 7 Exp rience Apr s un certaine nombre de combat le joueur peut changer de niveau il peut gagner 3 point mettre dans C caract ristique les caract ristiques sont les 6 l ments et la vie Chaque point augmente de 10 les effet des sorts de l l ment associ de plus les d fenses absorbent le m m pourcentage lors d une attaque au lieu de simplement les arr ter La vie n augmente que de 3 par point de comp tence utilis Les changements de niveau se font suivant la r gles suivantes Passage au niveau 2 10 points d exp rience Passage au niveau 3 15 points d exp rience
49. ient 2 Les avantages du C Le C pr sente un certain nombre d avantages pour moi Grotte du compilateur et libert d utilisation des ex cutables apr s compilation e Je connais le langage depuis 2 ans Possibilit de trouver toutes sortes de librairies int grer comme par exemple mysql pour g rer les BAD MySql e Dans notre cas QT et SDL peuvent tre utilis s avec le C donc nous vite de recourir des APIs pour l int gration tout en utilisant un syst me proche 3 Les inconv nients du C Le C pr sente un certain nombre d inconv nients dans son ensemble e Plus lent en ex cution que le C Langage permissif facilit d avoir des fuites m moire non d tect es Malgr ces inconv nients j ai retenu ce langage comme expliqu dans le chapitre Pourquoi du C en mode console Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p49 65 Iris Fight Annexes 4 Utilisation de MySQL MySQL 1 Pr sentation MySQL est un syst me de gestion de base de donn es relationnelles SQL de la soci t MySQL AB rachet e en janvier 2008 par Sun Microsystems propri taire de Oracle con u sur le syst me d une licence d utilisation payante si cette derni re est un but lucratif Il existe de nombreuses librairies permettant l utilisation de MySQL dans la majeure partie des langage de programmation ex PHP C ASP a
50. iers octets sont le codage d un entier long 32 bits suivis du pseudonyme du joueur pour l afficher dans la liste Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p20 65 Iris Fight A Conception pr liminaire 3 Diagrammes des classes 1 Classes de la partie Serveur ajueaIns 96ed suore9idxe JOA OpunoinqsqR pAn UH jeurysuornpyazs raong UH Osuorpyeyeil Ul Duo peuBisun ua pu unano funy ous paubisun Diop paugisun un nof Drum Duo pauf sun Oenbaauomyuonss un yous sequo poys p ufiun opp un nofWnu poys peubisun uonpe Tunu Buoj peuBisun jua p TUnu uopyauuogda y JUH oys peuBisun uorpe qu Duo peuBisun up Unu suopyazuuogda y WH 0 Duo peufisun uap pue uOpckboen JUH equopsab yuons D4 SAULI LUONS DUOJLJUMULUOD HUH BuO pEUBISUN Ua p UNU JEqUOTSSIPEHUONSED z Duo peubisun ap oam Z Saue uopeeuoeumguuet WUO z hop peuBisun suorpe qu Le bp jee Tunu 2ee AEOuOeSlfeuoDesEl 2Uo4 MH LYON 3 LHVd MI SLL SOU SNOLOV HALIVUL SNOLIDV ON LIM HO LNI LIN LON equos jee unua cl EE LUS Vote a PANOU ru UONEDUAUE JANS uuop uoun auer d4Unu ad uuop uoun lt lt uoun gt gt uuop Vodaai pns nanesu POSH UNINDO Mal yous p ufjsun xau uap qu sU pu y JUH nanas panD un u suogeounuLoD H Qui peuBisun Pod NanPSUOReIU
51. inaire La phase de conception pr liminaire consiste d finir les interactions entre les diff rentes parties du syst me travers les diagrammes de classes et de composants en ajoutant si n cessaire des informations textuelles 1 D finition des axes entre les tudiants 1 douard Olivier Afin de r aliser la liaison entre la partie client douard et le serveur Olivier nous avons d finit les besoins suivants e Le client doit se connecter au serveur La gestion des trames devra tre uniformis e par un seul tudiant De ce fait nous avons mis en place un syst me de m thode logique appeler par le client En d autres termes Olivier fournit une classe douard dans laquelle il existe des m thodes simples comme EnvoyerMessage ou DemanderListeClients La liste exhaustive des fonctions est disponible en annexe p 36 Avec ce syst me nous avons d fini un dialogue simple entre nos deux parties vitant ainsi des int grations complexes et fastidieuses par exemple si chacun avait r alis son code mettant en oeuvre son socket de plus il n est pas n cessaire que toutes les fonctionnalit s soient impl ment es pour r aliser les premiers tests Pas besoin d envoyer un message pour demander la liste des clients 2 Jean Yves Olivier VII Afin de lier la partie de Jean Yves Interface graphique avec la partie d Olivier Serveur il faut se r f rer l objet de communication et aux trames vues
52. ine de la puissance plus de d g ts avec l l ment associ mais pas d effet secondaire Donc si je fais FFT je lance un attaque d l ment terre ne faisant pas d effet secondaire mais infligeant plus de d g ts Note TTF TFT et FTT sont les m mes sorts Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p37 65 Iris Fight Annexes 4 Domaines et effets secondaires Il y a 4 niveaux de d g ts aucun faible moyen lourd Un sort basique ex TTT fait des d g ts moyens Air Effet secondaire Shock 20 de chance par attaque pendant 1 tour par niveau d attaque faible 1 moyen 2 l adversaire a 20 de chances de rater ses sorts Domaine Effet secondaire augmente les chances d infliger des effets secondaires mais diminue les d g ts Terre Effet secondaire Assommoir 10 de chances d annuler les N prochains tours de l adversaire N est d fini par le niveau de l attaque Domaine Protection offensive inflige des d g ts faibles du type d l ment associ d fense contre l l ment associ Eau Effet secondaire Chance de geler pareil que assommoir Domaine Vie soin faible d fense contre l l ment associ Feu Effet secondaire Brulure 10 de chances inflige 100 des d g ts initiaux en plus r partis sur 3 tours Domaine Puissance Attaque lourde de l l ment associ e mais sans effet secondaire T
53. insi que des syst mes d exploitation ex Windows Unix FreeBSD Ce syst me est tr s populaire dans le milieu du web gr ce son utilisation pour les plateformes LAMP Linux Apache MySQL PHP 2 Pourquoi MySQL Nous avons choisi le rangement de nos donn es dans des bases de type MySQL pour les raisons suivantes e Gratuit du SGBD pour une utilisation but non lucratif e Possibilit de lier MySQL avec le serveur sur simple installation de la libraire mysql e Actuellement l une des bases de donn es les plus utilis es avec le moteur de page web PHP e Connaissance dans son administration en ligne de commande e Connaissance dans l utilisation de requ tes SQL 3 Les avantages de MySQL e Gratuit des composants pour une utilisation but non lucratif e Possibilit de lier MySQL avec le serveur sur simple installation de la libraire mysql gt e Peut tre li distance en utilisant une adresse IP et un port 4 Les inconv nients de MySQL e Un des SGBD les plus lents pour des tables avec norm ment de donn es l instar du tr s connu ORACLE Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p50 65 Iris Fight A Annexes 5 Utilisation de PHP 1 Pr sentation PHP Hypertext Preprocessor est un langage de script cr en 1994 par Rasmus Lerdorf sous la forme d une biblioth que logicielle en Perl puis sous la forme d une
54. ique du caract res 2 ASCII envoie un message tout le monde s le serveur le re oit et le retransmet tout le monde y compris le joueur ayant envoy le message en indiquant le num ro de l exp diteur 5 Conclusions sur les TU Ces tests permettent de d celer divers bogues minimes dans certains cas mais parfois beaucoup plus important surtout une fois l ensemble int gr Pour exemple la connexion au serveur fonctionnait parfaitement bien la d connexion de m me mais lorsque qu un m me nom d utilisateur s identifiait juste apr s une d connexion le serveur pouvait le refuser pour doublon Explication e Le serveur stocke la liste des pseudos dans un tableau e Lors de l identification de connexion le serveur v rifie que le pseudo n et pas dans la liste e Dans un premier temps aucun pseudo donc pas de probl me mais une erreur survenait lors de la d connexion o bien qu un delete indiquait la m moire comme inutilis e le pseudo restait en m moire r sidente e De ce fait si le m me compte tentait de se reconnecter le serveur lisait la m moire r sidente et refusait le joueur Correction e Forcer NULL la case du tableau correspondant au pseudo apr s avoir effectu le delete Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p43 65 Iris Fight Annexes 5 Choix des ressources techniques 1 Pr sentation de la SDL Simpl
55. le affiche les actions une une en interrogeant les objets capacity Puis elle affiche un menu pour r cup rer la s lection du joueur L objet capacity sert lire les fichiers XML et devient une liste de chemins pouvant tre comprise pour l affichage Le nom est bien mal accord avec sa fonction animation serai meilleur Les r gles du jeux ayant volu es le code n a pas suivi en tout point La liaison SDL serre uniquement int grer la partie r seau et rendre transparente les m canismes de la partie interface c est pour cela qu elle ne comporte que deux fonctions Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p25 65 Iris Fight A Conception pr liminaire 4 Classes de l interface client LOGIN parent QWidget LoginLineEdit QLineEdit ConnectPushButt PasswordLineEdit QLineEdit RE 20 ServerLineEdit QLineEdit K gt login QString LOGIN pass QString LOGIN QWidget parent LOGIN void on_ConnectPushButton_clicked FICHE parent QWidget textBrowserPseudo QTextBrowser textEditNiveau QTextEdit lineEditAir QLineEdit lineEditTerre QLineEdit lineEditEau QLineEdit lineEditFeu QLineEdit lineEditLumiere QLineEdit lineEditTenebre QLineEdit lineEditVie QLineEdit FICHE FICHE QWidget parent FICHE CHAT parent QWidget pseudo QStrin
56. lyses amp Sp cifications 5 La base de donn es MySQL 1 Pourquoi une base de donn es Afin de stocker les comptes des joueurs et de pouvoir sauvegarder l volution des personnages nous avons d cid d utiliser une base de donn e voir le chapitre Pourquoi MySQL p 50 2 Qui utilise la base Deux parties du projet utilise la base de donn es le site Internet et le serveur de jeu respectivement r alis s par Jean Fran ois BERNARD et Olivier LONZI 3 La table de la base de donn e lt lt primaire gt gt ID_perso int 10 actif int 1 1 admin int 1 0 joueur_prenom varchar 50 joueur_nom varchar 50 lt lt unique gt gt nom varchar 50 pass varchar 50 courriel varchar 100 niveau int 2 1 experience int 10 point_vie int 2 1 point_orbe_1 int 2 1 point_orbe_2 int 2 1 point_orbe_3 int 2 1 point_orbe_4 int 2 1 point_orbe_5 int 2 1 point_orbe_6 int 2 1 Cette table stocke toutes les informations relatives un personnage son niveau son exp rience ainsi que des informations personnelles sur le joueur rattach au compte dont voici les explications e ID_perso Cette valeur correspond la cl primaire du personnage il ne peut y avoir qu une valeur identique e actif Cette valeur correspond l tat d activation du compte 1 si actif 0 sinon e admin Cette valeur correspond au statut du compte 1 si administrateur 0 sinon joueur prenom jo
57. m ros de port doivent tre compris entre 1 et 65535 de plus il est d conseill d utiliser les port inf rieurs 1000 car ils sont standardis s e Info Vous ne pourrez lancer plusieurs instances simultan ment sur le serveur mais vous pouvez dupliquer le r pertoire home vous ServeurlrisFight pour instancier un nouveau serveur avec une autre bdd e Maintenant que le serveur est lanc il faut le tester o Pour ce fait lancer le client local en utilisant votre compte administrateur se r f rer au chapitre d utilisation du client 1 Si vous souhaitez administrer la BdD il faudra utiliser l application web se r f rer au chapitre d utilisation de l application web e Une fois les tests effectu s et concluant en local nous allons permettre l acc s la machine depuis l ext rieur o 1 cas Vous tes connect internet directement avec un modem RTC ou un routeur branch en USB m Aucune manipulation sur les ports n est n cessaire ce niveau o 2 cas Vous utilis un routeur g rant les redirection NAT m R f rer vous au manuel de configuration NAT de votre routeur pour rediriger les ports utiles e 3306 par d faut pour la bdd si vous l avez install en local e 1664 par d faut pour le serveur de jeu o Dans tout les cas m V rifier qu aucun firewall ne bloque les port utiles e 3306 par d faut pour la bdd si vous l avez install en local e 1664 par d
58. n bre Effet secondaire Vampirisme 25 r cup re 25 des d g ts inflig s Domaine Faiblesse affaiblie la cible l l ment associ les d g ts sont multipli s par 1 5 pendant 3 tours pour l l ment associ Lumi re Effet Destruction d orbes 15 d truit N orbes al atoires de l adversaire N tant d fini par le niveau de l attaque Domaine Vol d orbes vol 2 orbes de l l ment associ 5 Les pentacles Cinq orbes de m me l ment invoque le pentacle de l l ment sort ultime de l l ment A d couvrir 6 Liste des sort Sorts d air AA D fense contre l air AAA Attaque moyenne d air FFA Eclair flamboyant d g t lourd pas d effet secondaire EEA Corps vaporeux d fense contre l air soin faible TTA Mur de vent d g t faible d fense contre l air DDA Affaiblissement l air peut tre contr pas une d fense contre l air LLA Implosion vol 2 orbes d air peut tre contr pas une d fense contre l air AAAAA Pentacle d air Sorts d eau EE D fense contre l eau EEE Attaque moyenne d eau FFE Vapeur ardente d g t lourd d eau pas d effet secondaire Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p38 65 Iris Fight Annexes AAE Brouillard givrant d g t faible double les chances d effet secondaire TTE Mur de glace d g t faible d fense contre l eau
59. n bres lumi re vie et peuvent moduler leur efficacit en fonction des points de comp tence acquis Les joueurs apparaissent dans la liste des joueurs connect s et peuvent proposer un combat tous les autres joueurs de la liste ou choisir de discuter avec eux Une fois qu un joueur en a d fi un autre et que celui ci accepte le duel un combat commence entre leurs deux personnages L issue du duel se d termine par la perte de tout les points de vie d un des deux personnages ou par l abandon d un des joueurs Une fois le duel termin des points d exp rience sont gagn s permettant ainsi aux joueurs de faire voluer les caract ristiques de leurs personnages 2 Solutions techniques choisies Pour r aliser ce projet nous avons fait le choix d utiliser les mat riaux suivants e SDL pour le moteur de jeu voir chapitre SDL en annexe p 44 e Qt pour les menus voir chapitre QT en annexe p 46 e PHP MySQL pour le site internet voir chapitres PHP en annexe p 51 et MySql en annexe p 50 e C MySQL pour le serveur voir chapitres C en annexe p 49 et MySql en annexe p 50 Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p7 65 Iris Fight A Dossier de Sp cification 3 R partition des t ches Afin de travailler sur un jeu complet il tait important de dissocier les t ches de mani re pouvoir ainsi regrouper plus facilement l ensemble de nos travaux
60. n effet l origine Qt poss dait une licence propri taire son code source tait ferm Cependant aujourd hui Trolltech propose une double licence Si on fait un programme libre ce qui est notre cas alors on peut utiliser la version libre de Qt gratuitement Si on fait un programme propri taire alors on doit acheter une licence aupr s de Trolltech Nous avions galement d cid de faire de notre programme une application multi plateforme et pour Windows Vista E Ei ES cela Qt semblait tout d sign Vous at Linux I Mac OS De ce fait Qt est galement capable de cr er une fen tre qui adopte de look de l OS Operating System sur lequel on se trouve Ainsi sur Linux la fen tre disposera de la m me apparence que les fen tres de votre OS alors que sur Windows le programme agira de la m me mani re en adoptant l apparence d une fen tre Windows Qt est galement un logiciel dont on ne parle pas beaucoup mais qui n en est pas moins utilis par les grandes firmes de l informatique Ainsi on peut retrouver du Qt dans des logiciels appartenant Archos Adobe ou encore Skype Dernier point int ressant Qt dispose suite son installation de beaucoup d l ments int ressants pour le d veloppement d un GUI Ainsi on peut retrouver une foule d exemple de programmes expliqu s de mani re d taill e afin de bien comprendre comment Qt fonctionne On dispose galement d un a
61. nalyses amp Sp cifications V Analyses amp Sp cifications 1 Marche suivre pour un joueur Explication textuelle reprenant le cahier des charges permettant d aboutir sur les diagrammes UML en reprenant les points n cessaires un client pour jouer notre jeu ni Lancement du programme client Saisie de l identifiant et du mot de passe Envoie des informations d identification au serveur et acceptation ou refus de celui ci Refus Re saisie des informations tape 2 Acceptation Suite de la proc dure Ouverture de la page de discussion en ligne avec les autres joueurs Le joueur peut saisir des messages et les envoyer toutes les personnes connect es sur le serveur Il peut choisir de d fier d autres joueurs ou d accepter refuser un d fi AR 2 E E JS Refus Le joueur peut continuer saisir des messages tape 5 Koch Acceptation La phase de combat d bute pour les deux joueurs ni Les joueurs choisissent les actions effectuer puis les transmettent au serveur N Le serveur trie les actions et teste les points de vie pour d finir la fin de partie LA Tant que les joueurs ont de la vie et qu aucun des deux n abandonne le jeu continue tape 7 mi P Lors de la fin de la partie des points d exp riences sont attribu s aux joueurs Koch Nn Les joueurs retournent sur la fen tre de discussion Koch CH Si le joueur a assez d exp rie
62. nce une notification lui annonce qu il peut monter de niveau I Le joueur peut donc ouvrir la fen tre de gestion des niveaux et attribuer ses points dans ses caract ristiques Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p10 65 Iris Fight A Analyses amp Sp cifications 2 Cas d utilisation du syst me client LL LL LL LOIRE ER System m Modifier les caract ristiques des personnages cr s D Administrateurs FO lt lt Suspendre l utilisation d un personnages gt CLLLCECECEEEEEC CELL LEE Ah lt lt include gt gt x Connexion un serveur Eer ent eener EEEREERRRRR EE EE EE EE EE EE ERR EE EE ER d LU M LLLELLLELELLEEEEEEEEEES Identification d un personnage PA cn EC RER Be pare VLC Cr ation d un personnage nes K E af Ze unnn SOCPERPEEEPEEEE EEE PEER EEE EP EP PERC E EEE POP POELE PEER POLE 74 unat Ze al Dialoguer avec les autres joueurs identifi s par leur personnage Pe i Ze Se lt ncude gt gt See lt lt indude gt gt E lt lt include gt gt Gagner le d fi 2 Jouer le d fi By af SE ee Aa e POS lt lt indude gt gt Ca lt lt indude gt gt Perdre le d fi ac D E Monter de niveau si suffisament d exp rience Wes notes WALTER f gt O DUU WI Ze D U
63. nts de vie d un personnage ou l abandon d un des joueurs A l issue de chaque duel le vainqueur gagne trois points d exp rience tandis que le vaincu n en gagne qu un voir annexe Exp rience p 40 Une fois un certain seuil d exp rience atteint voir image 4 Rappel de l annexe l utilisateur peut passer au niveau suivant et r partir les points d orbes acquis dans les cat gories de son choix 275 250 225 200 175 150 125 100 75 50 25 0 Exp rience n cessaire Ligne Ligne Ligne Ligne Ligne Ligne Ligne Ligne Ligne Ligne 1 2 3 4 5 6 7 8 9 10 Niveaux image 4 courbe de passage de niveau En dehors des phases de combat les utilisateurs ont acc s un chat regroupant tous les joueurs connect s au serveur identifi s par leurs pseudonymes respectifs Ils peuvent ainsi discuter avec entre eux mais aussi se d fier en duel Bien entendu le joueur d fi a la possibilit d accepter ou non le duel Jean Fran ois BERNARD A A douard BOUCHER IUT Fontainebleau Projet 2008 p6 65 Iris Fight Introduction IV Dossier de Sp cification 1 Rappel du cahier des charges Ce projet consiste r aliser un jeu en deux dimensions dans lequel deux joueurs s affrontent chacun leur tour Les joueurs se connectent un serveur de combat dans lequel ils cr ent ou ont d j cr un personnage Ces personnages ont diff rentes caract ristiques air terre feu eau t
64. oj t E p31 En frangais en E E Ne es p31 2 Emane AS A E E E T E EEO p31 XII Conclusions personnelles des tudiants se onnloetineiinstnennd rdieliie snets nde p32 Jean Yves MARIN WEE p32 eet BOUCHER 58 ett p32 2 OO EONZI a dd a deu p33 4 Jean Fran ois BERNARD sn eeneg si den EeEeg p33 XIII Modifications apporter au programme dans le futur esseeseseeseeeeeeseeseeserseeereesersriessrersreesreese p34 EN TR a et ee D a ee nues p35 V Sources EE tee p35 2 Liste des m thodes d change entre le client et le serveur seeeeeeseseeseeeererrererssrersrresresrrrrseresse p36 3 R gles de combat Jean Yves MARIN 2 sneintsnemenennntommmaenitons p37 E EA RE p4l L Parue Serveur Olivi r LONZIY ann es ee Eet attest e p4l 3 des ressources EE p44 1 Pr sentation de la SDL Simple Directmedia Layer Jean Yves MARIN seese p44 2 Pr s ntation de Qi nnetiteneth ea ee p46 3 Utilisation du mode console en C pour le serveur Olivier LONZI eesscsccsrcererres p49 4 Utilisation de MySQL Olivier LONZI amp Jean Fran ois BERNARD An p50 5 Utilisation de PHP Jean Fran ois BERNARD AAA p51 0 Les Manuels artien Sn sn p52 EE Jeu sisao a a e een Ra a Ee E A en p52 4 Sit Internet esie Eege EEE REEE en dite EE E R ENE p56 EE eebe p57 7 Cahier des charges fourni l IUT le 20 d cembre 2007 susnestditunteivetase p62 1 Pr se ntation d e E p62 2 tudes ou r alisations pr alables sssssssssseesssssseeerssssserissssrerissssss
65. on futur au cours de mon futur parcours professionnel et m ont montr comment m int grer et travailler au sein d une quipe Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p32 65 Iris Fight Conclusions personnelles des tudiants 3 Olivier LONZI J avais d j exp riment le travail en groupe au cours de mon ann e de BTS IRIS 2007 durant laquelle nous avions d programmer un syst me d arrosage intelligent dans le but d tre mis en place dans une mairie l instar de cette ann e o le cahier des charges du projet a t r alis par nous m me pour nous m me j ai donc pu constater que ce genre de projet est beaucoup moins motivant que lorsque le travail fournir un r el but d utilisation pour une entreprise Cependant je compte bien mettre en place un serveur de jeu toujours connect en ligne J ai profit de ce projet pour approfondir mes connaissances dans l utilisation des sockets et surtout dans la programmation sous Linux en fixant d lib r ment la portabilit du serveur sous Windows et Linux dans le cahier des charges J ai pu aussi apprendre lors du travail en groupe utiliser un peu Qt Malgr s quelques mise en garde vis vis de la cr ation d un jeu plut t que d un utilitaire logiciel je pense que pour nos projets futures la m thodologie de travail en groupe et les nouveaux acquis sont des points gratifiants pour la suite
66. rrensrerressrrrrerssrsrrnsrrresser p64 SA EE EE p64 4 Les participants du projet et leurs objectifs ss p65 5 Tablet E se Sn EREE ea AEE a p65 Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p3 65 Iris Fight A Pr sentation des personnes en charges du projet Il Pr sentation des personnes en charges du projet Tuteur Luc HERNANDEZ M HERNANDEZ nous soutenus dans notre d marche pour la conception et r alisation de notre projet Nous le remercions pour ses conseils avis s notamment pour l architecture du rapport tudiant n 1 douard BOUCHER Edouard s occupe de la partie fen trage du logiciel pour les clients tudiant n 2 Olivier LONZI Olivier s occupe de la liaison client serveur et du serveur tudiant n 3 Jean Yves MARIN Jean Yves s occupe de la partie zone de combat programm en SDL tudiant n 4 Jean Fran ois BERNARD Jean Fran ois s occupe de la partie WEB Il est arriv apr s la d finition de notre cahier des charges Pour identifier les personnes ayant travailler sur telle ou telle partie du projet nous avons choisi d utiliser un jeu de couleur un par personne voir ci dessus que nous reportons chaque fois que des travaux personnels ont t r alis s Ill Introduction IrisFight est un logiciel fonctionnant sous Windows et Linux et est d velopp en C avec les librairies Qt et SDL Il est compos d une partie serv
67. s gt Trame recus TU OK Envoie de la trame i2N nn Miranda sur 1768 OK Envoie de la trame 1i5Nnn Jean Louis sur 1768 Impr cran 6 Demande liste des clients 2 clients Le joueur demandant la liste re oit les deux couples num ro pseudo il peut en d duire son num ro suivant son pseudo Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p42 65 Iris Fight Annexes 4 Envoyer un message 3 clients connect s 1 Le joueur 1 envoie le message bonjour tous le monde 0K Envoie de la trame 12NXns bonjour sur 1896 0K Envoie de la trame 12Nns bonjour sur 1780 0K Envoie de la trame 12Nns bonjour sur 1732 Trame recus sbonjour Impr cran 7 Envoie de message bonjour Le joueur 1 identifi par le num ro 0 envoie un message tout le monde s le serveur le re oit et le retransmet tout le monde y compris le joueur ayant envoy le message en indiquant le num ro de l exp diteur 2 Le joueur 3 envoie le message salut tout le monde Trame recus ssalut 0K Envoie de la trame 1BNns_Bsalut sur 1896 0K Envoie de la trame ins Gsalut sur 1780 0K Envoie de la trame 1BNns_Bsalut sur 1732 Impr cran 8 Envoie de message salut Le joueur 3 identifi par le num ro 2 a repr sentation graph
68. s Enfin elle permet gr ce aux signaux on_pushButtonEnvoyer_clicked on_pushButtonDefier_clicked on_pushButtonlgnorer_clicked et on_pushButtonFiche_clicked d envoyer un message au chat de d fier ou ignorer le d fi d un joueur et d acc der la fiche de son personnage La classe FICHE permet d afficher le pseudo du joueur son niveau et les points de comp tences en cours aux moyens des diff rents attributs textBrowerPseudo textEditNiveau et lineEdit Air Terre Eau A Elle permet galement gr ce ses m thodes pushButtonMoin Air Terre et pushButtonPlus Air Terre de modifier les comp tences des diff rents orbes en cas de passage de niveau Enfin le signal on_pushButtonChat permet d acc der la fen tre de chat Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p26 65 Iris Fight A Conception pr liminaire 4 Diagrammes des composants Le diagramme des composants permet de mod liser un ensemble d objets logiciels comme les fichiers ou les tables contenues dans des bases de donn es 1 Composants de la partie Serveur IFMessages cpp Ea fonctions cpp include include IFMessages h CI fonctions h EH 7 include includ 1 IFCommunication h IFCommunication cpp incude HE includ Es IFCommunicationGestionTrames h mal GestionReglesCombat h include includ KH
69. s ce que pour la communication entre toutes les parties cela explique l explosion du triangle ci dessus dans la partie des co ts Jean Fran ois BERNARD A Jean Yves MARIN Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p30 65 Iris Fight A R sumer du projet XI R sumer du projet 1 En fran ais IRIS FIGHT est un jeu en ligne mettant en sc ne deux joueurs dans un combat tour par tour IRIS FIGHT permet aussi la communication entre les joueurs et dispose d une interface de compte en ligne mis en place sur un site Internet Ce jeu propose la cr ation d un personnage qui au fur et mesure des combats gagne de l exp rience que le joueur pourra d penser dans ses diff rentes capacit s 2 En anglais IRIS FIGHT is an online turn based battle game between two players IRIS FIGHT also allow the communication between players and have an online account s interface on his website This game purpose a character creation that gain experience points at the end of the battle This point can be spend in his different capacities Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p31 65 Iris Fight Conclusions personnelles des tudiants XII Conclusions personnelles des tudiants 1 Jean Yves MARIN Le projet tutor m a apport une exp rience d quipe avec des membres dont je ne connaissais pas les acquis Je constate que si l on reprenait ce travail au d
70. s de bureau de Linux Qt signifie Cute ce qui signifie Mignonne parce que les d veloppeurs trouvaient que la lettre Q tait jolie dans leur diteur de texte Il s agit d une biblioth que multi plateforme pour cr er des GUI Graphic User Interface programme sous forme de fen tre crite en C et faite pour tre utilis e la base en C Cependant il est aujourd hui possible de l utiliser dans d autres langages comme Java Python etc Qt est constitu e d un ensemble de biblioth ques appel es modules On peut y trouver entre autres ces fonctionnalit s Module GUI c est toute la partie cr ation de fen tres C est ce que nous avons utilis durant ce projet Module OpenGL Qt peut ouvrir une fen tre contenant de la 3D g r e par OpenGL Module de dessin Module permettant de dessiner dans une fen tre 2D Module XML Permet d changer des donn es avec des fichiers form s l aide de balises un peu comme le XHTML Module SQL permet un acc s aux bases de donn es MySQL Oracle PostgreSQL Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p46 65 Iris Fight Annexes 2 Pourquoi Qt Dans le cadre de notre formation nous avons d cid de n utiliser que des logiciels libres c est pourquoi nous nous sommes tourn s vers Qt une biblioth que de cr ation de GUI Cependant il existe galement une licence payante de Qt E
71. s html ce qui fait que nous n avons pas les possibilit s graphiques que nous aurions pu esp rer 5 Qt Designer Qt Designer est donc le logiciel de Design fournit avec Qt permettant de cr er de fa on graphique comme par exemple Visual Studio nos fen tres Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p48 65 Iris Fight Annexes 3 Utilisation du mode console en C pour le serveur 1 Pourquoi du C en mode console Le mode console permet de simplifier l inter op rabilit entre Linux et Windows comme nous l avions choisis dans notre cahier des charges sans avoir recours des sur couche lourde comme QT de plus aucune action n est n cessaire pour l administrateur du serveur voir Manuels d utilisation du serveur de jeu p 52 Une administration via des pages web plus intuitive et possible distance est d velopp e par Jean Fran ois BERNARD voir sa partie p 51 Pourquoi l utilisation du C pour un serveur Le C pr sente certes des temps d ex cution plus long qu un programme compil en C et est donc peut recommand pour la cr ation d un serveur Cependant pour la mod lisation et pour sa simplicit de programmation et surtout comme le serveur ne n cessitait pas d avoir un temps de r ponse tr s plus court j ai choisis le C comme langage Pourquoi pas un autre langage que C ou C Pour ne pas avoir cr er un API pour le cl
72. sans recompilation Exemple de fichier XML lt xml version LO encoding IS0 8859 1 gt lt action nb 367 242 es 0 p 242 sound ddd gt lt bmp x 356 y 232 gt ressource sprite effect ddd 1 bmp lt bmp gt lt bmp x 356 y 233 gt ressource sprite effect ddd 2 bmp lt bmp gt lt bmp x 354 y 232 gt ressource sprite effect ddd 3 bmp lt bmp gt lt bmp x 354 y 231 gt ressource sprite effect ddd 4 bmp lt bmp gt lt bmp x 354 y 231 gt ressource sprite effect ddd 5 bmp lt bmp gt lt bn lt b lt bn lt b lt bn action x 430 y 308 gt ressource sprite effect ddd 32 bmp lt bmp gt x 434 y 310 gt ressource sprite effect ddd 33 bmp lt bmp gt 7436 y 313 gt ressource sprite effect ddd 34 bmp lt bmp gt x 440 y 316 gt ressource sprite effect ddd 35 bmp lt bmp gt x 449 y 319 gt ressource sprite effect ddd 36 bmp lt bmp gt Q mei Jet ei ro S Il Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p45 65 Iris Fight Annexes 2 Pr sentation de Qt 1 Pr sentation Qt a t d velopp par la soci t Trolltech bas e Oslo en Norv ge Son d veloppement a commenc en 1991 et il a t d s le d but utilis par KDE un des principaux environnement
73. ssistant un grand manuel d utilisation informatis regroupant toutes les informations n cessaires au d veloppement d une application avec Qt Et enfin il dispose galement d un logiciel de design appel Qt Designer qui va beaucoup servir permettant de cr er de mani re graphique sa fen tre avant d attaquer le codage Jean Fran ois BERNARD Jean Yves MARIN Olivier LONZI douard BOUCHER IUT Fontainebleau Projet 2008 p47 65 Iris Fight Annexes 3 Les Avantages de Qt Il permet de cr er efficacement un GUI pour un programme d velopper une application multi plateforme d velopper une application avec du mat riel open source disposer d outils efficaces comme des exemples d taill s un assistant et une application de design 4 Les Inconv nients de Qt Qt tant une librairie du C il est indispensable de ma triser un minimum ce langage de programmation Qt disposant de nombreux modules il n cessite un certain temps de documentation afin de trier ce qui est utile ou non et de se familiariser avec les diff rentes fonctions contenues dans sa librairie Qt permet d utiliser le html avec certains de ses widgets comme par exemple le textbrowser ce qui pouvait tre un tr s bon point pour une mise en page propre coupl e une feuille de style en css Or toutes les fonctionnalit s du html ne sont pas prises en compte par Qt et il est impossible d associer une feuille de style css aux donn e
74. t e en permanence internet branch e derri re un simple modem ou un routeur permettant le routage NAT des ports e La machine utilis e doit tourner sur un syst me d exploitation 32 bits de type Windows NT ou Linux 2 Choix du type d installation e l existe plusieurs types d installation o Le serveur install sur la machine utilise une base de donn es distante o Le serveur install sur la machine utilise une base de donn es locale 3 Installation pas pas Windows NT 32bits e Attention Si vous utilisez une base de donn es distante veuillez passer au grand point suivant sans d tailler les sous parties de ce point o Copier le dossier Serveur MySQL fournit avec le CD et ou disponible sur le site du jeu sur votre disque dur ex C ServeurMySQL o Modifier le fichier C ServeurMySQL my ini puis modifier les informations suivantes m ligne 53 port 3306 Choisissez votre num ro de port 3306 par d faut m ligne 68 port 3306 M me num ro que choisit ci dessus m ligne 72 basedir C ServeurMySQL m ligne 75 datadir C ServeurMySQL mysql Data o Installer le serveur sous forme de service Windows NT m Placer vous dans le r pertoire copi C ServeurMySQL m Puis dans le r pertoire bin m Taper la commande mysqld nt exe install MySQLS_IrisFight defaults file C ServeurMySQL my ini m Ft enfin lancer le serveur l aide de la commande net start MySQLS_IrisFi
75. ueur 2 fait exactement la m me manipulation au m me moment et une fois les deux joueurs pr ts le serveur affiche le r sultat du tour Le combat se termine lorsque la vie d un joueur atteint z ro ou que l un des deux joueurs quitte la partie pr matur ment Jean Fran ois BERNARD A A douard BOUCHER IUT Fontainebleau Projet 2008 p61 65 Iris Fight Annexes 7 Cahier des charges fourni l IUT le 20 d cembre 2007 1 Pr sentation du projet 1 But Ce projet consiste r aliser un jeu en deux dimensions dans lequel deux joueurs s affrontent Ce jeu sera multi plateformes c est dire qu il devra fonctionner sur les plateformes traditionnelles Windows Linux etc Les joueurs se connectent un serveur de combat dans lequel ils cr ent ou ont d j cr un personnage Une fois que les joueurs ont choisi le personnage qui les repr sentera ils apparaissent dans la liste des joueurs connect s et peuvent proposer un combat tous les autres joueurs de la liste Une fois qu un joueur en a d fi un autre et que celui ci accepte le duel un combat commence entre leurs deux personnages L issu du duel se d termine par la perte de tout les points de vie d un des deux personnages ou par l abandon d un des joueurs Une fois le duel termin des points d exp riences sont gagn s permettant ainsi aux joueurs de faire voluer leurs personnages 2 D tail rapide du syst me de jeu Lors des combats les
76. ueur nom et courriel Ces valeurs contiennent toutes les donn es personnelles du joueur e nom et pass Ces valeurs correspondent l identifiant nom du personnage ainsi qu son mot de passe le nom tant une valeur unique dans la table niveau et exp rience Ces valeurs correspondent au niveau et l exp rience acquis par le personnage e point_vie et point orbe 1 point_orbe 6 Ces valeurs correspondent aux points d orbe d pens s par le joueur dans les diff rentes comp tences du personnage Jean Fran ois BERNARD A Jean Yves MARIN H Olivier LONZI A douard BOUCHER IUT Fontainebleau Projet 2008 p15 65 VI Plan de Tests de Validation du syst me Iris Fight A Analyses amp Sp cifications Le Plan de Tests de Validation permet de d finir des actions v rifier en proposant diff rents tests possibles incluant des valeurs pr cises si possible et bien s r en indiquant le r sultat attendu pour chaque test Ce tableau nous permettra dans une tape finale de v rifier points par points la corr lation entre ce que nous voulions et ce que nous avons obtenu Actions v rifier Tests effectu s R sultats attendus Connexion un serveur Ip 127 0 0 1 Afficher connexion r ussie Ip 127 0 0 1 port 8000 Afficher connexion chec Ip localhost trouver l ip suivant le dns Afficher connexion r ussie Ip test_dns_distante avec serveur distant configur
Download Pdf Manuals
Related Search
Related Contents
SYBA SI-PEX40060 「元気とやまマスコット きときと君」着ぐるみ貸出要領 Zebra ZXP Series 1 Manuale dell`utente (it) Manual de Instruções Verbatim Store'n'Go USB Netbook Storage 32GB Speck SeeThru Untitled - Lidl Service Website Copyright © All rights reserved.
Failed to retrieve file