JeuWeb - Crée ton jeu par navigateur
[Merise - MCD/MPD]Besoin d'un Avis - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Merise - MCD/MPD]Besoin d'un Avis (/showthread.php?tid=1483)

Pages : 1 2 3


[Merise - MCD/MPD]Besoin d'un Avis - rwk - 20-07-2007

Coucou,

J'ai re-fais pour la énième fois ma base de donnée. Souvent certains nouveaux concepts du jeu viennent invalider la BDD.

J'ai donc fait un Modèle concept de données et le modèle physique.
Pour ceux qui ne savent pas ce que c'est, c'est en général une des première étape de la création d'une BDD. On pose des entités (le personnage, les objets, les terrains...) et on pose des relations qui relient deux entités.

A cette relation on fait correspondre des cardinatilités :
- 0,n => qui se dit zéro ou plus
- 0,1 => zéro ou 1
- 1,1 => strictement 1
- 1,n => 1 ou plus

Par exemple, un compte joueur possède au minimum 0 personnage et au maximum 3, la cardinalité s'écrirait 0,n. Dans l'autre sens, un personnage appartient strictement à un seul joueur, donc 1,1.

C'est cardinalité permettent de savoir ce que deviendra la relation.
Soit Personnage Héritera de la Primary Key de Compte Joueur et deviendra la clé étrangère (dans ce cas). Mais dans le cadre ou les cardinatlités des deux côtés sont 0,n, la relation devient une table (dans le modèle physique)....

Par exemple :
Un personnage possède 0 ou N sorts de magie.
Un sort (par exemple la boule de feu) appartient à 0 ou N personnage.

Donc les cardinalités seront 0,n et dans le côté physique de la BDD, ca se représente par une table qui contient :
- id personnage
- id sort

-------

Après cette courte intro, je voudrais vous soumettre mon modèle pour que vous me disiez si y a moyen d'alleger ma BDD et si elle est pas trop complexe.

Lien vers le CDM


Lien vers le PDM


RE: [Merise - MCD/MPD]Besoin d'un Avis - Plume - 20-07-2007

De l'analyse ! Big Grin
Déjà, j'suis content de voir que certain s'applique à passer par cette épreuve Smile Donc pour soutenir le mouvement, je vais t'aider Wink

Si je suis bien ce que dit le MCD ( Modèle Conceptuel de Données ) , un joueur n'a pas forcément de personnage. Ce qui est possible si le personnage n'est pas créé à l'inscription. Et il peut avoir plusieurs personnages ?
Ce que je trouve bizarre sinon c'est qu'un personnage puisse ne pas avoir de classe et surtout qu'il peut en être de plusieurs ..

Pareil , un personnage , une fois créé , est , je pense , forcément dans un quartier , non ?
Un bâtiment peut être posséder par plusieurs personnages ?
Etc. Je suis pas sûr mais je pense qu'il y a peut être quelques problèmes de cardinalités.

Autre chose , je trouve étrange que la table `caractéristiques' n'ait pas d'identifiant ..
J'dirais que c'est erroné aussi à cet endroit Smile

Pour le PDM on verra après Wink

@ tchaOo°



RE: [Merise - MCD/MPD]Besoin d'un Avis - rwk - 20-07-2007

Alors je vais répondre à tes interrogations pour voir si je suis dans le vrai.

Un joueur dans le jeu pourra avoir 2 personnages dont 1 est forcement humain.
Un personnage peut ne pas avoir de classe dans un cas très spécial et il peut en avoir plusieurs en respectant certaines conditions : le multiclassage. Par exemple, Pretre-guerrier, Moine -Maitre des ombres (classe de prestiges).
Un joueur peut donc etre Pretre niveau 10 et guerrier niveau 2. Il est donc niveau 2, mais a accès qu'au propriété de lvl 10 d'un guerrier et au propriété de lvl 2 d'un pretre Smile

Un personnage a forcement un quartier, sauf au moment où il "décède". A ce moment là, il est retiré de tous quartiers jusqu'à sa réactivation où il renait dans l'hopital du quartier où il est né. Et un quartier peut contenir 0 personnage (un quartier vide) comme 15 ^^. Et un joueur peut être au max dans un quartier... donc tu as raison, ce n'est pas 0,n mais 0,1.

Et si je ne veux pas me prendre la tête, il me suffit de faire un quartier 'absrait' genre le 9999 qui sera l'endroit où tous les joueurs vont quand ils décendent, donc du 1,1. Donc déjà, j'avais fait une erreur d'analyse ^^ Merci. Smile

Pour la table caractéristiques, je t'avouerais que je me suis posé la question. J'avais deux façon de proceder... Et je sais pas si j'ai utilisé la bonne.
Soit ma table a un ID qui est le même que l'ID du personnage.
Soit je ne lui mettais pas d'ID, et je lui faisais hérité une clé étrangère qui est l'ID du personnage...

J'ai choisi la méthode 2.... peut être n'est-ce pas le plus judicieux et c'est peut être pas très juste en terme de CDM.

Pour le personnage qui possède plusieurs bâtiments, c'est possible Smile. Un riche boulanger peut ouvrir une franchise. Il possède disons 4 boulangeries dans 4 quartiers (à savoir qu'un quartier peut être aussi grand qu'une de nos villes Smile ). Même s'il délègue l'administration de la boutique à un employé, le bâtiment est à lui Smile

Voilà pour les explications.


RE: [Merise - MCD/MPD]Besoin d'un Avis - Mysterarts - 20-07-2007

C'est fou comme juste en parlant de cardinalités, tu donne envie d'en savoir plus sur ton jeu ^^
Ah quand un WIP à ce sujet ??
Bonne continuation !

Mysterarts


RE: [Merise - MCD/MPD]Besoin d'un Avis - rwk - 20-07-2007

Pour le WIP, je vais en parler avec l'administrateur et le vrai patron ^^. Moi je ne suis que le codeur fou.
Mais pour de la recherche de Béta testeur, je passerais forcement par ici Smile


RE: [Merise - MCD/MPD]Besoin d'un Avis - Plume - 20-07-2007

Coucou ^^

Ma question rapport aux bâtiments n'était pas un personnage peut être propriétaire de plusieurs bâtiments, mais au contraire, un bâtiment peut être possédé par plusieurs personnages ?
Ensuite, j'ai juste relevé quelques cardinalités, mais tu devrais les revoir à peu près toutes à tête reposée pour voir s'il n'y en a pas d'autres qui seraient faussées. J'ai pas été dans le détail Wink

Pour ton dilemme d'identifiant pour la table `
caracteristiques' , dis moi qu'est-ce qu'une caractéristique pour toi.

@ tchaOo°

Note :
En français , on dit MCD Wink



RE: [Merise - MCD/MPD]Besoin d'un Avis - rwk - 20-07-2007

Par le terme caractéristique j'entends : les propriétés de base de tout personnage :
- sa force, son charisme, son intelligence, son or...

Pour le bâtiment possédé par plusieurs personnes, c'est aussi possible pour la délégation de droit sur le bâtiment ou encore un batiment monté par deux personnes genre partenariat...


RE: [Merise - MCD/MPD]Besoin d'un Avis - naholyr - 20-07-2007

Ces données ne devraient-elles pas être des attributs du personnage plutôt que le résultat d'une relation ?
Ni dans ton diagramme ni dans ta base de données tu ne pourras dire «il faut que pour chaque personnage il y ait une relation pour caracteristique.nom = "or", une pour = "force", …», tu ne pourras pas faire plus précis que 1..n, ce qui ne rend pas du tout impossible le fait de créer un personnage sans force ni intelligence, même pas 0, juste rien, ça parait étrange :lol:


RE: [Merise - MCD/MPD]Besoin d'un Avis - carlou - 20-07-2007

comment que c'est beau de trouver un post comme ca Cool
Par contre je vous aiderais pas, j'ai sauté cette etape moi ^^ mais pour apprendre par contre, je vous lis a ravir


RE: [Merise - MCD/MPD]Besoin d'un Avis - Plume - 20-07-2007

Bon, j'arrive trop tard, naholyr est passé devant moi ^^ J'attend donc la suite pour intervenir Tongue

@ tchaOo°