Lorsque vous jouez seul à Minecraft, le moment vient toujours où vous souhaitez ajouter des amis à votre monde. Construisez divers bâtiments avec eux, partez en voyage, tuez un dragon ensemble ou découvrez de nouveaux mondes. Et puis une question logique se pose: comment créer son propre serveur? Jusqu'à présent, je n'ai utilisé que des serveurs Linux pour les jeux. Et puis j'ai décidé d'essayer un serveur prêt à l'emploi de Marketplace sur Windows sans interface graphique (pure PowerShell). Il me semble que tous les râteaux possibles ont été collectés, mais je suis sorti vainqueur de la bataille avec Windows Server.
Nous déployons le serveur
J'ai une certaine expérience dans la création de serveurs Minecraft pour Linux, et généralement dans l'administration Linux, mais je ne savais pas quoi faire avec Windows. Peut-être vais-je même raconter les choses de certains capitaines, mais pour moi, c'était une révélation. La plus grande révélation pour moi a été PowerShell. Je ne peux même pas transmettre toutes les émotions liées à l'utilisation de Windows en mode console. Microsoft a rendu tout aussi gênant que possible. Pourquoi était-il impossible de tirer le meilleur parti des systèmes * nix, de l'implémenter et de l'améliorer? Pourquoi ne pouvons-nous pas prendre en charge ssh, un système de commande compatible Posix, à quoi sert ce vélo?
Mais après un certain temps, il a même commencé à prendre du plaisir avec l'interface, et même à voir une sorte de logique. En général, passer de Windows à Linux était beaucoup plus facile que de le refaire.
Alors, j'ai créé le serveur dans notreMarché :
Après avoir cliqué dessus, il y a une petite instruction sur la façon de l'utiliser. Mais cela s'est avéré insuffisant et à bien des égards j'ai dû le découvrir moi-même.
Ma pratique de création de serveurs a montré qu'un serveur Minecraft nécessite au moins deux cœurs, de préférence plus de 4 Go de RAM. En général, tout peut fonctionner sur un seul cœur, même avec 2 Go de RAM, mais avec un grand nombre d'objets, il peut y avoir des freins et des sauts.
Personnellement, j'ai observé cela dans un élevage de poulets, alors que j'avais plus de quelques centaines de poulets. Ensuite, le serveur a vraiment commencé à ralentir.
Boîtier de batterie
Après avoir créé le serveur, après quelques minutes, nous aurons l'adresse IP du serveur, son nom d'utilisateur et son mot de passe.
Ensuite, vous devez vous connecter via un accès à distance. Puisque je suis un Linuxoid hard-core, je vais décrire deux options de connexion.
Connexion à un serveur distant depuis Windows
Windows est simple. Cliquez sur "Démarrer" → "Exécuter" et entrez mstsc . Nous entrons les paramètres de notre serveur.
Si nous voulons copier des données vers et depuis le serveur (et je veux), allez dans l'onglet "Ressources locales", et là, nous appuyons sur le bouton "Plus".
Et puis nous indiquons quels disques durs nous voulons connecter. Nous en aurons besoin si nous voulons copier divers mods ou des logiciels supplémentaires sur notre serveur.
Après cela, nous pouvons nous connecter à notre serveur et voir une seule fenêtre PowerShell.
Le contenu du lecteur C: de notre ordinateur sera disponible dans le dossier réseau:
\\TSCLIENT\c
Je pense que tout est évident ici et qu'il ne devrait y avoir aucun problème.
Connexion à un serveur distant depuis Linux
La connexion depuis Linux est un peu plus délicate et compliquée, et surtout, cela ne fonctionne pas de manière très stable (en particulier le montage de disques distants). Mais il n'y a nulle part où aller, nous allons donc l'utiliser. Afin de se connecter à un bureau distant d'une machine Windows, nous devons installer le programme Remmina.
sudo apt-get update
sudo apt-get install libfreerdp-plugins-standard remmina remmina-plugin-rdp
Après l'installation, exécutez remmina et configurez la connexion au serveur distant.
Faites attention à la profondeur de couleur, si vous choisissez une profondeur de couleur incorrecte (plus que ce que le serveur prend en charge), il y aura une erreur de connexion. Pour que nous puissions échanger des fichiers, nous devons sélectionner un dossier partagé. Dans mon cas, il s'agit de rdpfiles . En conséquence, notre dossier sur le serveur sera disponible à l'adresse:
\\TSCLIENT\rdpfiles
Nous démarrons le serveur vanilla
Pour démarrer le serveur de base, aucune question importante n'est requise. Premièrement, nous devons accepter le contrat de licence. Ceci est fait par l'équipe
Approve-MinecraftEULA
Tout, à partir de ce moment, le serveur est prêt à fonctionner. Nous pouvons l'exécuter avec la commande
Start-Minecraft
Et ça y est, votre serveur est prêt à fonctionner, il crée un nouveau monde et le téléchargement est en cours, mais le diable est dans les petites choses. Le serveur lui-même est très ancien, la version 1.15.2 (alors qu'au moment de la rédaction de cet article, il existait la version 1.16.4 de Minecraft ).
Mais, je vais démontrer que le serveur fonctionne réellement. Il suffit de mettre le lancement de l'ancienne version (1.15.2) dans le lanceur, et d'indiquer l'adresse IP de notre serveur lors de la connexion réseau.
La connexion a réussi.
Comment mettez-vous à jour le serveur, demandez-vous? Cela s'avère très simple. La dernière version du serveur se trouve à l'adresse suivante . Là, vous devrez copier le lien vers ce fichier.
Tous les fichiers de ce serveur Minecraft (à l'exception des scripts de démarrage) vivent dans le dossier
C:\Minecraft\
. Par conséquent, nous nous y intéressons et nous y suivons toutes les procédures.
cd C:\Minecraft\
#
rm C:\Minecraft\server.jar
Pour télécharger un fichier, PowerShell a un analogue de wget.
Invoke-WebRequest -Uri "http://www.contoso.com" -OutFile "C:\path\file"
Par conséquent, nous copions le lien vers notre fichier et le substituons dans cette commande. Je l'ai eu comme ça (notez que dans votre cas, il y aura un lien différent, car il y aura probablement une version différente de Minecraft).
Invoke-WebRequest -Uri "https://launcher.mojang.com/v1/objects/35139deedbd5182953cf1caa23835da59ca3d7cd/server.jar" -OutFile "./server.jar"
Voilà, nous avons mis à jour notre serveur vanilla, et il est prêt à fonctionner. Essayer de courir.
Start-Minecraft
Et nous voyons que la version mise à jour du serveur fonctionne pour nous.
Installer des mods
Cette partie a bu une quantité monstrueuse de sang de ma part, et je l'ai heurtée pendant très longtemps, essayant de comprendre ce qui n'allait pas. Pour que les mods fonctionnent, vous devez installer le module complémentaire Forge. Malgré le fait que le script de lancement de Forge soit sur ce serveur, Forge lui-même n'est pas installé! Et c'est le problème principal.
Veuillez noter que chaque mod nécessite sa propre version de Forge! Par conséquent, recherchez une description détaillée de votre modification, et sélectionnez la compatibilité de la version Forge et de la version mod. Comme je n'ai pas eu assez de patience pour cette quête de sélection des modules appropriés, je vous en explique le principe de base. Non, la forge a démarré avec des modules, mais pas tout à fait comme prévu.
Nous devons télécharger la version correcte de Minecraft Forge(choisissez la version appropriée pour votre mod). Pour ce faire, créez un dossier temporaire C: \ tmp:
mkdir c:\tmp
cd c:\tmp
# forge
Invoke-WebRequest -Uri "https://files.minecraftforge.net/maven/net/minecraftforge/forge/1.16.3-34.1.0/forge-1.16.3-34.1.0-launcher.jar" -OutFile "forge-1.16.3-34.1.0-launcher.jar"
#
.\forge-installer.jar
Sélectionnez "Installer le serveur" et sélectionnez le dossier dans lequel placer (C: \ Minecraft) cliquez sur OK. Et nous attendons le téléchargement.
Une fois l'installation terminée, une telle fenêtre s'affiche.
Le succès de l'installation peut être vérifié par la commande.
Start-Minecraft -Type Forge -LogFile "C:\Minecraft\stdout.txt" -MinecraftPath "C:\Minecraft"
Si tout démarre sans erreur, c'est tout, votre serveur est prêt à démarrer les mods. Ensuite, vous pouvez copier les mods dans votre dossier réseau, dans mon cas, rdpfiles, puis copier tous les mods dans le dossier C: \ Minecraft \ mods \ (après l'avoir créé).
mkdir C:\Minecraft\mods\
cd \\TSCLIENT\rdpfiles
cp *.jar C:\Minecraft\mods\
Afin de créer un nouveau monde, n'oubliez pas de supprimer l'ancien au préalable.
rm C:\Minecraft\world\
Nous sommes d'accord avec tout en appuyant sur la lettre "A" sur le clavier latin. Tout, nous pouvons commencer un nouveau monde avec des mods.
Start-Minecraft -Type Forge -LogFile "C:\Minecraft\stdout.txt" -MinecraftPath "C:\Minecraft"
Vous pouvez supprimer des mods de la même manière en supprimant des fichiers dans le dossier C: \ Minecraft \ mods \ .
Liste blanche et autres paramètres de serveur
Si vous créez un serveur pour des amis, n'oubliez pas de mettre sur liste blanche. Et puis il y a toutes sortes de gars désagréables qui trouvent en quelque sorte votre serveur secret et le salissent. J'ai eu un cas où une si mauvaise personne a miné nos maisons. À quoi plusieurs fois. La troisième fois, j'ai paniqué et j'ai trouvé comment créer des listes blanches pour les maîtres blancs.
Les listes blanches peuvent être activées via le fichier de configuration, mais il est beaucoup plus facile de les configurer directement dans la console du serveur. Pour ce faire, écrivez directement dans la console:
whitelist on
Vous pouvez même essayer de vous connecter au serveur et vous assurer que personne ne s'y connectera maintenant.
Après cela, vous pouvez ajouter tous les joueurs qui seront sur ce serveur. Je n'ajouterai que moi pour l'instant.
whitelist add dlinyj
Voilà, maintenant je peux me connecter à ce serveur.
Pour configurer le serveur, vous devez éditer le fichier server.properties . Vous pouvez arrêter le serveur avec la combinaison ctrl-c . Ensuite, vous pouvez ouvrir ce fichier avec un bloc-notes ordinaire.
.\notepad.exe C:\Minecraft\server.properties
La planification de tous les champs de configuration du serveur dépasse le cadre de cet article, vous pouvez donc vous y familiariser vous-même ici . Certains paramètres peuvent être modifiés directement dans la console du serveur et sont automatiquement enregistrés dans le fichier server.properties. La liste blanche est un exemple d'un tel paramètre. Quelque chose peut être modifié manuellement. Expérience.
conclusions
Pour moi, j'ai eu une expérience intéressante avec le serveur Windows, après Linux. Et à chaque fois, j'ai été confronté au fait que chaque équipe devait être recherchée à nouveau. Par exemple, pour redémarrer le serveur, la commande sera:
Restart-Computer
Si vous fermez accidentellement la fenêtre PowerShell, vous pouvez la démarrer en appuyant sur Ctrl-Maj-Echap . Exécutez ensuite PowerShell à cet endroit.
En général, la découverte de merveilleuses fenêtres nous a cachés.
Il y a beaucoup à dire, sur l'installation du Far-manager et où se trouvent les scripts de configuration. Mais il me semble que cet article vous permettra de comprendre comment déployer rapidement et facilement votre serveur de jeu.