commit | 13d9d5c13c6463a896f58ce3b70cc49b57317978 | [log] [download] |
---|---|---|
author | Tad Hardesty <tad@platymuus.com> | Thu May 22 22:03:28 2014 -0500 |
committer | Tad Hardesty <tad@platymuus.com> | Thu May 22 22:39:27 2014 -0500 |
tree | d538417ec65a47113f10d203886c73d709483d3e | |
parent | 1251b5ea80014cf818212ee37f5ece96a73a3e54 [diff] |
Reduced extraneous chunk sends on login, and some minor fixes: - Ignore movement packets with more than 16-block distance. - Removed GlowBlock caching and WeakValueMap in favor of simplicity. - Changed ChunkManager to not create new HashSets all the time. - Stopped double-sending a player their own user list info. - Added toString() methods to PlayerUpdateMessage and children.
Glowstone is a lightweight, from scratch, open source Minecraft server written in Java that supports plugins written for the Bukkit API.
The main goals of the project are to provide a lightweight implementation of the Bukkit API and Minecraft server where exact vanilla functionality is not needed or higher performance is desired than the official software can deliver. Glowstone makes use of a thread-per-world model and performs synchronization only when necessitated by the Bukkit API.
Glowstone can be built with the Java Development Kit and Gradle. Gradle is also used for dependency management.
The command gradle
will build Glowstone and will put the compiled JAR in ~/build/distributions
, and gradle install
will copy it to your local Maven repository. Additionally, if you prefer not to install Gradle you can simply use the provided gradlew
or gradlew.bat
scripts instead of gradle
.
Running Glowstone is simple because its dependencies are shaded into the output jar at compile time. Simply execute java -jar glowstone.jar
along with any extra JVM options desired.
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 JLine for console input and colored console output. The JLine console can be disabled in the configuration if a flat console is desired.
Javadocs can be generated by using the gradle javadoc
command in the terminal. To view the javadocs simply go to ~/build/docs/javadoc/
and open index.html
in a web browser.
For documentation on the Bukkit API, see the Bukkit Javadocs.
Glowstone is open-source software released under the MIT license. Please see the LICENSE
file for details.