aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJosh Roy <[email protected]>2021-11-20 14:15:36 -0500
committerGitHub <[email protected]>2021-11-20 14:15:36 -0500
commit22aaf913686c8518e375deb01c6cde74942d3ac2 (patch)
tree3922458fe85d829a079d62fdec5640b390792fa1
parent284b3b8dd2822b314d7788b878a7978d9eee9bae (diff)
downloadPaper-22aaf913686c8518e375deb01c6cde74942d3ac2.tar.gz
Paper-22aaf913686c8518e375deb01c6cde74942d3ac2.zip
Add config option to enable hopper occluding blocks (#6896)
Co-authored-by: zombachu <[email protected]>
-rw-r--r--patches/server/0353-Optimize-Hoppers.patch11
-rw-r--r--patches/server/0365-Increase-Light-Queue-Size.patch8
-rw-r--r--patches/server/0367-Anti-Xray.patch4
-rw-r--r--patches/server/0368-No-Tick-view-distance-implementation.patch4
-rw-r--r--patches/server/0369-Implement-alternative-item-despawn-rate.patch4
-rw-r--r--patches/server/0372-implement-optional-per-player-mob-spawns.patch4
-rw-r--r--patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch8
-rw-r--r--patches/server/0386-Configurable-chance-of-villager-zombie-infection.patch4
-rw-r--r--patches/server/0420-Add-phantom-creative-and-insomniac-controls.patch4
-rw-r--r--patches/server/0452-Delay-Chunk-Unloads-based-on-Player-Movement.patch4
-rw-r--r--patches/server/0609-Add-toggle-for-always-placing-the-dragon-egg.patch4
-rw-r--r--patches/server/0616-added-option-to-disable-pathfinding-updates-on-block.patch6
-rw-r--r--patches/server/0626-MC-29274-Fix-Wither-hostility-towards-players.patch4
-rw-r--r--patches/server/0636-Allow-using-signs-inside-spawn-protection.patch4
-rw-r--r--patches/server/0690-Limit-item-frame-cursors-on-maps.patch4
-rw-r--r--patches/server/0695-Add-option-to-fix-items-merging-through-walls.patch4
-rw-r--r--patches/server/0697-Fix-invulnerable-end-crystals.patch4
-rw-r--r--patches/server/0703-add-per-world-spawn-limits.patch4
-rw-r--r--patches/server/0713-Fix-commands-from-signs-not-firing-command-events.patch4
-rw-r--r--patches/server/0716-Add-config-for-mobs-immune-to-default-effects.patch6
-rw-r--r--patches/server/0719-Don-t-apply-cramming-damage-to-players.patch4
-rw-r--r--patches/server/0720-Rate-options-and-timings-for-sensors-and-behaviors.patch4
-rw-r--r--patches/server/0737-Configurable-item-frame-map-cursor-update-interval.patch4
-rw-r--r--patches/server/0800-Configurable-feature-seeds.patch4
-rw-r--r--patches/server/0811-Preserve-overstacked-loot.patch4
25 files changed, 61 insertions, 58 deletions
diff --git a/patches/server/0353-Optimize-Hoppers.patch b/patches/server/0353-Optimize-Hoppers.patch
index 350e012ed2..1a31d6b231 100644
--- a/patches/server/0353-Optimize-Hoppers.patch
+++ b/patches/server/0353-Optimize-Hoppers.patch
@@ -13,21 +13,24 @@ Subject: [PATCH] Optimize Hoppers
* Remove Streams from Item Suck In and restore restore 1.12 AABB checks which is simpler and no voxel allocations (was doing TWO Item Suck ins)
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 8108cbc492dc14e5dd5a183105e89eb0cfb378fe..0705e04b395938fc7ef7b759813d979de3a899f4 100644
+index 8108cbc492dc14e5dd5a183105e89eb0cfb378fe..e8746656ac12d3498e78cb603c14d4c31abbc023 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -511,5 +511,14 @@ public class PaperWorldConfig {
+@@ -511,5 +511,17 @@ public class PaperWorldConfig {
private void entitiesTargetWithFollowRange() {
entitiesTargetWithFollowRange = getBoolean("entities-target-with-follow-range", entitiesTargetWithFollowRange);
}
+
+ public boolean cooldownHopperWhenFull = true;
+ public boolean disableHopperMoveEvents = false;
++ public boolean hoppersIgnoreOccludingBlocks = true;
+ private void hopperOptimizations() {
+ cooldownHopperWhenFull = getBoolean("hopper.cooldown-when-full", cooldownHopperWhenFull);
+ log("Cooldown Hoppers when Full: " + (cooldownHopperWhenFull ? "enabled" : "disabled"));
+ disableHopperMoveEvents = getBoolean("hopper.disable-move-event", disableHopperMoveEvents);
+ log("Hopper Move Item Events: " + (disableHopperMoveEvents ? "disabled" : "enabled"));
++ hoppersIgnoreOccludingBlocks = getBoolean("hopper.ignore-occluding-blocks", hoppersIgnoreOccludingBlocks);
++ log("Hopper Ignore Occluding Blocks: " + (hoppersIgnoreOccludingBlocks ? "enabled" : "disabled"));
+ }
}
@@ -117,7 +120,7 @@ index a05acf709735b40ca86f978508c63a86065fd405..71dd26ca6626631b94d53818cd06b93f
double getLevelY();
diff --git a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java
-index 3e2832087e8c2c0e2c45f18b0da49299611e76ad..08c4a0996410a42418d4a5da3ed1f4db2f171dd2 100644
+index 3e2832087e8c2c0e2c45f18b0da49299611e76ad..89b9982e65acfcaa84e10d37e619f18b77f4ca92 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java
@@ -3,7 +3,6 @@ package net.minecraft.world.level.block.entity;
@@ -468,7 +471,7 @@ index 3e2832087e8c2c0e2c45f18b0da49299611e76ad..08c4a0996410a42418d4a5da3ed1f4db
}
- if (object == null) {
-+ if (object == null && (!optimizeEntities || !org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(block).isOccluding())) { // Paper
++ if (object == null && (!optimizeEntities || !world.paperConfig.hoppersIgnoreOccludingBlocks || !org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(block).isOccluding())) { // Paper
List<Entity> list = world.getEntities((Entity) null, new AABB(x - 0.5D, y - 0.5D, z - 0.5D, x + 0.5D, y + 0.5D, z + 0.5D), EntitySelector.CONTAINER_ENTITY_SELECTOR);
if (!list.isEmpty()) {
diff --git a/patches/server/0365-Increase-Light-Queue-Size.patch b/patches/server/0365-Increase-Light-Queue-Size.patch
index 126f4f6a3e..874192865f 100644
--- a/patches/server/0365-Increase-Light-Queue-Size.patch
+++ b/patches/server/0365-Increase-Light-Queue-Size.patch
@@ -14,12 +14,12 @@ light engine on shutdown...
The queue size only puts a cap on max loss, doesn't solve that problem.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 0705e04b395938fc7ef7b759813d979de3a899f4..5707befe1c64df3e01fe810459d716d550b7daa8 100644
+index e8746656ac12d3498e78cb603c14d4c31abbc023..ade858610c76be24576fe60d509e4a8f2531f442 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -520,5 +520,10 @@ public class PaperWorldConfig {
- disableHopperMoveEvents = getBoolean("hopper.disable-move-event", disableHopperMoveEvents);
- log("Hopper Move Item Events: " + (disableHopperMoveEvents ? "disabled" : "enabled"));
+@@ -523,5 +523,10 @@ public class PaperWorldConfig {
+ hoppersIgnoreOccludingBlocks = getBoolean("hopper.ignore-occluding-blocks", hoppersIgnoreOccludingBlocks);
+ log("Hopper Ignore Occluding Blocks: " + (hoppersIgnoreOccludingBlocks ? "enabled" : "disabled"));
}
+
+ public int lightQueueSize = 20;
diff --git a/patches/server/0367-Anti-Xray.patch b/patches/server/0367-Anti-Xray.patch
index 87648778fb..ae99811884 100644
--- a/patches/server/0367-Anti-Xray.patch
+++ b/patches/server/0367-Anti-Xray.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Anti-Xray
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 5707befe1c64df3e01fe810459d716d550b7daa8..5dd6d78742212ae4756f7bc7d7699521cb280ee0 100644
+index ade858610c76be24576fe60d509e4a8f2531f442..367bea78d479b73b35a324c58f8f9b981d9c8ccf 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -1,10 +1,12 @@
@@ -21,7 +21,7 @@ index 5707befe1c64df3e01fe810459d716d550b7daa8..5dd6d78742212ae4756f7bc7d7699521
import org.bukkit.Bukkit;
import org.bukkit.configuration.file.YamlConfiguration;
import org.spigotmc.SpigotWorldConfig;
-@@ -525,5 +527,40 @@ public class PaperWorldConfig {
+@@ -528,5 +530,40 @@ public class PaperWorldConfig {
private void lightQueueSize() {
lightQueueSize = getInt("light-queue-size", lightQueueSize);
}
diff --git a/patches/server/0368-No-Tick-view-distance-implementation.patch b/patches/server/0368-No-Tick-view-distance-implementation.patch
index 92c37c0338..ecb7448c18 100644
--- a/patches/server/0368-No-Tick-view-distance-implementation.patch
+++ b/patches/server/0368-No-Tick-view-distance-implementation.patch
@@ -23,10 +23,10 @@ index ee53453440177537fc653ea156785d7591498614..cfe293881f68c8db337c3a48948362bb
}));
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 5dd6d78742212ae4756f7bc7d7699521cb280ee0..9d1f14274af2f9af4de9e914f7c4ed10b11d3782 100644
+index 367bea78d479b73b35a324c58f8f9b981d9c8ccf..604a0b423ce7863ad872e111257ac2fe8d635d5a 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -528,6 +528,11 @@ public class PaperWorldConfig {
+@@ -531,6 +531,11 @@ public class PaperWorldConfig {
lightQueueSize = getInt("light-queue-size", lightQueueSize);
}
diff --git a/patches/server/0369-Implement-alternative-item-despawn-rate.patch b/patches/server/0369-Implement-alternative-item-despawn-rate.patch
index 75966b0de1..f4b0423545 100644
--- a/patches/server/0369-Implement-alternative-item-despawn-rate.patch
+++ b/patches/server/0369-Implement-alternative-item-despawn-rate.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Implement alternative item-despawn-rate
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 9d1f14274af2f9af4de9e914f7c4ed10b11d3782..bfcfe431548bf36d50b9bf12957fed59ed9c6984 100644
+index 604a0b423ce7863ad872e111257ac2fe8d635d5a..0ee9ce9b1214b91942541152443951c901aeafe6 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -533,6 +533,54 @@ public class PaperWorldConfig {
+@@ -536,6 +536,54 @@ public class PaperWorldConfig {
this.noTickViewDistance = this.getInt("viewdistances.no-tick-view-distance", -1);
}
diff --git a/patches/server/0372-implement-optional-per-player-mob-spawns.patch b/patches/server/0372-implement-optional-per-player-mob-spawns.patch
index 786dc7b2b5..b847b14857 100644
--- a/patches/server/0372-implement-optional-per-player-mob-spawns.patch
+++ b/patches/server/0372-implement-optional-per-player-mob-spawns.patch
@@ -25,10 +25,10 @@ index fe79c0add4f7cb18d487c5bb9415c40c5b551ea2..8d9ddad1879e7616d980ca70de8aecac
poiUnload = Timings.ofSafe(name + "Chunk unload - POI");
chunkUnload = Timings.ofSafe(name + "Chunk unload - Chunk");
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index bfcfe431548bf36d50b9bf12957fed59ed9c6984..705dcec93ab60f88bb407b7d75fbc0aca65fb7f8 100644
+index 0ee9ce9b1214b91942541152443951c901aeafe6..c95659ffe4722b50ea341f60c99262b60b8d0b81 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -615,5 +615,13 @@ public class PaperWorldConfig {
+@@ -618,5 +618,13 @@ public class PaperWorldConfig {
Bukkit.getLogger().warning("You have enabled permission-based Anti-Xray checking - depending on your permission plugin, this may cause performance issues");
}
}
diff --git a/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch b/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch
index bed1de6d8f..b79c451f32 100644
--- a/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch
+++ b/patches/server/0380-Add-option-to-nerf-pigmen-from-nether-portals.patch
@@ -5,11 +5,11 @@ Subject: [PATCH] Add option to nerf pigmen from nether portals
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 705dcec93ab60f88bb407b7d75fbc0aca65fb7f8..1eea1d2b0747b904ff30f0c6debb8f04fcbb6923 100644
+index c95659ffe4722b50ea341f60c99262b60b8d0b81..8e2a2a069cd66605344a4d129dbb673976bf2f1f 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -523,6 +523,11 @@ public class PaperWorldConfig {
- log("Hopper Move Item Events: " + (disableHopperMoveEvents ? "disabled" : "enabled"));
+@@ -526,6 +526,11 @@ public class PaperWorldConfig {
+ log("Hopper Ignore Occluding Blocks: " + (hoppersIgnoreOccludingBlocks ? "enabled" : "disabled"));
}
+ public boolean nerfNetherPortalPigmen = false;
@@ -21,7 +21,7 @@ index 705dcec93ab60f88bb407b7d75fbc0aca65fb7f8..1eea1d2b0747b904ff30f0c6debb8f04
private void lightQueueSize() {
lightQueueSize = getInt("light-queue-size", lightQueueSize);
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index bcdf26151eef02f3e37692a71d579ddfe9d3ed59..e198a4b7f8b0db72855461c2741041e67a195f55 100644
+index 06597d10c640daca400da9d5a4c186cc95bca1bf..c8e1f38de2189c16cedfbf848593e4ae06e911f3 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -330,6 +330,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0386-Configurable-chance-of-villager-zombie-infection.patch b/patches/server/0386-Configurable-chance-of-villager-zombie-infection.patch
index c489da11d3..91bdbf894a 100644
--- a/patches/server/0386-Configurable-chance-of-villager-zombie-infection.patch
+++ b/patches/server/0386-Configurable-chance-of-villager-zombie-infection.patch
@@ -8,10 +8,10 @@ This allows you to solve an issue in vanilla behavior where:
* On normal difficulty they will have a 50% of getting infected or dying.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 9ce95f6b6b53f6f30d3c9aeaee8938354fc0d3b5..c6e721b19ddc9e01ffbed765aaf52bef50e80b1d 100644
+index b8e58219847a243516754c845732d1b1e3f56f23..955cc760f3eabe2fa2d88fe277ca923944eb9aea 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -533,6 +533,11 @@ public class PaperWorldConfig {
+@@ -536,6 +536,11 @@ public class PaperWorldConfig {
nerfNetherPortalPigmen = getBoolean("game-mechanics.nerf-pigmen-from-nether-portals", nerfNetherPortalPigmen);
}
diff --git a/patches/server/0420-Add-phantom-creative-and-insomniac-controls.patch b/patches/server/0420-Add-phantom-creative-and-insomniac-controls.patch
index fab6627cd9..465bec7a65 100644
--- a/patches/server/0420-Add-phantom-creative-and-insomniac-controls.patch
+++ b/patches/server/0420-Add-phantom-creative-and-insomniac-controls.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add phantom creative and insomniac controls
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 00d1ea2440aecd81fc0e23a06f53890c55424ab3..f036c3179f4e7633eac4e1889c029383c291da92 100644
+index 6bda3fc058045d637564fde569b6c44aabdfd099..4e43d4fbd5f69d278f94b69c0704d2bc3569296e 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -554,6 +554,13 @@ public class PaperWorldConfig {
+@@ -557,6 +557,13 @@ public class PaperWorldConfig {
lightQueueSize = getInt("light-queue-size", lightQueueSize);
}
diff --git a/patches/server/0452-Delay-Chunk-Unloads-based-on-Player-Movement.patch b/patches/server/0452-Delay-Chunk-Unloads-based-on-Player-Movement.patch
index fac29ea642..7cfe4b244d 100644
--- a/patches/server/0452-Delay-Chunk-Unloads-based-on-Player-Movement.patch
+++ b/patches/server/0452-Delay-Chunk-Unloads-based-on-Player-Movement.patch
@@ -17,10 +17,10 @@ This allows servers with smaller worlds who do less long distance exploring to s
wasting cpu cycles on saving/unloading/reloading chunks repeatedly.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 16b4711496ce4cc7b8e53de4614836d2590a5704..22a04bfddccd5a118d6297ca88a5e396b6a884f9 100644
+index c0805c5bafbe3ae9da00969796c7ee4cc791249d..c0bb172aeaabcaa05aa4b05353f345d6d8501769 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -572,6 +572,15 @@ public class PaperWorldConfig {
+@@ -575,6 +575,15 @@ public class PaperWorldConfig {
this.noTickViewDistance = this.getInt("viewdistances.no-tick-view-distance", -1);
}
diff --git a/patches/server/0609-Add-toggle-for-always-placing-the-dragon-egg.patch b/patches/server/0609-Add-toggle-for-always-placing-the-dragon-egg.patch
index da378627da..d4d11bbaa4 100644
--- a/patches/server/0609-Add-toggle-for-always-placing-the-dragon-egg.patch
+++ b/patches/server/0609-Add-toggle-for-always-placing-the-dragon-egg.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add toggle for always placing the dragon egg
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index cdaf146c11239858391cd899758c3d8f91b8806c..e996b5a8559d731accb6f09eb46437c33b088d3e 100644
+index eece168668e93d2cd0bdcdd0911aef5208084e67..3e694d8a28524f9ea6ba8f1947061b92bc15b13d 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -799,5 +799,10 @@ public class PaperWorldConfig {
+@@ -802,5 +802,10 @@ public class PaperWorldConfig {
}
perPlayerMobSpawns = getBoolean("per-player-mob-spawns", true);
}
diff --git a/patches/server/0616-added-option-to-disable-pathfinding-updates-on-block.patch b/patches/server/0616-added-option-to-disable-pathfinding-updates-on-block.patch
index 217fe86288..5050fb908a 100644
--- a/patches/server/0616-added-option-to-disable-pathfinding-updates-on-block.patch
+++ b/patches/server/0616-added-option-to-disable-pathfinding-updates-on-block.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] added option to disable pathfinding updates on block changes
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index e996b5a8559d731accb6f09eb46437c33b088d3e..9cea705b59e198ca5bcf89be74e310d686901173 100644
+index 3e694d8a28524f9ea6ba8f1947061b92bc15b13d..843878bb83dfebca8d3574c159c5e338f15104ac 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -804,5 +804,10 @@ public class PaperWorldConfig {
+@@ -807,5 +807,10 @@ public class PaperWorldConfig {
private void enderDragonsDeathAlwaysPlacesDragonEgg() {
enderDragonsDeathAlwaysPlacesDragonEgg = getBoolean("ender-dragons-death-always-places-dragon-egg", enderDragonsDeathAlwaysPlacesDragonEgg);
}
@@ -20,7 +20,7 @@ index e996b5a8559d731accb6f09eb46437c33b088d3e..9cea705b59e198ca5bcf89be74e310d6
}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index b8495c2240795a14eaf4c230355c23c7090f39a1..614d9b5865e9cf5e939db8b3840e9dc4b72fe7e0 100644
+index 09474f7e973563585e102cc839ab6842a3a10c0c..e0efad2395dd889430554074bbd9769957a72687 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1386,6 +1386,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
diff --git a/patches/server/0626-MC-29274-Fix-Wither-hostility-towards-players.patch b/patches/server/0626-MC-29274-Fix-Wither-hostility-towards-players.patch
index 3ed0991e65..bae1c53a29 100644
--- a/patches/server/0626-MC-29274-Fix-Wither-hostility-towards-players.patch
+++ b/patches/server/0626-MC-29274-Fix-Wither-hostility-towards-players.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] MC-29274: Fix Wither hostility towards players
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 9cea705b59e198ca5bcf89be74e310d686901173..81c78a33e76451879eb9b6f946bc04a28cca72bc 100644
+index 843878bb83dfebca8d3574c159c5e338f15104ac..dfd4aac7a6e184a79bfdf15d9b5a92dbcb06fadd 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -809,5 +809,11 @@ public class PaperWorldConfig {
+@@ -812,5 +812,11 @@ public class PaperWorldConfig {
private void setUpdatePathfindingOnBlockUpdate() {
updatePathfindingOnBlockUpdate = getBoolean("update-pathfinding-on-block-update", this.updatePathfindingOnBlockUpdate);
}
diff --git a/patches/server/0636-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0636-Allow-using-signs-inside-spawn-protection.patch
index 7f59d28698..335ba0243b 100644
--- a/patches/server/0636-Allow-using-signs-inside-spawn-protection.patch
+++ b/patches/server/0636-Allow-using-signs-inside-spawn-protection.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Allow using signs inside spawn protection
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 81c78a33e76451879eb9b6f946bc04a28cca72bc..723bf8c37494a11b5e6cccc22a2c125c5cba3c01 100644
+index dfd4aac7a6e184a79bfdf15d9b5a92dbcb06fadd..080b5d5d78e5f65c4367f07abcf1c47356354365 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -815,5 +815,10 @@ public class PaperWorldConfig {
+@@ -818,5 +818,10 @@ public class PaperWorldConfig {
fixWitherTargetingBug = getBoolean("fix-wither-targeting-bug", false);
log("Withers properly target players: " + fixWitherTargetingBug);
}
diff --git a/patches/server/0690-Limit-item-frame-cursors-on-maps.patch b/patches/server/0690-Limit-item-frame-cursors-on-maps.patch
index f5ec394697..269f37df00 100644
--- a/patches/server/0690-Limit-item-frame-cursors-on-maps.patch
+++ b/patches/server/0690-Limit-item-frame-cursors-on-maps.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Limit item frame cursors on maps
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 0938b38aaca2bfaf3a70c392849222fc0128c60c..81c3a4a2c7e95e92566030ab48f534285d185cf5 100644
+index e381642d22826defd38a1d0c20c99a6db0b1ce66..88e6919e7c850727100a5739ed3ac332bc004b40 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -855,5 +855,10 @@ public class PaperWorldConfig {
+@@ -858,5 +858,10 @@ public class PaperWorldConfig {
private void allowUsingSignsInsideSpawnProtection() {
allowUsingSignsInsideSpawnProtection = getBoolean("allow-using-signs-inside-spawn-protection", allowUsingSignsInsideSpawnProtection);
}
diff --git a/patches/server/0695-Add-option-to-fix-items-merging-through-walls.patch b/patches/server/0695-Add-option-to-fix-items-merging-through-walls.patch
index 588e8ef374..ffc5ef9a2d 100644
--- a/patches/server/0695-Add-option-to-fix-items-merging-through-walls.patch
+++ b/patches/server/0695-Add-option-to-fix-items-merging-through-walls.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to fix items merging through walls
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 81c3a4a2c7e95e92566030ab48f534285d185cf5..d02cf8e3726063b0b364bd7f54be80759d789c7a 100644
+index 88e6919e7c850727100a5739ed3ac332bc004b40..d8ed734450a14ffeed6d7a42eed238645b0cb380 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -860,5 +860,10 @@ public class PaperWorldConfig {
+@@ -863,5 +863,10 @@ public class PaperWorldConfig {
private void mapItemFrameCursorLimit() {
mapItemFrameCursorLimit = getInt("map-item-frame-cursor-limit", mapItemFrameCursorLimit);
}
diff --git a/patches/server/0697-Fix-invulnerable-end-crystals.patch b/patches/server/0697-Fix-invulnerable-end-crystals.patch
index 43c6b37128..43723b53eb 100644
--- a/patches/server/0697-Fix-invulnerable-end-crystals.patch
+++ b/patches/server/0697-Fix-invulnerable-end-crystals.patch
@@ -6,10 +6,10 @@ Subject: [PATCH] Fix invulnerable end crystals
MC-108513
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index d02cf8e3726063b0b364bd7f54be80759d789c7a..8b72fb402233358709836082f245bfc8fabebfa8 100644
+index d8ed734450a14ffeed6d7a42eed238645b0cb380..b1a8c0e6c07bcc3625e834592923da462977af5e 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -865,5 +865,10 @@ public class PaperWorldConfig {
+@@ -868,5 +868,10 @@ public class PaperWorldConfig {
private void fixItemsMergingThroughWalls() {
fixItemsMergingThroughWalls = getBoolean("fix-items-merging-through-walls", fixItemsMergingThroughWalls);
}
diff --git a/patches/server/0703-add-per-world-spawn-limits.patch b/patches/server/0703-add-per-world-spawn-limits.patch
index 7ca13dd270..9255b3cf0d 100644
--- a/patches/server/0703-add-per-world-spawn-limits.patch
+++ b/patches/server/0703-add-per-world-spawn-limits.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] add per world spawn limits
Taken from #2982. Credit to Chasewhip8
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 8b72fb402233358709836082f245bfc8fabebfa8..3de0e744415887a408b8c97e15caa85af5f1051f 100644
+index b1a8c0e6c07bcc3625e834592923da462977af5e..d40d6ead65bd0f6ae64155ee7960245fd0e72b77 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -14,6 +14,7 @@ import net.minecraft.world.entity.EntityType;
@@ -29,7 +29,7 @@ index 8b72fb402233358709836082f245bfc8fabebfa8..3de0e744415887a408b8c97e15caa85a
}
if (needsSave) {
-@@ -718,6 +724,21 @@ public class PaperWorldConfig {
+@@ -721,6 +727,21 @@ public class PaperWorldConfig {
zombieVillagerInfectionChance = getDouble("zombie-villager-infection-chance", zombieVillagerInfectionChance);
}
diff --git a/patches/server/0713-Fix-commands-from-signs-not-firing-command-events.patch b/patches/server/0713-Fix-commands-from-signs-not-firing-command-events.patch
index ef283f6088..dae35eee03 100644
--- a/patches/server/0713-Fix-commands-from-signs-not-firing-command-events.patch
+++ b/patches/server/0713-Fix-commands-from-signs-not-firing-command-events.patch
@@ -10,10 +10,10 @@ This patch changes sign command logic so that `run_command` click events:
- sends failure messages to the player who clicked the sign
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 3de0e744415887a408b8c97e15caa85af5f1051f..ff7766553743172cb83049ed89532eba596f39b6 100644
+index d40d6ead65bd0f6ae64155ee7960245fd0e72b77..37cb74b27763db6f4a6a68030f88c37fc731affc 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -891,5 +891,10 @@ public class PaperWorldConfig {
+@@ -894,5 +894,10 @@ public class PaperWorldConfig {
private void fixInvulnerableEndCrystalExploit() {
fixInvulnerableEndCrystalExploit = getBoolean("unsupported-settings.fix-invulnerable-end-crystal-exploit", fixInvulnerableEndCrystalExploit);
}
diff --git a/patches/server/0716-Add-config-for-mobs-immune-to-default-effects.patch b/patches/server/0716-Add-config-for-mobs-immune-to-default-effects.patch
index feea132a57..5bab0b4f9b 100644
--- a/patches/server/0716-Add-config-for-mobs-immune-to-default-effects.patch
+++ b/patches/server/0716-Add-config-for-mobs-immune-to-default-effects.patch
@@ -5,11 +5,11 @@ Subject: [PATCH] Add config for mobs immune to default effects
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index ff7766553743172cb83049ed89532eba596f39b6..d16e3be9e64db9cba4bb90cccd170aa92534b76a 100644
+index 37cb74b27763db6f4a6a68030f88c37fc731affc..8d620b537ebe9c317c1b4fc72af40ac4a22c24e7 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -714,6 +714,21 @@ public class PaperWorldConfig {
- log("Hopper Move Item Events: " + (disableHopperMoveEvents ? "disabled" : "enabled"));
+@@ -717,6 +717,21 @@ public class PaperWorldConfig {
+ log("Hopper Ignore Occluding Blocks: " + (hoppersIgnoreOccludingBlocks ? "enabled" : "disabled"));
}
+ public boolean undeadImmuneToCertainEffects = true;
diff --git a/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch b/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
index 3029b1fd5f..4a716a3650 100644
--- a/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
+++ b/patches/server/0719-Don-t-apply-cramming-damage-to-players.patch
@@ -11,10 +11,10 @@ It does not make a lot of sense to damage players if they get crammed,
For those who really want it a config option is provided.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index d16e3be9e64db9cba4bb90cccd170aa92534b76a..35e6a18dea889db8bd497ac029fda653ef3926ab 100644
+index 8d620b537ebe9c317c1b4fc72af40ac4a22c24e7..17c3aa70671027d04a59e1108d2e4daaba3efa7b 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -911,5 +911,10 @@ public class PaperWorldConfig {
+@@ -914,5 +914,10 @@ public class PaperWorldConfig {
private void showSignClickCommandFailureMessagesToPlayer() {
showSignClickCommandFailureMessagesToPlayer = getBoolean("show-sign-click-command-failure-msgs-to-player", showSignClickCommandFailureMessagesToPlayer);
}
diff --git a/patches/server/0720-Rate-options-and-timings-for-sensors-and-behaviors.patch b/patches/server/0720-Rate-options-and-timings-for-sensors-and-behaviors.patch
index 9a39fb12bd..87cd7d7bca 100644
--- a/patches/server/0720-Rate-options-and-timings-for-sensors-and-behaviors.patch
+++ b/patches/server/0720-Rate-options-and-timings-for-sensors-and-behaviors.patch
@@ -28,7 +28,7 @@ index b47b7dce26805badd422c1867733ff4bfd00e9f4..b27021a42cbed3f0648a8d0903d00d03
* Get a named timer for the specified tile entity type to track type specific timings.
* @param entity
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 35e6a18dea889db8bd497ac029fda653ef3926ab..ef569d01165d7953c5802342e00da7d655811ff7 100644
+index 17c3aa70671027d04a59e1108d2e4daaba3efa7b..ab3ea12d5f1cbfe55d53d0625c04dac2347f0739 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -7,8 +7,12 @@ import it.unimi.dsi.fastutil.objects.Reference2IntMap;
@@ -52,7 +52,7 @@ index 35e6a18dea889db8bd497ac029fda653ef3926ab..ef569d01165d7953c5802342e00da7d6
import org.bukkit.configuration.file.YamlConfiguration;
import org.spigotmc.SpigotWorldConfig;
-@@ -916,5 +921,58 @@ public class PaperWorldConfig {
+@@ -919,5 +924,58 @@ public class PaperWorldConfig {
private void playerCrammingDamage() {
allowPlayerCrammingDamage = getBoolean("allow-player-cramming-damage", allowPlayerCrammingDamage);
}
diff --git a/patches/server/0737-Configurable-item-frame-map-cursor-update-interval.patch b/patches/server/0737-Configurable-item-frame-map-cursor-update-interval.patch
index 3c39e04202..6761088ef6 100644
--- a/patches/server/0737-Configurable-item-frame-map-cursor-update-interval.patch
+++ b/patches/server/0737-Configurable-item-frame-map-cursor-update-interval.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable item frame map cursor update interval
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 7bc5ba3514d2f091f745b33f96fe86bd839b04c2..410e1e67ca625fc01553d61c2b0eaeec10317e5e 100644
+index 3297271e3801935de1690c3d1a325d0c8a66d347..9a99211e183958c0327e69457efaeb87fc617964 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -907,6 +907,11 @@ public class PaperWorldConfig {
+@@ -910,6 +910,11 @@ public class PaperWorldConfig {
mapItemFrameCursorLimit = getInt("map-item-frame-cursor-limit", mapItemFrameCursorLimit);
}
diff --git a/patches/server/0800-Configurable-feature-seeds.patch b/patches/server/0800-Configurable-feature-seeds.patch
index b6cc639df3..60f93a8baa 100644
--- a/patches/server/0800-Configurable-feature-seeds.patch
+++ b/patches/server/0800-Configurable-feature-seeds.patch
@@ -19,10 +19,10 @@ index 7d44abcb4fff9717a1af55879deb7eb9c2d9e7e9..e29b0a90019b12bd6586ad0f7b5314f3
}
final Object val = config.get(key);
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 410e1e67ca625fc01553d61c2b0eaeec10317e5e..0a611df010c9c5e621f10ae55a0ce66fd0cae0e2 100644
+index 9a99211e183958c0327e69457efaeb87fc617964..f1b1e0455806443cd55c350f9b4f74ef8f3a1158 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -972,6 +972,55 @@ public class PaperWorldConfig {
+@@ -975,6 +975,55 @@ public class PaperWorldConfig {
return table;
}
diff --git a/patches/server/0811-Preserve-overstacked-loot.patch b/patches/server/0811-Preserve-overstacked-loot.patch
index abfc26f1d1..e5cd46277b 100644
--- a/patches/server/0811-Preserve-overstacked-loot.patch
+++ b/patches/server/0811-Preserve-overstacked-loot.patch
@@ -10,10 +10,10 @@ chunk bans via the large amount of NBT created by unstacking the items.
Fixes GH-5140 and GH-4748.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 0a611df010c9c5e621f10ae55a0ce66fd0cae0e2..0906a2d410e11cb352b13e5c0390560085b8f254 100644
+index f1b1e0455806443cd55c350f9b4f74ef8f3a1158..00e302a278c1aef17596a5f1b91230614b13ceb2 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-@@ -932,6 +932,11 @@ public class PaperWorldConfig {
+@@ -935,6 +935,11 @@ public class PaperWorldConfig {
allowPlayerCrammingDamage = getBoolean("allow-player-cramming-damage", allowPlayerCrammingDamage);
}