Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@0baf2ff [ci skip] Allow .git to be a regular file (#8631) PaperMC/Paper@5e6ac3c Properly identify golem spawn reason (#8635) PaperMC/Paper@ec772bb Rabbit API (#8627) PaperMC/Paper@7e5f85e Updated Upstream (CraftBukkit) PaperMC/Paper@075fb67 Add eating regain reason for Camels (#8638) PaperMC/Paper@812efd3 Fix chunksnapshot biome getter (#8639) PaperMC/Paper@be50d5b Readd BlockBehavior inlining patch PaperMC/Paper@7ba81b1 [ci skip] Fix leaf'd patch names PaperMC/Paper@5bd8e1c Fix MapLike Codec missing key 'selector' (#8634) PaperMC/Paper@7d18c6b Don't show particles when splash events are canceled (#8637) PaperMC/Paper@ecfb76a Fix empty effect clouds from lingering potions (#8641) PaperMC/Paper@1143b63 Add Position (#7639) PaperMC/Paper@0bdbcd9 [ci skip] Remove non-functioning patch PaperMC/Paper@d8cf30d Deprecate isPreview method in decorate events (#8645) PaperMC/Paper@a5ecfd6 [ci skip] Correct chat preview removal version in javadoc (#8646) PaperMC/Paper@eeeb8d5 Add the non-flammable wood item tag (#8648) PaperMC/Paper@d2cb347 Fix items equipped on AbstractHorse losing NBT (#8647) |
||
---|---|---|
.github | ||
build-data | ||
gradle/wrapper | ||
patches | ||
scripts | ||
.gitignore | ||
build.gradle.kts | ||
CONTRIBUTING.md | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
LICENSE | ||
README.md | ||
settings.gradle.kts |

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.19.2-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
Gradle
repositories {
maven("https://repo.purpurmc.org/snapshots")
}
dependencies {
compileOnly("org.purpurmc.purpur:purpur-api:1.19.2-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 applyPatches
The project is now ready for use in your IDE.
Creating a patch
Patches are effectively just commits in either Purpur-API
or Purpur-Server
.
To create one, just add a commit to either repo and run ./gradlew rebuildPatches
, and a
patch will be placed in the patches folder. Modifying commits will also modify its
corresponding patch file.
See CONTRIBUTING.md for more detailed information.
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 createReobfPaperclipJar
.
To install the purpur-api
and purpur
dependencies to your local Maven repo, run ./gradlew publishToMavenLocal
. The compiled purpurclip jar will be in build/libs/
not 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. |