Installation de Minetest pour Ada

Distribution de travail : Ubuntu 22.04.1 LTS

Liens : https://github.com/TamaMcGlinn/minetest-adabots https://github.com/TamaMcGlinn/AdaBots https://www.ada-france.org/adafr/index.html

I/ Installation du compilateur Ada.

1/ Installation du comilateur ADA

util01@station40:~$ sudo apt-get install gnat gprbuild

2/ Installation du gestionnaire de paquet Alr.

Liens : https://github.com/alire-project/alire

3/ Création du répertoire de travail.

util01@station40:~$ mkdir ADA
util01@station40:~$ cd ADA/

4/ Téléchargement de gestionnaire de compilation Alr.

util01@station40:~/ADA$ git clone --recurse-submodules https://github.com/alire-project/alire.gi
util01@station40:~/ADA$ cd alire/
util01@station40:~/ADA/alire$ 

5/ Compilation.

util01@station40:~/ADA/alire$ export ALIRE_OS=linux
util01@station40:~/ADA/alire$ gprbuild -j0 -p -P alr_env
6/ Vérification.
util01@station40:~/ADA/alire$ bin/alr --version
alr 1.3-dev

II/ Installation de Minetest.

1/ Installation des paquets de développement.

util01@station40:~$ sudo apt install g++ make libc6-dev cmake libpng-dev libjpeg-dev libxi-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev libzstd-dev libluajit-5.1-dev git

2/ Création du répertoire de travail.

util01@station40:~$ mkdir -p JEUX/MINETEST
util01@station40:~$ cd JEUX/MINETEST/
util01@station40:~/JEUX/MINETEST$

3/ Téléchargement de moteur graphique Irrlich 1.9.0mt5 compatible avec Minetest version 5.6.0-dev

util01@station40:~/JEUX/MINETEST$ wget https://github.com/minetest/irrlicht/archive/refs/tags/1.9.0mt5.tar.gz
util01@station40:~/JEUX/MINETEST$ tar xvfz 1.9.0mt5.tar.gz

4/ Télécharger le jeu de base : : minetest_game version 5.5.1

util01@station40:~/JEUX/MINETEST$ wget https://github.com/minetest/minetest_game/archive/refs/tags/5.5.1.tar.gz
util01@station40:~/JEUX/MINETEST$ tar xvfz 5.5.1.tar.gz

5/ Téléchargement du code source de Minetest 5.6.0-dev modifié par 'Tama McGlinn' pour le support du langage Ada.

util01@station40:~/JEUX/MINETEST$ git clone --depth 1 https://github.com/TamaMcGlinn/minetest.git
util01@station40:~/JEUX/MINETEST$ cd minetest/
util01@station40:~/JEUX/MINETEST/minetest$ 

6/ Installation du jeu de base.

util01@station40:~/JEUX/MINETEST/minetest$ mv ../minetest_game-5.5.1/ games/minetest_game

7/ Installation de Irrlicht.

util01@station40:~/JEUX/MINETEST/minetest$ mv ../irrlicht-1.9.0mt5/ lib/irrlichtmt

8/ Configuration de la compilation.

util01@station40:~/JEUX/MINETEST/minetest$ cmake . -DRUN_IN_PLACE=TRUE -DBUILD_SERVER=TRUE -DBUILD_CLIENT=TRUE -DENABLE_LUAJIT=TRUE -DENABLE_FREETYPE=TRUE -DENABLE_GETTEXT=TRUE -DENABLE_CURL=TRUE -DCMAKE_BUILD_TYPE=Release -DENABLE_SOUND=ON

9/ Compilation.

util01@station40:~/JEUX/MINETEST/minetest$ make -j2

III/ Installation de AdaBot.

1/ Installation du jeu 'MineClone5'.

util01@station40:~/JEUX/MINETEST/minetest$ git clone https://github.com/kay27/MineClone5.git games/mineclone5

2/ Installatin du mod 'AdaBots'.

util01@station40:~/JEUX/MINETEST/minetest$ git clone https://github.com/TamaMcGlinn/minetest-adabots.git mods/adabots

3/ Lancement du jeu.

util01@station40:~/JEUX/MINETEST/minetest$ bin/minetest

4/ Configuration du jeu.

  • Activer le mode http :
- [Paramètres][Tous les paramètres]
  - Serveur/partie solo 
     - Mods HTTP : Adabots
  • Créer un jeu basé sur 'MineClone5' :
- [MineClone5]
- [Nouveau]
  Nom du monde : test
  [Créer]
  • Activation du mod 'adabot' pour le monde 'test' :
- [test]
- [Sélectionner les mods]
  - [adabot]
  - [activé]
  - [Sauvegarder]

5/ Créer une tortue.

  • A partir de l'inventaire, ajouter une 'turtle' :

turtleada01.png

  • Ajouter une 'turtle' dans le monde.

turtleada02.png

  • Cliquer sur la 'turtle' avec le bouton droite de la souris

  • Cliquer sur le bouton [Stop/Start listening]

turtleada03.png

6/ Télécharger les exemples Ada.

util01@station40:~/JEUX/MINETEST$ git clone https://github.com/TamaMcGlinn/AdaBots_examples.git
util01@station40:~/JEUX/MINETEST$ cd AdaBots_examples/
util01@station40:~/JEUX/MINETEST/AdaBots_examples$ 

7/ Compiler le programme qui permet de faire avance la tortue.

util01@station40:~/JEUX/MINETEST/AdaBots_examples$ ~/ADA/alire/bin/alr build src/movement/forward.adb 

8/ Lancer le programme.

util01@station40:~/JEUX/MINETEST/AdaBots_examples$ bin/forward 

Revenir sur Minetest, la 'turtle' se déplace en avant !! :D