diff --git a/patches/server/Fix-curing-zombie-villager-discount-exploit.patch b/patches/server/Fix-curing-zombie-villager-discount-exploit.patch deleted file mode 100644 index 9afb4b15dd..0000000000 --- a/patches/server/Fix-curing-zombie-villager-discount-exploit.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: BillyGalbreath -Date: Tue, 8 Dec 2020 20:14:20 -0600 -Subject: [PATCH] Fix curing zombie villager discount exploit - -This fixes the exploit used to gain absurd trading discounts with infecting -and curing a villager on repeat by simply resetting the relevant part of -the reputation when it is cured. - -diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 ---- a/src/main/java/net/minecraft/world/entity/npc/Villager.java -+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java -@@ -0,0 +0,0 @@ public class Villager extends AbstractVillager implements ReputationEventHandler - @Override - public void onReputationEventFrom(ReputationEventType interaction, Entity entity) { - if (interaction == ReputationEventType.ZOMBIE_VILLAGER_CURED) { -+ // Paper start - fix MC-181190 -+ if (this.level().paperConfig().fixes.fixCuringZombieVillagerDiscountExploit) { -+ final GossipContainer.EntityGossips playerReputation = this.getGossips().gossips.get(entity.getUUID()); -+ if (playerReputation != null) { -+ playerReputation.remove(GossipType.MAJOR_POSITIVE); -+ playerReputation.remove(GossipType.MINOR_POSITIVE); -+ } -+ } -+ // Paper end - this.gossips.add(entity.getUUID(), GossipType.MAJOR_POSITIVE, 20); - this.gossips.add(entity.getUUID(), GossipType.MINOR_POSITIVE, 25); - } else if (interaction == ReputationEventType.TRADE) { diff --git a/patches/server/Paper-config-files.patch b/patches/server/Paper-config-files.patch index b2e4d7a8c7..61748d90e3 100644 --- a/patches/server/Paper-config-files.patch +++ b/patches/server/Paper-config-files.patch @@ -1310,7 +1310,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + path("use-async-lighting"), + path("tnt-explosion-volume"), + path("entities", "spawning", "despawn-ranges", "soft"), -+ path("entities", "spawning", "despawn-ranges", "hard") ++ path("entities", "spawning", "despawn-ranges", "hard"), ++ path("fixes", "fix-curing-zombie-villager-discount-exploit") + }; + + NodePath[] REMOVED_GLOBAL_PATHS = { @@ -1779,7 +1780,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + public boolean disableUnloadedChunkEnderpearlExploit = true; + public boolean preventTntFromMovingInWater = false; + public boolean splitOverstackedLoot = true; -+ public boolean fixCuringZombieVillagerDiscountExploit = true; + public IntOr.Disabled fallingBlockHeightNerf = IntOr.Disabled.DISABLED; + public IntOr.Disabled tntEntityHeightNerf = IntOr.Disabled.DISABLED; + }