Как сделать стартер сервера майнкрафт

Опубликовано: 05.07.2024


Автор очень любит игру, и сам является администратором небольшого сервера «чисто для друзей». Как водится среди любителей, на сервере замодировано все, а это влечёт за собой нестабильность работы и как следствие падения. Так как Powershell автор знает лучше, чем расположение магазинов на своей улице, он принял решение сделать «Лучший Скрипт Для Запуска Майнкрафт 2020». Этот же скрипт послужил основой для шаблона в маркетплейсе Ruvds. Но все исходники уже есть в статье. Сейчас по порядку, как это все производилось.

Нужные нам команды

Альтернативное логирование

Однажды поставив еще пару модов я обнаружил, что сервер, судя по всему, падает без объявления войны. Сервер не писал ошибки в latest.log или в debug, а консоль, которая по идее эту ошибку должна была написать и остановиться, была закрыта.

Не хочет писать – не нужно. У нас есть Powershell с командлетом Tee-Object, который берёт объект и выводит его в файл и в консоль одновременно.


Таким образом, Powershell будет забирать StandardOutput и записывать его в файл. Не пытайтесь использовать Start-Process, потому что он вернет System а не StandardOutput, а -RedirectStandardOutput сделает невозможным ввод в консоль, чего мы хотим избежать.

Аргументы запуска

Поставив ту самую пару модов, автор заметил, что на сервере к тому же не хватает оперативной памяти. А это нужно менять аргументы запуска. Вместо того чтобы каждый раз менять их в start.bat, который все используют просто используйте этот скрипт.

Так как Tee-Object читает StandardOutput, только когда исполняемый файл вызывается «Прямо так», придется сделать еще один скрипт. Этот скрипт будет запускать сам майнкрафт. Начнем с аргументов.

Чтобы в будущем предаваться ультимативной лени, скрипт должен собирать аргументы запуска на лету. Для этого начнем с поиска последней версии forge.


С помощью sort-object мы всегда будем брать объект с самой большой циферкой, сколько бы вы туда их не положили. Ультимативная лень.

Теперь нужно назначить серверу память. Для этого берем количество системной памяти и записываем его сумму в string.

Правильный автоматический перезапуск

Автор видел .bat файлы от других людей, но они не учитывали причину, по которой сервер был остановлен. Это неудобно, что если нужно просто поменять файл мода или удалить что-то?
Теперь сделаем правильный перезапуск. Автор ранее натыкался на странные скрипты, которые перезапускали сервер не смотря на то, почему сервер завершил работу. Мы же будем использовать exitcode. Java использует 0 как успешное завершение, отсюда и будем плясать.

Сначала создадим функцию, которая будет перезапускать сервер в случае его неудачного завершения его работы.


Скрипт останется в цикле до тех пор, пока сервер из своей же консоли не завершит работу штатно, с помощью команды /stop.

Если мы все решили автоматизировать, то неплохо бы и собирать дату запуска, завершения, а также, причину завершения.

Для этого мы записываем результат Start-Process в переменную. В скрипте это выглядит так:


А дальше записываем результаты в файл. Вот что возвращается нам в переменную:


Все это с помощью Add-Content можно добавить в файл. Немного причесав, получаем такой скрипт, а на зовем его handler.ps1.


Теперь давайте оформим скрипт с запуском handler’a.

Правильная автозагрузка

Автор хочет одним модулем запускать майнкрафт различных версий из любых путей, а также иметь возможность складывать логи в конкретную папку.

Проблема заключается в том, что процесс должен запустить пользователь, который находится в системе. Это можно делать через рабочий стол или WinRm. Если запускать сервер от имени системы или даже администратора, но не входить в систему, то Server.jar не сможет даже прочитать eula.txt и запуститься.

Включить автовход в систему мы можем с помощью добавления трех записей в реестр.


Это небезопасно. Логин и пароль указываются тут плейнтекстом, поэтому под запуск сервера нужно заводить отдельного пользователя, который имеет доступ на уровне пользователя, или в еще более узкой группе. Использовать стандартного администратора для этого категорически не рекомендуется.

С автовходом разобрались. Теперь нужно зарегистрировать новую таску под сервер. Запускать будем команду из Powershell, поэтому выглядеть это будет так:

Собираем модуль

Теперь давайте оформим все в модули, которые можно будет потом использовать. Весь код готовых скриптов тут, импортируйте и пользуйтесь.

Все описанное выше вы можете использовать отдельно, если не хотите заморачиваться с модулями.

Start-Minecraft

Сначала сделаем модуль, который только и будет делать, что запускать скрипт, который будет слушать и записывать standardoutput.

В блоке параметров он запрашивает из какой папки запускать майнкрафт и куда складывать лог.


А запускать майнкрафт нужно будет так:


Теперь перейдем к готовому к употреблению Handler.ps1

Чтобы наш скрипт мог принимать параметры при вызове, также нужно указывать блок параметров. Обратите внимание, он запускает Oracle Java, если вы используете другой дистрибутив, нужно будет изменить путь до исполняемого файла.

Register-Minecraft

Скрипт, практически, повторяет Start-Minecraft, за исключением того, что только регистрирует новую задачу. Принимает те же самые аргументы. Имя пользователя, если не было указано, берет текущего.

Register-Autologon

В блоке параметров скрипт принимает параметр Username и Password. Если Username не был указан, используется имя текущего пользователя.


Запуск этого скрипта выглядит так:

Как пользоваться

Сейчас рассмотрим то, как сам автор пользуется всем этим. Как правильно нужно разворачивать публичный сервер Minecraft на Windows. Начнем с самого начала.

1. Создаем пользователя


2. Регистрируем задание по запуску скрипта

Можете зарегистрировать с помощью модуля, так:


Или воспользоваться стандартными средствами:


3. Включаем автовход в систему и перезагружаем машину

Завершение

Автор делал скрипт, в том числе и для себя, поэтому, с удовольствием выслушает ваши предложения по улучшению скрипта. Автор надеется, что весь этот код был для вас хотя бы минимально полезен, а статья интересна.

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

В этой небольшой статье я расскажу как создать и запустить самый простой сервер майнкрафт без модов, плагинов без всего, просто сервер для игры с друзьями в обычный майнкрафт. Это достаточно просто, но многие игроки не знают как работать с официальным сервером Minecraft, потому давайте разбираться.

Начну с того, что существует довольно много разных серверов майнкрафта, но в этой статье мы будем использовать официальный сервер от Mojang.
Мы создадим сервер на версии 1.12.2, но сервера для других версий создаются точно так же.

Если вы хотите сервер с модами.

Как создать и запустить официальный сервер:

Для начала скачайте сам сервер: 1.17.x, 1.16.x, 1.15.x, 1.14.x, 1.13.2, 1.12.2, 1.11.2, 1.10.2, 1.9.4, 1.8.9, 1.7.10.
(официальная страница с последней версией, все доступные версии есть тут)

1) Создаем папку в любом месте вашего пк, помещаем скачанный файл внутрь.

2) Запускаем скачанный файл кликнув по нему дважды:

У вас создастся папка и несколько файлов.

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

Если файл открылся при помощи Winrar или любой другой программой, то создайте текстовый документ, поместите внутрь такую строчку:

Внимание название файла сервера указывается в строке, в данном случае minecraft_server.1.12.2.jar, если вы переименовали, либо у вас другая версия, измените название.
Так же значение 1024 указывает максимальное количество оперативной памяти доступной для сервера.

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

Сохраните файл, переименуйте его например в start и замените расширение .txt на .bat

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

3) Откройте файл eula.txt, внутри измените eula=false на eula=true

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

4) Создайте файл start.bat с параметром nogui и запустите сервер двойным кликом по нему.

Создайте в папке сервера текстовый документ, поместите внутрь такую строчку:

Внимание название файла сервера указывается в строке, в данном случае minecraft_server.1.12.2.jar, если вы переименовали, либо у вас другая версия, измените название на ваше.
Так же значение 512 указывает максимальное количество оперативной памяти доступной для сервера, если игроков много, то необходимо выделять больше памяти.

Важным моментом является параметр nogui, он отключает окно сервера которое показывает игроков и график нагрузки на сервер, да, это окно может быть удобным, но лично у меня оно очень сильно нагружает процессор при работе сервера, НАСТОЯТЕЛЬНО рекомендую отключать GUI сервера.

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

Сохраните файл, переименуйте его например в start и замените расширение .txt на .bat

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

5) У вас должно открыться окно c консолью сервера:
Если у вас пиратка, обязательно читайте раздел настройки

Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]

Настройка сервера:

Перейдем к базовой настройке, закройте окно сервера если оно открыто.

1) Откройте файл server.properties в нем есть основные настройки сервера, я затрону только базовые необходимые.

2) Если у вас пиратка, то что бы вас пускало на сервер найдите параметр online-mode=true и измените его на online-mode=false

3) Укажите IP своего сервера в параметре server-ip=
Вы можете указать IP своего пк в интернете (не забывайте открыть порты), IP в хамачи, локальный адрес пк если ваши игроки находятся в одной сети ( подключены к одному вайфай или проводом)
Инструкция как настроить хамачи.
Инструкция как играть по сети

4) Значение - max-players=20 указывает максимальное количество игроков, все прочие настройки вы легко найдете поискав в гугле.

Bukkit — глобальная серверная модификация, предоставляющая API для взаимодействия с игровым миром и созданная для упрощения создания плагинов к SMP-серверу. Bukkit был призван заменить hMod. Существуют некоторое сходство между этими модами, но плагины, написанные для hMod, несовместимы с Bukkit и должны быть переписаны с использованием Bukkit API. Bukkit являлся самой используемой системой управления плагинами.

В феврале 2012 года разработчики Bukkit официально влились в команду Mojang.

В августе 2014 года команду Bukkit покинули практически все разработчики, в том числе глава проекта EvilSeph [1] , а уже 3 сентября один из бывших разработчиков послал DMCA Takedown, тем самым добившись блокировки проекта. С тех пор скачать исходники и сборки Bukkit’а с официального сайта нельзя.

Позже команды разработчиков Spigot, Cauldron и Bukkit объединили усилия в новой универсальной серверной платформе Sponge.

Содержание

  1. Скачиваем сервер, пусть данный пример будет на версии 1.12;
  2. Перемещаем jar-архив в папку для сервера
  3. Открываем блокнот или другой текстовый редактор
  4. Вписываем туда, подставив название скачанного jar файла. Например для версии 1.12 текст в блокноте будет выглядеть так:

craftbukkit-1.12.jar — имя скачанного файла.

или (для 64-битной Java)

  1. Вписываем туда, подставив имя файла:

или (для 32-битной Java)

5. Сохраняем этот текстовый документ, после чего меняем его расширение с «txt» на «bat», перемещаем в папку где будет расположен сервер и запускаем. Он создаст необходимые файлы для сервера. 6. Сервер готов, для запуска сервера запускаем bat файл.

  • Для 32-битной системы или 64-битной системы и 64-битной версии Java пишем это:
  • Для 64-битной системы и 32-битной версии Java пишем это:

Или создаём в любом месте скрипт для упрощения запуска:

  • Для 32-битной системы или 64-битной системы и 64-битной версии Java:
  • Для 64-битной системы и 32-битной версии Java:
  • Если не помогло, есть вариант:
  • Также, есть пользовательский скрипт:

Данный скрипт перезапускает сервер, если пользователь нажал на клавишу, а не закрыл консоль.

  • Если не работает — переустановите Java.
  • Если не помогло — напишите полный путь вместо «java».
  • Внимание! Для корректной работы любого скрипта нужно установить соответствующую версию Java! На 32-битную систему можно установить только 32-битную версию Java!
  1. Скачиваем сервер
  2. Перемещаем jar-архив в папку для сервера
  3. Сервер готов, для запуска переходим в папку сервера и отдаем команду java -Xincgc -Xmx1G -jar craftbukkit- .jar .

Желательно изменить опцию «-Xmx1G» в соответствии с количеством свободной оперативной памяти. Объём памяти должен быть больше 1 гигабайта, то есть не «-Xmx2G» или «-Xmx5600M»

При желании можно повесить эту команду на кнопку на панели или в меню:

Или создать в любом месте скрипт для упрощения запуска:

Скрипт нужно сделать исполняемым: chmod a+x start.sh и можно запускать командой sh start.sh .

Или даже прописать алиас, добавив где-нибудь в

После этого сервер можно будет запускать командой mcserver .

Возможно, Вы также захотите использовать init-скрипт для фоновой работы сервера.

  1. Открываем терминал и пишем этот код для версии 1.12:

также можно просто скачать нужную версию здесь, и поместить в нужную вам папку. В следующей команде замените [RAM] на количество оперативной памяти, которое будет выделено на запуск и дальнейшую работу сервера (512M — 512 МБ, 1536M — 1536 МБ, 1G — 1 ГБ, 2G — 2 ГБ, 4G — 4ГБ, и.т.д.):

2. Сервер готов, для запуска используем файл LaunchServer (будет лежать на рабочем столе).

В управлении и настройке сервер Bukkit во многом схож с чистым сервером, необходимая информация по этому может быть найдена здесь.

Bukkit предоставляет все те же команды, что и оригинальный сервер Minecraft, но также имеет и три собственные особые команды:

Команда Описание Использование Запись в Permissions Доступ по умолчанию
version Показывает версию CraftBukkit этого сервера. version bukkit Всем
plugins Выводит список установленных плагинов. plugins bukkit Всем
reload Останавливает и снова запускает все плагины на сервере. reload bukkit Операторам

Прочитать о настройке прав более подробно можно на вики проекта.

Наверное многие знают что такое запускатор для сервера майнкрафт, но не многие знают как его сделать. Делается он очень просто, сейчас я расскажу как.

Инструкция:

  1. Скачиваем архив c CraftBukkit сервером для нужной вам версии На официальном сайте Craftbukkit
  2. Скачанный файл должен быть формата .jar. Если он в архиве, распаковываем его.
  3. Создаем папку. Здесь нужно обратить внимание, чтобы в пути не было русских символов, ибо некоторые сервера просто отказываются работать
  4. Скидываем в эту папку файл, который вы скачали. Повторюсь, он должен быть формата .jar.
  5. В этой-же папке создаём текстовый документ с именем starter.txt.
  6. Открываем его и копируем следующее:

Если у вас 32-битная система:

@echo off
cls
java -Xincgc -Xmx1024M -[Пишем название файла с сервером CraftBukkit].jar nogui
pause

Если у вас 64-битная система:

Для установки Java на сервер с Windows вам потребуется зайти на сервер по RDP, запустить интернет-браузер, зайти на страницу загрузки Java, скачать и произвести инсталляцию приложения.

И теперь более подробно по каждому пункту:

Содержание

Подключение к серверу с Windows

1. Чтобы подключиться к серверу под управлением Windows, требуется запустить ”Подключение к удаленному рабочему столу”, что расположен в меню “Пуск” → ”Программы” → ”Стандартные”

2. Ввести IP-адрес сервера

3. В появившемся окне приветствия, выбрать учетную запись и ввести пароль.

Установка Java

1. Запустите ближайший интернет-браузер.

2. Перейдите на страницу Java.

4. Следуя указаниям, скачайте и установите Java.

Установка сервера Minecraft

1. Перейдите на официальном сайте в раздел Download.

2. Скачайте Minecraft_Server.exe.

3. Поместите его в директорию, где будут размещаться файлы сервера.

4. Запустите файл.

5. После первого запуска будут созданы все требуемые для работы и настройки файлы.

Некоторые хитрости

Увеличение выделенной ОЗУ для работы сервера

По умолчанию, сервер Minecraft использует всего 100 Мб ОЗУ, что несомненно мало, для увеличения выделяемой памяти (при условии, что на сервере есть требуемое количество памяти) следует создать пакетный файл следующего вида:

2. Сохраните его, назвав, к примеру, start.bat и поместите в директорию, откуда запускается Minecraft_Server.exe

Запуск сервера в консольном режиме

Строка запуска будет выглядеть следующим образом:

Автоматический запуск сервера при загрузке системы

Создайте пакетный файл minecraft_start.bat с содержимым

(Зависит от того, в консольном или графическом режиме вы будете запускать сервер игры). И поместите его в директорию с файлами сервера. К примеру,

Этот файл будет запускать непосредственно сам сервер Minecraft. Далее создайте второй файл, который будет содержать следующие строки

И поместите его в директорию

Этот файл будет инициировать запуск загрузочного скрипта сервера Minecraft при старте системы.

Автоматический перезапуск сервера Minecraft при его “падении” Данное решение придумал пользователь HooKed с одного из форумов, посвященным Minecraft.

Это содержимое можно поместить в файл

Вышеописанного решения с автоматическим запуска сервера Minecraft.


Всем привет! Сегодня я расскажу, как сделать на своём компьютере сервер, который закрыт в локальной сети (localhost). Многие игроки хотят создать свой сервер и начать над ним работать. Для начала нам надо определиться, на какой версии вы хотите создать сервер. Если вы хотите создать сервер версии 1.16.* и выше, то вам, пожалуй, требуется ядро yatopia, новое популярное ядро, оптимизированное лучше, чем paper на данных версиях. Если у вас есть новые плагины, и нет старых, на версии 1.9-1.13, то лучше использовать paper. Вообще есть много ядер, для модификаций игры, и для плагинов, или просто Vanilla ядро.

Вот пример нескольких ядер:


Теперь перейдём к установке. Создайте папку, где будет расположен ваш сервер. Далее скачайте своё ядро, которое вам больше нравится, поместите его в эту папку, и создайте текстовый документ с названием start. Затем откройте его. И введите следующие строки:

реклама


для копирования текста в фотографии:

реклама

java -Xmx3G -Dfile.encoding=UTF-8 -jar spigot.jar

Сохраняем документ с изменением расширения на ".bat" .Теперь получилась консоль сервера. Теперь вы должны запустить консоль, где находится ядро сервера. Если у вас появился файл eula.txt с logs папкой, значит у вас всё получилось. Теперь заходим в папку eula (Соглашение Minecraft на включение сервера) и меняем строку с eula=false на eula=true, сохраняем и выходим.

реклама



(консоль может быть разной, зависит от версий игры)

Теперь оставьте консоль включенной, так как она генерирует мир и конфигурации. После чего вы должны снова выключить консоль. Зайти в server.properties, найти строки “server-ip=” прописать “server-ip=localhost”, а также отключить лицензию и разрешить вход пиратским версиям игры “online-mode=true” на “online-mode=false”. Теперь сохраняем и закрываем текстовый документ server.properties, включаем консоль. Заходим в Minecraft с версии, на котором создано ядро. Вводим в подключение сервера localhost:25565 (Порт можно изменить в строке server-port в Server.properties). И таким образом вы открыли для себя сервер, другие зайти не смогут, но есть и бесплатные хостинги, которые позволяют создавать сервера для выживания. После этого мы ищем папку plugins, туда можно скачивать плагины .jar формата. (Если вы скачали с неизвестного сайта сборку сервера, рекомендую проверить все папки, особенно plugins, недавно я обнаружил у друга вирус-программу удалённого доступа, но вовремя заметил и удалил её.) Ещё проверьте внимательно плагины, там также могут быть вредоносные коды, внедрившись которые могут взломать сервер, или нечестные игроки благодаря этим кодам.


Если моя статья вам понравится, то в следующей статье я расскажу, как открывать сервер у себя на компьютере для других пользователей с помощью одной программы.

(Показы на скриншотах версия пустой сборки spigot 1.12)

Каждый игрок в Майнкрафт хочет поиграть со своими друзьями на серверах, но найти достойный сервер очень трудно, да и хочется быть самому админом, поэтому можно создать свой сервер Minecraft. Мы написали данную статью и отсняли видео, в котором разложили по полочкам всё, что относится к серверу и после её, вы вряд ли заходитесь вопросом как создать сервера Майнкрафт на Windows.

Существует множество ядер серверов Майнкрафт, о четырёх самых популярных мы расскажем.

Лого Vanilla

Vanilla - официальное ядро от разработчиков. Плюсы: Выходит сразу после релиза новой версии; Минусы: Не так много плагинов; Низкая оптимизация использования ресурсов; Придётся устанавливать отдельно Forge, если необходимы моды.

Лого Bukkit
Лого Bukkit

Bukkit - Ядро, основанное на Vanilla. Плюсы: Высокая оптимизация по сравнению со стандартным ядром; Множество написанных плагинов от сторонних разработчиков. Минусы: Придётся устанавливать отдельно Forge, если необходимы моды; Проект был полностью закрыт на версии 1.6.4, на официальном сайте поддержки нет. Существует теперь вместе со Spigot.

Spigot - Более оптимизированное ядро, основанное на Bukkit. Плюсы: Множество улучшений по сравнению с баккит; Все плагины, написанные на баккит спокойно работают и на данном ядре. Минусы: Для новичка, установка может показаться сложной; Придётся устанавливать отдельно Forge, если необходимы моды.

Лого Cauldron

Cauldron (ранее MCPC+) - Ядро, основанное на Spigot, которое включает предустановленные Forge. Плюсы: Так как Forge уже предустановленным, если захочется установить модов, не нужно самому его устанавливать; Все плагины, написанные на баккит спокойно работают и на данном ядре. Минусы: На новые версии Майнкрафт приходится ждать сборку довольно долго, так как сначала разработчики ждут выхода обновлённого Spigot.

Теперь вам нужно решить для каких целей вам нужен сервер и отталкиваясь от этого, выбрать ядро на котором будете разрабатывать сервер. Мы же, покажем создание сервера на примере каждого ядра.

Читайте также: