# Luanti

Luanti (anciennement nommé Minetest-c55 puis Minetest) est un moteur de jeu vidéo voxel$^,$$^,$$^,$$^,$$^,$$^,$ conçu pour Windows, Linux, FreeBSD, Android et macOS. Le joueur peut évoluer dans des mondes générés de façon aléatoire composés de blocs, rassembler diverses matières premières et les combiner pour façonner le monde comme il l'entend. Il est important de noter que le projet n'existe pas pour être un jeu mais bien pour permettre de créer des jeux. Créé en 2010 sous la direction de Perttu Ahola (alias celeron55) le projet continue à évoluer avec l'aide d'une communauté grandissante.
Luanti est largement inspiré du jeu Minecraft mais il est open source, gratuit, multiplateforme et dispose d'une API de modding$^,$ qui est à la base même du jeu. Comme pour Minecraft, le jeu n'a pas de but précis ou de fin, le seul objectif étant de construire des bâtiments avec les différents blocs dans un univers en 3D, aussi connu sous le nom de voxel. Le jeu propose deux modes : le mode survie dans lequel le joueur doit d'abord rassembler les matières premières dont il a besoin, et le mode créatif dans lequel le joueur dispose de matières premières en quantité illimitée.
Le 13 octobre 2024, le nom de Minetest a été changé en Luanti, un jeu de mots utilisant le nom du langage de programmation Lua et le mot finnois « luonti » signifiant « création ».

## Système de jeu

Au début du jeu, le joueur se retrouve dans un monde généré de façon aléatoire composé de blocs en 3D aux textures variées qui représentent le bois, la pierre ou la terre. Ils sont organisés selon un système bien défini et correspondent à 1 m$^3$ dans le monde réel. Les environnements sont générés de telle sorte que tout paraît réaliste (collines, buttes, mers et lacs...). En outre, il existe différents biomes représentant les différentes zones végétales de la Terre.
Le joueur se déplace à sa guise dans le monde et récupère des matières premières autour de lui. Il peut ensuite replacer ces matières comme il l'entend. Ainsi, il peut construire quasiment n'importe quel type de bâtiment ou de structure qu'il peut imaginer. Pour obtenir de nouveaux objets, le joueur peut les fabriquer grâce à de l'artisanat. De plus, le joueur a la possibilité de fabriquer un four grâce auquel il pourra fondre les matériaux ou préparer à manger$^,$$^,$.
Les développeurs ont ajouté un minerai fictif du nom de Mese qui permet la fabrication d'objets aux propriétés remarquables ou de composants logiques actifs (Mesecons) comparable à la redstone dans Minecraft.
L'environnement est généré en temps réel autour du joueur au fur et à mesure que celui-ci se déplace dans le monde. Les dimensions de ce dernier, sur les plans horizontaux et verticaux, ne sont limitées que par des contraintes techniques. Ceci est rendu possible par le découpage en petites sections appelées 'MapBlocks' dont seules celles qui sont visibles par le joueur sont chargées et générées. Luanti dispose de deux modes de jeu : le mode survie et le mode créatif.

### Mode survie

Dans ce mode, il existe un indicateur de vie pouvant diminuer sous l'effet de dégâts, d'attaques de monstres ou d'autres joueurs, de chutes, noyades ou d'incendies jusqu'à entraîner la mort du joueur. Dans ce cas, le personnage ressuscite en possession de tous ses points de vie au départ du monde mais avec un inventaire vide. Celui-ci reste à l'endroit où il est mort. Le niveau de vie peut être restauré en mangeant des pommes ou d'autres aliments.
Le joueur peut acquérir diverses ressources et les transformer en nourriture, armes et outils. En collectant des ressources rares, il peut améliorer les objets qu'il fabrique pour les rendre plus efficaces. Certains blocs se travaillent à mains nues alors que pour d'autres, il est nécessaire d'user d'outils spéciaux. Avec une pioche, le joueur peut travailler dans des galeries minières et extraire du minerai. En le faisant fondre dans un four, il pourra l'utiliser ensuite pour fabriquer des armes ou des outils .
Le jeu dispose d'un inventaire pouvant contenir tout ce que le joueur peut porter soit 32 paquets (avec une limite de 99 objets). Le joueur peut fabriquer des coffres dans lesquels stocker les biens dont il n'a pas besoin constamment pour éviter d'avoir à les transporter. Ces coffres ont la même capacité que l'inventaire du joueur.
Il n'y a pas d'animaux ou de monstres contenus dans le jeu mais ils peuvent être ajoutés grâce aux modifications. Certains mods ajoutent des animaux non-agressifs qui apparaissent le jour et fournissent diverses matières premières (laine, œufs...) alors que dans d'autres, le joueur verra surgir des monstres la nuit ou dans des zones obscures. Ces créatures peuvent blesser le joueur ou même le tuer.

### Mode créatif

Le but du mode créatif est de construire. C'est pourquoi le joueur dispose d'une quantité illimitée de ressources dans l'inventaire. Les différents items et blocs peuvent simplement être tirés dans celui-ci. Comme dans le mode survie, divers monstres et créatures peuvent apparaître et tous les blocs ajoutés par les Mods (troisième modification) figurent également dans l'inventaire.

### Jeu à un ou plusieurs joueurs

Luanti peut être joué seul ou à plusieurs en réseau$^,$. Dans le mode à un joueur, un serveur local est utilisé, auquel seul le joueur est connecté. Le joueur dispose ainsi de toutes les libertés dont jouit un administrateur. Il peut par exemple décider de pouvoir voler ou de disposer d'objets qu'il n'a pas lui-même récupérés.
Dans le mode multijoueur, le joueur se connecte à un serveur qui autorise d'autres personnes à partager la connexion et rejoindre la partie en temps réel. Les joueurs peuvent alors construire, discuter et échanger ensemble. En outre, il est possible de se regrouper afin de combattre des ennemis ou d'autres joueurs si l'administrateur du serveur le permet. Ce que les joueurs sont autorisés de faire dans le mode multijoueur dépend entièrement des réglages du serveur et des mods installés.

## Développement

Au point de vue technique, le moteur de jeu se concentre principalement sur deux objectifs. Le contenu du jeu doit être facilement modifiable et fonctionner sur les ordinateurs récents comme les machines plus anciennes. C'est pour cela que Luanti est implémenté en C++ et utilise le moteur 3D Irrlicht$^,$.

### Versions

À partir de Luanti 5.8.0, il n'est plus fourni avec le jeu par défaut « Minetest Game ».

### Modding

Grâce au modding en langage de script Lua, Luanti peut être étendu. L'interface de programmation est très ouverte, et comme le contenu et le moteur du jeu sont strictement séparés, le jeu peut être étendu sans risquer d'influer sur la synchronisation du réseau$^,$. Cela permettrait de développer un tout nouveau jeu à partir de Luanti sans que le contenu n'ait plus rien à voir avec l'original.
Lorsque les mods sont installés sur le serveur, celui-ci transfère automatiquement toutes les données au client selon ses besoins. Les scripts des mods sont exécutés sur le serveur, ce qui permet de jouer selon certains mods sans avoir à modifier le client