Package Details: cuberite 1.12.2c2_eda440e-2

Git Clone URL: https://aur.archlinux.org/cuberite.git (read-only, click to copy)
Package Base: cuberite
Description: A Minecraft-compatible multiplayer game server that is written in C++ and designed to be efficient with memory and CPU, as well as having a flexible Lua Plugin API. It is compatible with the vanilla Minecraft client.
Upstream URL: https://cuberite.org/
Keywords: C C++ efficient load minecraft optimized plugin server speed
Licenses: Apache
Provides: minecraft-server, spigot
Submitter: edh
Maintainer: edh
Last Packager: edh
Votes: 10
Popularity: 0.000000
First Submitted: 2016-05-28 18:48 (UTC)
Last Updated: 2023-12-09 20:02 (UTC)

Dependencies (14)

Required by (0)

Sources (20)

Pinned Comments

edh commented on 2019-11-28 22:17 (UTC)

Unfortunately, upstream does not really have proper releases but instead points to build-versions of the software. Note, I will not push every new build of the package to the AUR but I will update the package upon new minecraft releases, e.g. for 1.14.4 to 1.14.5.

edh commented on 2016-12-11 20:51 (UTC)

You can quit the console without shutting down the server by press ctrl+a d (first ctrl+a and after releasing the buttons press d). This will detach your input from the server console. The attaching and detaching is done with GNU screen since it lets you view and type into the console, sent single commands to it and keep it alive without a connected user. Take a look at the the command overview at the ArchWiki [1] to get a feel for its power. [1] https://wiki.archlinux.org/index.php/GNU_Screen#Common_Commands

Latest Comments

« First ‹ Previous 1 2 3 4 Next › Last »

edh commented on 2019-03-27 13:08 (UTC)

@carey I think I found the bug; I made a mistake during a string comparison. The following change should fix the observed problem:

@@ -82,14 +82,16 @@ game_command() {
 # Check whether there are player on the server through list
 is_player_online() {
        response="$(sleep_time=0.6 return_stdout=true game_command list)"
+       # Delete leading line and free response string from fancy characters
+       response="$(echo "${response}" | sed -r -e '$!d' -e 's/\x1B\[([0-9]{1,2}(;[0-9]{1,2})*)?[JKmsuG]//g')"
        # 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 easily be retrieved.
        # Otherwiese check the first digit after the last occurrence of "There are". If it is 0 then there
        # are no players on the server. Should this test fail as well. Assume that a player is online.
-       if [[ $(echo "${response}" | grep ":" | sed -r -e '$!d' -e 's/\x1B\[([0-9]{1,2}(;[0-9]{1,2})*)?[JKmsuG]//g' -e 's/.*\: //' |
 tr -d '\n' | wc -c) -le 1 ]]; then
+       if [[ $(echo "${response}" | grep ":" | sed -e 's/.*\: //' | tr -d '\n' | wc -c) -le 1 ]]; then
                # No player is online
                return 0
-       elif [[ $(echo "${response}" | grep "There are" | sed -r -e '$!d' -e 's/\x1B\[([0-9]{1,2}(;[0-9]{1,2})*)?[JKmsuG]//g' -e 's/.*\: //' -e 's/^([^.]+).*$/\1/; s/^[^0-9]*([0-9]+).*$/\1/' | tr -d '\n') -eq 0 ]]; then
+       elif [[ "x$(echo "${response}" | grep "There are" | sed -r -e 's/.*\: //' -e 's/^([^.]+).*$/\1/; s/^[^0-9]*([0-9]+).*$/\1/' | tr -d '\n')" == "x0" ]]; then
                # No player is online
                return 0
        else

The first check should always have reported that there are indeed players online but the second check probably passed without being supposed to do so. This should now be fixed. I would be thrilled if you could test the change and report back to me, whether this indeed solved the problem. If it does, I will roll out the change immediately.

edh commented on 2019-03-27 12:30 (UTC)

@carey The script is intended to serve minecraft, spigot and cuberite. All of them are quite different and like to print fancy output strings. As such it is not possible to just replace the is_player_online check with one simple query. Can you please send me the full output of the list command, and I will do my best to incorporate it into the script.

For now, the following change should work for you:

@@ -92,6 +92,9 @@ is_player_online() {
        elif [[ $(echo "${response}" | grep "There are" | sed -r -e '$!d' -e 's/\x1B\[([0-9]{1,2}(;[0-9]{1,2})*)?[JKmsuG]//g' -e 's/
.*\: //' -e 's/^([^.]+).*$/\1/; s/^[^0-9]*([0-9]+).*$/\1/' | tr -d '\n') -eq 0 ]]; then
                # No player is online
                return 0
+       elif [[ $(echo "${response}" | sed -n -e 's/^.*Players (\(.*\)):.*$/\1/p') -eq 0 ]]; then
+               # No player is online
+               return 0
        else
                # A player is online (or it could not be determined)
                return 1

carey commented on 2019-03-26 17:35 (UTC) (edited on 2019-04-05 02:11 (UTC) by carey)

The player detection currently isn't working for me. This causes the server to always shut down after $IDLE_IF_TIME seconds regardless of if any players were connected. I had a look at the launch script and the comments make it seem like the format of the "list" command response has changed.

I've updated the is_player_online function to work with the current version. The code is available here: https://pastebin.com/r4i0WMUU

@edh: Would you me able to integrate this change into the package?

edh commented on 2017-11-04 10:20 (UTC)

@rumbah Done.

rumbah commented on 2017-11-04 00:03 (UTC)

Would you mind to update the package to the latest build (908 at the moment). Then the server would support client version 1.12.2 . Thanks

edh commented on 2017-06-27 15:56 (UTC)

@Alpaone Done. However I would encourage you to increase the build tag yourself for small releases. The variable (_build) is easily editable and there are no further changes required.

Alpaone commented on 2017-06-27 15:41 (UTC)

I would appreciate it if you could update the package to a build newer than 784. Thank you :)

edh commented on 2017-06-18 09:36 (UTC)

@steadybright Done. Unfortunately AFAIK they do not provide tagged release but only refer to the last successful builds and it is therefore hard to keep track of.

steadybright commented on 2017-06-18 03:35 (UTC)

Cuberite web site has version 1.12-compatible version available. Will you have 1.12 version available for Arch soon? Thank you, sb

edh commented on 2016-12-11 20:51 (UTC)

You can quit the console without shutting down the server by press ctrl+a d (first ctrl+a and after releasing the buttons press d). This will detach your input from the server console. The attaching and detaching is done with GNU screen since it lets you view and type into the console, sent single commands to it and keep it alive without a connected user. Take a look at the the command overview at the ArchWiki [1] to get a feel for its power. [1] https://wiki.archlinux.org/index.php/GNU_Screen#Common_Commands