This is the custom server code used in the Minecraft world of Iðavöllr.
Changes from PaperMC
- Edit max speeds so minecart > horse > ice boat (paddles only, sails should still be fast)
- Implement Giants AI
- Implement Purpur rideables
- Implement Villager Tasks (Armorer heals golems, Priest heals villagers)
- Implement Smallships
- Implement Accessories
- Implement Sparkly per-world ticking
- Clone repo
./gradlew applyPatches
from root
git checkout main
- switch to the main branch, that tracks Paper- via Github UI, PR all new changes into main
Tip
While we're on 1.21.4, so long as all the changes are desired we can just git merge main
from the seed
branch to include everything.
- Make a list of any code that should make it into Aincrad
git checkout seed
git cherry-pick <new_paper_goodness_commit_hash>
gradlew applyPatches
- this makes sure your patch/source files are in sync. Forgetting this step will lead to errors the next time yourebuildPatches
- Push the changes back to origin, all done!
Note
for mistakes,
Reset all non-committed local changes: git reset --hard
Reset branch to remote state: git reset --hard origin/seed
Reset to specific commit: git reset --hard <commit-hash>
,
then git push origin seed --force
- Make changes (in paper-server/src/minecraft/java)
./gradlew fixupSourcePatches
./gradlew rebuildPatches
- Make changes (in paper-server/src/minecraft/java)
git add .
in the java subfoldergit commit -m
with the patch message (it will become the patch filename)./gradlew rebuildPatches
from root
find the file needed using "view source" or manually in the gradle cache, add the full classpath to ./build-data/dev-imports.txt
, run the Gradle task "applyPatches", and you should be able to find your new NMS file in the ./Paper-Server
dir.