Utiliser MiNET comme un service Windows

Dans un article précédent j’avais parlé du serveur Minecraft MiNET. Le serveur est facile à démarrer, il suffit de double cliquer sur l’exécutable. Le problème c’est que je veux qu’il roule de façon continue sur mon serveur Windows 2012. Donc, il faut qu’il soit installé comme un service Windows. Cela va masquer la fenêtre de console et faire en sorte que l’application va démarrer même si aucun utilisateur n’est connecté.

Heureusement pour nous, MiNET utilise Topshelf, il s’agit d’une infrastructure logicielle permettant la conception de services Windows en utilisant .NET.

Pour obtenir de l’aide, rien de plus simple, on écrit ceci:

MiNET.Service.exe help

En ce qui a trait au service, voici les paramètres importants:

  • install
  • start
  • stop
  • uninstall

Les noms sont assez explicites et je crois qu’il ne demande pas vraiment d’explication. Donc, pour installer le service on tape ceci:

MiNET.Service.exe install

Les informations par défaut faisaient mon bonheur. Dans la capture d’écran suivante, on peut voir le résultat.

MiNET Service Properties
MiNET Service Properties

Il ne reste plus qu’à démarrer le service avec cette ligne de commande:

MiNET.Service.exe start
Minecraft

Amusez-vous bien à MineCraft en multi-joueurs.

MiNET, un autre serveur Minecraft PE

Dans mon dernier article j’avais expliqué comment installer PocketMine. J’ai eu un peu de difficulté avec ce serveur pour Minecraft Pocket Edition. J’ai donc décidé de regarder pour une alternative. Mon regard s’est posé sur MiNET. Il s’agit d’un projet à code source ouvert disponible sur GitHub. Il est codé en C# et à pour but la performance lors de parties multi-joueurs.

Tout d’abord il faut télécharger l’archive qui contient tout ce dont on aura besoin. Il suffit d’extraire le fichier minet-server.zip sur votre disque dur.

Avant même de démarrer le serveur je vous conseille de modifier les configurations. Pour cela il faut éditer le fichier server.conf. Le fichier comporte une liste de clefs. Chaque clef possède un nom et une valeur délimités par le signe égal (=). Le nom apparait à gauche du signe égal. L’utilisation d’un carré (#) en début de ligne signifie qu’il s’agit d’un commentaire. Une ligne commentée ou vide sera simplement ignorée.

Voici les configurations pour tester le serveur:

MaxNumberOfPlayers=10
motd=Mon serveur
WorldProvider=flat


Par défaut, le nombre de joueurs maximum permis sur le serveur est à 1000. Mettre la propriété MaxNumberOfPlayers à dix me semble plus normal pour un serveur méconnu. motd signifie Message Of The Day, c’est le texte qui apparait en dessous du nom du serveur dans le jeu. Vous pouvez y inscrire ce que vous voulez. Un texte de moins de 20 caractères semble avoir du sens. Pour tester le serveur il est préférable de mettre WorldProvider à flat. Ceci aura comme effet d’utiliser un monde de test.

Maintenant vous pouvez double cliquer sur le fichier MiNET.Service.exe. MiNET est compilé avec Visual Studio et nécessite au minimum le Framework .NET version 4.6. Donc, si vous avez le message suivant, il faudra cliquer sur Oui pour effectuer l’installation:

.NET Framework 4.6.1 est requis
.NET Framework 4.6.1 est requis

Il se peut aussi que Windows bloque l’exécution de l’application. Alors il faudra aller dans les Propriétés du fichier .exe et de toutes les DLL pour les débloquer:

MiNET Unblock
MiNET Unblock

Maintenant vous devriez être capable de démarrer le serveur sans erreur et de vous balader dans le mode de test.

Pour jouer dans un autre monde alors il faut le télécharger et l’installer. Vous pouvez aller sur le site planetminecraft.com dans la section Projects pour y télécharger un projet. J’ai eu quelques problèmes avec certains mondes, alors il faut simplement laisser tomber et en prendre un autre. Il faut extraire l’archive et modifier la propriété PCWorldFolder pour y mettre le chemin vers le dossier où se trouve l’information. Il va aussi falloir modifier WorldProvider pour y mettre anvil:

WorldProvider=anvil
PCWorldFolder=.\Worlds\Monde1

En terminant voici d’autres propriétés intéressantes ainsi que leur valeurs potentielles:
GameMode

  • Survival
  • Creative
  • Adventure
  • Spectator

Difficulty

  • Easy
  • Normal
  • Hard
  • Peaceful

Installer un serveur Minecraft PE

Le but de cet article est de montrer comment installer un serveur Minecraft Pocket Edition sur Windows. Plus précisément, ce sera pour la version 0.15.0, la version la plus récente du jeu au moment d’écrire l’article. Le serveur qui sera utilisé se nomme PocketMine. Il s’agit d’un projet à code source ouvert disponible sur GitHub. Malheureusement la version disponible sur le site web est pour Minecraft 0.10.4 alpha. Ce n’est pas grave, car on va remplacer certains fichiers par ceux de la version en développement.

Tout d’abord il faut télécharger l’installateur de PocketMine-MP. Ensuite, il suffit de l’exécuter et de suivre les instructions. J’ai choisi comme dossier d’installation C:\PocketMine-MP.

Installateur de PocketMine
Installateur de PocketMine

La version stable 1.4.1 est maintenant installée, mais cette version ne fonctionne pas avec celle qui est installée sur mon iPad. Il faut télécharger la version la plus récente du fichier PocketMine-MP.phar. C’est sur la page Bintray de PocketMine que l’on va récupérer ce fichier. Il faut aller dans la section PocketMine-MP-phar et ensuite Files. On télécharge la version la plus récente, aujourd’hui c’est le PocketMine-MP_1.6dev-27_ef8227a0_API-2.0.0.phar. Il faut le renommer PocketMine-MP.phar pour qu’il remplace le fichier du même nom dans le dossier C:\PocketMine-MP. Les versions plus récentes du fichier .phar nécessitent d’avoir PHP 7.0, qui n’est pas la version incluse dans l’installateur. Sur le même site, on choisit la section Windows-PHP-Binaries et ensuite Files. Vous devez télécharger la version pour votre type de processeur. Si vous ne le savez pas, téléchargez la version x86 pour Windows 32-bit. Cette archive comporte les fichiers qui vont remplacer ceux dans C:\PocketMine-MP\bin\php.

Maintenant, tout devrait fonctionner, ou non… L’utilisation de PHP 7.0 nécessite Visual C++ Redistributable for Visual Studio 2015. Je m’en suis rendu compte avec ce message:

Le fichier VCRUNTIME140.dll est absent
Le fichier VCRUNTIME140.dll est absent

Maintenant c’est vrai, tout devrait fonctionner. Il suffit de double cliquer sur le fichier start.cmd dans le dossier C:\PocketMine-MP. À la première utilisation vous devrez choisir la langue et accepter la licence. Pour l’aide il suffit de taper la commande help. Pour la configuration je vous conseille d’aller lire la documentation.

Le restant de l’article est seulement nécessaire si tout comme moi vous avez installé le PocketMine sur un PC serveur. Il faut démarrer Windows Firewall With Advanced Security et aller dans la section Inbound Rules. Ensuite on clique sur New Rule pour ajouter une règle qui va permettre aux utilisateurs de se connecter au serveur qui tourne localement sur le PC.

Windows Firewall with Advanced Security
Windows Firewall with Advanced Security

À la première étape, on choisit Port et on clique sur le bouton Next.

New Inbound Rule Wizard Step 1
New Inbound Rule Wizard Step 1

À la deuxième étape, on choisit l’option UDP et on entre le port 19132. Ensuite on clique sur le bouton Next.

New Inbound Rule Wizard Step 2
New Inbound Rule Wizard Step 2

À la troisième étape, on sélectionne Allow the connection et on clique sur le bouton Next.

New Inbound Rule Wizard Step 3
New Inbound Rule Wizard Step 3

À la quatrième étape, gardez toutes les cases cochées et cliquez sur le bouton Next.

New Inbound Rule Wizard Step 4
New Inbound Rule Wizard Step 4

À l’étape finale, vous pouvez entrer le nom PocketMine-MP. La description est facultative. Ensuite on clique sur le bouton Finish.

New Inbound Rule Wizard Step 5
New Inbound Rule Wizard Step 5

Voilà, maintenant vous avez un serveur Minecraft sur lequel vous pouvez inviter tous vos amis.

Minecraft: Ajouter un serveur externe
Minecraft: Ajouter un serveur externe