Wiki Client Addons
← Retour aux catégories

🧩 Addons

Les addons permettent d'étendre les fonctionnalités du programme. Ils s'écrivent en Java et ont accès à un contexte complet : interface graphique, sessions serveurs, gestionnaire de fichiers et thème.

Installer un addon
1
Télécharger le fichier .jar

Récupérez le fichier .jar de l'addon depuis la page de l'auteur ou la liste officielle sur addons.html.

2
Placer dans le dossier addons

Copiez le fichier dans le dossier addons/ situé à côté de pterodactyl.jar (dans %APPDATA%\Pterodactyl\ sur Windows).

3
Redémarrer le programme

Fermez et relancez Pterodactyl Panel Manager. L'addon est chargé automatiquement au démarrage.

Structure d'un addon

Chaque addon doit inclure un fichier addon.json à la racine du JAR :

{
  "id":          "mon-addon",
  "name":        "Mon Addon",
  "version":     "1.0.0",
  "author":      "Votre nom",
  "description": "Description courte de l'addon",
  "main":        "com.example.MonAddon"
}
ChampTypeDescription
idstringIdentifiant unique, sans espaces (kebab-case)
namestringNom affiché dans la liste des addons
versionstringVersion au format X.Y.Z
authorstringAuteur de l'addon
descriptionstringDescription affichée dans l'interface
mainstringNom complet de la classe principale qui implémente PterodactylAddon
Interface PterodactylAddon

La classe principale doit implémenter l'interface PterodactylAddon :

public interface PterodactylAddon {
    void onEnable(AddonContext ctx);
    void onDisable();
}

onEnable est appelé au chargement de l'addon (démarrage du programme). onDisable est appelé à la fermeture ou lors d'un rechargement des addons.

API AddonContext
MéthodeRetourDescription
getAppWindow()AppWindowAccès à la fenêtre principale de l'application
getTheme()ThemeCouleurs et polices du thème actuel
getServerSessions()List<ServerSession>Liste des sessions serveurs actives
registerTab(String, JComponent)voidAjoute un onglet dans le panneau principal
registerMenuItem(String, Runnable)voidAjoute une entrée dans le menu Addons
getLogger()LoggerLogger dédié à l'addon (sortie dans la console du programme)
getConfigDir()PathDossier de configuration persistant pour l'addon
Un addon exemple complet et open-source est disponible sur le dépôt GitHub officiel. Il illustre l'ajout d'un onglet, la lecture d'une session serveur et l'écriture d'une configuration persistante.
Fin de la section → Retour aux catégories