Compare commits

...

2 Commits

Author SHA1 Message Date
9b193ef9ee Cleanup and reauthor patches 2024-02-13 15:52:00 -06:00
fb7262b998 Update Paper 2024-02-13 15:40:57 -06:00
24 changed files with 45 additions and 66 deletions

View File

@ -2,7 +2,7 @@ group=me.totalfreedom.scissors
version=1.20.4-R0.1-SNAPSHOT
mcVersion=1.20.4
paperRef=cde5587e58f08ce2d8875bb9d13a4be56825e353
paperRef=31699ae9a8f3a57491e9c9276cffa5a51e9a5f60
org.gradle.caching=true
org.gradle.parallel=true

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add Scissors configuration file
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 9af4bc16da09e59009c47911219e99450cdf2aa5..94244872f7cd6b4a6df709c0f68b1f484538c159 100644
index b4f8281d3797ec825a7671f38077cd65d5a1d76e..da2c8e7f9c905f99f8bd72f9da52f34121561d99 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -2198,6 +2198,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -2214,6 +2214,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
}
// Paper end

View File

@ -95,7 +95,7 @@ index c5d5648f4ca603ef2b1df723b58f9caf4dd3c722..21ded7c14c56a40feaa7741131be5166
.completer(new ConsoleCommandCompleter(this.server))
.option(LineReader.Option.COMPLETE_IN_WORD, true);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 90ae7e8c81f6a9ede8aeaeec3bf784023522cefc..e45581fca389f9f9ffb417d1cb2675c52999c454 100644
index d06185566b447c432d4dc2e3ba04d121bcdbc71b..d5ade9e928a00d18b6dc8a3a9c5679f7b161a2fc 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1855,7 +1855,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@ -108,10 +108,10 @@ index 90ae7e8c81f6a9ede8aeaeec3bf784023522cefc..e45581fca389f9f9ffb417d1cb2675c5
public SystemReport fillSystemReport(SystemReport details) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index b83c2f1e0ea117eecda94cb51b0ea5bba4d7ab5e..feabece25250b95df8274f2e96e12243a5755ec6 100644
index 9f7ed337463cc9bb370a5541d9de5cd8f9c1a78a..55ffdca92ee796fb949de939bb759e09f25242ff 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper
@@ -266,7 +266,7 @@ import javax.annotation.Nullable; // Paper
import javax.annotation.Nonnull; // Paper
public final class CraftServer implements Server {

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Video <videogamesm12@gmail.com>
Date: Sun, 10 Dec 2023 13:11:22 -0600
Subject: [PATCH] UUID validation

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Video <videogamesm12@gmail.com>
Date: Sun, 10 Dec 2023 16:57:48 -0600
Subject: [PATCH] Fixes log spam caused by invalid entities in beehives

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Video <videogamesm12@gmail.com>
Date: Wed, 24 Jan 2024 16:28:16 -0600
Subject: [PATCH] ResourceLocation validation

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Video <videogamesm12@gmail.com>
Date: Sun, 10 Dec 2023 16:58:55 -0600
Subject: [PATCH] Removes useless spammy error logging

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Luna <lunahatesgogle@gmail.com>
Date: Sun, 10 Dec 2023 17:13:15 -0600
Subject: [PATCH] Do not log invalid items in HoverEvent and ItemFrame

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Video <videogamesm12@gmail.com>
Date: Sun, 10 Dec 2023 17:26:11 -0600
Subject: [PATCH] Better handling of invalid JSON components
@ -93,10 +93,10 @@ index 186547674894fd084bceb478bb6017b747df4173..74c880425964da042ca57c097eb93273
}
}).reduce((accumulator, current) -> {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 9ee1e3da1cb16291ff3e37829e25227a6b97a177..1772313459992523eefd6b05bfb0b7ee33114469 100644
index 906eded9a2ab61737a30cfe89292a71237ce4eb7..ea36187ed37d59edd2481de79372599a85f04e97 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2525,11 +2525,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2529,11 +2529,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (nbt.contains("CustomName", 8)) {
String s = nbt.getString("CustomName");

View File

@ -426,7 +426,7 @@ index 61840cfd64caba6595dfc99c91c76a195638d4ee..9acd9ecac6d72701835e04a17fddade7
if (optionset.has("initSettings")) { // CraftBukkit
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 2ecf79086e9e8069f43120e9146e98962a75eca8..5d3c324fd3224944639a3cfa808e89a8a8519b8d 100644
index 68d268b6fff126e8645b6deec3fb549ea2286b77..5cb58e351d38b7214e2002bf608512024744f0ee 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -222,6 +222,16 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@ -447,10 +447,10 @@ index 2ecf79086e9e8069f43120e9146e98962a75eca8..5d3c324fd3224944639a3cfa808e89a8
this.setFlightAllowed(dedicatedserverproperties.allowFlight);
this.setMotd(dedicatedserverproperties.motd);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index cc96cc142f37c5aa6ce8a1ce5e84e81ec33b78e1..66f1b9006cce0ea699e866d41eda5b40a5914438 100644
index 55ffdca92ee796fb949de939bb759e09f25242ff..76189b4aba89c36b2d1a4fc397435de746d95f05 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1041,6 +1041,7 @@ public final class CraftServer implements Server {
@@ -1053,6 +1053,7 @@ public final class CraftServer implements Server {
}
org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot
@ -458,7 +458,7 @@ index cc96cc142f37c5aa6ce8a1ce5e84e81ec33b78e1..66f1b9006cce0ea699e866d41eda5b40
this.console.paperConfigurations.reloadConfigs(this.console);
for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
@@ -1072,6 +1073,7 @@ public final class CraftServer implements Server {
@@ -1084,6 +1085,7 @@ public final class CraftServer implements Server {
this.reloadData();
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper
@ -466,7 +466,7 @@ index cc96cc142f37c5aa6ce8a1ce5e84e81ec33b78e1..66f1b9006cce0ea699e866d41eda5b40
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
@@ -3001,6 +3003,14 @@ public final class CraftServer implements Server {
@@ -3013,6 +3015,14 @@ public final class CraftServer implements Server {
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
}

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: ayunami2000 <spwilliamsiam@gmail.com>
Date: Thu, 25 Jan 2024 23:48:51 -0600
Subject: [PATCH] Block server-side chunkbans

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Video <videogamesm12@gmail.com>
Date: Sun, 10 Dec 2023 17:39:52 -0600
Subject: [PATCH] Don't query player data in the `nbt` component

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Fix negative death times
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 6523795e715e5d472739e9bc6433143115c3de8f..12d6c53adcdf773ff95190c7936a3c5a3f26e9bf 100644
index 902c0e7f2a167845f46adef4578bc71ca8cabfe8..454099b94ecf0f93f4d646610696b7af212b2170 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -627,7 +627,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -628,7 +628,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
protected void tickDeath() {
++this.deathTime;

View File

@ -59,7 +59,7 @@ index 4092c7a8c2b0d9d26e6f4d97386735236300d132..04c47cf1a920ae6c356449df801227ee
}
}
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index ed27a963223bfe18310ad5adabf461b5e307ef9c..1af25c1e91e1a93c6c6c8445a1d9fbeb4f15916b 100644
index 1ad126d992d95062a3db08374db7a927f23a0cac..345fb9722f1dc8293809256d3bb87b8964b54164 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -23,6 +23,7 @@ import java.util.function.Predicate;
@ -70,7 +70,7 @@ index ed27a963223bfe18310ad5adabf461b5e307ef9c..1af25c1e91e1a93c6c6c8445a1d9fbeb
import net.minecraft.ChatFormatting;
import net.minecraft.Util;
import net.minecraft.advancements.CriteriaTriggers;
@@ -277,6 +278,12 @@ public final class ItemStack {
@@ -278,6 +279,12 @@ public final class ItemStack {
// CraftBukkit - break into own method
private void load(CompoundTag nbttagcompound) {
@ -83,7 +83,7 @@ index ed27a963223bfe18310ad5adabf461b5e307ef9c..1af25c1e91e1a93c6c6c8445a1d9fbeb
this.item = (Item) BuiltInRegistries.ITEM.get(new ResourceLocation(nbttagcompound.getString("id")));
this.count = nbttagcompound.getByte("Count");
if (nbttagcompound.contains("tag", 10)) {
@@ -584,7 +591,11 @@ public final class ItemStack {
@@ -585,7 +592,11 @@ public final class ItemStack {
nbt.putString("id", minecraftkey == null ? "minecraft:air" : minecraftkey.toString());
nbt.putByte("Count", (byte) this.count);
if (this.tag != null) {
@ -96,7 +96,7 @@ index ed27a963223bfe18310ad5adabf461b5e307ef9c..1af25c1e91e1a93c6c6c8445a1d9fbeb
}
return nbt;
@@ -918,6 +929,7 @@ public final class ItemStack {
@@ -919,6 +930,7 @@ public final class ItemStack {
// Paper end
public void setTag(@Nullable CompoundTag nbt) {
@ -164,7 +164,7 @@ index 416aa989ebb18a8741cc9d605a1180ab830f6643..a9a8c9e68e5b767dec2c26495685da88
}
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java
index bc01481ac5990ad1cfd1def5a16dd0ed2f9de8c9..5948d7f87c2f2021345d58db18ec1c996ae8bf7a 100644
index 9bb542ce3a8c52e1688bb1f66fc916dd23a5fd10..bdbe623ec5d3a5471e909c9933cf556a796354b6 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java
@@ -3,6 +3,7 @@ package net.minecraft.world.level.block.entity;

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Don't log invalid teams to console
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 12d6c53adcdf773ff95190c7936a3c5a3f26e9bf..d9603cfc81b2f0b77a85a5dd99ae2db013937b14 100644
index 454099b94ecf0f93f4d646610696b7af212b2170..0cadc29b9741b339d9a86f51b2009a645d0584c0 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -860,7 +860,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -861,7 +861,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
boolean flag = scoreboardteam != null && this.level().getScoreboard().addPlayerToTeam(this.getStringUUID(), scoreboardteam);
if (!flag) {

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Allink <arclicious@vivaldi.net>
Date: Sun, 10 Dec 2023 18:11:55 -0600
Subject: [PATCH] Add MasterBlockFireEvent

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Allink <arclicious@vivaldi.net>
Date: Tue, 23 Jan 2024 19:04:22 -0600
Subject: [PATCH] Fix ClickEvents on Signs bypassing permissions

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Allink <arclicious@vivaldi.net>
Date: Sun, 10 Dec 2023 18:41:18 -0600
Subject: [PATCH] Prevent velocity freeze

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Allink <arclicious@vivaldi.net>
Date: Sun, 10 Dec 2023 18:48:55 -0600
Subject: [PATCH] Add configuration option to disable chat signatures

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Luna <lunahatesgogle@gmail.com>
Date: Sun, 10 Dec 2023 18:57:50 -0600
Subject: [PATCH] Patch large selector distance crash

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Patch invalid entity rotation log spam
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index fc6cff4121db4c08452817df846286103fe23ad9..3594e87329b99a2741749df04ac577a8fbe1a2fa 100644
index ea36187ed37d59edd2481de79372599a85f04e97..133ce42e3c6574bdf922b43f7ab9516f79cbf64e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4732,7 +4732,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4735,7 +4735,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public void setXRot(float pitch) {
if (!Float.isFinite(pitch)) {

View File

@ -1,5 +1,5 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Telesphoreo <me@telesphoreo.me>
From: Allink <arclicious@vivaldi.net>
Date: Mon, 11 Dec 2023 12:27:44 -0600
Subject: [PATCH] Implement command block events

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add depth limit to Component deserialization
diff --git a/src/main/java/net/minecraft/network/chat/Component.java b/src/main/java/net/minecraft/network/chat/Component.java
index ba13650b52e39c9cc5cfa421f7720c7d4ba75678..f500b4aa5aaea89a2a878afe70d386f044401be4 100644
index ba13650b52e39c9cc5cfa421f7720c7d4ba75678..df3c03aeaee5c12c5d57584535c9c7aa01be7dd3 100644
--- a/src/main/java/net/minecraft/network/chat/Component.java
+++ b/src/main/java/net/minecraft/network/chat/Component.java
@@ -3,9 +3,11 @@ package net.minecraft.network.chat;
@ -47,26 +47,14 @@ index ba13650b52e39c9cc5cfa421f7720c7d4ba75678..f500b4aa5aaea89a2a878afe70d386f0
import java.util.stream.Stream;
// CraftBukkit end
@@ -272,7 +278,8 @@ public interface Component extends Message, FormattedText, Iterable<Component> {
public static class SerializerAdapter implements JsonDeserializer<MutableComponent>, JsonSerializer<Component> {
- public SerializerAdapter() {}
+ public SerializerAdapter() {
+ }
public MutableComponent deserialize(JsonElement jsonelement, Type type, JsonDeserializationContext jsondeserializationcontext) throws JsonParseException {
return Component.Serializer.deserialize(jsonelement);
@@ -286,10 +293,66 @@ public interface Component extends Message, FormattedText, Iterable<Component> {
@@ -286,10 +292,65 @@ public interface Component extends Message, FormattedText, Iterable<Component> {
public static class Serializer {
private static final Gson GSON = (new GsonBuilder()).disableHtmlEscaping().create();
+ private static final Pattern PLACEHOLDER_PATTERN = Pattern.compile("%[0-9]+\\$s"); // Scissors
+
+ private Serializer() {
+ }
- private Serializer() {}
private Serializer() {}
+ // Scissors start
+ static int depthChecker(int depth) {
+ depth = depth + 1;
@ -83,7 +71,7 @@ index ba13650b52e39c9cc5cfa421f7720c7d4ba75678..f500b4aa5aaea89a2a878afe70d386f0
+ }
+ return 0;
+ }
+
static MutableComponent deserialize(JsonElement json) {
+ int depth = 1;
+ if (!json.isJsonPrimitive()) {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add depth limit to updateCustomBlockEntityTag
diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java
index 8d2c0accadaf0c5d28e7db6e62a05f6c619cf02f..a59b3e5dde7325e43b8041bccc51d370fdc17c55 100644
index 8d2c0accadaf0c5d28e7db6e62a05f6c619cf02f..75d31897711cf5917bc6f8082edddbb502c46a95 100644
--- a/src/main/java/net/minecraft/world/item/BlockItem.java
+++ b/src/main/java/net/minecraft/world/item/BlockItem.java
@@ -4,12 +4,19 @@ import java.util.Iterator;
@ -19,7 +19,7 @@ index 8d2c0accadaf0c5d28e7db6e62a05f6c619cf02f..a59b3e5dde7325e43b8041bccc51d370
import java.util.stream.Stream;
import javax.annotation.Nullable;
+
+import me.totalfreedom.scissors.ScissorsConfig;
+import me.totalfreedom.scissors.ScissorsConfig; // Scissors
import net.minecraft.advancements.CriteriaTriggers;
import net.minecraft.core.BlockPos;
import net.minecraft.nbt.CompoundTag;
@ -28,15 +28,6 @@ index 8d2c0accadaf0c5d28e7db6e62a05f6c619cf02f..a59b3e5dde7325e43b8041bccc51d370
import net.minecraft.network.chat.Component;
import net.minecraft.server.MinecraftServer;
import net.minecraft.server.level.ServerLevel;
@@ -98,7 +105,7 @@ public class BlockItem extends Item {
iblockdata1 = this.updateBlockStateFromTag(blockposition, world, itemstack, iblockdata1);
// Paper start - Reset placed block on exception
try {
- this.updateCustomBlockEntityTag(blockposition, world, entityhuman, itemstack, iblockdata1);
+ this.updateCustomBlockEntityTag(blockposition, world, entityhuman, itemstack, iblockdata1);
} catch (Exception e) {
oldBlockstate.update(true, false);
if (entityhuman instanceof ServerPlayer player) {
@@ -240,6 +247,35 @@ public class BlockItem extends Item {
if (nbttagcompound != null) {
BlockEntity tileentity = world.getBlockEntity(pos);