Minetest est un clone libre de Minecraft rédigé en C++ utilisant le moteur Irrlicht. Il dispose d’une partie cliente et d’une partie serveur.
La partie serveur de Minetest utilise des fichiers et une base SQLite pour héberger ses données (notamment la carte).
L’installation du serveur minetest se fait en deux temps, il faut installer d’une part le moteur Minetest (APIs, fonctionnalités…) et d’autre part la partie intelligente du jeu. Les options par défaut des packages FreeBSD officiels ne sont pas satisfaisantes pour faire un serveur, nous utiliserons les ports.
Dans un premier temps installez le port games/minetest avec les options suivantes:
cd /usr/ports/games/minetest/
make install
Puis installez le port games/minetest_game (à vous de choisir si vous voulez la documentation ou non)
cd /usr/ports/games/minetest_game/
make install
La configuration du serveur Minetest s’effectue au niveau du fichier /usr/local/etc/minetest.conf.
Changez tout d’abord le nom d’utilisateur du superutilisateur du serveur. C’est lui qui pourra donner les droits à d’autres utilisateurs. Une fois en jeu n’oubliez pas de changer son mot de passe via le menu dédié !
name = superminetest
On va ensuite changer quelques options administratives, le nom du serveur, son adresse, l’URL web et le message de connexion
server_name = Minetest UnixExperience (FR)
server_address = minetest.unix-experience.fr
server_url = http://mintest.unix-experience.fr
motd = Welcome to UnixExperience Minetest Server
Passons maintenant à la configuration réseau. Vous pouvez changer le port et optionellement l’adresse d’écoute, si vous disposez de plusieurs interfaces réseau (autrement le serveur écoute sur toutes les interfaces). Vous pouvez également modifier la limite de joueurs connectés.
port = 30000
bind_address = 8.8.9.34
max_users = 100
Si vous souhaitez que votre serveur s’annonce sur la liste de serveurs publique, spécifiez l’option suivante:
server_announce = 1
Passons maintenant à la configuration du mode de jeu du serveur.
L’option creative_mode permet d’active le mode créatif. Si elle est à false, vous serez en mode survie.
Vous pouvez également activer/désactiver les dommages et le JcJ.
creative_mode = false
enable_damage = true
enable_pvp = false
Le cycle jour/nuit et saisons est personnalisable, il suffit de faire varier les options time_speed et year_days:
time_speed = 72
year_days = 365
Pour savoir comment calculer la durée réelle en secondes d’une journée en jeu voici la formule:
1 jour en jeu = 86400/time_speed secondes
Enfin, si vous souhaitez rendre votre serveur un peu plus autonome, vous pouvez donner des droits par défaut à vos joueurs (ici: interagir, casser, aller vite et voler)
default_privs = interact, shout, fast, fly
Le modding permet d’ajouter des fonctionnalités à vos serveurs Minetest. L’avantage de Minetest par rapport à Minecraft est la possibilité quasi infinie de modder côté serveur, permettant aux clients de bénéficier d’un ensemble de fonctionnalités très larges et de textures et modèles personnalisés sans rien installer sur le client.
Pour installer un mod, extrayez le dans le répertoire /usr/local/share/minetest/games/minetest_game/mods puis activez le en ajoutant la ligne suivante dans le fichier world.mt de votre monde présent par défaut dans /var/db/minetest/world (remplacez homedecor_modpack par le nom du répertoire extrait)
load_mod_homedecor_modpack = true
Vous savez désormais comment installer et configurer un serveur minetest avec des mods sous FreeBSD, il est temps de terraformer !