1
0
Fork 0
Personal fork of Cuberite
Go to file
peterbell10 13144a08e4
Enable some more clang-tidy linter checks (#4738)
* Avoid inefficient AString -> c_str() -> AString round trip

* Avoid redundant string init expressions

* Avoid unnecessary return, continue, etc.

* Add .clang-format to help with clang-tidy fix-its

* Avoid unnecessary passing by value

* Avoid unnecessary local copying

* Avoid copying in range-for loops

* Avoid over-complicated boolean expressions

* Some violations missed by my local clang-tidy

* Allow unnecessary continue statements

* Add brackets

* Another expression missed locally

* Move BindingsProcessor call into clang-tidy.sh and add space

* Fix pushd not found error

* Different grouping of CheckBlockInteractionRate
2020-05-14 22:15:35 +00:00
.circleci Enable some more clang-tidy linter checks (#4738) 2020-05-14 22:15:35 +00:00
.github Added server log to GitHub issue template 2020-02-10 10:06:43 +01:00
Server Remove pkFishingFloat documentation (#4732) 2020-05-10 13:44:10 +03:00
Tools Cleanup unneeded globals (#4736) 2020-05-10 16:16:38 +00:00
android Android build cleanup (#4734) 2020-05-10 16:18:28 +00:00
dev-docs dev-docs/Plugin API.md: fix url 2020-01-12 11:31:01 +00:00
lib Update submodules (#4727) 2020-05-09 15:51:15 +01:00
src Enable some more clang-tidy linter checks (#4738) 2020-05-14 22:15:35 +00:00
tests Cleanup unneeded globals (#4736) 2020-05-10 16:16:38 +00:00
.clang-format Enable some more clang-tidy linter checks (#4738) 2020-05-14 22:15:35 +00:00
.clang-tidy Enable some more clang-tidy linter checks (#4738) 2020-05-14 22:15:35 +00:00
.editorconfig .editorconfig fixes (#4113) 2017-12-26 21:14:37 +00:00
.gitattributes Added unit test for parsing HTTP request. 2016-03-01 16:19:57 +01:00
.gitignore Fixed unloading of chunks that contain player entities (#4508) 2020-03-18 17:17:59 +00:00
.gitmodules Add ProtocolBlockTypePalette (#4391) 2019-09-22 22:57:54 +02:00
.travis.yml Upgrade to C++17 [CI] (#4716) 2020-05-09 13:56:39 +00:00
BACKERS FIx formatting issue in Backers file 2020-03-20 00:56:49 +02:00
CMakeLists.txt Enable C++17 in build 2020-05-09 20:37:16 +01:00
COMPILING.md Upgrade to C++17 [CI] (#4716) 2020-05-09 13:56:39 +00:00
CONTRIBUTING.md Upgrade to C++17 [CI] (#4716) 2020-05-09 13:56:39 +00:00
CONTRIBUTORS add me to the contributors 2020-05-03 11:51:11 +01:00
CheckLua.cmake Use system Lua, if available, to generate bindings. 2016-07-18 22:11:41 +02:00
Doxyfile Stop cFunctionRef constructor from disabling default copy constructor. (#4173) 2018-07-24 22:30:05 +01:00
GETTING-STARTED.md Upgrade to C++17 [CI] (#4716) 2020-05-09 13:56:39 +00:00
LICENSE Update copyright year 2020-02-26 22:27:09 +02:00
README.md Removed old buildserver from README 2020-01-04 14:21:58 +00:00
SetFlags.cmake Enable C++17 in build 2020-05-09 20:37:16 +01:00
TESTING.md Minor changes (#3909) 2017-08-24 11:19:40 +02:00
app.yml Update app.yml 2015-08-15 20:26:22 +02:00
appveyor.yml Upgrade to C++17 [CI] (#4716) 2020-05-09 13:56:39 +00:00
clang-tidy.sh Enable some more clang-tidy linter checks (#4738) 2020-05-14 22:15:35 +00:00
cloc-exclude.txt cloc: Updated list of ignored files. (#4280) 2018-08-03 18:41:03 +01:00
compile.sh Show correct paths in compile script 2020-02-18 16:04:43 +00:00
easyinstall.sh Re-enable darwin download from easyinstall.sh script 2020-04-09 21:41:16 +01:00
jenkinsbuild.sh Oops, that wasn't supposed to be negated 2020-04-01 20:48:45 +01:00
stats.cmd Marked stats.cmd as executable so it can be run on linux 2013-12-21 11:04:21 +00:00
travisbuild.sh Create build script for Jenkins (and use it) (#4473) 2020-02-24 11:28:24 +00:00

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 runs on Windows, *nix and Android operating systems. This includes Android phones and tablets as well as Raspberry Pis.

Currently we 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.

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