Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@36e0c0a update enchantment target and rework some component impl PaperMC/Paper@ce3fe65 fix NPE in legacy profiles PaperMC/Paper@00bf128 remove old test PaperMC/Paper@311810f fix copper chest inventory PaperMC/Paper@ec686f7 Add ItemTransportingEntityValidateTargetEvent closes #13114 (#13115) PaperMC/Paper@5e42ae9 Correctly reset quick crafting state on out of order packet PaperMC/Paper@2d7f5ea add shelf inventory type PaperMC/Paper@0102872 validate mannequin pose PaperMC/Paper@a3f247c Fix command-block-overrides from commands.yml
Sakura
This is a fork of Paper to optimise cannoning and provide essential features for cannon testing and faction servers.
There are branches from the latest version to 1.18.2. If you are looking for a 1.8.8 server jar check out the project Sakura was based on Blossom.
There are compiled binaries on the releases page
Compiling
Requirements
- Git
- JDK 21
Getting setup
Clone the repository
To get started you will need to clone the repository
git clone https://github.com/Samsuik/Sakura
Navigate into the newly cloned repository
cd Sakura
If you're looking for an older version of minecraft, you will need to switch branches.
git checkout <branch name>
The branches targeting minecraft versions before 1.21.4 have legacy/ in front of their name.
You can skip this step if you're ok with the latest version.
Applying Patches
If you're using Windows the file path limit causes the
applyAllPatchestask to fail. This is because of the highly nested structure of this repository and the use of long file names. There is a registry setting that can be changed to raise this limit. https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation
All you have to do is run the applyAllPatches task.
./gradlew applyAllPatches
If everything was successful, you should see that two directories have been created sakura-api and sakura-server these contain all the source code.
If you want to switch branches after running applyAllPatches, you will need to run the cleanCache task.
./gradlew cleanCache
Building
The patches must be applied before building otherwise it will fail.
The createMojmapPaperclipJar task will create a mojang-mapped paperclip jar.
./gradlew createMojmapPaperclipJar
You can find the built paperclip jar under build/libs.
Contributing
If you would like to contribute please read the upstream Contributing Guideline.
It contains a lot of useful information on how the project is structured and how to use the build tools.