ViaVersion : autoriser toutes les versions sur votre serveur Minecraft
Certains joueurs ont une vieille version, d'autres la dernière ? ViaVersion permet à tout le monde de rejoindre le même serveur, sans forcer une version précise.
Le problème des versions de Minecraft
Un serveur Minecraft toutes versions permet à des joueurs utilisant plusieurs versions de Java Edition de se connecter à la même adresse. Sans plugin de compatibilité, un serveur accepte normalement les clients correspondant à sa propre version de protocole.
Par exemple, un serveur installé en 1.20 peut refuser un joueur utilisant Minecraft 1.19 ou 1.21 avec un message comme :
Outdated client!
Please use 1.20
Outdated server!
I'm still on 1.20
Cette restriction devient gênante lorsque votre communauté ne met pas Minecraft à jour au même moment. Certains joueurs souhaitent conserver une ancienne installation, tandis que d’autres lancent automatiquement la dernière version disponible.
ViaVersion et ses extensions traduisent les échanges réseau entre différentes versions de Minecraft Java Edition. Le serveur continue de fonctionner dans sa version réelle, mais il peut comprendre les données envoyées par des clients compatibles plus récents ou plus anciens.
L’expression « toutes versions » doit être comprise comme « plusieurs versions prises en charge ». La compatibilité exacte dépend de la version du serveur, des versions actuelles des plugins Via et de la plateforme utilisée.
Créer un serveur Minecraft toutes versions avec le trio Via
La famille Via repose principalement sur trois plugins : ViaVersion, ViaBackwards et ViaRewind. Ils remplissent des rôles complémentaires.
| Plugin | Utilité principale | Exemple |
|---|---|---|
| ViaVersion | Autoriser des clients plus récents à rejoindre un serveur plus ancien | Client 1.21 vers serveur 1.20 |
| ViaBackwards | Autoriser des clients plus anciens à rejoindre un serveur plus récent | Client 1.20 vers serveur 1.21 |
| ViaRewind | Étendre la compatibilité à certaines très anciennes versions | Clients 1.7.x ou 1.8.x selon l’installation |
ViaVersion constitue la base du système. Il doit être installé en premier, y compris lorsque vous utilisez ViaBackwards ou ViaRewind.
ViaBackwards complète ViaVersion dans l’autre sens. Il permet à des joueurs utilisant une version plus ancienne de rejoindre un serveur installé dans une version plus récente.
ViaRewind vise les très anciennes versions du jeu, notamment les clients 1.7.x et 1.8.x dans les configurations prises en charge. Il dépend lui aussi de ViaVersion et peut demander ViaBackwards selon la version du serveur.
Une installation complète peut donc contenir :
ViaVersion.jar
ViaBackwards.jar
ViaRewind.jar
Vous n’êtes pas obligé d’installer les trois plugins. ViaVersion seul suffit lorsque vous souhaitez uniquement accepter des clients plus récents que votre serveur.
Ces plugins ne mettent pas réellement votre serveur à niveau. Un serveur 1.20 reste un serveur 1.20, même lorsqu’un joueur utilisant une version plus récente peut s’y connecter.
Prérequis et installation de ViaVersion
Pour suivre cette méthode, votre serveur doit utiliser Paper, Spigot ou une plateforme compatible avec les plugins Bukkit. ViaVersion ne peut pas être ajouté directement dans le dossier d’un serveur Vanilla.
Si votre serveur ne dispose pas encore d’un dossier plugins/, commencez par consulter le guide pour installer un plugin sur un serveur Minecraft.
Téléchargez ensuite les fichiers nécessaires depuis les pages officielles du projet ViaVersion. Évitez les sites de republication et les fichiers modifiés par des tiers.
Avant l’installation, arrêtez complètement le serveur.
Ne remplacez pas un plugin pendant que le serveur fonctionne et n’utilisez pas
/reloadpour appliquer une mise à jour. Un redémarrage complet limite les conflits de chargement.
Dans le gestionnaire de fichiers du panel TalCloud, ouvrez le dossier plugins/, puis ajoutez les fichiers .jar souhaités :
serveur-minecraft/
├── plugins/
│ ├── ViaVersion.jar
│ ├── ViaBackwards.jar
│ └── ViaRewind.jar
├── server.properties
└── world/
Redémarrez le serveur. Les plugins créent alors leurs dossiers de configuration :
plugins/
├── ViaVersion/
│ └── config.yml
├── ViaBackwards/
│ └── config.yml
└── ViaRewind/
└── config.yml
Consultez les logs de démarrage pour vérifier que chaque fichier a été chargé sans erreur. Vous pouvez aussi afficher les informations générales de ViaVersion avec :
/viaversion
Depuis la console du panel, retirez la barre oblique :
viaversion
Avant une mise à jour importante, des sauvegardes automatiques sont incluses pour vous aider à restaurer. Conservez aussi vos propres exports réguliers : vous restez responsable de vos données.
Configurer ViaVersion
Dans la majorité des cas, ViaVersion fonctionne immédiatement après le redémarrage. Vous n’avez pas besoin de renseigner manuellement chaque version acceptée.
Le fichier principal se trouve ici :
plugins/ViaVersion/config.yml
Vous pouvez notamment vérifier les paramètres suivants :
check-for-updates: true
send-supported-versions: false
block-versions: []
block-protocols: []
check-for-updates permet d’être informé lorsqu’une nouvelle version du plugin est disponible. Il est conseillé de le laisser activé, car les mises à jour de Minecraft nécessitent régulièrement des ajustements de protocole.
block-versions permet d’interdire volontairement certaines versions clientes. Par défaut, la liste reste vide :
block-versions: []
Vous pouvez par exemple exclure toutes les versions inférieures à une version donnée :
block-versions:
- "<1.19"
Vous pouvez aussi bloquer plusieurs plages ou versions précises :
block-versions:
- "<1.19"
- "1.20.2"
- ">1.21.1"
Cette fonction est utile lorsqu’une ancienne version provoque des problèmes avec votre anti-triche, vos menus ou certaines mécaniques du serveur.
Après une modification, redémarrez le serveur. Certaines options peuvent être rechargées avec une commande, mais un redémarrage complet reste préférable.
Pour voir les versions utilisées par les joueurs connectés :
/viaversion list
En cas de problème, générez un rapport de diagnostic :
/viaversion dump
Ce rapport rassemble des informations utiles sur le serveur, les plugins Via et les versions détectées. Évitez toutefois d’activer le mode debug en permanence : il peut produire beaucoup de messages dans la console.
Limites d’un serveur Minecraft multi-version
ViaVersion traduit le protocole réseau, mais ne peut pas ajouter au serveur les fonctionnalités qui n’existent pas dans sa version réelle.
Nouveaux blocs et objets
Imaginons qu’un joueur utilise une version plus récente que le serveur. Son client connaît peut-être de nouveaux blocs, objets ou créatures, mais le serveur ne les possède pas.
Le joueur peut se connecter, mais il ne pourra pas utiliser le contenu absent du serveur. ViaVersion vise la compatibilité de connexion, pas l’ajout des nouveautés d’une autre version.
Dans l’autre sens, un ancien client peut ne pas savoir afficher correctement un bloc disponible sur un serveur récent. Le plugin doit alors le remplacer visuellement par un élément connu de cette ancienne version.
Différences de gameplay
Certaines mécaniques ont changé au fil des mises à jour : combat, collisions, inventaires, sons, particules, hauteur du monde ou format des objets.
La traduction peut donc entraîner :
- un affichage différent ;
- une animation absente ;
- un objet remplacé visuellement ;
- une interaction inhabituelle ;
- une détection incorrecte par un anti-triche.
Pour un serveur compétitif, testez chaque version autorisée avant de l’annoncer officiellement.
Plugins incompatibles
Les plugins qui manipulent directement les paquets réseau, les interfaces complexes ou les données propres à une version peuvent entrer en conflit avec ViaVersion.
En cas d’erreur :
- mettez à jour Paper ou Spigot ;
- mettez à jour les trois plugins Via ;
- contrôlez les logs de démarrage ;
- désactivez temporairement les plugins liés aux protocoles ;
- testez avec la version native du serveur.
Si la version native fonctionne mais pas une autre, générez un rapport avec :
/viaversion dump
Mods côté client et serveur
ViaVersion est prévu avant tout pour la compatibilité entre versions de Minecraft Java sur des serveurs utilisant des plugins. Il ne rend pas compatibles des mods Forge, Fabric ou NeoForge conçus pour différentes versions.
Un joueur ne peut pas rejoindre un serveur moddé avec une autre version simplement parce que ViaVersion est installé. Les mods, le chargeur et les dépendances doivent toujours correspondre aux exigences du serveur.
Pour une expérience stable, conservez une version officiellement recommandée et présentez les autres versions comme une possibilité de connexion complémentaire.
En résumé
- Un serveur Minecraft toutes versions utilise des plugins de traduction de protocole pour accepter plusieurs versions clientes.
- ViaVersion permet principalement aux clients plus récents de rejoindre un serveur plus ancien.
- ViaBackwards ajoute la prise en charge de clients plus anciens sur un serveur récent.
- ViaRewind étend la compatibilité à certaines très anciennes versions, notamment 1.7.x et 1.8.x selon l’installation.
- Installez les fichiers
.jardans le dossierplugins/d’un serveur Paper ou Spigot. - Redémarrez complètement le serveur et vérifiez les logs.
- Utilisez
/viaversion listpour afficher les versions des joueurs connectés. - Utilisez
/viaversion dumppour générer un diagnostic en cas d’erreur. - Bloquez les versions problématiques avec l’option
block-versions. - Gardez à l’esprit que ViaVersion ne transfère pas les blocs, objets ou fonctionnalités absents de la version réelle du serveur.
- Pour créer votre serveur Minecraft toutes versions avec un panel de gestion, un stockage NVMe et un Anti-DDoS L3/L4/L7 inclus, consultez l’offre serveur Minecraft TalCloud.