Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@47650100 Improve error messages when PluginRemapper fails to initialize (#12598) PaperMC/Paper@6f315356 Add MCUtil#toLocation from Folia PaperMC/Paper@2ba1675c Replace deprecated Thread#getId usage with Thread#threadId PaperMC/Paper@4eda045b Backport fix for MC-296337 (Fixes #12617) (#12619) PaperMC/Paper@7ebc94c2 Add Registry#getTagValues (#12603) PaperMC/Paper@e87320d5 Fix UOE when using generateTree with pale oak (#12616) PaperMC/Paper@94f29035 Do not blow up accessing unregistered memories from API (Fixes #12618) (#12639) PaperMC/Paper@03efecf0 Do not fire PlayerDropItemEvent for /give command PaperMC/Paper@3527ccdf feat: expose updateDemand and restock on Villager (#12608) PaperMC/Paper@320f25cb fix sponge-absorb deleting chest content (#12647) PaperMC/Paper@95565e0f Add missing attribute serialization updater PaperMC/Paper@519e4224 Fix infinite loop in RegionFile IO PaperMC/Paper@ba7fb23d Finish moving over to Holderable (#12646) PaperMC/Paper@39203a65 [ci/skip] Publish PR API and dev bundles (#12672) PaperMC/Paper@6f139cef 1.21.6 dev PaperMC/Paper@a0ef7661 tweak mob goal keys, generate missing api PaperMC/Paper@77834d34 Revert "fix sponge-absorb deleting chest content (#12647)" PaperMC/Paper@153080f9 Allow cache writes on main and dev branches PaperMC/Paper@9dcbf0a6 Throw exception for CraftMagicNumbers#getMappingsVersion (#12676) PaperMC/Paper@16fd59e0 [ci/skip] Fix test results event file
Purpur
Purpur is a drop-in replacement for Paper servers designed for configurability, new fun and exciting gameplay features, and performance built on top of Paper.
Contact
Join us on Discord:
Downloads
Downloads can be obtained from the downloads page or the downloads API.
Downloads API endpoints:
- List versions of Minecraft with builds available:
https://api.purpurmc.org/v2/purpur - List builds for a version of Minecraft:
https://api.purpurmc.org/v2/purpur/<version> - Download a specific build of a specific version:
https://api.purpurmc.org/v2/purpur/<version>/<build>/download - Download the latest build for a version of Minecraft:
https://api.purpurmc.org/v2/purpur/<version>/latest/download
License
All patches are licensed under the MIT license, unless otherwise noted in the patch headers.
See PaperMC/Paper, and PaperMC/Paperweight for the license of material used by this project.
bStats
API
Javadoc
Dependency Information
Maven
<repository>
<id>purpur</id>
<url>https://repo.purpurmc.org/snapshots</url>
</repository>
<dependency>
<groupId>org.purpurmc.purpur</groupId>
<artifactId>purpur-api</artifactId>
<version>1.21.5-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
Gradle
repositories {
maven("https://repo.purpurmc.org/snapshots")
}
dependencies {
compileOnly("org.purpurmc.purpur:purpur-api:1.21.5-R0.1-SNAPSHOT")
}
Yes, this also includes all API provided by Paper, Spigot, and Bukkit.
Building and setting up
Initial setup
First, clone this repository. Do not download it.
Then run the following command in the root directory:
./gradlew applyAllPatches
The project is now ready for use in your IDE.
Creating a patch
See CONTRIBUTING.md.
Compiling
Use the command ./gradlew build to build the API and server. Compiled JARs
will be placed under purpur-api/build/libs and purpur-server/build/libs.
These JARs are not used to start a server.
To compile a server-ready purpurclip jar, run ./gradlew createMojmapBundlerJar.
To install the purpur-api and purpur dependencies to your local Maven repo, run ./gradlew publishToMavenLocal. The compiled purpurclip jar will be in purpur-server/build/libs.
Special Thanks To:
YourKitYourKit, makers of the outstanding Java profiler, support open source projects of all kinds with their full-featured Java and .NET application profilers. We thank them for allowing us to use their software so we can make Purpur the best it can be. |
JetBrainsJetBrains, creators of the IntelliJ IDEA, supports Purpur with one of their Open Source Licenses. IntelliJ IDEA is the recommended IDE for working with Purpur, and most of the Purpur team uses it. |



