A lightweight, fast and extensible game server for Minecraft
Clone or download
Permalink
Failed to load latest commit information.
.circleci Circle 2.0: Use workspace instead of cache (#4291) Aug 25, 2018
.github Added Server OS section pr template (#3254) Jul 6, 2016
Install Add the fmt library (#4065) Jan 3, 2018
Server Add BurnsInDaylight to Lua API and Monsters.ini (#4295) Sep 24, 2018
Tools cppcheck found an out of bound array access. (#4182) Feb 4, 2018
android Added SHA checksums for android Jenkins build; Few improvements (#3484) Dec 18, 2016
dev-docs Added docs on exporting API symbols to Lua. (#4277) Aug 3, 2018
lib tolua++ bindings use nullptr. (#4219) Apr 27, 2018
src Add colors to console for macOS (#4303) Oct 15, 2018
tests Optimise chunk set (#4260) Jul 23, 2018
.clang-tidy Use clang-tidy to check more code conventions (#4214) May 6, 2018
.editorconfig .editorconfig fixes (#4113) Dec 26, 2017
.gitattributes Added unit test for parsing HTTP request. Mar 1, 2016
.gitignore Use clang-tidy to check more code conventions (#4214) May 6, 2018
.gitmodules Add the fmt library (#4065) Jan 3, 2018
.travis.yml Travis: Remove gdb (#4140) Jan 14, 2018
CIbuild.sh Travis: Remove gdb (#4140) Jan 14, 2018
CMakeLists.txt Add the fmt library (#4065) Jan 3, 2018
COMPILING.md Fix Travis build (#4101) Dec 22, 2017
CONTRIBUTING.md Added Github-related rules to Contributing.md (#4076) Dec 21, 2017
CONTRIBUTORS Support swap item between main hand and offhand by press key "F" (#4241) Jun 24, 2018
CheckLua.cmake Use system Lua, if available, to generate bindings. Jul 18, 2016
CoverityModel.cpp Update CoverityModel.cpp Apr 27, 2014
Doxyfile Stop cFunctionRef constructor from disabling default copy constructor. ( Jul 24, 2018
GETTING-STARTED.md Minor changes (#3909) Aug 24, 2017
LICENSE Update copyright dates and contributors message (#3907) Aug 7, 2017
README.md readme: Be explicit that Cuberite works with Java Edition Clients. (#… Jan 8, 2018
SetFlags.cmake Support clang 10.0 (appleclang) and higher (#4302) Oct 15, 2018
TESTING.md Minor changes (#3909) Aug 24, 2017
app.yml Update app.yml Aug 15, 2015
appveyor.yml CMake: Fix test builds on MSVC (#4131) Jan 22, 2018
clang-tidy.sh Move to CircleCI-2.0 (#4225) Aug 25, 2018
cloc-exclude.txt cloc: Updated list of ignored files. (#4280) Aug 3, 2018
compile.sh Update submodule's url in compile (#4204) Apr 2, 2018
easyinstall.sh Improved easyinstall.sh to support macOS and FreeBSD (#3557) Feb 13, 2017
stats.cmd Marked stats.cmd as executable so it can be run on linux Dec 21, 2013
uploadCoverage.sh Renamed output directory to Server Sep 5, 2015

README.md

Cuberite

Build Status Circle CI Build Status AppVeyor Build Status

Cuberite is 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. Cuberite is compatible with the Java Edition Minecraft client.

Cuberite can run on Windows, *nix and Android operating systems. This includes Android phones and tablets as well as Raspberry Pis.

We currently support Release 1.8 - 1.12.2 Minecraft protocol versions.

Subscribe to the newsletter for important updates and project news.

Installation

There are several ways to obtain Cuberite.

Binaries

  • The easiest method is downloading for Windows or Linux from the website.
  • You can use the EasyInstall script for Linux and macOS, which automatically downloads the correct binary. The script is described below.
  • You can also obtain a binary from the buildserver archive.

The EasyInstall script

This script will download the correct binary from the project site.

curl -sSfL https://download.cuberite.org | sh

Compiling

  • You can compile automatically for Linux, macOS and FreeBSD with the compile.sh script. The script is described below.
  • You can also compile manually. See COMPILING.md.

Compiling may provide better performance (1.5-3x as fast) and it supports more operating systems.

The compile.sh script

This script downloads the source code and compiles it. The script is smart enough to notify you of missing dependencies and instructing you on how to install them. The script doesn't work for Windows.

Using curl:

sh -c "$(curl -sSfL -o - https://compile.cuberite.org)"

Or using wget:

sh -c "$(wget -O - https://compile.cuberite.org)"

Hosted services

  • Hosted Cuberite is available via Gamocosm.

Contributing

Cuberite is licensed under the Apache License V2, and we welcome anybody to fork and submit a Pull Request back with their changes, and if you want to join as a permanent member we can add you to the team.

Cuberite is developed in C++ and Lua. To contribute code, please check out GETTING-STARTED.md and CONTRIBUTING.md for more details.

Plugins are written in Lua. You can contribute by developing plugins and submitting them to the plugin repository or the forum. Please check out our plugin introduction guide for more info.

If you are not a programmer, you can help by testing Cuberite and reporting bugs. See TESTING.md for details.

You can also help with documentation by contributing to the User's Manual.

Other Stuff

For other stuff, check out the homepage, the Users' Manual, the forums, and the Plugin API.

Support Us on Liberapay or Bountysource