aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSpottedleaf <[email protected]>2024-10-24 08:36:07 -0700
committerSpottedleaf <[email protected]>2024-10-25 11:25:09 -0700
commit3b316215d7d8940b81ddf6e5fde8c24fbd387f39 (patch)
tree9eaea37d9689b1ddf8aa594e75c48fa96ed5ac66
parent8e569ba62a3b4bf39d1669b6423b99ccffa74182 (diff)
downloadPaper-3b316215d7d8940b81ddf6e5fde8c24fbd387f39.tar.gz
Paper-3b316215d7d8940b81ddf6e5fde8c24fbd387f39.zip
Implement config hooks in PaperHooks
-rw-r--r--moonrise_update_1_21_2.txt9
-rw-r--r--patches/server/0823-fixup-MC-Utils.patch28
-rw-r--r--patches/server/0824-Rewrite-dataconverter-system.patch2
-rw-r--r--patches/server/0826-Moonrise-optimisation-patches.patch8
4 files changed, 19 insertions, 28 deletions
diff --git a/moonrise_update_1_21_2.txt b/moonrise_update_1_21_2.txt
index d6a3d5df42..c7942be4eb 100644
--- a/moonrise_update_1_21_2.txt
+++ b/moonrise_update_1_21_2.txt
@@ -3,16 +3,8 @@ https://github.com/Tuinity/Moonrise/compare/6a2c6d27df11d417c1fefa749109d8e87599
need to compare the diffs
-add notes to moonrise patch:
- - implemented fast palette patch
- - implemented better bitstorage magic patch
- - implemented blockstate property patch (replaced old paper one)
- - implemented fluid patch
-
-
todo:
- double check that the misc changes commit on dev/1.21.2 moonrise is applied
-- implement platformhooks
- in ChunkEntitySlices, implement modifySavedEntities() by copying from old
- implement PlayerChunkUnloadEvent in PlatformHooks#onChunkUnWatch
- make sure chunk pos is passed in PlatformHooks#postLoadProtoChunk
@@ -32,5 +24,4 @@ todo:
- implement starlight.ChunkSerializerMixin diff from reference
- implement starlight.SerializableChunkData$SectionData diff from reference
- implement starlight.SerializableChunkDataMixin diff from reference
-- unfuck the chtunk system config diff
- chunk system: move get entity lookup reroute into the folia scheduler api patch
diff --git a/patches/server/0823-fixup-MC-Utils.patch b/patches/server/0823-fixup-MC-Utils.patch
index 54f6874194..60653c117b 100644
--- a/patches/server/0823-fixup-MC-Utils.patch
+++ b/patches/server/0823-fixup-MC-Utils.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] fixup! MC Utils
diff --git a/src/main/java/ca/spottedleaf/moonrise/common/PlatformHooks.java b/src/main/java/ca/spottedleaf/moonrise/common/PlatformHooks.java
new file mode 100644
-index 0000000000000000000000000000000000000000..deb64f7ebebcf6de91ffe0542d6b449a4db64da0
+index 0000000000000000000000000000000000000000..6c98d420ea84c10ef4f15d4deb3f04e610ed8548
--- /dev/null
+++ b/src/main/java/ca/spottedleaf/moonrise/common/PlatformHooks.java
@@ -0,0 +1,117 @@
@@ -91,9 +91,9 @@ index 0000000000000000000000000000000000000000..deb64f7ebebcf6de91ffe0542d6b449a
+
+ public int configPlayerMaxConcurrentGens();
+
-+ public long configAutoSaveInterval();
++ public long configAutoSaveInterval(final ServerLevel world);
+
-+ public int configMaxAutoSavePerTick();
++ public int configMaxAutoSavePerTick(final ServerLevel world);
+
+ public boolean configFixMC159283();
+
@@ -1026,7 +1026,7 @@ index af9623240ff2d389aa7090623f507720e7dbab7d..efda2688ae1254a82ba7f6bf8bf597ef
public static int getMaxLightSection(final LevelHeightAccessor world) {
diff --git a/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java b/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
new file mode 100644
-index 0000000000000000000000000000000000000000..ee514a767f69de69d86e1e88d70fe37c4ab84277
+index 0000000000000000000000000000000000000000..1aa6be257ce594d7a69fdff008cd29014a04fd75
--- /dev/null
+++ b/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
@@ -0,0 +1,209 @@
@@ -1153,42 +1153,42 @@ index 0000000000000000000000000000000000000000..ee514a767f69de69d86e1e88d70fe37c
+
+ @Override
+ public boolean configAutoConfigSendDistance() {
-+
++ return io.papermc.paper.configuration.GlobalConfiguration.get().chunkLoadingAdvanced.autoConfigSendDistance;
+ }
+
+ @Override
+ public double configPlayerMaxLoadRate() {
-+
++ return io.papermc.paper.configuration.GlobalConfiguration.get().chunkLoadingBasic.playerMaxChunkLoadRate;
+ }
+
+ @Override
+ public double configPlayerMaxGenRate() {
-+
++ return io.papermc.paper.configuration.GlobalConfiguration.get().chunkLoadingBasic.playerMaxChunkGenerateRate;
+ }
+
+ @Override
+ public double configPlayerMaxSendRate() {
-+
++ return io.papermc.paper.configuration.GlobalConfiguration.get().chunkLoadingBasic.playerMaxChunkSendRate;
+ }
+
+ @Override
+ public int configPlayerMaxConcurrentLoads() {
-+
++ return io.papermc.paper.configuration.GlobalConfiguration.get().chunkLoadingAdvanced.playerMaxConcurrentChunkLoads;
+ }
+
+ @Override
+ public int configPlayerMaxConcurrentGens() {
-+
++ return io.papermc.paper.configuration.GlobalConfiguration.get().chunkLoadingAdvanced.playerMaxConcurrentChunkGenerates;
+ }
+
+ @Override
-+ public long configAutoSaveInterval() {
-+
++ public long configAutoSaveInterval(final ServerLevel world) {
++ return world.paperConfig().chunks.autoSaveInterval.value();
+ }
+
+ @Override
-+ public int configMaxAutoSavePerTick() {
-+
++ public int configMaxAutoSavePerTick(final ServerLevel world) {
++ return world.paperConfig().chunks.maxAutoSaveChunksPerTick;
+ }
+
+ @Override
diff --git a/patches/server/0824-Rewrite-dataconverter-system.patch b/patches/server/0824-Rewrite-dataconverter-system.patch
index 173d97a5b2..21a091394d 100644
--- a/patches/server/0824-Rewrite-dataconverter-system.patch
+++ b/patches/server/0824-Rewrite-dataconverter-system.patch
@@ -30187,7 +30187,7 @@ index 0000000000000000000000000000000000000000..5a6536377c9c1e1753e930ff2a6bb98e
+ }
+}
diff --git a/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java b/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
-index ee514a767f69de69d86e1e88d70fe37c4ab84277..be60439c43b887f0143e7713689fd2773066ba73 100644
+index 1aa6be257ce594d7a69fdff008cd29014a04fd75..c8f2457ab3b28f2c3a6b500bcea40261669c24a4 100644
--- a/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
+++ b/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
@@ -172,6 +172,43 @@ public final class PaperHooks implements PlatformHooks {
diff --git a/patches/server/0826-Moonrise-optimisation-patches.patch b/patches/server/0826-Moonrise-optimisation-patches.patch
index 59a89d7268..c6845bb1a8 100644
--- a/patches/server/0826-Moonrise-optimisation-patches.patch
+++ b/patches/server/0826-Moonrise-optimisation-patches.patch
@@ -365,7 +365,7 @@ index 94bba2b71918d79f54b3e28c35e76098ba0afd8c..fc029c8fb22a7c8eeb23bfc171812f6d
private ChunkSystem() {}
diff --git a/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java b/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
-index be60439c43b887f0143e7713689fd2773066ba73..dc17aa5a0937c13d431e41779f241f2e81b11656 100644
+index c8f2457ab3b28f2c3a6b500bcea40261669c24a4..ca8b6a926dfff3fdd6b04228809a4480366120b2 100644
--- a/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
+++ b/src/main/java/ca/spottedleaf/moonrise/paper/PaperHooks.java
@@ -236,7 +236,7 @@ public final class PaperHooks implements PlatformHooks {
@@ -6782,7 +6782,7 @@ index 0000000000000000000000000000000000000000..7eafc5b7cba23d8dec92ecc1050afe3f
\ No newline at end of file
diff --git a/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/scheduling/ChunkHolderManager.java b/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/scheduling/ChunkHolderManager.java
new file mode 100644
-index 0000000000000000000000000000000000000000..f98df65eaed2abedc66f3a49790e0cfb65354ed9
+index 0000000000000000000000000000000000000000..a0e5fc2eff605e17704f0726d20e79cbb3d88d6d
--- /dev/null
+++ b/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/scheduling/ChunkHolderManager.java
@@ -0,0 +1,1455 @@
@@ -7019,8 +7019,8 @@ index 0000000000000000000000000000000000000000..f98df65eaed2abedc66f3a49790e0cfb
+ public void autoSave() {
+ final List<NewChunkHolder> reschedule = new ArrayList<>();
+ final long currentTick = this.currentTick;
-+ final long maxSaveTime = currentTick - Math.max(1L, PlatformHooks.get().configAutoSaveInterval());
-+ final int maxToSave = PlatformHooks.get().configMaxAutoSavePerTick();
++ final long maxSaveTime = currentTick - Math.max(1L, PlatformHooks.get().configAutoSaveInterval(this.world));
++ final int maxToSave = PlatformHooks.get().configMaxAutoSavePerTick(this.world);
+ for (int autoSaved = 0; autoSaved < maxToSave && !this.autoSaveQueue.isEmpty();) {
+ final NewChunkHolder holder = this.autoSaveQueue.first();
+