All Projects → gekware → minecraft-server-hibernation

gekware / minecraft-server-hibernation

Licence: GPL-3.0 license
Autostart and stop minecraft-server when players join/leave

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to minecraft-server-hibernation

LevelledMobs
Level-up mobs on your Spigot/Paper server, RPG-style!
Stars: ✭ 143 (-16.86%)
Mutual labels:  minecraft-server, minecraft-mod
Mc2Discord
A simple minecraft mod, server side only, to link the chat with your Discord server
Stars: ✭ 18 (-89.53%)
Mutual labels:  minecraft-server, minecraft-mod
VanillaReimplementation
[Paused - Far from done] Reimplementation of Vanilla features in Minestom
Stars: ✭ 67 (-61.05%)
Mutual labels:  minecraft-server, minecraft-vanilla
LiteXLoader
This project has been merged into LiteLoaderBDS 👇 click below to new project 本项目已经合并到 LiteLoaderBDS 项目中 👇 点击前往 https://github.com/LiteLDev/LiteLoaderBDS
Stars: ✭ 84 (-51.16%)
Mutual labels:  minecraft-server, minecraft-mod
PureLauncher
🚀🎉✨An awesome Minecraft Launcher.
Stars: ✭ 51 (-70.35%)
Mutual labels:  minecraft-mod
HoneyBEE
HoneyBEE is a Minecraft server implementation written in go, with help from wiki.vg (huge thanks to them), that aims to be fast by utilising go-routines and being optimised for a low cpu/ram footprint. (Pre-Alpha)
Stars: ✭ 22 (-87.21%)
Mutual labels:  minecraft-server
Waddles
Waddles adds cute Adélie penguins that waddle
Stars: ✭ 22 (-87.21%)
Mutual labels:  minecraft-mod
mc-publish
GitHub Action that helps you publish your Minecraft mods
Stars: ✭ 76 (-55.81%)
Mutual labels:  minecraft-mod
bedrock-server
Minecraft Bedrock (MCPE) Server on Docker
Stars: ✭ 47 (-72.67%)
Mutual labels:  minecraft-server
mining-camp
Easy automated configuration and deployment of Minecraft servers on AWS spot instances, featuring automatic backups and restoration using S3.
Stars: ✭ 43 (-75%)
Mutual labels:  minecraft-server
McRPG
An RPG plugin for Minecraft 1.13
Stars: ✭ 32 (-81.4%)
Mutual labels:  minecraft-server
Traincraft
Traincraft repository for all released versions
Stars: ✭ 81 (-52.91%)
Mutual labels:  minecraft-mod
ElytraProxy
Really customizable Minecraft proxy server with Auth, AntiBot, etc, based on Velocity. Supports 1.7 - 1.17.1
Stars: ✭ 29 (-83.14%)
Mutual labels:  minecraft-server
MCAntiMalware
Anti-Malware for minecraft
Stars: ✭ 182 (+5.81%)
Mutual labels:  minecraft-server
Vistas
A library and tool for creating and customizing main menu panoramas and music for mods and modpacks on the fabric platform.
Stars: ✭ 21 (-87.79%)
Mutual labels:  minecraft-mod
litematica-printer
An extension for Litematica that adds the missing printer functionality for 1.19, 1.18 and 1.17
Stars: ✭ 155 (-9.88%)
Mutual labels:  minecraft-mod
ImmersiveIntelligence
An addon for Immersive Engineering focused on Electronics, Warfare, Logistics and Intelligence
Stars: ✭ 76 (-55.81%)
Mutual labels:  minecraft-mod
TamableFoxes
SpigotMC Plugin that gives you the ability to tame foxes!
Stars: ✭ 21 (-87.79%)
Mutual labels:  minecraft-server
Weeping-Angels
Minecraft Mod - Adds the terrifying Weeping Angels to the Game, Minecraft. Don't Blink!
Stars: ✭ 22 (-87.21%)
Mutual labels:  minecraft-mod
Overloaded
Minecraft Mod: Overloaded
Stars: ✭ 17 (-90.12%)
Mutual labels:  minecraft-mod

Minecraft Server Hibernation

msh - loc msh - release msh - goreport msh - license msh - stars

Avoid wasting of resources by automatically starting your minecraft server when a player join and stopping it when no one is online
(for vanilla/modded on linux/windows/macos)

version: v2.4.4
Copyright (C) 2019-2021 gekigek99

Check the releases to download the binaries (for linux, windows and macos)

You can compile msh from the dev branch to access a more updated version but beware that it might still need testing


PROGRAM COMPILATION:

This version was successfully compiled in go version 1.15
Compilation procedure:

git clone https://github.com/gekware/minecraft-server-hibernation.git  
cd minecraft-server-hibernation/  
go build .

INSTRUCTIONS:

  1. Install your desired minecraft server
  2. Edit the parameters in config file as needed (check definitions):
    • Folder
    • FileName
    • StartServerParam
    • StopServer
    • * StopServerAllowKill
    • * HibernationInfo and StartingInfo
    • * TimeBeforeStoppingEmptyServer
    • * NotifyUpdate
  3. * put the frozen icon you want in path/to/server.jar/folder (must be 64x64 and called server-icon-frozen.png)
  4. on the router (to which the server is connected): forward port 25555 to server (tutorial)
  5. on the server: open port 25555 (example: ufw firewall)
  6. run the msh executable
  7. you can connect to the server through port 25555

* = it's not compulsory to modify this parameter

remember to automatically run msh at reboot


DEFINITIONS:

only text in braces needs to be modified (remember to remove all braces)

Location of server folder and executable. You can find protocol/version here (but msh should set them automatically):

"Server": {
  "Folder": "{path/to/server/folder}",
  "FileName": "{server.jar}",
  "Protocol": 756,
  "Version": "1.17.1"
}

Commands to start and stop minecraft server:

"Commands": {
  "StartServer": "java <Commands.StartServerParam> -jar <Server.FileName> nogui",
  "StartServerParam": "-Xmx1024M -Xms1024M",
  "StopServer": "stop",
  "StopServerAllowKill": 10
}
# if StopServerAllowKill is more than 0, then the specified number is the amount of seconds
# given to the minecraft server to go offline, after which it is killed

Set the logging level for debug purposes

"Debug": 1
# 0 - NONE: no log
# 1 - BASE: basic log
# 2 - SERV: mincraft server log
# 3 - DEVE: developement log
# 4 - BYTE: connection bytes log

Hibernation and Starting server description

"InfoHibernation": "                   §fserver status:\n                   §b§lHIBERNATING",
"InfoStarting": "                   §fserver status:\n                    §6§lWARMING UP",

Set to false if you don't want to notify updates in game chat (every 20 minutes)

"NotifyUpdate": true

60 seconds is the time (after the last player disconnected) that the script waits before hibernating the minecraft server

"TimeBeforeStoppingEmptyServer": 30     #any parameter more than 30s is recommended

Some of these parameters can be configured with command-line arguments (--help to know which)


CREDITS:

Author: gekigek99

Contributors: najtin, f8ith, Br31zh, someotherotherguy, navidmafi, cromefire
Docker branch: lubocode

If you wish to contribute, please create a pull request using the dev branch as the base for your changes


Give a star to this repository on github!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].