Чтобы не тратить ресурсы, автоматически запускает ваш сервер minecraft, когда игрок присоединяется к , и останавливает его, когда никого нет в сети
(для vanilla/modded на linux/windows/macos)
версия: v2.1.1
Авторские права (C) 2019-2021 gekigek99
Отметьте выпуски для скачать двоичные файлы (для linux и windows)
КОМПИЛЯЦИЯ ПРОГРАММЫ:
Эта версия была успешно скомпилирована в go версии 1.15 Для компиляции выполните команду:
go build minecraft-server-hibernation.go
ИНСТРУКЦИИ:
Это сценарий Golang для запуска сервера minecraft по запросу и остановки его, когда в сети нет игроков. Как использовать:
- Установите желаемый сервер minecraft
- Параметр «server-port» в «server.properties» должен быть 25565
- При необходимости отредактируйте параметры в config.json ( проверьте определения m>):
- serverDirPath
- serverFileName
- startMinecraftServerLin или startMinecraftServerWin
- stopMinecraftServerLin или stopMinecraftServerWin
- * hibernationInfo и startInfo
- * minecraftServerStartupTime
- * timeBeforeStoppingEmptyServer
- * checkForUpdates
- * поместите нужный замороженный значок в «путь/к/server.jar/folder» (должен быть 64×64 и называться «server-icon-frozen.png»)
- на сервере: откройте порт 25555 (пример: брандмауэр ufw)
- на маршрутизаторе: перенаправьте порт 25555 на сервер (руководство)
- вы может подключаться к серверу через порт 25555
* = этот шаг НЕ является строго необходимым
(не забудьте запустить скрипт при перезагрузке)
ОПРЕДЕЛЕНИЯ:
Команды для запуска и остановки сервера minecraft:
# необходимо изменить только текст в фигурных скобках (помните чтобы удалить все фигурные скобки) "serverDirPath": "{путь/к/серверу/папке}", "serverFileName": "{сервер. jar} "," startMinecraftServerLin ":" screen -dmS minecraftServer java {-Xmx1024M -Xms1024M} -jar serverFileName nogui "," stopMinecraftServerLin ":" screen -S minecraftServer -X stuff 'stop \ n' "," startMinecraft ": "java {-Xmx1024M -Xms1024M} -jar serverFileName nogui", "stopMinecraftServerWin": "stop", # вы должны запустить программу как root, иначе экранная команда не будет выполнена успешно # если вы используете linux, вы можете получить доступ консоль сервера minecraft с "sudo screen -r minecraftServer"
Лично я настроил службу сервера minecraft systemctl (называемую «minecraft-server»), поэтому я использую:
"startMinecraftServerLin": "sudo systemctl start minecraft-server", "stopMinecraftServerLin": "sudo systemctl stop minecraft-server",
Гибернация и описание сервера прогрева
"hibernationInfo": "& fserver status: n & b & lHIBERNATING", "startInfo": "& fserver status: n & 6 & lWARMING UP",
Если ты первый чтобы получить доступ к миру minecraft, вам придется подождать 20 секунд , а затем снова попытаться подключиться.
"minecraftServerStartupTime": 20, #any рекомендуется параметр более 10 секунд
60 секунд — это время (после того, как последний игрок отключился), в течение которого скрипт ждет перед выключением сервера minecraft
"timeBeforeStoppingEmptyServer": 60 # рекомендуется любой параметр, превышающий 30 с.
установите значение false, если вы не хотите проверка обновлений
"checkForUpdates": true
КРЕДИТЫ:
Автор: gekigek99
Авторы: najtin f8ith Br31zh
Ветвь Docker: lubocode