Comment Faire Un Plugin Minecraft En 1.14

Alors, on veut devenir le roi du serveur Minecraft ? On veut que tout le monde s'agenouille devant nos commandes personnalisées ? On veut, on veut... faire un plugin Minecraft en 1.14 !
1.14, parlons-en. Personnellement, je pense que c'est l'époque de Minecraft où tout le monde a soudainement cru qu'il était développeur. "Oh, un plugin ! Trop facile !"
Faux.
Must Read
Mais bon, on va faire comme si c'était facile. Parce que si on se dit que c'est compliqué, on ne commencera jamais, n'est-ce pas ? Alors, en avant !
L'Environnement : La Base du Chaos
D'abord, il faut un truc pour taper du code. Un IDE, qu'ils appellent ça. Moi, j'aime bien Eclipse. Pourquoi ? Parce que le nom sonne cool. Et parce que j'ai réussi à l'installer du premier coup, ce qui est une prouesse en soi. Si vous préférez IntelliJ, libre à vous. Mais ne venez pas pleurer si vous vous perdez dans les menus !
Ensuite, le JDK. Java Development Kit, pour les intimes. C'est comme donner à votre ordinateur la permission de parler Java. Sans ça, il comprendra rien à ce que vous lui dites. Un peu comme quand on essaie de parler à un chat en anglais.
Et bien sûr, Spigot ou Paper. C'est le cœur de votre plugin. C'est ce qui permet à votre code de s'intégrer à Minecraft. Choisissez celui que vous voulez, honnêtement, la différence n'est pas si énorme au début. Disons que Paper est un peu plus "optimisé". Mais bon, si votre code est une catastrophe, l'optimisation ne changera pas grand-chose.
Le Code : Le Mystère Insondable
Ah, le code. L'endroit où les rêves meurent et où les nuits blanches commencent.

On commence par un fichier .java. Dedans, on met du Java. Logique, non ?
On crée une classe. On l'appelle comme on veut, tant que c'est en anglais et sans espace. Genre SuperPluginDuFeuQuiTue. C'est un exemple, hein. Ne faites pas vraiment ça.
Et là, on hérite de la classe JavaPlugin. C'est comme dire à notre classe : "Hey, tu es un plugin Minecraft maintenant !"
Ensuite, il faut redéfinir la méthode onEnable(). C'est le truc qui se lance quand votre plugin démarre. C'est le moment de mettre un petit message dans la console pour dire que tout va bien. Ou pas.
Genre : getLogger().info("Mon plugin est lancé ! Préparez-vous au pire !");
Simple, non ?

Les Événements : Le Bazard Permanent
Minecraft, c'est plein d'événements. Un joueur se connecte, un bloc est cassé, un creeper explose... Et on peut réagir à tout ça !
Pour ça, on utilise les listeners. C'est comme tendre l'oreille à ce qui se passe dans le jeu. Dès qu'un événement se produit, on peut lancer une action.
Par exemple, on peut faire un plugin qui envoie un message à un joueur quand il rejoint le serveur.
C'est un peu comme être un espion qui connaît tous les secrets du serveur. Sauf qu'au lieu de secrets, on a des "PlayerJoinEvent". C'est moins glamour, je sais.
Les Commandes : Le Pouvoir Ultime (Presque)
Les commandes, c'est ce qui rend votre plugin utile. C'est ce qui permet aux joueurs d'interagir avec lui.
On peut créer une commande qui donne des items, qui téléporte les joueurs, qui fait exploser des poulets... Les possibilités sont infinies ! Enfin, presque. Faut pas demander l'impossible non plus.

Pour créer une commande, il faut enregistrer une classe qui implémente l'interface CommandExecutor. C'est un peu technique, mais l'idée, c'est de dire à Minecraft : "Hey, quand quelqu'un tape /macommande, c'est cette classe qui s'en occupe !"
Et après, on peut faire ce qu'on veut dans la méthode onCommand(). On vérifie si le joueur a les permissions, on récupère les arguments de la commande, on fait des calculs savants... Et on renvoie un résultat.
Le plugin.yml : Le Confident Indispensable
C'est le fichier qui décrit votre plugin à Minecraft. C'est comme une carte d'identité. On y met le nom, la version, l'auteur, les dépendances... Bref, tout ce qu'il faut savoir sur votre chef-d'œuvre.
C'est aussi dans ce fichier qu'on définit les commandes. On dit à Minecraft : "Cette commande, elle s'appelle macommande, et elle est gérée par cette classe-là."
Si vous oubliez de mettre votre commande dans le plugin.yml, elle ne marchera jamais. C'est un peu comme essayer d'entrer dans une soirée sans invitation. Vous resterez à la porte.
Compiler et Tester : L'Épreuve du Feu
Une fois que tout est prêt, il faut compiler votre code. C'est comme transformer votre charabia Java en un fichier compréhensible par Minecraft.

Votre IDE préféré devrait pouvoir faire ça tout seul. Normalement.
Et ensuite, il faut tester votre plugin. On le met dans le dossier plugins de son serveur, on lance le serveur, et on croise les doigts.
Si tout se passe bien, votre plugin se chargera sans erreur. Et vous pourrez enfin tester vos commandes.
Si ça ne marche pas, pas de panique. C'est normal. Le développement, c'est 90% de bugs et 10% de moments de gloire.
Mon Avis (Peut-être Impopulaire) :
Franchement, la 1.14, c'était sympa, mais coder un plugin, ça reste du code. Pas besoin de se prendre pour un génie. Patience, persévérance, et beaucoup de café. Et surtout, ne vous découragez pas. Même si votre premier plugin se contente de faire clignoter des blocs de laine multicolores. On a tous commencé quelque part.
Et rappelez-vous : l'important, c'est de s'amuser. Si vous ne prenez pas de plaisir à coder, vous n'irez pas loin. Alors, lancez-vous, explorez, expérimentez. Et surtout, n'hésitez pas à demander de l'aide. La communauté Minecraft est pleine de gens sympas (enfin, la plupart du temps).
