Skip to content

Commit 4907125

Browse files
committed
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@fa0dd15d add missed nullability annotations PaperMC/Paper@b6d70a9c Generators PaperMC/Paper@b92137c1 load the PDC for new block entities PaperMC/Paper@06a26ec2 update legacy test PaperMC/Paper@c4f0b2b0 update more test PaperMC/Paper@77382fcb fix unbreakable shields PaperMC/Paper@9e08de6e Re-add old SmithingTrimRecipe constructors PaperMC/Paper@d2afd149 Bump some more numbers to 1.21.5 PaperMC/Paper@cf1455e5 Ignore private methods in MaterialReroutingTest PaperMC/Paper@ce91a8ca Move out unapplied feature patches
1 parent 73e0e17 commit 4907125

18 files changed

+74
-72
lines changed

gradle.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
22
version = 1.21.5-R0.1-SNAPSHOT
33

44
mcVersion = 1.21.5
5-
paperCommit = 95beb8c0bc785cf6bdd8ce9de097666cb572deb9
5+
paperCommit = ce91a8ca123f4e853629d08705e4ece3a09a5a4d
66

77
org.gradle.configuration-cache = true
88
org.gradle.caching = true

purpur-api/build.gradle.kts.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@
44
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
55
}
66

7-
-val generatedApiPath: java.nio.file.Path = layout.projectDirectory.dir("src/generated/java").asFile.toPath()
8-
+val generatedApiPath: java.nio.file.Path = rootProject.layout.projectDirectory.dir("paper-api/src/generated/java").asFile.toPath()
7+
-val generatedDir: java.nio.file.Path = layout.projectDirectory.dir("src/generated/java").asFile.toPath()
8+
+val generatedDir: java.nio.file.Path = rootProject.layout.projectDirectory.dir("paper-api/src/generated/java").asFile.toPath()
99
idea {
1010
module {
11-
generatedSourceDirs.add(generatedApiPath.toFile())
11+
generatedSourceDirs.add(generatedDir.toFile())
1212
@@ -103,6 +_,18 @@
1313
main {
1414
java {
15-
srcDir(generatedApiPath)
15+
srcDir(generatedDir)
1616
+ srcDir(file("../paper-api/src/main/java"))
1717
+ }
1818
+ resources {

purpur-api/paper-patches/files/src/main/java/org/bukkit/Material.java.patch

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/src/main/java/org/bukkit/Material.java
22
+++ b/src/main/java/org/bukkit/Material.java
3-
@@ -5812,4 +_,40 @@
3+
@@ -3632,4 +_,40 @@
44
return this.asItemType().getDefaultDataTypes();
55
}
66
// Paper end - data component API

purpur-api/paper-patches/files/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java.patch

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
22
+++ b/src/main/java/org/bukkit/enchantments/EnchantmentTarget.java
3-
@@ -227,6 +_,30 @@
3+
@@ -230,6 +_,30 @@
44
public boolean includes(@NotNull Material item) {
55
return BREAKABLE.includes(item) || (WEARABLE.includes(item) && !item.equals(Material.ELYTRA)) || item.equals(Material.COMPASS);
66
}

purpur-api/paper-patches/files/src/main/java/org/bukkit/entity/Villager.java.patch

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/src/main/java/org/bukkit/entity/Villager.java
22
+++ b/src/main/java/org/bukkit/entity/Villager.java
3-
@@ -365,4 +_,13 @@
3+
@@ -391,4 +_,13 @@
44
* reputation regardless of its impact and the player associated.
55
*/
66
public void clearReputations();

purpur-api/paper-patches/files/src/main/java/org/bukkit/entity/Wolf.java.patch

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/src/main/java/org/bukkit/entity/Wolf.java
22
+++ b/src/main/java/org/bukkit/entity/Wolf.java
3-
@@ -138,4 +_,20 @@
3+
@@ -164,4 +_,20 @@
44
return RegistryAccess.registryAccess().getRegistry(RegistryKey.WOLF_SOUND_VARIANT).getOrThrow(NamespacedKey.minecraft(key));
55
}
66
}

purpur-server/build.gradle.kts.patch

+16-14
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
--- a/paper-server/build.gradle.kts
22
+++ b/paper-server/build.gradle.kts
3-
@@ -24,6 +_,16 @@
3+
@@ -28,6 +_,18 @@
44
// oldPaperCommit = "f4f275519f7c1fbe9db173b7144a4fe81440e365"
55
//}
66

7+
+ // Purpur start - Rebrand
78
+ val purpur = forks.register("purpur") {
89
+ upstream.patchDir("paperServer") {
910
+ upstreamPath = "paper-server"
@@ -13,16 +14,17 @@
1314
+ }
1415
+ }
1516
+ activeFork = purpur
17+
+ // Purpur end - Rebrand
1618
+
1719
spigot {
1820
buildDataRef = "702e1a0a5072b2c4082371d5228cb30525687efc"
19-
packageVersion = "v1_21_R3" // also needs to be updated in MappingEnvironment
20-
@@ -104,7 +_,21 @@
21+
packageVersion = "v1_21_R4" // also needs to be updated in MappingEnvironment
22+
@@ -108,7 +_,21 @@
2123
}
2224
}
2325

2426
-val log4jPlugins = sourceSets.create("log4jPlugins")
25-
+
27+
+// Purpur start - Rebrand
2628
+sourceSets {
2729
+ main {
2830
+ java { srcDir("../paper-server/src/main/java") }
@@ -33,23 +35,23 @@
3335
+ resources { srcDir("../paper-server/src/test/resources") }
3436
+ }
3537
+}
36-
+
3738
+val log4jPlugins = sourceSets.create("log4jPlugins") {
3839
+ java { srcDir("../paper-server/src/log4jPlugins/java") }
3940
+}
41+
+// Purpur end - Rebrand
4042
configurations.named(log4jPlugins.compileClasspathConfigurationName) {
4143
extendsFrom(configurations.compileClasspath.get())
4244
}
43-
@@ -122,7 +_,7 @@
45+
@@ -130,7 +_,7 @@
4446
}
4547

4648
dependencies {
4749
- implementation(project(":paper-api"))
48-
+ implementation(project(":purpur-api"))
50+
+ implementation(project(":purpur-api")) // Purpur
4951
implementation("ca.spottedleaf:concurrentutil:0.0.3")
5052
implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+
5153
implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21
52-
@@ -153,6 +_,10 @@
54+
@@ -162,6 +_,10 @@
5355
runtimeOnly("com.mysql:mysql-connector-j:9.1.0")
5456
runtimeOnly("com.lmax:disruptor:3.4.4")
5557

@@ -60,23 +62,23 @@
6062
runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.6")
6163
runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18")
6264
runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
63-
@@ -192,14 +_,14 @@
65+
@@ -201,14 +_,14 @@
6466
val gitBranch = git.exec(providers, "rev-parse", "--abbrev-ref", "HEAD").get().trim()
6567
attributes(
6668
"Main-Class" to "org.bukkit.craftbukkit.Main",
6769
- "Implementation-Title" to "Paper",
68-
+ "Implementation-Title" to "Purpur",
70+
+ "Implementation-Title" to "Purpur", // Purpur
6971
"Implementation-Version" to implementationVersion,
7072
"Implementation-Vendor" to date,
7173
- "Specification-Title" to "Paper",
72-
+ "Specification-Title" to "Purpur",
74+
+ "Specification-Title" to "Purpur", // Purpur
7375
"Specification-Version" to project.version,
7476
- "Specification-Vendor" to "Paper Team",
7577
- "Brand-Id" to "papermc:paper",
7678
- "Brand-Name" to "Paper",
77-
+ "Specification-Vendor" to "Purpur Team",
78-
+ "Brand-Id" to "purpurmc:purpur",
79-
+ "Brand-Name" to "Purpur",
79+
+ "Specification-Vendor" to "Purpur Team", // Purpur
80+
+ "Brand-Id" to "purpurmc:purpur", // Purpur
81+
+ "Brand-Name" to "Purpur", // Purpur
8082
"Build-Number" to (build ?: ""),
8183
"Build-Time" to buildTime.toString(),
8284
"Git-Branch" to gitBranch,

purpur-server/minecraft-patches/features/0001-Ridables.patch

+8-8
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ index f34bc75f324454bf48f0ebf79111706bb027a54b..6ad266592c16bdeccfb689fb2ef2ee37
3030
/* Drop global time updates
3131
if (this.tickCount % 20 == 0) {
3232
diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
33-
index fae2e1af2ea59b82b552bfc33c853e0e33ec90bc..f681d0766a3fec9e05396fe82111e9e99f751823 100644
33+
index 0e7405a480bffa81493ef2f2078c36ccda542cde..bc5c30430e79e2feb69c165d9e3e9b6a899b66ea 100644
3434
--- a/net/minecraft/server/level/ServerLevel.java
3535
+++ b/net/minecraft/server/level/ServerLevel.java
3636
@@ -212,6 +212,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
@@ -75,10 +75,10 @@ index 63e01ec7e4ab04bb7d389bff485dfedca344bfa2..84b1570d0d88f57f33ff8179f0a78d37
7575
if ((target instanceof net.minecraft.world.entity.animal.Bucketable && target instanceof LivingEntity && origItem != null && origItem == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelectedItem().isEmpty() || !ServerGamePacketListenerImpl.this.player.getInventory().getSelectedItem().is(origItem))) {
7676
target.resendPossiblyDesyncedEntityData(ServerGamePacketListenerImpl.this.player); // Paper - The entire mob gets deleted, so resend it
7777
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
78-
index 7b48f633223cc5e760c5c80d40424e04d791c43a..fc8fbfa5709895456f5aa0c480acedb8707b2ff5 100644
78+
index d1899b2411e90b4641dcbc58760e4a19b62846c5..1335a04edd053c06e290c070e3c03d02598d97e7 100644
7979
--- a/net/minecraft/world/entity/Entity.java
8080
+++ b/net/minecraft/world/entity/Entity.java
81-
@@ -2855,6 +2855,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
81+
@@ -2856,6 +2856,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
8282
this.passengers = ImmutableList.copyOf(list);
8383
}
8484

@@ -92,7 +92,7 @@ index 7b48f633223cc5e760c5c80d40424e04d791c43a..fc8fbfa5709895456f5aa0c480acedb8
9292
this.gameEvent(GameEvent.ENTITY_MOUNT, passenger);
9393
}
9494
}
95-
@@ -2896,6 +2903,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
95+
@@ -2897,6 +2904,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
9696
return false;
9797
}
9898
// CraftBukkit end
@@ -107,7 +107,7 @@ index 7b48f633223cc5e760c5c80d40424e04d791c43a..fc8fbfa5709895456f5aa0c480acedb8
107107
if (this.passengers.size() == 1 && this.passengers.get(0) == passenger) {
108108
this.passengers = ImmutableList.of();
109109
} else {
110-
@@ -4822,4 +4837,44 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
110+
@@ -4823,4 +4838,44 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
111111
return ((ServerLevel) this.level()).isPositionEntityTicking(this.blockPosition());
112112
}
113113
// Paper end - Expose entity id counter
@@ -177,7 +177,7 @@ index bda521cca91f070139f5e9bdef6a50e1497f53ff..351f92e1627f465a9a292d4a5e5c256a
177177
protected ParticleOptions getInkParticle() {
178178
return ParticleTypes.GLOW_SQUID_INK;
179179
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
180-
index 4d65d88c59a8536d27ec61c65373ab21fa534b3b..e5f296bf3671afd82ab76493646938783b53eef6 100644
180+
index a077e2f518be39bbdba4919ed7161bb28547e56b..a4a19d962bc4665e9368b97cae4b2534da33de91 100644
181181
--- a/net/minecraft/world/entity/LivingEntity.java
182182
+++ b/net/minecraft/world/entity/LivingEntity.java
183183
@@ -226,9 +226,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -210,7 +210,7 @@ index 4d65d88c59a8536d27ec61c65373ab21fa534b3b..e5f296bf3671afd82ab7649364693878
210210

211211
@Override
212212
protected void checkFallDamage(double y, boolean onGround, BlockState state, BlockPos pos) {
213-
@@ -3578,8 +3579,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
213+
@@ -3577,8 +3578,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
214214
this.pushEntities();
215215
profilerFiller.pop();
216216
// Paper start - Add EntityMoveEvent
@@ -223,7 +223,7 @@ index 4d65d88c59a8536d27ec61c65373ab21fa534b3b..e5f296bf3671afd82ab7649364693878
223223
Location from = new Location(this.level().getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO);
224224
Location to = new Location(this.level().getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
225225
io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
226-
@@ -3589,6 +3592,21 @@ public abstract class LivingEntity extends Entity implements Attackable {
226+
@@ -3588,6 +3591,21 @@ public abstract class LivingEntity extends Entity implements Attackable {
227227
this.absSnapTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
228228
}
229229
}

purpur-server/minecraft-patches/features/0009-Implement-elytra-settings.patch

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
55

66

77
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
8-
index af03e75f445bff6dfe56f89fb422b5662a21c962..3ec3e89b0b53ebde5e1eaa49e28b6bacfe781085 100644
8+
index df244fa0eb463aa80da39c930eb16c85481e014a..bdae20191d2e5765761442eb06924968e710b189 100644
99
--- a/net/minecraft/world/entity/LivingEntity.java
1010
+++ b/net/minecraft/world/entity/LivingEntity.java
11-
@@ -3644,7 +3644,18 @@ public abstract class LivingEntity extends Entity implements Attackable {
11+
@@ -3643,7 +3643,18 @@ public abstract class LivingEntity extends Entity implements Attackable {
1212
.filter(equipmentSlot1 -> canGlideUsing(this.getItemBySlot(equipmentSlot1), equipmentSlot1))
1313
.toList();
1414
EquipmentSlot equipmentSlot = Util.getRandom(list, this.random);

purpur-server/minecraft-patches/features/0016-Add-mobGriefing-bypass-to-everything-affected.patch

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected
55

66

77
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
8-
index 3ec3e89b0b53ebde5e1eaa49e28b6bacfe781085..36636e35cfb3751d448ee330b51e5ab7c44c6014 100644
8+
index bdae20191d2e5765761442eb06924968e710b189..476b570ffe9d2df173bd57b57fe65372cb35fa1d 100644
99
--- a/net/minecraft/world/entity/LivingEntity.java
1010
+++ b/net/minecraft/world/entity/LivingEntity.java
11-
@@ -1905,7 +1905,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
11+
@@ -1904,7 +1904,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
1212
if (this.level() instanceof ServerLevel serverLevel) {
1313
boolean var6 = false;
1414
if (this.dead && entitySource instanceof WitherBoss) { // Paper

purpur-server/minecraft-patches/features/0019-API-for-any-mob-to-burn-daylight.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ Subject: [PATCH] API for any mob to burn daylight
66
Co-authored by: Encode42 <[email protected]>
77

88
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
9-
index d4e989889ed21e3900062eed142f26a9bdaaa8d9..66c4047a35be22803b38a9249b74ae32dcb98748 100644
9+
index 1335a04edd053c06e290c070e3c03d02598d97e7..7148e8c6deeb1e5f99eb6d2fe6c0fc9583e44934 100644
1010
--- a/net/minecraft/world/entity/Entity.java
1111
+++ b/net/minecraft/world/entity/Entity.java
12-
@@ -414,6 +414,24 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
12+
@@ -415,6 +415,24 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
1313
}
1414
// Purpur end - Add canSaveToDisk to Entity
1515

@@ -35,7 +35,7 @@ index d4e989889ed21e3900062eed142f26a9bdaaa8d9..66c4047a35be22803b38a9249b74ae32
3535
this.type = entityType;
3636
this.level = level;
3737
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
38-
index 2a7434872472b950fe09bfe8f5f334d9964b51d6..a92ef9269b59305334ed1a8f1b253493e2223306 100644
38+
index 476b570ffe9d2df173bd57b57fe65372cb35fa1d..4586d7afb4f0a27c7d61abb80af24205d46cb83f 100644
3939
--- a/net/minecraft/world/entity/LivingEntity.java
4040
+++ b/net/minecraft/world/entity/LivingEntity.java
4141
@@ -273,6 +273,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -62,7 +62,7 @@ index 2a7434872472b950fe09bfe8f5f334d9964b51d6..a92ef9269b59305334ed1a8f1b253493
6262
this.lastHurtByPlayer = EntityReference.read(compound, "last_hurt_by_player");
6363
this.lastHurtByPlayerMemoryTime = compound.getIntOr("last_hurt_by_player_memory_time", 0);
6464
this.lastHurtByMob = EntityReference.read(compound, "last_hurt_by_mob");
65-
@@ -3615,6 +3618,32 @@ public abstract class LivingEntity extends Entity implements Attackable {
65+
@@ -3614,6 +3617,32 @@ public abstract class LivingEntity extends Entity implements Attackable {
6666
if (this.level() instanceof ServerLevel serverLevel && this.isSensitiveToWater() && this.isInWaterOrRain()) {
6767
this.hurtServer(serverLevel, this.damageSources().drown(), 1.0F);
6868
}

purpur-server/minecraft-patches/sources/net/minecraft/core/BlockPos.java.patch

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
--- a/net/minecraft/core/BlockPos.java
22
+++ b/net/minecraft/core/BlockPos.java
3-
@@ -61,6 +_,12 @@
4-
private static final int X_OFFSET = PACKED_Y_LENGTH + PACKED_HORIZONTAL_LENGTH;
5-
public static final int MAX_HORIZONTAL_COORDINATE = (1 << PACKED_HORIZONTAL_LENGTH) / 2 - 1;
3+
@@ -63,6 +_,12 @@
4+
public static final int MAX_HORIZONTAL_COORDINATE = 33554431;
5+
// Paper end - Optimize Bit Operations by inlining
66

77
+ // Purpur start - Ridables
88
+ public BlockPos(net.minecraft.world.entity.Entity entity) {

purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
--- a/net/minecraft/server/level/ServerPlayerGameMode.java
22
+++ b/net/minecraft/server/level/ServerPlayerGameMode.java
3-
@@ -347,6 +_,7 @@
3+
@@ -348,6 +_,7 @@
44
}
55
return false;
66
}
77
+ if (this.player.level().purpurConfig.slabHalfBreak && this.player.isShiftKeyDown() && blockState.getBlock() instanceof net.minecraft.world.level.block.SlabBlock && ((net.minecraft.world.level.block.SlabBlock) blockState.getBlock()).halfBreak(blockState, pos, this.player)) return true; // Purpur - Break individual slabs when sneaking
88
}
99
// CraftBukkit end
1010

11-
@@ -460,6 +_,7 @@
11+
@@ -461,6 +_,7 @@
1212
public InteractionHand interactHand;
1313
public ItemStack interactItemStack;
1414
public InteractionResult useItemOn(ServerPlayer player, Level level, ItemStack stack, InteractionHand hand, BlockHitResult hitResult) {
1515
+ if (shiftClickMended(stack)) return InteractionResult.SUCCESS; // Purpur - Shift right click to use exp for mending
1616
BlockPos blockPos = hitResult.getBlockPos();
1717
BlockState blockState = level.getBlockState(blockPos);
1818
boolean cancelledBlock = false;
19-
@@ -502,7 +_,7 @@
19+
@@ -503,7 +_,7 @@
2020
boolean flag = !player.getMainHandItem().isEmpty() || !player.getOffhandItem().isEmpty();
2121
boolean flag1 = player.isSecondaryUseActive() && flag;
2222
ItemStack itemStack = stack.copy();
@@ -25,7 +25,7 @@
2525
InteractionResult interactionResult = blockState.useItemOn(player.getItemInHand(hand), level, player, hand, hitResult);
2626
if (interactionResult.consumesAction()) {
2727
CriteriaTriggers.ITEM_USED_ON_BLOCK.trigger(player, blockPos, itemStack);
28-
@@ -548,4 +_,18 @@
28+
@@ -549,4 +_,18 @@
2929
public void setLevel(ServerLevel serverLevel) {
3030
this.level = serverLevel;
3131
}

purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
22
+++ b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
3-
@@ -308,7 +_,7 @@
3+
@@ -306,7 +_,7 @@
44
ServerLoginPacketListenerImpl.LOGGER.warn("Failed to verify username but will let them in anyway!");
55
ServerLoginPacketListenerImpl.this.startClientVerification(ServerLoginPacketListenerImpl.this.createOfflineProfile(string1)); // Spigot
66
} else {

0 commit comments

Comments
 (0)