Créer son serveur Vanilla

Publié le 23 Mar 2016 à 09:03 par TheShining

Vous avez sans aucun doute entendu parler de serveurs Minecraft, ceux qui vous permettent de jouer en ligne, avec d’autres joueurs du monde entier. Vous saviez peut être aussi comment créer le vôtre autrefois. Toutefois, il est bon de revenir sur le sujet étant donné que quelques opérations ont changé, ou bien ont maintenant une certaine importance.

Bourrés de plugins, ces serveurs ont l’avantage de proposer divers modes de jeu, du PvP Swap, au Fallen Kingdom, en passant par le simple Jump ou Sheep Wars.

Sans doute avez-vous aussi eu envie, au lieu de vous mêler dans une foule de joueurs plus avertis les uns que les autres, de rester dans un cadre plus restreint, entre potes ou en famille (je suis moi-même daron d’une palanquée de marmots !) sur un serveur 10 ou 20 joueurs (votre machine en dépendra).

Le serveur fourni par Mojang est là pour ça. Ici, point de commerce, point de swap, point de protection de coffres, c’est du brut de décoffrage, ce pour quoi Minecraft a été développé : de l’aventure.

Pour les plus ambitieux, nous verrons en fin de cet article, qu’il est déjà possible d’aller loin avec ces « maigres » bases. Mais dans l’immédiat, lançons-nous dans l’aventure de la création d’un petit serveur que nous allons faire progresser jusqu’à en faire quelque chose de bien divertissant pour passer une bonne soirée entre amis fans du jeu.

L’installation :

Pour ce faire, vous devrez télécharger le fichier de lancement de notre serveur sur le site http://minecraft.net. Vous voyez le petit encart, en haut à droite :

01 - telechargement
Cliquez sur « Download it here »

Non-non ! Je ne vous demande pas de télécharger le jeu, suivez juste ce lien. Vous comprendrez quand vous arriverez sur cette page :

02 - telechargement

Voila ! Regardez en bas (je ne vous demande pas d’être anglophiles, donc, certainement pas de comprendre l’intégralité du texte). Il y a un lien intitulé « minecraft_server.1.9.jar ». Il suffit de cliquer dessus. Le téléchargement devrait se lancer et vous demander où vous souhaitez enregistrer le fichier du serveur.

Premier conseil, créez un dossier sur le bureau de votre ordinateur dans lequel vous allez enregistrer le fichier que vous allez télécharger. Pourquoi ? Parce que lorsque vous le lancerez, un certain nombre de fichiers seront créés et il sera bien pratique de les retrouver lorsqu’il s’agira de changer certains paramètres de notre serveur comme le nombre maximum de joueurs, les joueurs qui seront administrateurs, etc. En outre, il serait bien chiant de se retrouver avec un paquet de nouveaux fichiers et dossiers sur un bureau aussi bien organisé que le mien ! (Moi je m’y retrouve, vous, vous n’avez rien à faire sur mon bureau, naméoh !).

Second conseil : vous voyez toujours notre capture d’écran ? (au pire, un coup de molette de souris vers le haut et vous la retrouvez, hein !). Notez la ligne de code java bien utile. Si si ! Je vous assure que vous en aurez certainement besoin par la suite. C’est celle qui nous indique « java –Xmx1024M –Xms1024M –jar minecraft_server.jar nogui ». Ceci n’est qu’une indication du mode de lancement de notre serveur, nous y reviendrons plus tard, mais notez ça dans un coin de notepad, ça sera utile en fonction de votre configuration matérielle.

03 - telechargement

Avez-vous vu ce magnifique bureau bien rangé ? Bon ok, ça va hein ! C’est épuré, certes, mais propre, non ? Bon, un petit commentaire sympa sur mon tout premier article (le dernier ?) et je vous fais part de l’intégralité du bordel. Tout ça pour insister sur le fait que j’ai créé un dossier spécial pour mon petit serveur qui me servira d’excuse pour de longues soirées entre Minecraftiens invétérés.

C’est dans ce dossier que j’ai téléchargé le fichier minecraft_server.1.9.jar.

04 - telechargement

Pour l’instant, il n’y a que ce fichier. Mais un double clic dessus, et miraaaaaaacle !

05 - telechargement

Bon, c’est bien beau tout ça, mais vous l’aurez remarqué, à part me créer un dossier et 2 fichiers, il me fait quoi mon serveur, là ?

Bah rien ! En effet, après avoir vu une fenêtre apparaitre de manière plus que fugace, rien ne vous dit que votre serveur est actif. Et pour cause, il ne l’est pas. Pourquoi ? Hmmmm ! Jetons un œil au dossier « logs ». Vous y trouverez un fichier (oui, un seul pour le moment, mais ça va vite décupler !) qui se nomme « latest.log ». Généralement, un dossier « logs » est toujours intéressant en cas de pépin. Un log répertorie les évènements liés à l’exécution d’un programme. Ouvrons-le avec notre éditeur de texte favori (un double clic dessus devrait suffire).

06 - telechargement

On y lit quoi ? Chronologiquement, ce qui nous intéresse, c’est savoir pourquoi notre serveur plante : son ultime souffle. On regarde à la fin du fichier et on remonte petit à petit pour y découvrir une information primordiale.

[Server thread/INFO] : You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Bon sang, mais je trépigne d’impatience ! Quand mon serveur sera-t-il fonctionnel ? Bah maintenant ! Il suffit d’ouvrir le fichier dont te parle le log ! A savoir EULA.TXT, dans le même dossier que ton fichier minecraft_server.1.9.jar ! Allez, on reprend la molette de la souris pour retrouver la capture d’écran de notre dossier de serveur. Ou au pire, à ce stade, vous n’avez pas encore fermé le dit dossier ! Alors allez-y !

07 - telechargement

Concrètement, on nous explique ici que pour indiquer qu’on est d’accord avec l’EULA (End User Licence Agreement, en français CLUF, Contrat de Licence Utilisateur Final), il faut le spécifier manuellement par « true » en lieu et place de « false » sur la ligne « eula=false ».

Bon, nous parlons d’un petit serveur entre potes, là ! On n’est certainement pas au niveau d’un Hypixel ou Epicube ou PleaseCraft (bon, j’en ai cité trois, c’est bon, le CSA va pas me tomber dessus ?). Mais si la lecture vous manque, allez vous faire plaisir sur https://account.mojang.com/documents/minecraft_eula pour maîtriser toutes les règles qui régissent l’utilisation et la mise en ligne d’un serveur Minecraft. Après tout, si j’ai réussi à en inspirer quelques-uns pour créer un serveur 10.000 slots, ça pourrait vous être utile.

Bref, mettez « true » à la place de « false ». Ensuite, enregistrez le fichier eula.txt et relancez votre serveur en double cliquant de nouveau sur minecraft_server.1.9.jar.

Une jolie fenêtre bien terne devrait apparaître avec tout plein d’infos concernant le lancement du saint serveur.

08 - telechargement

« Hop hop hop ! C’est quoi ce charabia ? Mais il ne comprend pas tout, le monsieur ! »

« Pffff ! Qu’est-ce ta na à foute ! »

Bah, en fait, c’est mieux de piger un peu ce qu’elle dit la fenêtre. Ça peut aider par la suite. Le truc, là, c’est la console de notre serveur et elle peut nous donner plein d’infos bien utiles comme les joueurs présents sur notre serveur (bon, moi, je n’ai pas d’ami, je m’appelle pas Rémi, mais ce n’est pas mieux, en atteste la console !), la mémoire utilisée pour l’exploitation du serveur et, sur la droite, tout ce qui se passe en temps réel. Le temps nécessaire à la génération du monde, le tchat entre les joueurs, les messages qui apparaissent en cours de jeu et un conseil important : « To start the server with more ram, launch it as « java -Xmx1024M -Xms1024M -jar minecraft_server.jar » ».

Et là, une petite explication s’impose. Pour lancer un fichier .jar, vous devrez utiliser la commande « java » suivie du fichier que vous souhaitez exécuter. Entre les deux, vous avez la possibilité de spécifier des paramètres spécifiques tels que la quantité de RAM allouée à l’exécution du programme java. Ici, ces paramètres sont appelés Xms et Xmx.

Xms = la quantité de mémoire par défaut pour l’utilisation du programme.

Xmx = la quantité maximale de mémoire allouée au programme.

Autrement dit, quand la console nous conseille d’utiliser le paramètre «java -Xmx1024M -Xms1024M -jar minecraft_server.jar », elle nous dit simplement de forcer java à exécuter minecraft_server.jar avec 1024Mo de mémoire par défaut et 1024Mo de mémoire maximum (autrement dit, 1024Mo, point barre !).

Vous avez un PC doté d’une grande capacité de RAM ? Bah, vous pouvez imaginer mettre ça en paramètres :

java –Xmx4096M –Xms2048 -jar minecraft_server.jar

Ici, je dis à mon petit java de lancer minecraft_server.jar avec 2048Mo de RAM par défaut, mais bon, eh, Coco, si y a besoin, n’hésite pas à pomper jusqu’à 4096Mo de RAM, fait toi plaiz !

Quoi qu’il en soit, n’oubliez pas que derrière ce petit serveur, il vous faudra bien faire tourner d’autres applications. Je ne sais pas moi, genre Minecraft, hein ! Ce serait mieux pour profiter de notre serveur ! C’est bien beau l’ami, mais c’est à toi, ce serveur, t’as le droit d’en profiter ! Donc, évitez les allocations de RAM trop élevées. Perso, un serveur Vanilla sur mon ASUS Windows 10 64bits et 8 Go de RAM, je tourne avec des paramètres Xms1024Mo et Xmx2048Mo sans lag avec 5 à 10 joueurs. Ah bah ouais bonhomme, t’as pas un serveur dédié ! Tu peux pas accueillir 1000 bonshommes ! J’ai parlé de convivialité !

Ah ouais mais il cause, il cause, l’autre mais comment je fais ça, moi ?

Comme ça :

  • Tu fais un clic droit dans le dossier de ton fichier minecraft_server.1.9.jar
  • Tu cliques sur « Nouveau » puis « Document texte »
  • Tu l’appelles (par exemple, sinon on s’en pète) « server.bat » (si-si ! change l’extension aussi, ça c’est important !)
  • Là, on te demande si tu veux ch…. TU REPONDS OUI !
  • Clic droit dessus puis « modifier »
  • Et là tu écris la phrase magique que je n’arrête pas de te susurrer depuis tout à l’heure avec les arguments qui vont en conséquence de ta configuration matérielle (RAM). Pour débuter, indique ce qui est conseillé par Mojang. Rien ne t’empêche de modifier ces paramètres par la suite (toujours en faisant un clic droit puis modifier sur ton fichier server.bat). Mais dans l’immédiat, « java -Xmx1024M -Xms1024M -jar minecraft_server.1.9.jar ». Enregistre ton fichier et quitte-le.

Ici, minecraft_server.1.9.jar correspond au fichier que j’ai téléchargé tout à l’heure. Son nom variera en fonction des versions. A toi de faire gaffe à modifier son nom dans ton fichier « server.bat » à chaque fois que tu téléchargeras une mise à jour. C’est primordial.

A ce stade du tutoriel, la console est toujours lancée (puisque je ne t’ai pas indiqué de la fermer). Dans cette console, en bas à droite, tu as un champ de saisie dans laquelle je te demande d’écrire « stop », comme ici :

09 - telechargement

Appuie sur « Entrée », le serveur va s’arrêter. C’est normal vu que tu lui en as intimé l’ordre. Oui, c’est toi le maître du jeu !

Mais comme tu es versatile, tu vas lui imposer de se relancer mais, cette fois, à l’aide de ton fichier « server.bat » qui va l’obliger à se lancer avec les paramètres d’attribution de RAM spécifiés au lieu de se la jouer « j’en fais qu’à ma tête ». Baaammmm ! Tu confirmes que c’est toi le chef ! Et là, même le serveur a compris qui était le patron, ici, et il te réclame même plus les paramètres adéquats en termes de RAM. « You fed the beast ! ».

« Maman ? Le monsieur, tout à l’heure, il me vouvoyait et maintenant, il me dit « tu ». Il est trop chelou ! ».

Ouais et c’est normal. Il faut tisser un lien avec son interlocuteur. Et si tu en es arrivé là, c’est que tu mérites que j’aille plus loin dans les explications. Et notamment, le paramétrage de ton serveur. Toi, tu es un bon élève. Les autres ne sont que des cancres. Et regarde ce qui t’attends !

10 - telechargement

« aaaaargh ! mais qu’est-ce que c’est quoi ???? ». Rien d’autre que ton dossier d’origine qui s’est un peu étoffé, mon jeune Padawan ! Son nom est toujours « serveur ». Le fichier de ton serveur s’appelle toujours « minecraft_server.1.9.jar ». Mais deux choses importantes connaitre tu devras ! « server.properties » et le dossier « world ».

Pour faire simple, le dossier « world » équivaut aux différentes sauvegardes de ton dossier « saves ». Tu sais, celui de ton fameux répertoire %APPDATA%/.minecraft/. Soit patient, on verra tout à l’heure.

Pour l’heure, un « gros » morceau t’attend : le fichier de configuration de ton serveur Vanilla.

Le fichier de configuration de ton serveur :

11 - telechargement

Ça, c’est ton fichier « server.properties » que tu vas ouvrir en faisant un clic droit dessus (dans ton dossier « Serveur » créé au début, tu suis ou bien ?) puis tu cliques sur « Ouvrir avec ». Moi, j’utilise Notepad++ mais toi, tu peux prendre Bloc-Note, t’en est quand même pas à scripter une horloge parlante pour les médocs à papa ! Grosso modo, il y a une trentaine de lignes dont tu n’utiliseras à coup sûr que quelques-unes pour le moment. Décryptage :

Generator-settings = une option qui est utilisée pour personnaliser les mondes plats.

Op-permission-level = C’est le niveau que peut atteindre un « administrateur » dans sa démarche de gestion du serveur. Si tu désignes quelqu’un comme « op », si tu affectes le chiffre :

  • 1 : il ne sera pas affecté par la protection de spawn.
  • 2 : il peut utiliser les commandes /clear, /difficulty, /effect, /gamemode, /gamerule, /give, /tp et modifier les blocs de commande en plus de la protection de spawn.
  • 3 : il peut utiliser les commandes /ban, /deop, /kick, et /op en plus des commandes précédentes.
  • 4 : il peut utiliser la commande /stop en plus de toutes les commandes précédentes.

allow-nether = autoriser la génération de la map du Nether (true ou false)*

level-name = nom de la map que le serveur doit charger. Ceci est le nom par défaut. Nous verrons qu’il est possible d’apporter nos propres maps et de les lancer sur le serveur en lui indiquant le nom de celle qui doit être jouée.

enable-query = true ou false. Il s’agit, ici, d’autoriser l’utilisation d’un protocole spécifique qui dit « mon serveur est là, hou hou ! les amis ! je suis là ! je m’appelle machin, j’ai tant de joueurs, je suis ouvert à toute proposition », mais dans un cadre spécifique qu’est Gamespy4, donc, non, false. Je reste entre amis.

allow-flight = autorisation de vol, ici, Boeijang 447 Magnum : simplement, en créatif, toujours autorisé, donc c’est en survie que ça se joue. True = j’ai le droit de voler (fly). False = j’ai pas le droit de voler.

announce-player-achievements = est ce que le serveur doit signifier à tout le monde les actes de bravoure de chacun ? « Untel a ouvert l’inventaire ! Yihaaaaa ! ». A toi de voir !

server-port = bon, il y a un port par défaut indiqué. Le 25565. Si tu restes dans le cadre du LAN, c’est pas trop gênant. Si par contre, comme chez moi, tu invites des gens de l’extérieur du palace, bah, tu peux aimer changer ce truc, à condition de savoir ouvrir les ports subséquents sur ta box. Je donnerai des astuces en fin de tuto et ça, ça en fera partie, parce que mine de rien, je suis assez à cheval sur la sécurité chez moi, et j’aimerais bien te faire part de mon expérience.

max-world-size = encore une option qui ne sert à rien, si ce n’est embrouiller les esprits. Bon, ça doit jouer sur la taille maximale du monde, mais il est conseillé de ne pas toucher à l’option par défaut.

level-type=DEFAULT = type de map qui est générée :

  • DEFAULT : monde standard, généré comme à l’accoutumée sous Minecraft sans modification.
  • FLAT : monde plat, sans structure, sans rien du tout, du vide.
  • LARGEBIOMES : la même qu’en DEFAULT mais en vaaaaaaachement plus vaste.
  • AMPLIFIED : la même qu’en DEFAULT mais en vaaaaaaachement plus haut.
  • CUSTOMIZED : la même qu’en DEFAULT mais en vaaaaaaachement plus … rien parce que dans ce cas on tient compte de ce qu’il y a dans Generator-settings.

enable-rcon = autoriser l’accès à une console distante (false)

force-gamemode = si c’est false, les joueurs arriveront dans le jeu tels qu’ils l’ont quitté, si c’est true, le gamemode du fichier de configuration fera foi et forcera le mode de jeu des joueurs.

level-seed = spécifier une « graine » pour la génération du monde. Comme en solo, quoi.

server-ip = à ne spécifier que si vous souhaitez lancer un serveur sur une IP distante. LAISSE CA VIDE, QUOI !

network-compression-threshold = bon, là, on parle de paquets envoyés par le réseau. Spécifiquement de la compression qu’ils doivent subir pour bien passer. L’informatique, c’est des 0 et des 1 (binaire, quoi). Veille bien à ce que tes câbles ne soient pas emmêlés. Ça fait des virages et le 1 ne passent pas dans les courbes contrairement aux 0 qui sont ronds, fluides et qui épousent les courbes de tes câbles emmêlés. Bon, ok, théorie fiévreuse qui ne sert qu’à me défaire d’une situation où je n’ai rien trouvé de profondément documenté sur cette option. Passons à la suivante.

max-build-height = la hauteur maximale que vous pourrez atteindre dans vos constructions. Ce qui n’empêchera pas au serveur de générer des terrains au-delà de la limite fixée (256 blocs par défaut).

spawn-npcs = tu veux trader avec des villageois ? Envoie true, sinon, envoie false.

white-list = tu veux choisir la liste de tes invités sur ton serveur ? Envoie true et remplis ton carton d’invitation dans le fichier « whitelist.json » (ok, on voit ça tout à l’heure) sinon, laisse false.

spawn-animals = les animaux doivent-ils spawner. Je pense que oui.

snooper-enabled = envoi de donnée à minecraft.net ou pas ? À vous de voir. Moi je le modifie systématiquement à false par paranoïa. Ce qui ne fait pas de mal des fois pour notre sécurité !

hardcore = IMPORTANT ! false par défaut mais si tu mets sur true, le joueur est banni du serveur dès qu’il meurt. La tâche incombe à l’administrateur de le réintégrer dans ce cas.

resource-pack-sha1 = paramètre de contrôle des resource-packs. Pas touche pour le moment.

online-mode = contrôle de la validité de l’UUID sur les serveurs Mojang. Permet de vérifier si le joueur est bien enregistré (a acheté une licence de jeu). Bref, cela revient à n’accepter que les joueurs ayant un compte premium du jeu lorsque online-mode = true.

resource-pack = si tu veux imposer un resource-pack aux joueurs de ton serveur, indique son adresse de téléchargement ici.

Pvp = true (par défaut), le pvp est activé sur ton serveur, les joueurs peuvent se mettre des coups et subir des dégâts. Si c’est sur false, tu pourras toujours essayer de frapper un joueur, il ne perdra pas de vie.

Difficulty = niveau de difficulté du jeu. Tu dois préciser un chiffre allant de 0 à 3.

  • 0 = paisible
  • 1 = facile
  • 2 = normal
  • 3 = difficile

enable-command-block = par défaut, ce paramètre est sur false. Dans ce cas, l’exécution des commandes ne pourra pas se faire par les blocs de commande. Si tu souhaites activer cette fonction pour rendre ton serveur plus interactif comme par exemple un bouton qui téléporte le joueur qui appuie dessus dans la lave (hi hi hi !), il faudra mettre cette option sur true.

player-idle-timeout = C’est le temps, en minutes, après lequel le joueur est éjecté du serveur s’il ne montre aucun signe d’activité. Par défaut, c’est 0 qui spécifié, ce qui a pour effet de désactiver cette option. Si je mets 6, par exemple, au bout de 6 minutes sans rien faire (bouger, cliquer, appuyer sur une touche, …), le joueur est viré.

Gamemode = ce paramètre affectez le type de gameplay de votre serveur, en indiquant un entier de 0 à 3 :

  • 0 = survie (par défaut)
  • 1 = créatif
  • 2 = aventure
  • 3 = spectateur

max-players = ici, tu vas pouvoir indiquer le nombre maximum de joueurs que ton serveur pourra accueillir. Par défaut, ton serveur indique 20 mais attention. En fonction du PC qui va héberger le serveur, ce nombre de joueurs va affecter les performances en jeu. De toute façon, tu peux laisser ce paramètre sur 20, ce qui sera déterminant, ce sera le nombre de connexions simultanées. Imagine que tu laisses sur 20, et là, ton serveur est tellement génial que tes potes en ont parlé entre eux, ce sont refilés l’adresse de ton serveur et bim ! 30 pelés essaient de s’y connecter en même temps. Bon, déjà, bon courage pour que ton serveur ne crash pas si le PC qui l’héberge n’a que 2 Go de RAM et un disque dur saturé. Mais, ce paramètre tentera d’éviter une telle situation en interdisant au 21ième joueur (et ceux qui suivent) l’accès au serveur. Ceux-là devront patienter que des joueurs se déconnectent. Tu perds des potes, mais tu gagnes un serveur qui tient la route !

max-tick-time = bon, je n’avais pas vraiment prévu d’aller jusqu’à expliquer cela, mais compte tenu de ce que j’ai expliqué pour « max-players », ça peut aider à comprendre pas mal de choses. En plus, tu me sembles plein de persévérance, petit Scarabée !

Pour contrôler que tout se passe bien dans le jeu, l’ensemble des tâches sont synchronisées avec une boucle de programme. Parfois, ça lag. Les tâches ont plus de difficultés à s’accomplir et ne sont plus synchronisées avec cette boucle. On va contrôler le retard que prennent ces tâches. Grosso modo, 20 ticks par secondes. Il faut savoir que dans une journée Minecraftienne, il y a 24 000 ticks durant lesquels la position des « objets mobiles » sera calculée, les plantes pousseront, la météo changera, votre barre de faim diminuera, etc. Autant de calculs qui vont manger vos petits méga octets de RAM. Minecraft décide que pour tel tick, il va mettre à jour un bloc de blé (aléatoirement d’ailleurs, ce qui explique que ce n’est pas forcément la première graine de blé qui donnera du blé en premier !). Sauf que vous avez 20 joueurs sur votre serveur. Cela représente déjà 20 joueurs pour lesquels il faudra mettre à jour la position, la faim, la vie, etc. Et là, c’est le drame, votre petit serveur remarque qu’il lui faut plus de temps pour effectuer faire pousser ce blé. Au lieu de 1/20ième de seconde, il en met 1/10ième, puis 1/5ième. Les tâches en attente se cumulent et paf ! 60 000 millisecondes sont atteintes, le serveur se met en sécurité et renvoie la demande system.exit qui ferme le serveur.

spawn-monsters = j’ai le droit de faire spawner des monstres ? Oui = true. Non = false.

view-distance = fastoche ! C’est la distance d’affichage du paysage. Vous voyez le fameux brouillard ? Tu peux augmenter cette distance de visibilité mais ce sera au détriment des performances pour les joueurs (et le serveur, d’ailleurs, attention aux ticks !).

generate-structures = Est-ce que tu veux découvrir des villages, des temples ? Si oui, tape le true si non, tape le false.

Motd = Ceci est le petit message qui apparaît sous le nom du serveur quand les joueurs le cherchent.

12 - telechargement

Bon, voilà ! Tu es toujours là ? Tu n’as pas encore abandonné ? Normalement, si tu as bien suivi, le fichier de configuration n’a plus de secret pour toi, ton serveur est lancé avec des paramètres qui te conviennent et tu peux enfin jouer avec tes potes.

Désormais, tu vas peut-être personnaliser ton serveur, y mettre une map de ton choix ! Eh ! tu as passé des heures à créer un monde en solo que toi seul visite. Il est temps de faire venir tes potos. Pour faire ça, rien de plus simple.

Utiliser une carte personnalisée pour ton serveur :

La première chose à faire est d’importer ta map dans le répertoire du serveur. Si tu te souviens bien, nous avons créé un dossier spécial pour lui sur notre « Bureau » (toujours aussi bien rangé). C’est ici que nous allons copier notre monde. Tiens ? « world » en anglais, comme dans notre dossier « serveur ».

Appuie simultanément sur les touches Windows et R. Oh ! Une fenêtre qui s’appelle « Exécuter ». Point de peine capitale ici, mais une simple méthode pour retrouver la map que nous souhaitons exploiter pour notre serveur et plus uniquement en solo. Dans cette fenêtre, tape %appdata%/.minecraft .

13 - telechargement

Le miracle opère et voici la nouvelle fenêtre qui s’affiche. Toutes les données du jeu sont enregistrées dans ce répertoire, y compris les maps que tu as créées en solo. Nous allons nous rendre dans le répertoire « saves » et y trouver la sauvegarde que nous souhaitons utiliser dans notre serveur.

14 - telechargement

Bon, n’allez pas chercher les lunettes à mémé, ce n’est pas la peine, c’est moi qui a décidé de cacher ce que vous n’aviez pas à voir. Vous l’aurez compris, je vais mettre ma sauvegarde de test de la 1.9 sur mon serveur et faire profiter mes amis de toutes les nouvelles réjouissances de la « Combat Update » dans un PvP déjanté. Hmmm ! Vous n’avez pas oublié de mettre l’option « pvp » sur true dans votre fichier de configuration du serveur, hein ? Sinon, point de combat !

Allez, un clic droit sur mon dossier puis je clique sur « copier ».

Je ferme tout et je me rends dans mon dossier « serveur » sur mon bureau Windows parfaitement en ordre. Un clic droit dessus et « coller ».

Youpiii ! Je peux utiliser ma map solo sur mon serveur ! euuuhhh, non, pas encore. Parce que, par défaut, notre serveur va rechercher le dossier « world ». C’est son monde par défaut. A partir de là, 2 options s’offrent à toi avant de lancer ton serveur.

  • Tu peux renommer ton dossier « world » en « world_old » (ou tout ce que tu veux pourvu que ce ne soit plus le nom par défaut), puis tu renommes ton dossier importé (ici Test 1_9 Survie) en « world ». Ton serveur sera content de trouver un monde au nom évocateur pour lui et s’en fichera du contenu. Il ne s’amusera pas à comparer ce qu’il y avait avant dedans avec ce qu’il y a maintenant. Ça marche, mais bon, ça fait pas mal de manipulations alors qu’on peut faire beaucoup plus simple et surtout plus propre.
  • Tu as peut-être tout intérêt à regarder du côté du fichier de configuration de ton serveur, server.properties . En effet, dans ce fichier, il y a une ligne « level-name= world». Cette ligne indique quel dossier de monde utiliser pour notre serveur. Plutôt que de renommer les dossiers, tu peux tout bonnement indiquer le nom du dossier que tu as copié tout à l’heure, ici, « Test 1_9 Survie » (même les espaces sont compris par ton serveur ! Magique !).

Et voilà ! Tu peux maintenant lancer ton serveur en double-cliquant sur « server.bat » que nous avons créé au début. Tu pourras constater que la console indique que c’est bien le dossier « Test 1_9 Survie » qui est pris en compte.

Juste pour info, si tu supprimes le dossier « world », ton serveur le recréera au prochain lancement. Je te conseille d’en faire une sauvegarde régulière.

Bon, c’est trop top ! Mon serveur est démarré et en ligne. Mais comment ils font mes potes pour s’y connecter ? C’est maintenant que ça vient.

Autoriser l’accès à mes amis, leur donner l’adresse de mon serveur.

Première possibilité, vos amis sont connectés sur votre réseau local (LAN), il te suffit de leur donner ton adresse IP locale qu’ils indiqueront dans l’adresse du serveur.

Tu peux trouver ton adresse IP local en ouvrant une « invite de commandes ». Pour ça, appuie simultanément sur les touches Windows et R. Saisis « cmd » puis appuie sur la touche « Entrée ».

La commande « ipconfig » te donnera toutes les infos utiles concernant tes cartes réseau. Note l’adresse commençant par « 192.168 ». C’est ton adresse IP locale que tes comparses Minecraftiens devront saisir dans l’adresse du serveur.

16 - telechargement

Simple, efficace, ou pas, si tes amis habitent à 150 kilomètres de chez toi. Ils ne sont plus sur ton réseau local et devront utiliser ton adresse IP publique avec toutes les mesures de sécurité qui s’imposent.

D’où la seconde possibilité, si tu autorises tes amis à se connecter par internet. A l’ère du très très haut débit, nous passons aujourd’hui par des Box que nos fournisseurs d’accès à internet nous prêtent ou louent ou donnent. Ces Box font office de pare-feu, aussi, et empêchent certains paquets de passer jusqu’à nos ordinateurs. C’est ainsi que nous devrons indiquer à notre Box que nous autorisons les paquets « Minecraft » à passer et être redirigés vers un ordinateur de notre réseau local.

Retour dans notre fichier de configuration, à la ligne « server-port ». Il y est indiqué « 25565 ». C’est le port qu’utilise notre serveur pour envoyer et recevoir des données liées au jeu. Par défaut, ces données sont bloquées par notre Box. Nous allons donc nous lancer dans de la « redirection de port ».

Je prends, ici, ma Box pour exemple à savoir ma Freebox. L’opération est sensiblement la même pour les autres Box, je vous laisse rechercher de la documentation si vous ne vous en sortez pas avec mes explications.

Je me connecte à son interface de gestion et je me rends sur le menu « Gestion des ports ».

17 - telechargement

J’ai créé deux règles spécifiques pour mon serveur qui utilise le port 25565. Je vais donc autoriser le passage des paquets sur ce port par le protocole TCP et UDP (ne me demande pas trop de détails sur cette terminologie quand même), et les rediriger vers mon ordinateur sur lequel tourne mon serveur, à l’adresse (pas visible ici) 192.168.0.45.

Dans mon exemple, j’autorise tous les ordinateurs à accéder à mon serveur. Je pourrais aller plus loin (je vous le conseille même) et spécifier les adresses IP de mes amis qui sont autorisés à entrer sur mon serveur. A toi de voir avec tes amis pour qu’ils te fournissent cette information. Sachant qu’il te faudra modifier les règles de ta Box au fur et à mesure que de nouvelles personnes souhaiteront se connecter chez toi. Un bon moyen de faire du tri dans tes amis, hein ?

Yesssss ! Bon, on a tout paramétré ? Il ne nous reste plus qu’à nous rendre à l’adresse suivante :

http://monadresseip.org/ et noter l’adresse IP publique qui s’affiche. Oui, c’est la tienne ! Et c’est celle que tu communiqueras à tes amis qui se précipiteront sur Minecraft, à l’option « Multijoueur » pour ajouter ton serveur dont ils donneront le nom qu’ils veulent mais l’adresse que tu leur a communiqué sous la forme : mon.adr.esse.ip:25565 . Ah bah oui, on n’est plus sur du réseau local et la Box ne sait pas que ton copain il veut accéder à ton serveur dont le port est 25565. Si tu ne veux pas que ton pote soit bloqué par la Box, il devra dire pourquoi il veut entrer sur ton réseau. C’est le port qui servira de carte d’identité.

Pfiouuuuu ! J’suis encore tout essoufflé de toute cette diatribe ! Mais, c’est bon, notre serveur est paramétré, lancé et accessible. Tu es l’heureux créateur d’un serveur Vanilla, tout simple, mais tout à fait fonctionnel et pas si ridicule que ça si tu mets un peu les mains dans le cambouis.

Certains rédacteurs sont très compétents en matière de blocs de commandes et les autoriser sur ton serveur (server.properties ?) ainsi qu’avec de l’imagination, tu es prêt à rendre ton serveur attractif.

Pour aller plus loin :

Bien que l’administration de ton serveur ne soit pas aussi poussée qu’avec un serveur Spigot ou Bukkit, le minimum vital existe aussi sur Vanilla. Et c’est dans notre dossier « serveur » que se trouvent les fichiers utiles à la gestion des utilisateurs.

Tu as beau avoir créé le serveur, tu n’en es pas pour autant administrateur à ses yeux. Il n’y en a aucun d’ailleurs. Même toi, tu es un simple joueur. Mais, c’est aussi toi qui as la console sous tes yeux et qui peux y inscrire ce que tu veux. Comme spécifier que c’est toi le patron. Pour ça, un certain nombre de commandes sont possibles dans la console.

Essaie de taper help en bas à droite et appuie sur entrée. Tu verras une liste non exhaustive des commandes disponibles par la console. Il y a en tout 9 pages d’aide. Pour les voir, tape « help 2 » ou « help 3 » jusqu’à la page 9 pour faire défiler toutes les commandes.

La plus intéressante pour toi, Maître du Jeu, c’est certainement la commande « op ». C’est grâce à elle que tu pourras utiliser toutes les commandes en cours de jeu. Dans la console, tape « op ton_pseudo_ig ». Tu devrais avoir la réponse « opped ton_pseudo_ig ». Hourraaaa ! Désormais tu peux bannir, dé bannir, téléporter les joueurs à ta guise et les kicker (j’aime bien ça, c’est rigolo !), directement depuis le jeu et pas seulement par la console.

Parmi les fichiers qui pourraient t’être utiles, voici ceux pour lesquels une petite explication s’impose :

  • banned-ips.json : un type se connecte à ton serveur et fout le dawa ? autant tu peux utiliser la commande « /ban » sous Minecraft, autant tu peux aussi lui interdire l’accès par son adresse IP publique. On ne sait jamais ! Tu le « ban » mais il possède un second compte Minecraft (ou pique celui de son petit frère, le saligot !). En spécifiant son adresse IP, point de salut pour le lascar ! Il te suffit d’éditer le fichier et renseigner l’adresse IP à bannir.
  • banned-players.json : Même principe que le fichier précédent. Tu peux indiquer les pseudos des joueurs à bannir. Ce fichier s’auto complète quand tu utilises la commande « ban » à partir de Minecraft, en tant qu’opérateur. Tu verras que les informations sont encore plus complètes (UUID, pseudo, etc.). Je ne détaillerai pas.
  • ops.json : C’est la liste des joueurs qui bénéficient du titre d’opérateur (op, administrateur, quoi). Comme le fichier précédent, tu peux le compléter à l’aide de ton éditeur de texte favori et il se remplira tout seul si tu utilises la commande « op » depuis Minecraft.
  • whitelist.json : Attention ! Si tu remplis ce fichier, seuls les joueurs dont les pseudos figurent dans cette liste pourront se connecter à ton serveur.

Pour info, il est assez complexe de remplir ces fichiers manuellement. Les infos sont structurées de la sorte :

[

{

« uuid »: « fxxd5cxx-xx59-4xxe-9×51-56xxxxx4b83f0 »,

« name »: « __TheShining__ »

}

]

A chaque joueur son paragraphe. Moi, j’ai tronqué une partie de l’UUID pour ce tutoriel. Alors plutôt que de se taper tout à la main, au risque de faire une erreur qui générerait un souci de chargement de la whitelist, il y a une commande qui existe dans Minecraft en tant qu’administrateur. Réunis tous tes amis et par la commande « whitelist add pseudo_de_ton_pote », tu les ajoutes un à un à ta liste blanche. Après avoir relancé ton serveur, seuls ces joueurs pourront ce connecter.

Idem pour tous les autres fichiers json dont j’ai parlé. Ils ont une commande qui leur est spécifique qui permettra de compléter vos fichiers. Pour banned-ips.json, tu as la commande « /ban-ip » suivie de l’adresse IP à bannir.

Conclusion :

Voili-voilou, mon ami Minecraftien. J’espère que tu auras lu ce tutoriel avec autant de plaisir que j’ai eu à le rédiger. Il y a certainement des choses dont j’ai oublié de te parler, mais je pense que tu es maintenant armé pour te lancer dans la création de ton propre serveur Vanilla. Plus tard, tu auras peut-être envie de franchir le cap d’un serveur Spigot, mais dans l’immédiat, amusez-vous bien, toi et tes amis !

TheShining

52 commentaires

  1. En tout cas, super nice ce tuto ! Moi qui savais pas comment ouvrir le serv a des potes qui sont pas sur ma box… (enfin si avec hamachi mais jl’aime pas trop ce truc…)

  2. Bien plus lisible que le wiki et traité avec humour, bon article. :)

    Petite précision, 25565 c’est le port par défaut, si il n’a pas été modifié dans le server.conf il ne sert à rien de l’ajouter quand on donne l’adresse, le client va toujours chercher sur ce port si on ne lui en précise pas un autre.

    Et sinon on peut laisser « online-mode=true » pour jouer en LAN maintenant ? (super nouvelle si ce n’est pas un oubli!)

    1. « pour jouer en LAN »
      Si tu parles d’un LAN avec une connexion à Internet, oui puisque le serveur saura se connecter au site de Mojang ;)
      (Si c’est un LAN totalement hors-ligne, il faudra bien sûr le désactiver :x )

  3. Très bon tuto pour les débutants en serveur Vanilla, ça a même pu m’apporter quelques précisions sur le .properties (pour le op-permission-level, je savais pas vraiment à quoi ça correspondait)
    Du coup, j’ai envie de faire une partie avec des potes :DD

  4. Génial, pile le jour ou je veux faire un serveur, super bien expliqué :p, a part un petit truc, on ne peut pas modifier la RAM au delà de 1024 si on utilise la version 32 bits de Java, j’ai eu le problème et je ne comprenais pas pourquoi, il m’a suffit de changer de version et ça marche

    1. Et bien tu complètes l’article par tes explications pour ce qui concerne la version de Java. Comme je le précise, j’ai sans doute oublié certaines choses, dont celle-ci. Je vais donc tester de ce pas.

  5. Vous vous êtes trompés sur le online-mode, ça ne dit pas si le serveur est en ligne, mais si le jeu doit vérifier sur les serveurs d’authentification Mojang pour savoir si le joueur à une UUID existante, plus simplement, c’est accepter les cracks ou pas ^^

    False=Ça ne vérifie pas, les cracks peuvent venir
    True=Ça vérifie, il faut être inscrit sur Minecraft pour venir ^^

    1. C’est effectivement une erreur de ma part. Je corrige tout de suite. Merci !

  6. Moi j’ai un problème. Quand je télécharge le server, je n’ai pas le minecraft_server.1.9.jar mais pleins de fichiers bizzares. Où puis-je trouver ce .jar?

      1. Je sais, je fais exactement comme indiqué mais je n’ai pas le .jar. Il y a t’il un autre endroit ou le télécharger?

        1. « je n’ai pas le minecraft_server.1.9.jar mais pleins de fichiers bizzares »
          Ça ce n’est pas le .jar, c’est le CONTENU du .jar

          « Plus précisément, j’ai un minecraft_server.1.9.zip »
          Un .jar est simplement une forme particulière de .zip
          Renomme-le en .jar et ça fonctionnera ;)

  7. ROOOH c’est dommage j’ai déjà serveur avec un gros modpack installé en 1.9
    Bon ben je lirai ce pavé

    1. Par définition, héberger un serveur sur un ordinateur « client » est risqué puisque tu établis une connexion depuis Internet… ^^’

  8. Euh, bonjour les gens j’ai un problème. Se tuto est super mais sur le sites Minecraft (après mettre connecter) je ne trouve pas le lien de téléchargement !

    1. Bonsoir ! Tout simplement, en te rendant sur minecraft.net , tu cliques sur le lien « Download it here » (nul besoin de te connecter, mais je vais vérifier la manipulation après connexion) . Tu seras renvoyé vers la page de téléchargement dans laquelle se trouve un lien « minecraft_server.1.9.jar ». That’s it !

  9. bon ok je sait que je suis pas douer mais j’ai beau renommer mon fichier texte « serveur.bat » il me le considére comme un simple fichier texte. help ?

    1. Ouvre l’Explorateur (pour cela ouvre un dossier ou le Poste de travail par exemple).
      Va dans le menu « Outils » et choisis « Options des dossiers » :

      Choisis l’onglet « Affichage ».
      Décoche « Masquer les extensions des fichiers dont le type est connu » et cliquez sur « Appliquer :

      Ça doit être un truc du genre, après renomme a nouveau ton. Fichier et tu sera bon.

  10. slt slt !!
    alors moi j’ai un ptit problème, je m’explique :
    premièrement je n’est pas mon serveur dans la partit « multijoueur » :/ mais je pense que ceci vient de cela : quand j’ouvre minecraft_server.1.9.jar j’arrive donc dans la « commande » puis sa me met : [11:47:46 INFO]: Preparing spawn area: 81%
    suivit de :[11:47:47 INFO]: Done (3,685s)! For help, type « help » or « ? »
    [11:48:35 WARN]: Can’t keep up! Did the system time change, or is the server overloaded? Running 2273ms behind, skipping 45 tick(s)

    un problème de débit internet ?
    je ne sais pas merci d’avance pour vos réponse :D
    (super tuto ;))

    1. Salut et merci du compliment. As-tu ajouté ton serveur dans la liste des parties multijoueur ? Si tu es en local, ajoute un serveur avec pour adresse « localhost » en lui donnant le nom que tu souhaites. Tu valides et tu actualises l’affichage. Tu devrais trouver ton serveur.

    2. « mais je pense que ceci vient de cela »
      Le souci, c’est que dans ce que tu copies, il n’y a aucun souci… ^^
      1) Chargement du spawn à 81%
      2) Chargement terminé, commande d’aide pour l’administrateur
      3) L’horloge interne du serveur retarde (logique vu que le logiciel a fait un tas de chargement pour démarrer)

      « un problème de débit internet ? »
      Étant donné que tu es sur ta propre machine, c’est normalement impossible (à moins de prendre la pire IP possible pour la redirection)…

  11. Ton Windows doit sans doute masquer les extensions connues, une vrai saleté cette option, tu dois aller dans « Options des dossiers » sur l’onglet « Affichage » et décocher l’option « Masquer les extensions des fichiers dont le type est connu », une fois fait ton fichier va te montrer son vrai visage: « serveur.bat.txt », tu vires le .txt et hop ça fonctionne.
    Il est très fortement conseillé de toujours désactiver cette option, ça évite de se faire avoir par un fichier vérolé niaisement masqué par une double extension comme ton fichier bat…

  12. merci beaucoup en effet j’avais oubliés d’ajouter un serveur xDD
    tout marche sur des roulettes merci a toi ! :)
    Nisroch oui tu as raison j’ai vue sa c’est très chiant ! merci pour l’info car je ne savais pas ou allez pour masquez cette option :)

  13. Je n’arrive pas avec la partie « Autoriser l’accès avec mes amis ». Mon pote essaye de se connecter mais n’y arrive. J’ai pourtant fait la manip sur ma box et je lui ai donné le bon Ip. Merci pour toute réponse

  14. Bonjour,
    Quand j’essaie d’ouvrir le premier fichier que j’ai installé (minecraft_server.1.9.2.jar), il y a un petit message qui s’affiche en signe d’erreur : « A Java Exception has occured ». Pourrais-je avoir une réponse à cela ? Merci.

  15. j’ai un petit problème :
    je lance bien le serveur par le batch mais dans la GUI il est marquer :
    Memory use : 80mb (54% free)

    Je ne suis pas super fort en maths mais je crois que je n’ai pas les 2048M que j’ai demander

    [le contenu du batch]
    java -Xmx4096M -Xms2048M -jar minecraft_server.1.9.2.jar
    [fin]

    Mon ordi a 16Go de ram donc ca devrai fonctionner

    1. problem solved

      Il faut redémarrer l’ordinateur une fois avant de relancer le serveur.
      pour moi ça a marcher

  16. J’ai mi mon op permission level 4 mais cela ne marche pas ni pour moi ni pour ma petite sœur. Pourriez vous m aider s il vous plait. Merci d’avance

  17. Merci pour ce tuto, ça fesait longtemps que je voulais créer un serveur et grâce à toi j’ai réussi à en créer un. En plus c’est fait avec humour, vraiment bravo pour une première publication!

  18. Très bon tuto, cependant je rencontre un problème pour lancer le serv, après avoir rename la map etc dans le dossier du serv, j’ai beau double-click sur le fichier serveur.bat la console ne s’ouvre pas, ne lançant par conséquent pas le serveur, tu pourrais m’aider ? :)

    1. Mets XMS et XMX en 1024M dans ton .bat. Windows bouffe pas mal de mémoire de base et avoir suggéré XMS=2048M et XMX=4096 ne fut sans doute pas la meilleure idée du tuto si tu n’as pas une config actuelle. Essaie et tiens nous au jus.

    1. Attends ! le temps de passer dans un Apple Store et je fais le tuto ;)
      Plus sérieusement, je ne peux malheureusement pas tester. Un autre rédacteur possède peut-être un MAC ?

  19. Bonjour, j’ai suivi les explications pas à pas mais lorsque je lance minecraft et que je vais dans multijoueur, mon serveur n’apparait pas et je n’arrive pas à l’ajouter !!
    Comment dois-je faire pour qu’il apparaisse pour enfin m’amuser avec mon frere ?
    merci.

    1. C’est sur le serveur ou sur le PC client que tu ne trouves pas ? Déjà, sur ton PC « serveur », avec l’adresse « localhost », tu le vois ?

  20. Merci pour se tuto si clair… Bien le seul je trouve.. -_- Si jamais je n’arrive pas à faire connecter mon ami dessus, il faudra que tu m’aides The Shining ! J’essaie depuis genre… 2 ans d’en créer en m’aidant de toutes sortes de tutos plus ou moins clairs, jamais ça n’a fonctionné !

    En tout cas je croise les doigts pour quand il va se réveiller et voir s’il arrive à se connecter dessus. x) Merci bien !

    1. Ravi qu’ça vous plaise ! Et merci du compliment ! Malgré ma réponse tardive, n’hésite pas à revenir vers moi !

  21. j’ai créer le serveur tout marche bien mais mes amis n’arrivent pas se connecter après que j’ai ouvert mes ports (je suis chez free donc j’ai suivi exactement le tuto) .
    Quelqu’un peut m’aider svp?

    1. Bah oui, bien sûr ! Nan mais plus sérieusement, le risque zéro n’existe pas et si le simple fait de donner ton IP public et paramétrer une redirection de port t’expose à un risque d’attaque, pas besoin de cet article pour te mettre en danger. Est ce que je ne parle pas de n’autoriser l’accès qu’aux IP que l’on souhaite ? Tu n’imagines pas le nombre d’informations que j’ai pu trouver sur Google rien qu’en saisissant un pseudo et qui permettraient bien des vilaines choses, pas besoin d’un tuto qui semble plutôt plaire et ne suscite pas forcément de plaintes de ce point de vue.

  22. Bonjour, j’ai tout bien fait comme il faut mais j’ai un gros problème!! Je n’arrive pas à me connecter à mon serveur, et j’ai un minecraft cracké alors je me demander si c’était justement la cause.. Est ce qu’il faut avoir acheté minecraft pour pouvoir se connecter au serveur? Je serais très heureuse d’avoir une réponse à mon problème. Merci encor de nous avoir expliqué en détail comment faire un serveur. Super boulot!!!

    1. Salut ! et merci du compliment. Pour ce qui concerne les connexions avec un client cracké, effectivement, dans ton fichier server.properties, il y a une ligne « online-mode ». Si cette option est sur « true », le server vérifiera que le joueur a bien un compte premium. La connexion sera donc rejetée si le joueur tente de se connecter avec un Minecraft cracké.
      Essaie déjà de passer cette option à « false ». Tu relances ton serveur puis tentes de nouveau. Tiens nous au jus.

Commentaires fermés.

Article à lire

Partenaires

fantabob

Rejoignez nous !