Skip to content
This repository has been archived by the owner on Apr 21, 2023. It is now read-only.

Commit

Permalink
Updated Upstream (Paper & Purpur)
Browse files Browse the repository at this point in the history
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@046466f Re-arrange most chunk system patches to front (#8338)
PaperMC/Paper@e8c2c3b Fix World#refreshChunk not working for chunks in no-tick range

Purpur Changes:
PurpurMC/Purpur@ff8e329 Updated Upstream (Paper)
  • Loading branch information
actions-user committed Sep 2, 2022
1 parent 64413ce commit 7a49961
Show file tree
Hide file tree
Showing 12 changed files with 129 additions and 130 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
group = net.prismarineteam.prismarine
version = 1.19.2-R0.1-SNAPSHOT

paperCommit = eff22eb0541559f05cf9a8c370d70c3b346f80f6
paperCommit = e8c2c3bfda97143e33dbd35bd9dee528bb51d93c

org.gradle.caching = true
org.gradle.parallel = true
Expand Down
2 changes: 1 addition & 1 deletion patches/api/0001-Pufferfish-API-Changes.patch
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: AlphaKR93 <alphakr93@outlook.com>
Date: Thu, 1 Sep 2022 06:08:23 +0000
Date: Fri, 2 Sep 2022 03:57:36 +0000
Subject: [PATCH] Pufferfish API Changes

Original by Kevin Raneri <kevin.raneri@gmail.com>
Expand Down
2 changes: 1 addition & 1 deletion patches/api/0002-Purpur-API-Changes.patch
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: AlphaKR93 <alphakr93@outlook.com>
Date: Thu, 1 Sep 2022 06:10:26 +0000
Date: Fri, 2 Sep 2022 03:59:49 +0000
Subject: [PATCH] Purpur API Changes

Original by PurpurMC Team
Expand Down
42 changes: 21 additions & 21 deletions patches/server/0001-Pufferfish-Server-Changes.patch
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: AlphaKR93 <alphakr93@outlook.com>
Date: Thu, 1 Sep 2022 06:08:23 +0000
Date: Fri, 2 Sep 2022 03:57:36 +0000
Subject: [PATCH] Pufferfish Server Changes

Original by Kevin Raneri <kevin.raneri@gmail.com>
Expand Down Expand Up @@ -2771,10 +2771,10 @@ index 47b5f75d9f27cf3ab947fd1f69cbd609fb9f2749..85882eeb86d7b74db0219aa65783946d
public ChunkHolder.FullChunkStatus status;

diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java
index 7034af8ad42940c5af6b9032b9873ce36c55a2a7..c0fdc5a79107f8694a514a12d5526bd431fc45e9 100644
index 6939ef9b1fe782980e77c351d8a385a573d6a8e6..e9f0ddf1a34bf3b0d868b53e4439d9d9851ad4d6 100644
--- a/src/main/java/net/minecraft/server/MCUtil.java
+++ b/src/main/java/net/minecraft/server/MCUtil.java
@@ -209,7 +209,7 @@ public final class MCUtil {
@@ -207,7 +207,7 @@ public final class MCUtil {
}

public static long getCoordinateKey(final Entity entity) {
Expand Down Expand Up @@ -2835,7 +2835,7 @@ index bdd6560fe85950b0a857a949cb38c044da44ca6b..519883c5549744e047a8a96afee14274
}
}
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682eb02f820 100644
index c2c01988bf3b6fbb0a7a4716373c2ff0cffce27d..5fdef81245cb3cc686225cfd7c5ce13b011503ef 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -471,7 +471,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
Expand All @@ -2847,7 +2847,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682
// Paper start - use distance map to optimise entity tracker
this.playerEntityTrackerTrackMaps = new com.destroystokyo.paper.util.misc.PlayerAreaMap[TRACKING_RANGE_TYPES.length];
this.entityTrackerTrackRanges = new int[TRACKING_RANGE_TYPES.length];
@@ -2079,8 +2079,36 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2077,8 +2077,36 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
entity.tracker = null; // Paper - We're no longer tracked
}

Expand Down Expand Up @@ -2884,7 +2884,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682
this.level.timings.tracker1.startTiming();
try {
for (TrackedEntity tracker : this.entityMap.values()) {
@@ -2351,11 +2379,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2349,11 +2377,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider

public class TrackedEntity {

Expand All @@ -2899,7 +2899,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682

public TrackedEntity(Entity entity, int i, int j, boolean flag) {
this.serverEntity = new ServerEntity(ChunkMap.this.level, entity, j, flag, this::broadcast, this.seenBy); // CraftBukkit
@@ -2367,7 +2395,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2365,7 +2393,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
// Paper start - use distance map to optimise tracker
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> lastTrackerCandidates;

Expand All @@ -2908,7 +2908,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> oldTrackerCandidates = this.lastTrackerCandidates;
this.lastTrackerCandidates = newTrackerCandidates;

@@ -2439,7 +2467,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2437,7 +2465,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
}

public void removePlayer(ServerPlayer player) {
Expand All @@ -2917,7 +2917,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682
if (this.seenBy.remove(player.connection)) {
this.serverEntity.removePairing(player);
}
@@ -2447,7 +2475,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2445,7 +2473,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
}

public void updatePlayer(ServerPlayer player) {
Expand All @@ -2926,7 +2926,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682
if (player != this.entity) {
// Paper start - remove allocation of Vec3D here
// Vec3 vec3d = player.position().subtract(this.entity.position());
@@ -2479,8 +2507,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2477,8 +2505,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance);
}

Expand Down Expand Up @@ -2955,7 +2955,7 @@ index 649355158ed435e242a48f4aaa4578bcc2a808dd..df4a6288e23df19706112cea5058d682
Iterator iterator = this.entity.getIndirectPassengers().iterator();

while (iterator.hasNext()) {
@@ -2492,6 +2540,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -2490,6 +2538,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
i = j;
}
}
Expand All @@ -2979,7 +2979,7 @@ index ca42c2642a729b90d22b968af7258f3aee72e14b..7613510e5f4c22ee15651f162fe1bca1
public boolean visible = true;

diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index 59acbf6249f8f5285504c0ddea448a3433d1d68d..378cc1f9e19eb9b18037ab8af92f65897e15a405 100644
index ea1b8f4fd49678f39b1036ae6be880bacc6997f8..40094f8ed5e04eed0378c68120c918af05090601 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -75,6 +75,9 @@ public class ServerChunkCache extends ChunkSource {
Expand All @@ -2992,15 +2992,15 @@ index 59acbf6249f8f5285504c0ddea448a3433d1d68d..378cc1f9e19eb9b18037ab8af92f6589

private static int getChunkCacheKey(int x, int z) {
return x & 3 | ((z & 3) << 2);
@@ -962,6 +965,7 @@ public class ServerChunkCache extends ChunkSource {
@@ -783,6 +786,7 @@ public class ServerChunkCache extends ChunkSource {
ProfilerFiller gameprofilerfiller = this.level.getProfiler();

gameprofilerfiller.push("pollingChunks");
+ this.level.resetIceAndSnowTick(); // Pufferfish - reset ice & snow tick random
int k = this.level.getGameRules().getInt(GameRules.RULE_RANDOMTICKING);
boolean flag1 = level.ticksPerSpawnCategory.getLong(org.bukkit.entity.SpawnCategory.ANIMAL) != 0L && worlddata.getGameTime() % level.ticksPerSpawnCategory.getLong(org.bukkit.entity.SpawnCategory.ANIMAL) == 0L; // CraftBukkit

@@ -971,18 +975,25 @@ public class ServerChunkCache extends ChunkSource {
@@ -792,18 +796,25 @@ public class ServerChunkCache extends ChunkSource {
// Paper start - per player mob spawning
NaturalSpawner.SpawnState spawnercreature_d; // moved down
if ((this.spawnFriendlies || this.spawnEnemies) && this.chunkMap.playerMobDistanceMap != null) { // don't count mobs when animals and monsters are disabled
Expand Down Expand Up @@ -3032,7 +3032,7 @@ index 59acbf6249f8f5285504c0ddea448a3433d1d68d..378cc1f9e19eb9b18037ab8af92f6589
gameprofilerfiller.popPush("filteringLoadedChunks");
// Paper - moved down
this.level.timings.chunkTicks.startTiming(); // Paper
@@ -1020,8 +1031,8 @@ public class ServerChunkCache extends ChunkSource {
@@ -841,8 +852,8 @@ public class ServerChunkCache extends ChunkSource {

if ((true || this.level.isNaturalSpawningAllowed(chunkcoordintpair)) && this.chunkMap.anyPlayerCloseEnoughForSpawning(holder, chunkcoordintpair, false)) { // Paper - optimise anyPlayerCloseEnoughForSpawning // Paper - replace player chunk loader system
chunk1.incrementInhabitedTime(j);
Expand All @@ -3043,7 +3043,7 @@ index 59acbf6249f8f5285504c0ddea448a3433d1d68d..378cc1f9e19eb9b18037ab8af92f6589
}

if (true || this.level.shouldTickBlocksAt(chunkcoordintpair.toLong())) { // Paper - replace player chunk loader system
@@ -1083,6 +1094,30 @@ public class ServerChunkCache extends ChunkSource {
@@ -904,6 +915,30 @@ public class ServerChunkCache extends ChunkSource {
}
// Paper end - controlled flush for entity tracker packets
}
Expand Down Expand Up @@ -3146,10 +3146,10 @@ index 3b144c820531122eb37d41be06c182b5f5dc0724..88152988425b7b02ec5ce229ba4c24b4

set.clear();
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3d986805c89d22330d6ad1e09760940b2f399214..0c71d72fb04eb00e159ddd456df82376fc912b4e 100644
index 96bb0e56f12437037b598cd7baabf369e5994517..8ed9f14f1ca71111a8215b28821bd5e398c0d0a6 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -693,7 +693,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -695,7 +695,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
}

gameprofilerfiller.push("tick");
Expand All @@ -3171,7 +3171,7 @@ index 3d986805c89d22330d6ad1e09760940b2f399214..0c71d72fb04eb00e159ddd456df82376
gameprofilerfiller.pop();
}
}
@@ -760,9 +773,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -762,9 +775,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
// Paper start - optimise random block ticking
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
Expand All @@ -3184,7 +3184,7 @@ index 3d986805c89d22330d6ad1e09760940b2f399214..0c71d72fb04eb00e159ddd456df82376
public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
ChunkPos chunkcoordintpair = chunk.getPos();
boolean flag = this.isRaining();
@@ -773,7 +788,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -775,7 +790,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
gameprofilerfiller.push("thunder");
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change

Expand All @@ -3193,7 +3193,7 @@ index 3d986805c89d22330d6ad1e09760940b2f399214..0c71d72fb04eb00e159ddd456df82376
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
if (this.isRainingAt(blockposition)) {
DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
@@ -797,7 +812,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -799,7 +814,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}

gameprofilerfiller.popPush("iceandsnow");
Expand Down
Loading

0 comments on commit 7a49961

Please sign in to comment.