Data Base - SaigoNoo/GetTheBeer GitHub Wiki
Voici la V1 de la db, elle est encore à discuter
Les Tables
-
Utilisateurs
Cette table contient toutes les informations de base sur chaque utilisateur, comme son nom, son prénom, son pseudo, son email, sa photo et son mdp. C’est ici qu’on garde les infos de chaque joueur.user_id
: Un identifiant unique pour chaque utilisateurnom
: Le nom de l’utilisateurprenom
: Le prénom de l’utilisateurpseudo
: Le pseudo utilisé par l'utilisateuremail
: Le mail unique de chaque utilisateurimage
: L’URL ou la photo directement si c'est possiblemot de passe
: Le mot de passe de l'utilisateur
-
Amis
Cette table gère les relations d’amitié entre les utilisateurs. Un utilisateur peut être ami avec un autre, et ces relations sont bidirectionnelles (c’est-à-dire que si A est ami avec B, alors B est aussi ami avec A) - ce choix est personnel 🤷♂️user_id_1
etuser_id_2
: Ces champs indiquent qui est ami avec qui. Ce sont des références aux utilisateurs dans la table Utilisateurs
-
Bières
Chaque utilisateur peut gagner des bières en jouant. Cette table suit le nombre de bières restantes pour chaque utilisateur, en prenant en compte celles qu’ils ont gagnées ou perdues lors des jeux.user_id
: Référence à l'utilisateur dans la table Usersbières_restantes
: Le nombre de bières que l’utilisateur a actuellement
-
Niveaux
Les utilisateurs montent de niveau au fur et à mesure qu'ils accumulent des bières et progressent dans le jeu. Cette table définit les différents niveaux avec le nombre minimum de bières nécessaires pour atteindre chaque palier. ( par ex 1 bière = baby player, 20 = novice , ..., 1000 = roi des alcolos )level_id
: Un identifiant unique pour chaque 'niveau'level_name
: Le nom du niveau (par exemple, "bébé joueur", "novice", etc.)min_bieres
: Le nombre de bières nécessaires pour atteindre ce niveau
-
Niveau utilisateur
Cette table lie chaque utilisateur à un niveau spécifique et garde une trace de son XP et de la date à laquelle il a atteint ce niveau. Cela permet de suivre la progression des utilisateurs dans le jeu.user_id
: Référence à l'utilisateur dans la table Userslevel_id
: Référence au niveau atteint par l’utilisateur dans la table Levelsxp
: L'XP actuel de l’utilisateurdate_atteint
: La date à laquelle l’utilisateur a atteint ce niveau
-
GJeux Chaque jeu est enregistré dans cette table. Elle contient des informations sur les deux joueurs qui ont participé, le gagnant, et le nombre de bières mises en jeu lors de la partie. Cela permet de suivre l’historique des jeux et de savoir qui a gagné chaque partie. ( pour alimenter la page historique )
game_id
: Identifiant unique de chaque jeudate
: La date du jeujoueur_1_id
etjoueur_2_id
: Références aux deux joueurs qui ont participé à la partiegagnant_id
: Référence au joueur qui a gagné le jeubières_en_jeu
: Le nombre de bières mises en jeu lors de cette partie
Relations entre les tables
- utilisateurs et amis : Les utilisateurs peuvent avoir des amis, et ces relations sont enregistrées dans la table amis. L’amitié est bidirectionnelle, ce qui signifie qu’un enregistrement dans cette table montre que les deux utilisateurs sont amis.
- utilisateurs et bières : Chaque utilisateur a un nombre de bières restants, qui est suivi dans la table bières. Ce nombre change en fonction des jeux auxquels il participe.
- utilisateurs et niveau utilisateur : Chaque utilisateur peut avoir un niveau particulier, et cette table permet de suivre l’évolution de leur XP et leur progression à travers les différents niveaux du jeu.
- jeux : Chaque jeu implique deux joueurs et un gagnant. La table jeux garde une trace de tous les jeux joués, ainsi que des bières en jeu et du gagnant.
V2
Entité-relation
Relationnel
U = unique ∅ = possible null
Modification de la v1
- Le tableau bière est supprimer étant un simple nombre
- Le titre est lié aux niveaux
- Nouvelle table entre Utilisateurs et Jeux
- La table jeux contient le gagnant de la partie (id)