Il y a déjà un moment, la 1.9 est sortie, avec de nouvelles fonctionnalités PvP, de nouveaux blocs, de nouveaux dongeons.
Quand on parle de la 1.9, on est aussi obligé de parler serveur, alors voici l’article pour comment créer son serveur avec plugins en 1.9.
Peu après que la 1.9 soit sortie, un article est paru sur minecraft.fr parlant de comment faire pour créer un serveur Minecraft Vanilla. Donc voici l’article concernant la création d’un serveur 1.9 mais avec Craftbukkit, Spigot & BungeeCord.

L’article sera divisé en trois parties :
1. Créer son serveur avec Craftbukkit;
2. Créer son serveur avec Spigot;
3. Créer son serveur avec BungeeCord et Spigot.

Créer son serveur avec CraftBukkit

Si, pour vous, posséder des plugins est indispensable au bon fonctionnement de votre serveur, vous êtes au bon endroit.

Tout comme pour un serveur Vanilla, avoir Java 8 installé sur votre PC est indispensable, vous pouvez vérifier ici et si il n’est pas installé le télécharger ici

  1. Télécharger l’outil Buildtools ici;
  2. Une fois téléchargé, créer un dossier sur le bureau et placer BuildTools.jar à l’intérieur de celui-ci;
  3. Télécharger Git ici et l’installer;
  4. Ouvrir git-bash.exe (C:\Program Files\Git\git-bash.exe) – Une fenêtre ressemblant à l’invite de commande devrait s’ouvrir;
  5. Taper “cd Desktop” puis “cd nomdudossier” dans cette fenêtre (remplacer nomdudossier par le nom de votre dossier);
  6. Taper “java -jar BuildTools.jar –rev 1.9.4” (sans les guillemets) – Normalement un processus de téléchargement des sources et de compilation de ces sources devrait s’effectuer. Atteindre que tout soit terminé;
  7. Un fichier nommé “craftbukkit-1.9.4.jar” devrait apparaître dans le dossier où vous avez précédemment placé Buildtools;
  8. Déplacer ce fichier dans un autre dossier de votre choix (de préférence vide);
  9. Ouvrir Notepad et entrer le code java -Xmx1024M -Xms1024M -jar craftbukkit-1.9.4.jar nogui.
    Les Valeurs -Xmx et -Xms peuvent être augmentées à condition que vous ayez suffisamment de RAM sur votre PC;
  10. Enregistrer le fichier sous le nom de RUN.bat dans le dossier où vous avez placé “craftbukkit-1.9.4.jar“;
  11. Lancer RUN.bat. Après un instant, un fichier eula.txt apparaît dans le dossier;
  12. Ouvrir le fichier eula.txt avec notepad et modifier “false” par “true” à la 3ème ligne;
  13. Des erreurs apparaissent mais c’est normal. Elles sont liées au fait que les fichiers du serveur n’ont pas encore été créés.

 

Voilà, votre serveur craftbukkit marche correctement. Maintenant, il faut le configurer.
Pour la configuration des fichiers .yml, l’outil Notepad++ est FORTEMENT recommandé. Téléchargeable ici

d8ee9b9f57cbdc702031a60fcd1bf968

Configuration détaillée de server.properties
[spoiler]

———————————————————–
generator-settings
: Utilisé pour personnaliser les mondes plat (level-type doit être sous FLAT pour utiliser ceci), plus d’infos ici
op-permission-level : Pas besoin de toucher
allow-nether : Permet aux joueurs de rejoindre le nether via des portails si activé (true)
level-name : Permet de changer le nom du dossier du monde, utilisez uniquement des caractères alphanumériques
enable-query : Utile pour l’utilisation du protocole GameSpy4
allow-flight : Si activé (true) permet aux joueurs d’utiliser un Mod de Fly (conseillé de laisser désactivé)
announce-player-achievements : Si activé (true) affiche dans le chat lorsqu’un joueur reçoit un achivement
server-port : Port du serveur, à ne pas toucher de préférence mais doit être entre 1024 et 65535
max-world-size : Par défaut à 29 millions de blocs, peut être uniquement diminué
level-type : DEFAULT, FLAT, LARGEBIOMES, AMPLIFIED ou CUSTOMIZED, permet de choisir le type de map qui sera généré
enable-rcon : Si activé (true) permet l’accès à la console à distance (seulement utile pour les VPS notemment)
level-seed : Seed à entrer pour la génération de la map (supprimez le dossier world pour que le changement de seed soit effectif)
force-gamemode : Si activé (true), force les joueurs se connectant à être dans le mode de jeu prédéfini
server-ip : IP du serveur (notamment utile pour les VPS multi-serveurs avec plusieurs adresses IP)
network-compression-threshold : Ne pas Toucher
max-build-height : Hauteur maximale de construction (par défaut 256, comme en solo)
spawn-npcs : Si activé (true), des PNJs vont apparaître dans votre monde (supprimer le dossier world n’est pas nécessaire)
white-list : Si activé (true), seuls les joueurs présents dans le fichier whitelist.json et les joueurs OP pourront rejoindre le serveur
spawn-animals : Si activé (true), des animaux vont apparaître dans votre monde (pas besoin de supprimer le dossier world)
hardcore : Si activé (true), le joueur sera automatiquement banni du serveur s’il meurt
snooper-enabled* : Si activé (true), envoie régulièrement des données au serveur snoop de Mojang
resource-pack-sha1 : Optionnel, vous pouvez spécifier la clé SHA-1 du pack de ressources, améliore la mise en cache
online-mode : Si activé (true), seuls les joueurs ayant une version payante de Minecraft pourront rejoindre votre serveur
Si vous mettez votre serveur en mode offline, vous perdrez les UUIDs des joueurs premiums, donc leurs skins ne s’afficheront plus.
resource-pack : À spécifier dans le cas d’un ressource pack de serveur (le lien doit être un lien direct vers le fichier)
pvp : Si activé (true), les joueurs pourront s’attaquer entre eux
difficulty : 0 = Peaceful (Paisible) ; 1 = Easy (Facile) ; 2 = Normal ; 3 = Hard (difficile)
enable-command-block : Si activé, les joueurs dits OP pourront utiliser les blocs de commande
gamemode : Mode de jeu par défaut quand un joueur rejoint le serveur. 0 = Survie ; 1 = Créatif ; 2 = Aventure ; 3 = Spectateur
player-idle-timeout : Expulse les joueurs après X minutes. Pour désactiver, laisser 0 comme valeur
max-players : Nombre de slots sur le serveur
max-tick-time : Pas besoin de modifier. Si au bout de X millisecondes, le serveur ne répond toujours pas (par défaut 60 secondes), le serveur s’arrêtera de lui-même.
spawn-monsters : Si activé (true), des monstres vont commencer à apparaître dans le monde. La difficulté doit être au moins fixée sur “1” pour que les monstres apparaissent.
generate-structures : Si activé (true), des dongeons et des villages seront crées lors de la création du monde (la suppression du dossier world est nécessaire afin que les changements soient pris en compte)
view-distance : Le nombre de chunks chargés de chaque côté du joueur. Pas nécessairement besoin de modifier la valeur par défaut, à moins que votre serveur subisse de gros lags, dans ce cas vous pouvez augmenter cette valeur. Dans les options de Minecraft la distance “loin” de vision affiche 9 chunks autour du joueur.
motd : À modifier pour modifier le texte affiché dans le menu des serveurs de Minecraft

*Voici ce qui est envoyé au serveur Mojang et ceci même si votre serveur est en mode offline :

  • Le nom et la version de votre OS
  • La version de java que vous utilisez
  • La version du serveur
  • Toutes les informations concernant la RAM du serveur (mémoire totale, mémoire libre et mémoire max)
  • Le nombres de cores de votre CPU
  • Le nombre de joueurs présents sur votre serveur ainsi que le nombre de slots
  • Le nombre de joueurs sur la whitelist et si elle est activée ou non
  • le nombre de packets envoyés
  • Pour chaque monde : le type de monde, la difficulté, le mode de jeu, la hauteur et le nombre de chunks chargés
  • Le nombre de mondes présents sur votre serveur

———————————————————–
[/spoiler]

Configuration détaillée de bukkit.yml
[spoiler]

———————————————————–
allow-end: Si activé (true), les joueurs peuvent accéder à l’end via un portail de l’end
warn-on-overload: Si activé (true), affiche dans la console si le serveur est surchargé
permissions-file: Nom du fichier de permissions, pas besoin d’être modifié
update-folder: Nom du dossier pour mettre des plugins mis à jour qui remplaceront les anciens une fois le serveur redémarré
plugin-profiling: Si activé (true), active la commande /timings qui permet de mesurer le temps pris par certains plugins
connection-throttle: Le délai avant qu’un joueur puisse se reconnecter après une déconnexion (en millisecondes)
query-plugins: Si activé (true), la liste de plugins pourra être accessible depuis une connexion externe à la console
deprecated-verbose: Ne pas toucher
shutdown-message: Message à afficher en cas d’arrêt du serveur
spawn-limits:
monsters: Limite de monstres apparaissant dans le même monde
animals: Limite d’animaux apparaissant dans le même monde
water-animals: Limite d’animaux marins apparaissant dans le même monde
ambient: Limite des autres créatures (comme les chauves-souris)
chunk-gc:
period-in-ticks: Ne pas toucher
load-threshold: Ne pas toucher
ticks-per:
animal-spawns: Tous les X ticks, le serveur essaiera de faire apparaître un animal
monster-spawns: Tous les X ticks le serveur essaiera de faire apparaître un monstre
autosave: Tous les X ticks, le serveur fera une sauvegarde de la map (6000 = 5 minutes)

———————————————————–

[/spoiler]

Les autres fichiers n’ont pas besoin d’être configurés.

Créer son serveur avec Spigot

Spigot est une version de Craftbukkit modifiée, avec de nouvelles fonctionnalités.
Son installation s’apparente à celle de Craftbukkit.

  1. Télécharger l’outil Buildtools ici
  2. Une fois téléchargé, créer un dossier sur le bureau et placer BuildTools.jar à l’intérieur de celui-ci
  3. Télécharger Git ici et l’installer
  4. Ouvrir git-bash.exe (C:\Program Files\Git\git-bash.exe) – Une fenêtre ressemblant à l’invite de commande devrait s’ouvrir
  5. Taper “cd Desktop” puis “cd nomdudossier” dans cette fenêtre (remplacer nomdudossier par le nom de votre dossier)
  6. Taper “java -jar BuildTools.jar –rev 1.9.4” (sans les guillemets) – Normalement un processus de téléchargement des sources et de compilation de ces sources devrait s’effectuer. Atteindre que tout soit terminé.
  7. Un fichier nommé “spigot-1.9.4.jar” devrait apparaître dans le dossier où vous avez précédemment placé Buildtools
  8. Déplacer ce fichier dans un autre dossier de votre choix (de préférence vide)
  9. Ouvrir Notepad et entrer le code java -Xmx1024M -Xms1024M -jar spigot-1.9.4.jar nogui
    Les Valeurs -Xmx et -Xms peuvent être augmentées à condition que vous ayez suffisamment de RAM sur votre PC
  10. Enregistrer le fichier sous le nom de RUN.bat dans le dossier où vous avez placé “spigot-1.9.4.jar
  11. Lancer RUN.bat, après un instant un fichier eula.txt apparait dans le dossier
  12. Ouvrir le fichier eula.txt avec notepad et modifier “false” par “true” à la 3ème ligne
  13. Des erreurs apparaissent mais c’est normal, elles sont liées au fait que les fichiers du serveur n’ont pas encore été crées

91eaa50d3133181bede1b62f20470950

Pour la configuration de server.properties et bukkit.yml, c’est dans la section Craftbukkit

Configuration détaillée de spigot.yml
[spoiler]

———————————————————–

La plupart des configurations ne doivent pas être changées, car elles peuvent faire buguer le serveur

debug: Ne pas toucher
save-user-cache-on-stop-only: Ne pas toucher
filter-creative-items: À utiliser pour filtrer les items en créatif
moved-too-quickly-threshold: Ne pas toucher
moved-wrongly-threshold: Ne pas toucher
late-bind: Si activé, peut poser problèmes avec certains plugins, recommandé de ne pas toucher
bungeecord: À activer si le serveur Spigot est utilisé avec BungeeCord
timeout-time: Délai en secondes que le serveur attend avant de s’éteindre si il ne répond plus
restart-on-crash: Si activé, le serveur va redémarrer lorsque le serveur crash. Un script de redémarrage doit être configuré.
restart-script: Ne pas toucher
int-cache-limit: Ne pas toucher
player-shuffle: Pas nécessaire de modifier
sample-count: Pas nécessaire de modifier
user-cache-size: Permet de contrôler la taille du cache dans le fichier usercache.json
netty-threads: Pas nécessaire de modifier
commands:
tab-complete: Lorsque le joueur tape / puis TAB, la totalité des commandes lui sera affiché si 0 est spécifié, si 1 est spécifié, le joueur devra taper au minimum la première lettre de la
commande, si 2 est spécifié, le joueur devra au minimum taper les 2 premières lettres de la commande etc…
silent-commandblock-console: Si activé (true), les commandes effectuées par des blocs de commandes ne s’afficheront pas dans la console
spam-exclusions: (si le joueur tape /skill, il sera automatiquement kick du serveur)
– /skill
log: Si activé, les commandes tapées par les joueurs seront affichées dans la console et sauvegardés dans les fichiers de log
replace-commands: (désactivé les commandes spécifiées, implémentées par bukkit et laisse les commandes Vanilla à la place)
– setblock
– summon
– testforblock
– tellraw
messages:
whitelist: Message à afficher dans le cas où un joueur non présent sur la liste blanche essaie de rejoindre le serveur
unknown-command: Message à afficher si le joueur essaie une commande qui n’existe pas
server-full: Message à afficher si un joueur essaie de rejoindre le serveur si le serveur est plein
outdated-client: Message à afficher si le client est trop vieux pour le serveur
outdated-server: Message à afficher si le client est trop récent par rapport au serveur
restart: Message à afficher en cas de redémarrage du serveur
stats:
disable-saving: Si activé (true), le serveur ne va pas sauvegarder les statistiques et les achievements des joueurs)
forced-stats: Ne pas toucher
world-settings:
default:
verbose: Si activé (true), à chaque démarrage, un rapport concernant chaque monde s’affichera dans la console
merge-radius:
item: Dans un rayon de X blocs, les items au sol vont se regrouper
exp: Dans un rayon de X blocs, l’XP va se regrouper en un bloc
item-despawn-rate: Après X ticks, les objets au sol vont disparaître
enable-zombie-pigmen-portal-spawns: Si activé (true), des Zombie Pigmen vont apparaître vers les portails du nether
arrow-despawn-rate: Après X ticks, les flèches lancées vont disparaître
wither-spawn-sound-radius: Limite le son des wither qui apparaissent
hanging-tick-frequency: Ne pas toucher
view-distance: Rayon autour du joueur (en chunks) que le joueur peut apercevoir. Cette distance doit être entre 1 et 15
zombie-aggressive-towards-villager: Si activé (true), les zombies vont se mettre à attaquer les villageois
ticks-per:
hopper-transfer: Le temps que le hopper prend (en ticks) pour recevoir/pousser un objet
hopper-check: Le temps que le hopper prend (en ticks) pour vérifier si il y a des objets à gérer
hopper-amount: Le nombre d’objets qu’un hopper gère pendant un cycle (par défaut : 1 objet)
mob-spawn-range: Rayon autour d’un joueur (en chunks) dans lequel les monstres apparaissent
entity-tracking-range: (rayon en blocs dans lequel les monstres seront visibles pour le joueur)
players: 48
animals: 48
monsters: 48
misc: 32
other: 64
random-light-updates: Ne pas toucher
save-structure-info: Laisser activer. Si désactivé, peut poser des problèmes aux niveaux des dongeons (dongeons glitchés, huttes sans sorcières…)
entity-activation-range: (rayon autour du joueur, dans lequel les entités seront actives)
animals: 32
monsters: 32
misc: 16
nerf-spawner-mobs: Si activé (true), les monstres qui apparaissent avec des spawners, resteront inertes
growth: (contrôle la vitesse de pousse des cactus, de la canne à sucre, du melon etc…)
cactus-modifier:  Vitesse de pousse du cactus
cane-modifier: Vitesse de pousse de la canne à sucre
melon-modifier: Vitesse de pousse de la Pastèque
mushroom-modifier: Vitesse de pousse des champignons
pumpkin-modifier: Vitesse de pousse des citrouilles
sapling-modifier: Vitesse de pousse des arbres à partir des arbustes
wheat-modifier: Vitesse de pousse du blé
netherwart-modifier: Vitesse de pousse des verrues du nether
hunger: (contrôle ce que différentes actions font à la barre de faim)
walk-exhaustion: Marcher enlèvera X demi-morceaux à votre barre de faim au bout d’un certain temps
sprint-exhaustion: Sprinter enlèvera X demi-morceaux à votre barre de faim au bout d’un certain temps
combat-exhaustion: Combattre enlèvera X demi-morceaux à votre barre de faim au bout d’un certain temps
regen-exhaustion:
max-tnt-per-tick: Nombre maximal de TNTs qui peuvent exploser pendant un seul tick
max-tick-time: (temps maximal en millisecondes avant que le serveur passe à une autre tache si le calcul est trop complexe)
tile: 50
entity: 50
max-entity-collisions: Ne pas toucher
dragon-death-sound-radius: Limite le son de la mort de l’enderdragon
seed-village: Contrôle le seed utilisé pour le placement des villages dans votre monde, ne pas toucher
seed-feature: Contrôle le seed utilisé notamment pour le placement des strongholds dans votre monde, ne pas toucher

———————————————————–

[/spoiler]

Créer son serveur avec BungeeCord et Spigot

BungeeCord est seulement utile si vous désirez relier plusieurs serveurs sans que le joueur ait besoin de se connecter et déconnecter.
Le Joueur se connectera au proxy qui redirigera ce même joueur vers le serveur Spigot par défaut

  1. Pour télécharger BungeeCord c’est ici
  2. Une fois téléchargé, placez BungeeCord dans un dossier de préférence vide
  3. Ouvrir Notepad et taper le code java -Xmx1024M -Xms1024M -jar BungeeCord.jar nogui
  4. Enregistrer le fichier sous le nom de RUN.bat dans le même dossier que BungeeCord.jar
  5. Exécuter le fichier RUN.bat
  6. Après un instant, taper la commande “end” dans l’invite de commande afin de fermer le proxy et ainsi pouvoir le configurer

 

 

Ici, nous allons essayer de configurer BungeeCord sur le port principal (25565) et faire en sorte que BungeeCord redirige sur un serveur Spigot

La 1ère étape est de configurer correctement le proxy.
Nous allons donc ouvrir le fichier config.yml dans le dossier de BungeeCord
À la ligne 28 de la config (vers le milieu-bas), sous host: mettre l’IP de votre serveur (IP de votre VPS, IP de chez vous etc…)
Ça devrait ressembler à ceci :
07e497d9293309958ae0d7315e418870

Au dessus, sous servers: (ligne 15)
sous address, modifier localhost par l’IP de votre serveur et modifier le port par 25566 (port différent de 25565)
Ça devrait ressembler à ceci :
47afc861e74856037598ea2dcf21e6f7

Encore au dessus de servers, sous ip_forward (ligne 4)
Changez “false” par “true”, pour forcer les gens à passer par le proxy (fortement recommandé)Ça devrait ressembler à ceci :
4e3a501ad4b2a0c9d6372bcac1f06146

Une fois ceci fait, sauvegardez le fichier.
Si vous n’avez pas encore crée votre serveur Spigot, vous pouvez vous rendre plus haut dans l’article

Maintenant il faut s’attaquer au serveur lui-même. Rendez-vous donc dans le dossier de votre serveur Spigot et ouvrez le fichier server.properties du serveur avec NotePad

Modifier le server-port
Changer 25565 par 25566 (ou le port que vous avez précédemment configuré dans BungeeCord)
Ça devrait ressembler à ceci :
72874c5506cf992d96cb751c08b5e250

Changez le online-mode en false et ceci même si vous voulez un serveur premium
Ça devrait ressembler à ceci :
a1beb9797646c31f4d6bf1b5f0b082c6

Maintenant ouvrez spigot.yml et changez la valeur bungeecord de “false” à “true”
Ça devrait ressembler à ceci :
0deb9c56e22c6faa5b06bb8bd77dbf4f

Une fois ceci fait, sauvegardez les fichiers server.properties et spigot.yml et exécutez le Proxy BungeeCord ainsi que le Serveur Spigot.

Maintenant ouvrez Minecraft en version 1.9.4 et ajoutez le serveur dans votre liste de Serveurs si ce n’est pas déja fait.
Si vous avez tout bien configuré quand vous avez ajouté le serveur, ceci devrait s’afficher :
eb73ca3796793e134da05b03ad5fc213

Si vous avez bien configuré le serveur, lorsque vous êtes connecté au serveur et que vous tapez /server, ceci devrait s’afficher :
f1780f6538caab3a030458a9eef31266

Si vous voulez créer d’autres serveurs fonctionnant sur le Proxy, il suffit de créer un autre serveur avec un autre port (par exemple 25567, 25568) et de l’ajouter dans le fichier de configuration BungeeCord.

Si vous voulez configurer BungeeCord dans les détails :
Configuration détaillée du fichier config.yml de BungeeCord
[spoiler]

———————————————————–

player_limit: Limite de joueurs connectés sur le Proxy en même temps (indiquer -1 pour illimité)
ip_forward: Si le serveur est en mode online (= joueurs premium uniquement), recommandé de mettre “true”, si votre serveur accepte les versions “crackées”, mettre “false”
permissions:
default: (permissions pour les joueurs par défaut, liste des permissions ici)
admin: (permissions pour les admins, liste des permissions ici)
timeout: Après x millisecondes le serveur s’éteindera si il ne répond plus
log_commands: Si activé, les commandes effectuées par les joueurs seront marquées dans la console et dans les logs
online_mode: À activer pour qu’uniquement les joueurs premium puissent rejoindre votre serveur
servers:
lobby:
motd: ‘xxx’ – Souvent pas nécessaire à mettre
address: xxx.xxx.xxx.xxx:port – Port du serveur, pas du proxy (mettre 25565 pour que les joueurs n’aient pas besoin d’entrer le port)
restricted: Si activé (true), seuls les joueurs avec la permission bungeecord.server.lobby pourront rejoindre
listeners:
– query_port: Ne pas toucher
motd: – Message à afficher dans le menu des serveurs
priorities: (pour configurer les priorités des serveurs)
– lobby
bind_local_address: Uniquement utile dans le cas de serveurs avec plusieurs addresses IP
tab_list: Mettre “GLOBAL_PING” pour afficher tous les joueurs connectés au proxy, “SERVER” pour afficher les joueurs connectés sur le serveur lobby
query_enabled: Laisser désactivé, souvent inutile
host: xxx.xxx.xxx.xxx:port – Insérer l’ip de votre serveur et le port (de préférence 25565)
max_players: 1 (Nombre de slots VIRTUELS, c’est à dire que plus de 1 joueur pourra rejoindre mais 1 slot sera affiché)
tab_size: Nombre de joueurs maximum qui vont s’afficher dans le menu TAB
ping_passthrough: Si activé (true), le ping du serveur et non du proxy sera affiché
force_default_server: Si activé (true), chaque joueur se connectera obligatoirement au serveur par défaut
disabled_commands: (pour configurer les commandes BungeeCord à déscativer, par exemple /server si vous utilisez que des portails)
– CommandeÀDésactiver
network_compression_threshold: Ne pas toucher
groups:
NomdeL’admin: (remplacer NomdeL’admin par votre pseudo)
– admin
connection_throttle: Temps en millisecondes avant qu’un joueur puisse se reconnecter après une déconnexion
stats: Ne pas toucher

———————————————————–

[/spoiler]
Notez cet article