La base utilisée par l'extension est une base MariaDB 10.3.31. Le
schéma se compose des tables suivantes :
kc_systemes : référence les
systèmes cartographiques. Par convention, celui d'identifiant
1 est public, et un système d'identifiant 0 existe pour des
raisons techniques mais n'est pas visualisable;
kc_comptes : contient les comptes
utilisateur. Chacun d'entre eux est relié à un personnage (son
numéro est l'identifiant du compte);
kc_souscriptions : table de
liaisons comptes-systèmes, qui indique quels sont les droits
accordés à chaque utilisateur sur un système;
kc_images : recense les
différentes images utilisées et leur type :
0 : terrain tel qu'herbe, eau, neige..,
1 : objet tel qu'arbre, comptoir...,
2 : entités (monstre, suivant, personnage),
3: calques de sols (pour les bords de mer).
Cette table renseigne aussi sur les images de substitution
éventuelles pour les systèmes privés;
kc_carte : le coeur de
l'extension - c'est la liste de toutes les cases connues. Pour
chacune sont précisées ses coordonnées et son image de terrain;
kc_vues : pour une case et un
système donné, indique la date de dernière mise à jour (en
nombre de jours depuis une date arbitraire) et l'objet qui a
été alors vu;
kc_entites : ensemble des
monstres, créatures et personnages vus. Selon la précision des
informations vues, il peut ne s'agir que d'une référence à une
espèce tout comme il peut s'agir d'un suivant / monstre
spécifique avec un identifiant précis;
kc_positions : pour une case et
un système donné, indique la date de dernière mise à jour et
l'entité qui a été alors vue. Contrairement à la table des
vues, seules les cases avec un contenu sont stockées;
kc_meta : concerne un
emplacement. Pour une case donnée, liste les méta-données de
l'objet situé là : un texte, son constructeur, etc.
Cette table sert aussi à stocker les notes de chaque système et
chaque joueur sur une carte;
kc_brouillard : utile pour la
visualisation. Contient les niveaux de grisage par ancienneté,
pour chaque système;
kc_zones : utile pour la
visualisation. Contient les zones d'affichage définies pour
chaque système ou joueur qui en a configuré.
kc_parcours : référence les
parcours enregistrés (soit pour une carte autour d'une zone
fixe, soit pour un personnage en suivant ses déplacements).
Un parcours peut être visualisé sous forme de gif animé.
kc_frales : lié aux parcours.
Chaque entrée correspond à un changement sur un parcours (soit
un changement dans la vue capturée pour un personnage ou une
zone, soit un changement de coordonnées). Il s'agit de stocker
les différences dans le temps.