Run a Minecraft server with multithreading and custom configurations
If you want to run a Minecraft server on your own computer or in the cloud while reducing latency and resource consumption, Pumpkin is a server software that uses multithreading to increase speed while adhering to the game's core rules. It supports both Java and Bedrock editions, allowing you to customize the server by disabling unnecessary features or adding plugins.
Development status before the 1.0.0 release
Pumpkin is currently in an active development phase, with a public list of tasks to be completed before the official 1.0.0 release. You should be aware of this status when using it, and caution is required in environments where stability is the top priority. The project aims for performance, security, and compatibility, with a focus on preventing known security vulnerabilities.
Game elements handled by the server
Pumpkin tracks and processes various game elements in Minecraft.
- World management It supports world loading, saving, time, boundaries, lighting, and chunk generation and saving. You can choose from Vanilla, Linear, and Pump methods for chunk loading.
- Players and entities It handles player skins, teleportation, movement, animations, inventory, combat, experience, hunger, off-hand, and advancements (in development). Among entities, non-living ones (minecarts, eggs, etc.) and living ones (mobs, animals, bosses, villagers) are partially under development.
- Server operation features It supports chat, commands, permissions, translation, particles, inventory, and the server query protocol (MSMP). It integrates with BungeeCord, BungeeGuard, and Velocity proxies.
Configuration and extensibility
Pumpkin configures the server through TOML-format configuration files. You can disable unnecessary features to use server resources efficiently. It also provides a foundation for plugin development, with the plugin API distributed under a dual MIT or Apache-2.0 license for flexible use. This means server operators can add or remove features according to their needs.
Pre-use considerations
Pumpkin is written in Rust and can be run via Docker. It supports both Java and Bedrock editions, although some Bedrock edition features are still under development. Since it is a pre-1.0.0 version, you should thoroughly back up important data on servers and use it with the understanding that it is in development. The license is GPLv3 for the server core and MIT or Apache-2.0 for the plugin API, while third-party assets and data follow their respective license terms. You can receive the latest updates and assistance through the official documentation and Discord community.