Upgpkg: 1.9.2-2
Do not save server files immediately before going down in case there is no player on the server. The files are saved on shutdown eitherway and the save-all command heavily delays the list command which is triggered later.
This commit is contained in:
parent
349829f1e1
commit
87f0b53c40
2
.SRCINFO
2
.SRCINFO
|
@ -28,6 +28,6 @@ pkgbase = minecraft-server
|
||||||
md5sums = fef6fadd0739ae03ff71ba61025be207
|
md5sums = fef6fadd0739ae03ff71ba61025be207
|
||||||
md5sums = afb84ad0316af0aca421b36eaa2bbd90
|
md5sums = afb84ad0316af0aca421b36eaa2bbd90
|
||||||
md5sums = 00045683c06924d765ac14887218ffcc
|
md5sums = 00045683c06924d765ac14887218ffcc
|
||||||
md5sums = f130c76d285297071c3e0d2988631dfe
|
md5sums = bdd49792d54f147cd2f6048f1559d676
|
||||||
|
|
||||||
pkgname = minecraft-server
|
pkgname = minecraft-server
|
||||||
|
|
2
PKGBUILD
2
PKGBUILD
|
@ -28,7 +28,7 @@ md5sums=('560d467028f17a70997151ed0053deb6'
|
||||||
'fef6fadd0739ae03ff71ba61025be207'
|
'fef6fadd0739ae03ff71ba61025be207'
|
||||||
'afb84ad0316af0aca421b36eaa2bbd90'
|
'afb84ad0316af0aca421b36eaa2bbd90'
|
||||||
'00045683c06924d765ac14887218ffcc'
|
'00045683c06924d765ac14887218ffcc'
|
||||||
'f130c76d285297071c3e0d2988631dfe')
|
'bdd49792d54f147cd2f6048f1559d676')
|
||||||
|
|
||||||
_game="minecraft"
|
_game="minecraft"
|
||||||
_server_root="/srv/minecraft"
|
_server_root="/srv/minecraft"
|
||||||
|
|
|
@ -180,10 +180,7 @@ server_stop() {
|
||||||
# Gracefully exit the game server
|
# Gracefully exit the game server
|
||||||
${SUDO_CMD} screen -S "${SESSION_NAME}" -Q select . > /dev/null
|
${SUDO_CMD} screen -S "${SESSION_NAME}" -Q select . > /dev/null
|
||||||
if [[ $? -eq 0 ]]; then
|
if [[ $? -eq 0 ]]; then
|
||||||
# Game server is up and running
|
# Game server is up and running, gracefully stop the server when there are still active players
|
||||||
game_command save-all
|
|
||||||
|
|
||||||
# Gracefully stop the server when there are still active players
|
|
||||||
${SUDO_CMD} screen -S "${SESSION_NAME}" -X stuff "`printf \"list\r\"`"
|
${SUDO_CMD} screen -S "${SESSION_NAME}" -X stuff "`printf \"list\r\"`"
|
||||||
# The list command prints a line containing the usernames after the last occurrence of ": "
|
# The list command prints a line containing the usernames after the last occurrence of ": "
|
||||||
# and since playernames may not contain this string the clean player-list can be easily retrieved.
|
# and since playernames may not contain this string the clean player-list can be easily retrieved.
|
||||||
|
@ -195,6 +192,7 @@ server_stop() {
|
||||||
# Player(s) were seen on the server through list (or an error occurred)
|
# Player(s) were seen on the server through list (or an error occurred)
|
||||||
# Warning the users through the server console
|
# Warning the users through the server console
|
||||||
game_command say "Server is going down in 10 seconds! HURRY UP WITH WHATEVER YOU ARE DOING!"
|
game_command say "Server is going down in 10 seconds! HURRY UP WITH WHATEVER YOU ARE DOING!"
|
||||||
|
game_command save-all
|
||||||
echo -en "Server is going down in..."
|
echo -en "Server is going down in..."
|
||||||
for i in {1..10}; do
|
for i in {1..10}; do
|
||||||
game_command say "down in... $(expr 10 - $i)"
|
game_command say "down in... $(expr 10 - $i)"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user