Upstream has released updates that appears to apply and compile correctly Paper Changes: f65f95ce3 Do not let the server load chunks from newer versions 1799ef140 Apply 1.16's light optimizations to 1.15.2 too 5a28de666 Further optimize chunk light prioritization 4e364423e Fix deadlock issue with watchdog stopping 82e048ebc Remove ability to disable async chunks unless single core cpu b317f0dc4 [1.15] Fix off by one error for scheduling block ticks (#4013) 51741a180 [1.15] Tighten logic for handling target tick times in tick scheduler (#4011) 5657364b4 Fix Light Prioritization Issues 013374629 Fix AdvancementDataPlayer leak due from quitting early in login 74231d422 [1.15] Move range check for block placing up (#3918) 48ea17fa1 Optimize the advancement data player iteration to be O(N) rather than O(N^2) be4d74d93 Fix Explosion location - Fixes #3574 31e5f6688 [1.15] Optimize NetworkManager exception handling (#3820) 2248fffcd Clean up duplicated GameProfile Properties 49491f32d Fix Player Profile textures being duplicated - Fixes #3667 3fc989992 [1.15] Fix MobGoals#getAllGoals not actually returning all goals (#3671) 1d1c0561f Manually inline PooledBlockPosition#d(int, int, int) 5fc45f4db Revert recent changes around player skulls using user cache Tuinity Changes: 5794d12 Fix up lock handling for UserCache
Purpur
Purpur is a fork of Paper used by the Pl3xCraft server.
It contains many gameplay changes to suit our server that are deemed too wild to be included directly upstream into Paper.
Contact
Join us on Discord
Downloads
Downloads can be obtained from Pl3x's Jenkins CI Server.
- 1.16.2 builds 711+
- 1.16.1 builds 608-710
- 1.15.2 builds 398-606
- 1.15.1 builds 348-397
- 1.15 builds 339-346
- 1.14.x builds 337 and below
License
Everything is licensed under the MIT license, and is free to be used in your own fork.
See starlis/empirecraft and electronicboy/byof for the license of material used/modified by this project.
bStats
API
Purpur API maven dependency:
<dependency>
<groupId>net.pl3x.purpur</groupId>
<artifactId>purpur-api</artifactId>
<version>1.16.2-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<repository>
<id>purpur</id>
<url>https://repo.pl3x.net/</url>
</repository>
Yes, this also includes all API provided by Paper, Spigot, and Bukkit.
Building and setting up
Initial setup
Run the following commands in the root directory:
git submodule update --init
./purpur up
./purpur patch
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 ./purpur rb, 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 ./purpur build to build the api and server. Compiled jars
will be placed under Purpur-API/target and Purpur-Server/target.
To get a purpurclip jar, run ./purpur jar.