Fixes to HumanEntity and Player, update for GameMode enum having a getValue()
4 files changed
tree: 29bf541155a6b7f7bcbfdf59b8c1cffa3656d6af
  1. .gitignore
  2. LICENSE
  3. README.md
  4. bukkit.txt
  5. etc/
  6. nb-configuration.xml
  7. nbactions.xml
  8. pom.xml
  9. src/main/java/net/glowstone/
  10. unsupported.txt
README.md

Glowstone

Introduction

Glowstone is an open-source implementation of the Minecraft server software written in Java, originally forked from Graham Edgecombe's now-defunct Lightstone project.

The official server software has some shortcomings such as the use of threaded, synchronous I/O along with high CPU and RAM usage. Glowstone aims to be a lightweight and high-performance alternative.

Glowstone's main aim as a project independent from Lightstone is to offer a higher-performance server while maintaining compatability with the multitude of plugins available for the popular Bukkit server plugin development interface. It does this through implementing Bukkit classes and loading Bukkit plugins which interface with these classes.

Building

Glowstone can be built with the Java Development Kit and Apache Maven. Maven is also used for dependency management.

You may download and compile Bukkit yourself if you desire and install it using mvn install, but it and other dependencies will be automatically downloaded by Maven if they are not found.

The command mvn package will build Glowstone, and mvn install will copy it to your local Maven repository. Official builds of Glowstone may be found on Jenkins.

Running

Running Glowstone is simple because all dependencies, including Bukkit, are shaded into the output jar at compile time thanks to a nifty Maven plugin. Simply execute java -jar glowstone-0.0.1-SNAPSHOT.jar along with whatever memory-related options to Java you desire, and the server should start.

By default, configuration is stored in the config/ subdirectory and logs are stored in the logs/ subdirectory. The main configuration file is config/glowstone.yml, which replaces CraftBukkit‘s server.properties and bukkit.yml. Settings from these two files will be copied over to Glowstone’s configuration during the default configuration generation process.

Glowstone uses a JLine-based server console for command input. On non-Windows systems, console output can also be colored.

Documentation

Javadocs can be generated by using the mvn javadoc:javadoc command in the terminal. This utilizes Maven's javadoc plugin and may need to download dependencies the first time it is run.

For documentation on the Bukkit API, see the Bukkit Javadocs.

Credits

Copyright

Glowstone is open-source software released under the MIT license. Please see the LICENSE file for details.