1
0
linnemannr ee34e7131a Fix FreeBSD/clang errors caused by -Werror
With FreeBSD/clang, -Werror combined with the configured warning flags yields
some fatal errors, specifically related to signed conversion, 64 to 32 bit
conversion, and tautological compares.

CONTRIBUTORS

	Add myself to the contributor list

src/Generating/FinishGen.cpp

	In cFinishGenPassiveMobs::GetRandomMob(), change the type of RandMob
	from size_t to the difference_type of the ListOfSpawnables iterator
	MobIter. Using size_t triggers a 64 bit to 32 bit conversion if the
	difference_type of the iterator class is 64 bit

	Also explicitly cast the noise expression to unsigned long so we don't
	get a signed conversion warning from the modulo against
	ListOfSpawnables.size()

src/OSSupport/StackTrace.cpp

	FreeBSD 10 and above includes a non glibc implementation of benchmark()
	for which size_t, not int, is the return type. To account for this and
	prevent a signed conversion warning, abstract the type for numItems with
	a macro btsize

src/StringUtils.h

	In StringToInteger(), correct a tautological compare warning for
	unsigned types with the template. If T is unsigned, comparing
	std::numeric_limits<T>::min() to the unsigned result is always
	false. That control can enter this branch in an evaluated template with
	an unsigned type T may also permit a signed number to be parsed and
	erroneously stripped of its signedness at runtime. To guard against this
	and avoid the warning in the case that the number parsed from the string
	is non-positive, return false and don't try to parse if T is unsigned
	and control enters the non-positive branch
2015-05-30 02:23:57 -06:00
2015-05-28 22:22:59 +02:00

MCServer Build Status Coverity Scan Build Status weekly tips

MCServer 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. MCServer is compatible with the vanilla Minecraft client.

MCServer 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.7 and 1.8 (not beta) Minecraft protocol versions.

Subscribe to the newsletter for important updates and project news.

Installation

Hosted MCServer is available DIY on DigitalOcean: Install on DigitalOcean and Gamososm also offers MCServer support.

For Linux there is an easy installation method, just run this in your terminal:

curl -s https://raw.githubusercontent.com/mc-server/MCServer/master/easyinstall.sh | sh

For Windows, you just need to download a file and extract it:

For other operating systems you need to download and compile yourself. This can be done either manually, or with this automatic script:

bash -c "$(wget -O - https://raw.githubusercontent.com/mc-server/MCServer/master/compile.sh)"

There is also an archive of binary builds on the buildserver: http://builds.cuberite.org

Compiling the server yourself has other benefits: you may get better performance performance (1.5-3x as fast) and it supports more operating systems. See the COMPILING.md file for more details.

Contributing

MCServer 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.

Check out the CONTRIBUTING.md file for more details.

Other Stuff

For other stuff, including plugins and discussion, check out the forums and Plugin API.

Support Us on Gratipay: Support via Gratipay

Travis CI: Build Status

Description
Personal fork of Cuberite
Readme 92 MiB
Languages
C++ 89.5%
Lua 8%
HTML 1%
CMake 0.6%
C 0.5%
Other 0.2%