Jeu Monopoly, Structure BDD - 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 : Jeu Monopoly, Structure BDD (/showthread.php?tid=2283) |
Jeu Monopoly, Structure BDD - pollop - 14-01-2008 Bonsoir tout le monde J'ai dans l'idée de créer une sorte de monopoly en ligne. Et je cale un peu au niveau de la structure de ma base de données... Personnellement j'imaginais une table de ce style : Table Parties Champs : - ID - EtatCase1 - EtatCase2 - EtatCase3 - EtatCase4 - EtatCase5 - EtatCase6 - ... - EtatCase40 Seulement n'est ce pas mauvais d'avoir une table avec + de 40 champs ? Je m'arrangerais pour avoir assez avec un champs par case pour y stoquer mes infos. Genre si pour chaque case je doit savoir à qui elle appartiens et combien de maison il y a, je stoquerais dans ma table id_du_joueur,nbr_de_maison Et en jouant avec la partie entière et décimale je pourrais avoir mes infos. Qu'en pensez-vous ? Y a t il plus simple ? Merci RE: Jeu Monopoly, Structure BDD - Michu - 14-01-2008 Oui, fait plutot quelques champs avec 40 enregistrements, ex : id_case | nom_case | proprietaire | nb_hotel | prix | etc... 01 | Rue trucmuche | Ricard Bob | 0 | 100 | [...] 40 | Rue de la paix | Zazie | 1 | 100 000 ;p RE: Jeu Monopoly, Structure BDD - Sephi-Chan - 15-01-2008 Ce que je propose (je ne mets que les champs qui me sont utiles dans l'exemple) : Une table joueur : id_joueur nom_joueur Une table partie : id_partie Une table joueur_joue_partie : id_joueur id_partie Cette table indique : tel joueur joue dans tel partie. Cela permet au joueurs de disputer plusieurs parties simultanément. Une table cases : id_case nom_case couleur_case prix_case id_groupe prix_1_maison prix_2_maisons prix_3_maisons prix_4_maisons prix_5_maisons Cette table stock les différentes cases du plateau avec les informations relatives à chacune. Pour les gares et les cases spéciales, tu ne mets rien dans les champs qui indiquent le prix pour le nombre de maisons. Une table groupe : id_groupe nom_groupe L'id de groupe permet de regrouper les cases, les gares avec les gares, les compagnie d'électricité et eau, les rouges avec les rouges, etc. Une table joueur_sur_case_dans_partie id_case id_joueur id_partie Cette table indique l'emplacement (id_case) du joueur (id_joueur) dans la partie (id_partie). Ensuite, tu peux faire des tables comme : joueur_a_case_dans_partie id_case id_joueur id_partie nombre_maisons hypotheque Cette table indique à qui appartiennent les cases dans la partie donnée, avec le nombre de maisons qu'il y a dessus. On met un champ qui dit si la propriété est hypothéquée ou pas, si oui, on met un 1 dans le champ, sinon, un 0. Voilà, il manque probablement quelques trucs, mais c'est comme ça que je vois la chose. Sephi-Chan RE: Jeu Monopoly, Structure BDD - pollop - 15-01-2008 Merci beaucoup pour toute vos réponses, je commence à voir comment je vais procéder Je pense que je vais +/- prendre la solution de Sephi-Chan. Mais il y a certaine chose que je ne comprend pas :S Pourquoi y a t il une table joueur et une table joueur_joue_partie ? Je pense que je vais les fusionner Je ne comprend pas bien à quoi sert la table groupe. :S Voilà comment je compte faire : Joueur id nom id_de_la_partie_jouee argent emplacement (numéro de la case sur laquelle il est) ... Parties id mdp (pour que l'on puisse continuer une ancienne partie) maison_restantes hotel_restant argent_restant ... Cases id (id de la case) nom couleur/image action (ici je mettrai un numéro qui correspond à quoi sert la case genre 1=maison / 2=carte chance / 3= carte communautaire) prix_terrain (seulement si action = 1) prix_maison (seulement si action = 1) prix_loyer (seulement si action = 1) ... Appartenance id id_partie id_joueur id_case nombre_maison hypotheque (boolean) ... Qu'en pensez-vous ? @oxman : Ton idée avait l'air chouette, j'ai appris l'existence des classe il y a peu Mais cette technique ne me permet pas de stoquer les données :S Edit : J'ai une autre petite question, je comptais réaliser le plateau de jeu avec un immense tableau... Code : <table border="1"> Qu'en pensez-vous ? |