Automatique, ok mais pas en temps réel. Soyons clair dès le début.
Ce sujet fait suite à la discussion débutée là : Backup du world et un mod
Commençons par rendre à César ce qui appartient à Jules. Tout ce qui suit est basé sur le projet MTSatellite de Sascha L. Teichmann et sur les différentes idées exprimées dans le sujet cité ci-dessus.
Le projet MTSatellite permet la génération en temps réel (ou presque) de la carte d’un monde. Ici, nous nous limiterons à une génération planifiée.
Pourquoi ? Et bien tout simplement parce que les versions des dépôts officiels de Minetest pour Debian ou Fedora sont compilées sans le support des bases redis nécessaires à la mise en place de la partie ‘temps réel’ de MTSatellite.
Du coup, on se contentera de regénérer la totalité de la carte toutes les X heures.
Pour cela, nous aurons besoin des éléments suivants :
- 2 des 4 utilitaires du projet MTSatellite : mtredisalize et mtseeder
- 1 fichier html avec tous ses petits copains css/js/fonts pour l’affichage du résultat (basé sur celui fourni avec mtwebmapper)
- autant de fichiers CSV contenant les POI qu’il y a de couches à afficher sur la carte
Et c’est parti pour les explications.
D’abord le principe de fonctionnement :
Toutes les X heures (ou à la demande, c’est à chacun de voir), on génére une sauvegarde du fichier map.sqlite de minetest.
À partir de cette sauvegarde, on génère l’ensemble des tuiles nécessaires à l’affichage.
On affiche le résultat via un fichier html utilisant LeafletJS et quelques-uns de ses plugins.
Ce fichier fait des requêtes sur le web pour récupérer les fichiers CSV contenant les POI et les captures d’écran.
Le résultat : https://framinetest.org/carte/