Minecraft Servers HQ

Plugin Minecraft packetevents

Informations sur packetevents et les serveurs où il a été trouvé

🔌 À propos de PacketEvents

PacketEvents est une bibliothèque de protocole pour Minecraft Java Edition qui expose une API permettant d’intercepter, d’inspecter, d’annuler et d’envoyer des paquets de protocole bruts. Elle peut être utilisée comme plugin autonome sur un serveur/proxy ou intégrée comme dépendance de bibliothèque pour d’autres plugins et mods.

🎯 Objectif

Fournir une couche de paquets stable et multiplateforme aux développeurs de plugins et de mods afin qu’ils puissent réagir aux paquets du protocole Minecraft et les manipuler (login, play, status, handshake, etc.) sans écrire de code Netty de bas niveau ni maintenir eux-mêmes de nombreuses implémentations de protocole spécifiques à chaque version.

⚙️ Fonctionnalités

  • Interception de paquets pilotée par événements pour les paquets entrants et sortants (événements receive/send et événements au niveau du protocole).
  • Possibilité d’annuler ou de modifier les paquets avant qu’ils ne soient traités par le serveur/client.
  • API permettant d’envoyer et de simuler des paquets par programme.
  • Cycle de vie propre : créer/charger/initialiser/terminer une instance PacketEvents pour une gestion correcte des ressources.
  • Prise en charge multi-module : builds/modules séparés pour les plateformes courantes afin que la même API fonctionne dans différents environnements serveur/proxy/mod.
  • Javadocs publiées et configuration développeur documentée pour une utilisation avec Maven/Gradle.

🧩 À qui cela s’adresse

  • Aux développeurs de plugins et de mods qui ont besoin d’un accès au niveau du protocole (envoyer, simuler ou modifier des paquets).
  • Aux exploitants de serveurs qui installent PacketEvents comme dépendance pour des plugins nécessitant une interception des paquets.

🏗️ Exemples d’utilisation

  • Un plugin enregistre un listener de paquets et annule un paquet entrant précis pour empêcher le traitement par défaut.
  • Un mod envoie des paquets synthétiques à un client pour créer des effets visuels ou une interface personnalisée sans modification des entités côté serveur.
  • Un plugin de proxy gère les paquets de login/handshake pour des flux d’authentification personnalisés.

⚙️ Installation

📥 Configuration (exploitant de serveur)

  • Téléchargez le JAR officiel du plugin et placez-le dans le dossier plugins/ du serveur/proxy (ou l’équivalent).
  • Redémarrez le serveur/proxy et vérifiez les logs pour confirmer que PacketEvents a été chargé correctement.

🛠️ Pour les développeurs (configuration du build)

PacketEvents est distribué sous forme de modules spécifiques aux plateformes. La documentation montre des exemples Maven/Gradle ; la bibliothèque est destinée à être ajoutée avec le scope provided/compileOnly. La documentation utilise un espace réservé pour le nom du module ; remplacez-le par le module de la plateforme cible (par exemple spigot, velocity, bungeecord, fabric, sponge) lors de l’ajout d’une dépendance.

Exemple (extrait Gradle montré dans la documentation officielle) :

// Remplacez INSERT_MODULE_HERE par un nom de module pris en charge (spigot, velocity, bungeecord, fabric, sponge)
compileOnly("com.github.retrooper:packetevents-~~INSERT_MODULE_HERE~~:2.12.1")

Appelez les méthodes du cycle de vie de la bibliothèque depuis votre plugin/mod (load -> init) et terminez-la lorsque votre plugin est désactivé.

🧠 Notes techniques

  • Les modules officiellement fournis incluent Spigot, Velocity, BungeeCord, Fabric et Sponge.
  • Le projet indique que le module Spigot est conçu pour fonctionner sur des forks largement utilisés tels que Paper, Purpur et Folia, et que le module BungeeCord est destiné à fonctionner sur Waterfall.
  • Le projet est publié avec le code source, les releases et les Javadocs ; il est sous licence GPL-3.0.
  • La bibliothèque est destinée à être ajoutée avec le scope provided/compileOnly dans les builds de plugins lorsqu’on ne souhaite pas la regrouper ; des instructions de bundling sont documentées pour les cas où un plugin inclut PacketEvents dans sa distribution.

🤝 Quand ce plugin est utile

Si votre projet nécessite un contrôle direct sur le protocole Minecraft — pour une authentification personnalisée, des effets basés sur les paquets, la gestion de proxy ou des intégrations bas niveau — PacketEvents fournit une API multiplateforme et une gestion du cycle de vie afin que vous puissiez créer ces fonctionnalités sans réimplémenter la gestion du protocole pour chaque serveur ou implémentation de proxy.

Serveurs avec le plugin packetevents

La page du plugin packetevents montre sur quels serveurs le monitoring a trouvé ce plugin, ainsi qu'avec quelles plateformes et versions il apparaît.

Les plugins peuvent ajouter des commandes, une économie, une protection, des droits d'accès, des mini-jeux, des intégrations ou d'autres mécaniques. Le rôle réel de packetevents dépend de la configuration du serveur concerné.

Les données sont formées automatiquement à partir des réponses techniques des serveurs. Si un serveur masque la liste des plugins, il peut ne pas apparaître dans cette section, même s'il utilise packetevents.

Utilisez la liste des serveurs avec packetevents pour comparer des projets, vérifier les versions compatibles ou trouver des exemples d'utilisation du plugin sur des serveurs publics.