TourDeJeu, le portail des jeux en ligne alternatifs, les articles 
TourDeJeu, le réseau des jeux en ligne alternatifs : jeux web multijoueurs, jeux par forum. En savoir +
En ligne : 518 jeux, 7177 news, 26754 commentaires
 

Recherche de jeu par critères - Un jeu au hasard !

Les Focus

Tech. : Le programmeur écologique
Tech. : automatisation et mails
Salon MondeDuJeu 2002
Revue de presse des JpC
Humour : 1001 raisons pour jouer
Ludique : le joueur parfait
Ludique : découverte du JpC
PHP : accès base de données
PHP : structure du site
Ludique : JpC et Temps réel
Jeux de rôles sans règles
Humour : astrologie du JpC
Tech. : Bases de données
MJ : les joueurs multiples
PHP : utilité pour un JpC
PHP : c'est quoi ?
Tech. : l'analyse des ordres
Ludique : débutants et vétérans
Tech. : archi Ultraball 2100
Ludique : les jeux de pronos
Tech. : le site Web d'un JpC
Humour : football et wargame
Présentation de TourDeJeu

Créer une base de données pour son jeu

Conception de la base Fish Race

Voici les étapes à suivre pour créer votre base de données. Je vais prendre l'exemple du jeu FishRace qui est le projet pilote de développement PHP/MySL de TourDeJeu. Allez d'abord en lire les règles si vous voulez suivre en détail l'exemple.

  • 1. repérer les "objets" de votre base à partir des noms qui apparaissent dans vos règles.

    Dans Fish Race, on peut identifier les objets suivants :

    • éléments de jeu : équipe, espece, poisson, rivière, tronçon de rivière,
    • fonctionnement d'une partie : partie, joueur, tour, ordres, résultats
  • 2.repérer les attributs des objets, et les relations entre eux. Vous pouvez dessiner un schéma. Il existe des logiciels pour cela, mais je n'en connais pas de freeware ni shareware. Si quelqu'un en connait, ça nous intéresse tous !

    Pour FishRace, voici une image du schéma obtenu (c'est un MCD = Modèle Conceptuel de Données).

  • Les carrés blancs représentent les objets, et les ovales verts les relations entre objets. Les chiffres indiquent les types de relation : 1-1, 1-N (qui sont en fait des 0,N). Par exemple, ici, une équipe appartient à 1 et 1 seul joueur, et un joueur peut avoir 0 à N équipes. Quand le 1,1 est entre parenthèses, cela signifie que c'est une relation identifiante. Les propriétés soulignées sont aussi des identifiants. Ainsi, un tour est identifié par la partie à laquelle il appartient + le numero de tour.

    Par rapport à précédemment, 2 autres objets sont apparus : typeaction et typeresultat, qui permettront d'afficher des libellés sympas sur les formulaires d'ordres et les pages de CR. Pour l'instant, on a juste mis un code et un libellé, mais à l'usage on rajoutera surement d'autres choses (un bout de phrase composant la description de l'action dans le CR ?).

  • 3.tranformer le schéma en tables en traduisant :
    • les objets par des tables
    • les attributs par des colonnes. Donnez un type (numérique, alpha..) et une taille (nombre max de valeurs, longueur du texte) à chaque attribut.
    • les relations 1-N par des clés étrangères
    • les relations N-N par des tables d'association

    Voici le schéma de la base de données de FishRace (c'est un MPD = Modèle Physique de Données).

  • Les types de données que j'ai mis ne sont pas exactement ceux de MySQL mais le principe y est. Sur les flèches qui ont remplacé les relations, on a mis les conditions de jointures entre tables, qui seront souvent utilisées dans vos SELECT !
  • 4. Choisir les index supplémentaires
  • 5. Créer les tables et les index dans MySQL.

Retour au sommaire de l'article 

(c) TourDeJeu 2000-2024