# Comment installer ViaVersion sur votre serveur Minecraft ## Qu'est-ce que ViaVersion ? ViaVersion est un plugin qui permet de : - **Accepter plusieurs versions** de Minecraft sur un même serveur - **Permettre aux joueurs** de se connecter avec des versions plus récentes ou plus anciennes - **Maintenir la compatibilité** entre les différentes versions du jeu - **Éviter de forcer** tous les joueurs à utiliser la même version ## Comment ça fonctionne ? ViaVersion traduit les paquets de données entre différentes versions de Minecraft. Par exemple : - Serveur en 1.19.4 → Joueurs peuvent se connecter en 1.20.x - Serveur en 1.16.5 → Joueurs peuvent se connecter en 1.17.x, 1.18.x, 1.19.x, etc. **Important** : ViaVersion permet principalement aux joueurs avec des versions **plus récentes** de se connecter à des serveurs **plus anciens**. ## Prérequis - Serveur Spigot, Paper, ou compatible - Accès administrateur au panel de gestion - Java 8 ou supérieur ## Étape 1 : Télécharger ViaVersion ### Plugins nécessaires Selon votre configuration, vous aurez besoin de : **ViaVersion** (obligatoire) : - Plugin principal - Téléchargez depuis [https://www.spigotmc.org/resources/viaversion.19254/](https://www.spigotmc.org/resources/viaversion.19254/) **ViaBackwards** (optionnel) : - Permet aux joueurs avec des versions **plus anciennes** de se connecter - Téléchargez depuis [https://www.spigotmc.org/resources/viabackwards.27448/](https://www.spigotmc.org/resources/viabackwards.27448/) **ViaRewind** (optionnel) : - Support pour les très anciennes versions (1.8.x et 1.7.x) - Téléchargez depuis [https://www.spigotmc.org/resources/viarewind.52109/](https://www.spigotmc.org/resources/viarewind.52109/) ## Étape 2 : Installer les plugins ### Installation basique 1. Connectez-vous à votre panel de gestion 2. Accédez à la section **Fichiers** ou **Gestionnaire de fichiers** 3. Ouvrez le dossier `plugins` 4. Uploadez le fichier `ViaVersion.jar` 5. Si nécessaire, uploadez aussi `ViaBackwards.jar` et `ViaRewind.jar` 6. Redémarrez le serveur ### Vérifier l'installation Une fois le serveur redémarré, connectez-vous et tapez : ``` /viaversion version ``` Vous devriez voir la version de ViaVersion installée. ## Étape 3 : Configuration de base ### Fichier config.yml Après le premier démarrage, ViaVersion crée un fichier `plugins/ViaVersion/config.yml`. #### Configuration recommandée ```yaml # Activer le debug (désactiver en production) debug: false # Vérifier les mises à jour checkforupdates: true # Prévenir les blocs inconnus prevent-collision: true # Activer la traduction des protocoles auto-team-collision: true # Support 1.9+ new-effect-indicator: true ``` ### Compatibilité des versions ViaVersion supporte automatiquement les versions récentes. Voici les compatibilités : **Avec ViaVersion seul** : - Serveur 1.19.4 → Joueurs 1.20.x, 1.21.x peuvent se connecter **Avec ViaVersion + ViaBackwards** : - Serveur 1.19.4 → Joueurs 1.18.x, 1.17.x peuvent aussi se connecter **Avec ViaVersion + ViaBackwards + ViaRewind** : - Serveur 1.19.4 → Joueurs depuis 1.7.x peuvent se connecter ## Étape 4 : Configuration avancée ### Activer le support des anciens clients Si vous voulez supporter les versions 1.8 et antérieures, installez ViaRewind. Configuration ViaRewind (`plugins/ViaRewind/config.yml`) : ```yaml # Remplacer les items manquants replace-adventure: true replace-particles: true # Cooldown des attaques (1.8) cooldown-indicator: true ``` ### Limiter les versions acceptées Pour n'accepter que certaines versions, modifiez `config.yml` : ```yaml # Bloquer les versions trop anciennes ou trop récentes block-protocols: [] # Exemple : bloquer la 1.8 # block-protocols: [47] # Exemple : n'accepter que 1.19+ # block-protocols: [47, 107, 108, 109, 110, 210, 315, 316, 335, 338, 340, 393, 401, 404, 477, 480, 485, 490, 498, 573, 575, 578, 735, 736, 751, 753, 754, 755, 756, 757, 758] ``` ### Messages personnalisés Personnalisez les messages dans `config.yml` : ```yaml # Message de blocage block-disconnect-msg: "&cVotre version de Minecraft n'est pas supportée. &cVeuillez utiliser la version 1.19 ou supérieure." # Message de reload reload-disconnect-msg: "&cLe serveur recharge ViaVersion..." ``` ## Étape 5 : Configuration avec BungeeCord ### Installation sur BungeeCord Pour un réseau BungeeCord, installez ViaVersion sur : 1. **Le proxy BungeeCord** (obligatoire) 2. **Tous les serveurs backend** (recommandé) #### Sur le proxy BungeeCord 1. Placez `ViaVersion.jar` dans le dossier `plugins` du proxy 2. Redémarrez le proxy 3. ViaVersion gérera la traduction des versions pour tout le réseau #### Configuration BungeeCord Dans `plugins/ViaVersion/config.yml` sur le proxy : ```yaml # Activer le mode BungeeCord bungee-ping-interval: 60 bungee-ping-save: true bungee-servers: {} # Checker les joueurs checkforupdates: true ``` ### Installation sur les serveurs backend Même si ViaVersion est sur le proxy, installez-le aussi sur les backend pour une meilleure compatibilité : 1. Placez `ViaVersion.jar` dans chaque serveur backend 2. Les serveurs backend doivent être en `online-mode=false` 3. Le proxy gère la version, les backends la compatibilité ## Étape 6 : Optimisation des performances ### Réduire l'utilisation des ressources Dans `config.yml` : ```yaml # Limiter les threads max-pps: 800 max-pps-kick-msg: "§cVous envoyez trop de paquets !" # Cache des chunks chunk-border-fix: false # Réduire les calculs scoreboard-name-fix: false ``` ### Désactiver les fonctionnalités inutiles ```yaml # Si vous n'utilisez pas certaines fonctionnalités suppress-metadata-errors: true shield-blocking: true hologram-patch: false ``` ## Commandes ViaVersion ### Pour les administrateurs ``` /viaversion version ``` Affiche la version de ViaVersion ``` /viaversion reload ``` Recharge la configuration (déconnecte temporairement les joueurs) ``` /viaversion list ``` Liste les joueurs connectés avec leur version ``` /viaversion debug ``` Active/désactive le mode debug ``` /viaversion dontbugme ``` Désactive les messages de mise à jour ### Informations sur les joueurs ``` /viaversion displayversion ``` Affiche la version utilisée par un joueur ## Plugins compatibles ### Plugins fonctionnant avec ViaVersion **ProtocolLib** : - Manipulation avancée des paquets - Compatible avec ViaVersion **PlaceholderAPI** : - Placeholders pour afficher la version des joueurs - `%viaversion_player_protocol_version%` **ViaVersionStatus** : - Affiche la version des joueurs dans le TAB - Statistiques de versions ### Éviter les conflits Certains plugins peuvent causer des problèmes : - **OldCombatMechanics** : Peut entrer en conflit avec ViaRewind - **ProtocolSupport** : N'utilisez pas avec ViaVersion (choisissez l'un ou l'autre) ## Cas d'utilisation courants ### Cas 1 : Serveur 1.19 acceptant les joueurs 1.20+ **Installation** : - ViaVersion uniquement **Configuration** : - Aucune configuration spéciale nécessaire - Fonctionne automatiquement ### Cas 2 : Serveur 1.20 acceptant les joueurs 1.16+ **Installation** : - ViaVersion - ViaBackwards **Configuration** : - Installer les deux plugins - Redémarrer le serveur ### Cas 3 : Serveur 1.19 acceptant toutes versions depuis 1.8 **Installation** : - ViaVersion - ViaBackwards - ViaRewind **Configuration** : - Installer les trois plugins - Configurer ViaRewind pour la 1.8 ### Cas 4 : Réseau BungeeCord multi-versions **Installation** : - ViaVersion sur le proxy BungeeCord - ViaVersion sur chaque serveur backend - ViaBackwards et ViaRewind selon les besoins **Configuration** : - Configurer le proxy en priorité - Les serveurs backend héritent de la config ## Limitations et incompatibilités ### Fonctionnalités qui peuvent ne pas fonctionner **Entre versions majeures différentes** : - Nouveaux blocs/items : Remplacés par des équivalents - Nouvelles entités : Peuvent apparaître différemment - Nouveaux biomes : Affichés comme des biomes existants - Nouvelles mécaniques : Non disponibles pour les anciennes versions **Exemple** : - Joueur en 1.18 sur serveur 1.20 : Ne verra pas les nouveaux blocs de la 1.19/1.20 - Joueur en 1.20 sur serveur 1.18 : Peut voir des blocs manquants/remplacés ### Incompatibilités connues **Plugins incompatibles** : - ProtocolSupport (alternative à ViaVersion) - Certains anti-cheats peuvent détecter les joueurs ViaVersion **Solutions** : - Désactivez la détection de version dans l'anti-cheat - Utilisez un anti-cheat compatible avec ViaVersion ## Résolution des problèmes ### Les joueurs ne peuvent pas se connecter **Vérifications** : - ViaVersion est bien installé et démarré - Aucun message d'erreur dans la console - La version du joueur est supportée **Solution** : Vérifiez les logs dans `plugins/ViaVersion/` pour voir les erreurs. ### Erreur "Unknown packet type" **Cause** : - Conflit avec un autre plugin de protocole - Version de ViaVersion obsolète **Solution** : - Mettez à jour ViaVersion - Supprimez ProtocolSupport si installé - Vérifiez les conflits avec d'autres plugins ### Les blocs apparaissent différemment **Cause normale** : - Les nouveaux blocs ne peuvent pas être affichés dans les anciennes versions **Solution** : - C'est une limitation normale - Les blocs sont remplacés par des équivalents visuels ### Les joueurs en 1.8 sont kickés **Cause** : - ViaRewind n'est pas installé - Configuration incorrecte **Solution** : - Installez ViaRewind - Vérifiez que ViaVersion et ViaBackwards sont aussi installés ### Lag ou latence accrue **Cause** : - Traduction des paquets consomme des ressources - Trop de versions différentes simultanément **Solution** : - Optimisez la configuration ViaVersion - Limitez les versions acceptées si possible - Augmentez la RAM du serveur ## Vérifier les versions des joueurs ### Avec PlaceholderAPI Installez PlaceholderAPI et utilisez : ``` %viaversion_player_protocol_version% ``` Dans un scoreboard, TAB, ou plugin de chat. ### Avec une commande ``` /viaversion list ``` Affiche tous les joueurs avec leur version. ### Dans les logs ViaVersion enregistre la version de chaque joueur dans les logs lors de la connexion. ## Mises à jour ### Garder ViaVersion à jour ViaVersion est régulièrement mis à jour pour supporter les nouvelles versions de Minecraft. **Processus de mise à jour** : 1. Téléchargez la dernière version 2. Remplacez l'ancien JAR par le nouveau 3. Redémarrez le serveur 4. Vérifiez les logs pour les erreurs **Fréquence recommandée** : - Vérifiez les mises à jour chaque mois - Mettez à jour lors des nouvelles versions Minecraft majeures ## Conclusion ViaVersion est un outil essentiel pour maintenir un serveur Minecraft compatible avec plusieurs versions. Il permet aux joueurs de ne pas être forcés de downgrade ou upgrade leur client pour jouer sur votre serveur. L'installation est simple, et avec ViaBackwards et ViaRewind, vous pouvez supporter presque toutes les versions de Minecraft depuis la 1.7.x jusqu'aux plus récentes.