diff --git a/TODO.md b/TODO.md index 51e25a5a6..013d45858 100644 --- a/TODO.md +++ b/TODO.md @@ -3,4 +3,7 @@ - [ ] test player ridable underwater - [ ] OPTIONAL: custom damage type instead of magic for scissors & stone cutter patch - [ ] re-introduce armor equipable through right-click patch, flip the boolean to follow vanilla feature parity -- [ ] flip the boolean in the "display names from item forms of entities to entities" patch to keep feature parity with vanilla +- [x] flip the boolean in the "display names from item forms of entities to entities" patch to keep feature parity with vanilla + +### once above is complete: +- [ ] make announcement about flipped defaults ("persistent-droppable-entity-display-names", "set-name-visible-when-placing-with-custom-name") diff --git a/patches/server/0105-Apply-display-names-from-item-forms-of-entities-to-e.patch b/patches/server/0105-Apply-display-names-from-item-forms-of-entities-to-e.patch index 8fd011f8d..3b67b326a 100644 --- a/patches/server/0105-Apply-display-names-from-item-forms-of-entities-to-e.patch +++ b/patches/server/0105-Apply-display-names-from-item-forms-of-entities-to-e.patch @@ -136,14 +136,14 @@ index b2ad6d230de2c29f371178bccde1111c7532ee70..6667926519a0f1c151e53f59cce36e74 if (((HangingEntity) object).survives()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index eeb5f3d5c108eef5a43dc68f75b4b2147c28f560..8e703215419d865276d53083e88e60d9eb131af5 100644 +index d7669999bcf294c71c4238ccbeade1cdddd59400..c54c236df83d4c44388155423fb90eb0369859b8 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -99,8 +99,10 @@ public class PurpurWorldConfig { } public float armorstandStepHeight = 0.0F; -+ public boolean armorstandSetNameVisible = false; ++ public boolean armorstandSetNameVisible = true; private void armorstandSettings() { armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight); + armorstandSetNameVisible = getBoolean("gameplay-mechanics.armorstand.set-name-visible-when-placing-with-custom-name", armorstandSetNameVisible); @@ -154,7 +154,7 @@ index eeb5f3d5c108eef5a43dc68f75b4b2147c28f560..8e703215419d865276d53083e88e60d9 public boolean disableDropsOnCrammingDeath = false; public boolean entitiesCanUsePortals = true; public boolean milkCuresBadOmen = true; -+ public boolean persistentDroppableEntityDisplayNames = false; ++ public boolean persistentDroppableEntityDisplayNames = true; public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; diff --git a/patches/server/0106-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch b/patches/server/0106-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch index 922060ca7..a65158169 100644 --- a/patches/server/0106-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch +++ b/patches/server/0106-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch @@ -17,13 +17,13 @@ index 623f78c078fb3aa2665d7e8a37672438227bce6b..500c69e555c7247e20ef8cc59d834155 ((Mob) newEntityLiving).setPersistenceRequired(); // Paper end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 8e703215419d865276d53083e88e60d9eb131af5..a4222bab7b624077c76e918f730f1a953eb629a1 100644 +index c54c236df83d4c44388155423fb90eb0369859b8..0ad3060844347541efe021e5cdc1703c0fc0740f 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -100,9 +100,11 @@ public class PurpurWorldConfig { public float armorstandStepHeight = 0.0F; - public boolean armorstandSetNameVisible = false; + public boolean armorstandSetNameVisible = true; + public boolean armorstandFixNametags = false; private void armorstandSettings() { armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight); diff --git a/patches/server/0124-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0124-Add-mobGriefing-bypass-to-everything-affected.patch index 03c4f1398..74be3b87a 100644 --- a/patches/server/0124-Add-mobGriefing-bypass-to-everything-affected.patch +++ b/patches/server/0124-Add-mobGriefing-bypass-to-everything-affected.patch @@ -374,7 +374,7 @@ index 1942649e868fc985a488034c411a6721595ecc67..7495e0e8beedad59fff24ebf189b58b3 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 8f7f57238578409db62286274ed2e33e58d09458..adf0e0f34f7fd4d38e6a801fa3f20dbfe4769c99 100644 +index e4a4632628d0426f558823e245be942763104191..553a3996e7d5eb350d070bd53162cde1e571b5de 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -117,8 +117,11 @@ public class PurpurWorldConfig { @@ -384,7 +384,7 @@ index 8f7f57238578409db62286274ed2e33e58d09458..adf0e0f34f7fd4d38e6a801fa3f20dbf + public boolean entitiesPickUpLootBypassMobGriefing = false; + public boolean fireballsBypassMobGriefing = false; public boolean milkCuresBadOmen = true; - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; + public boolean projectilesBypassMobGriefing = false; public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; diff --git a/patches/server/0125-Config-to-allow-Note-Block-sounds-when-blocked.patch b/patches/server/0125-Config-to-allow-Note-Block-sounds-when-blocked.patch index 58c26b2a7..59ecc0b99 100644 --- a/patches/server/0125-Config-to-allow-Note-Block-sounds-when-blocked.patch +++ b/patches/server/0125-Config-to-allow-Note-Block-sounds-when-blocked.patch @@ -22,7 +22,7 @@ index 42e8e2d9d673947ecbfb55e0f31fc22afe3223b6..0b5ce2db558e721807944d9d0f672a77 // org.bukkit.event.block.NotePlayEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callNotePlayEvent(world, pos, state.getValue(NoteBlock.INSTRUMENT), state.getValue(NoteBlock.NOTE)); // if (event.isCancelled()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 730c5227e3bab35999375acd7cd0a33ad17fc3ce..61af817befd10c164421ab8b3b8e306a0d391213 100644 +index 553a3996e7d5eb350d070bd53162cde1e571b5de..9d7b84fb02b6673fbd547ec7fd46b0a9b57c7a19 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -120,6 +120,7 @@ public class PurpurWorldConfig { @@ -30,7 +30,7 @@ index 730c5227e3bab35999375acd7cd0a33ad17fc3ce..61af817befd10c164421ab8b3b8e306a public boolean fireballsBypassMobGriefing = false; public boolean milkCuresBadOmen = true; + public boolean noteBlockIgnoreAbove = false; - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; public boolean projectilesBypassMobGriefing = false; public double tridentLoyaltyVoidReturnHeight = 0.0D; @@ -136,6 +137,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0126-Add-EntityTeleportHinderedEvent.patch b/patches/server/0126-Add-EntityTeleportHinderedEvent.patch index 934f98a8b..efc2512b6 100644 --- a/patches/server/0126-Add-EntityTeleportHinderedEvent.patch +++ b/patches/server/0126-Add-EntityTeleportHinderedEvent.patch @@ -74,7 +74,7 @@ index 690d498a97b943a62e8ea415450ca44a2349fee0..43ca8471d7d4d2d561cba7e2a952a16e blockEntity.teleportCooldown = 100; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 57c05450bab104273c6532b6534568df0284a5d8..6a057d638a67d69b5261b8a264c661d982c995d5 100644 +index fa6938626c64ed17a2f56739d5801494ea6f3be1..df33bd0c97faa3c7eb4ab6cbe7286f6a9aaa37d6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -586,6 +586,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -104,7 +104,7 @@ index 17ea58f45f4bc4eb8bbbeadd6f25a477061d1617..9cf61d67d5e8f364ab68b26044daf243 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 61af817befd10c164421ab8b3b8e306a0d391213..f46bb02b960acfa596541b9b243aa277557ca4ef 100644 +index 9d7b84fb02b6673fbd547ec7fd46b0a9b57c7a19..4a89a59996c154dbab5f3e3c541cf0c5ec8b7fe3 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -119,6 +119,7 @@ public class PurpurWorldConfig { @@ -114,7 +114,7 @@ index 61af817befd10c164421ab8b3b8e306a0d391213..f46bb02b960acfa596541b9b243aa277 + public boolean imposeTeleportRestrictionsOnGateways = false; public boolean milkCuresBadOmen = true; public boolean noteBlockIgnoreAbove = false; - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; @@ -136,6 +137,7 @@ public class PurpurWorldConfig { entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals); entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing); diff --git a/patches/server/0128-Movement-options-for-armor-stands.patch b/patches/server/0128-Movement-options-for-armor-stands.patch index 0641675f1..a52ba156d 100644 --- a/patches/server/0128-Movement-options-for-armor-stands.patch +++ b/patches/server/0128-Movement-options-for-armor-stands.patch @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5cdce4da91905c955d1daf2490338bbc4a1461c5..a952685ec8907fe4ad0fb9f12855679e0983d9ca 100644 +index ebd4007797bda63e276056bee1eb85b08bc40309..a466eb10690bc0fe204815d758cc69798ce94f13 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1711,7 +1711,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -66,12 +66,12 @@ index 5b4523320de59167bd5864b2f17187590afb5ad6..88949e8ca7e4a5e74a8a365bb1aa6d46 + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 76404c262c07c5644aa9830bb63f0fc34a9ebe29..6ebc9259107efa55298f0f99cac8e07f79a8b83e 100644 +index 076aeb4d30dcf968a6c84af9da091e72ec547c78..7836da33836986cec3f0aac1dee2ec01a9c568d4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -101,10 +101,16 @@ public class PurpurWorldConfig { public float armorstandStepHeight = 0.0F; - public boolean armorstandSetNameVisible = false; + public boolean armorstandSetNameVisible = true; public boolean armorstandFixNametags = false; + public boolean armorstandMovement = true; + public boolean armorstandWaterMovement = true; diff --git a/patches/server/0141-Tick-fluids-config.patch b/patches/server/0141-Tick-fluids-config.patch index b3611f391..e4a6e15af 100644 --- a/patches/server/0141-Tick-fluids-config.patch +++ b/patches/server/0141-Tick-fluids-config.patch @@ -36,12 +36,12 @@ index 43e8ef1d6a65d4fd3fe53a587639ffb814368217..9c22a730772f71b34c63d1e43d48943f } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 7be8a006914ac746e92f683b785eef4a5de308e2..d287d56cd606087cee9dcd7f6baabd593976ab42 100644 +index 9ba266c8fb5a96ec636e93193febe65fb94590f7..953151e0ad7bb7e427b36dafe6f9bc26e02d56bf 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -131,6 +131,7 @@ public class PurpurWorldConfig { public boolean noteBlockIgnoreAbove = false; - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; public boolean projectilesBypassMobGriefing = false; + public boolean tickFluids = true; public double tridentLoyaltyVoidReturnHeight = 0.0D; diff --git a/patches/server/0165-Configurable-mob-blindness.patch b/patches/server/0165-Configurable-mob-blindness.patch index a815870ab..26952bc90 100644 --- a/patches/server/0165-Configurable-mob-blindness.patch +++ b/patches/server/0165-Configurable-mob-blindness.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable mob blindness Ported from https://github.com/raltsmc/mobblindness diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index d161596f42fc7f720436a3d08ad59fe1393433b0..4938c289ea20f9f922e48d9b9f25caadb8c0f5b9 100644 +index 6a61f90e116e5cbb5b457ebb26438714151c25c9..08f520fe9d793309e3b315f2dc25ed44e0d22af8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1020,6 +1020,17 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -28,11 +28,11 @@ index d161596f42fc7f720436a3d08ad59fe1393433b0..4938c289ea20f9f922e48d9b9f25caad return d0; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ce92ab1a31c000a66b8bf45651563f2e8c0c5a9b..8c4b7ad4af57e2547b0e01032e8b6a8341cdb2ba 100644 +index c3eabb051fa65df6963a44e61f40e8ac39778b05..28f8b37bc47fe374e5be44cbc115f1741dd6c7ac 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -134,6 +134,7 @@ public class PurpurWorldConfig { - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; public boolean projectilesBypassMobGriefing = false; public boolean tickFluids = true; + public double mobsBlindnessMultiplier = 1; diff --git a/patches/server/0227-Persistent-BlockEntity-Lore-and-DisplayName.patch b/patches/server/0227-Persistent-BlockEntity-Lore-and-DisplayName.patch index bea97fa9f..92c91ad49 100644 --- a/patches/server/0227-Persistent-BlockEntity-Lore-and-DisplayName.patch +++ b/patches/server/0227-Persistent-BlockEntity-Lore-and-DisplayName.patch @@ -195,13 +195,13 @@ index 1b248db497500aa6bd346b306dcb908af77626f3..64c55f3ebdbc27f7f0cea38247ff7b35 + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 613dffca78f5120d0c905e62f2f60b1763cd0c55..fcce194a3a01db4b2433e83d808b2bb7672c3640 100644 +index a4c0bd8d50355c71b459ce46e91ae89d3a49e130..b4fa9ea3bd991a52f4ed5ad9f3e6bb586cf0e639 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -132,6 +132,7 @@ public class PurpurWorldConfig { public boolean milkCuresBadOmen = true; public boolean noteBlockIgnoreAbove = false; - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; + public boolean persistentTileEntityDisplayNames = false; public boolean projectilesBypassMobGriefing = false; public boolean tickFluids = true; diff --git a/patches/server/0291-Milk-Keeps-Beneficial-Effects.patch b/patches/server/0291-Milk-Keeps-Beneficial-Effects.patch index 0d56978d8..2cbd433ac 100644 --- a/patches/server/0291-Milk-Keeps-Beneficial-Effects.patch +++ b/patches/server/0291-Milk-Keeps-Beneficial-Effects.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Milk Keeps Beneficial Effects diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index a0500cab65501a7a0ac2e8aa0efacc3105731c6b..7c3e5ec2503be1206955ddcc2374a2673b91f3da 100644 +index 64ddf35722640fa764b6b508196f0303676193cb..70b52346a42daaa82a56d324ad3290971692da6d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1108,6 +1108,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -17,7 +17,7 @@ index a0500cab65501a7a0ac2e8aa0efacc3105731c6b..7c3e5ec2503be1206955ddcc2374a267 if (event.isCancelled()) { continue; diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java -index 62e6028cce6b7867b4f68ac6760fd78791101a55..829d64041fb1ab1774e9318b3f3268aba59c5eb3 100644 +index 2e9dd920e5c3943cba4c53ec2a2b48eeaf3889a7..076326de62f395cb932dae33e73703a7ee7c84a7 100644 --- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java @@ -113,7 +113,7 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill @@ -30,7 +30,7 @@ index 62e6028cce6b7867b4f68ac6760fd78791101a55..829d64041fb1ab1774e9318b3f3268ab this.goalSelector.addGoal(1, new TradeWithPlayerGoal(this)); this.goalSelector.addGoal(1, new AvoidEntityGoal<>(this, Zombie.class, 8.0F, 0.5D, 0.5D)); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 80d042bddc4f51eadeca3a8efe190f6936516fc9..6c0136eb8c8b7815aa07bc6614e052c8cab257a3 100644 +index daa23852c1aa4981715bead42db82b766d402a97..87255f33094ed9718327321a3a0e85e3aef2dc9a 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -130,6 +130,7 @@ public class PurpurWorldConfig { @@ -39,7 +39,7 @@ index 80d042bddc4f51eadeca3a8efe190f6936516fc9..6c0136eb8c8b7815aa07bc6614e052c8 public boolean milkCuresBadOmen = true; + public boolean milkClearsBeneficialEffects = true; public boolean noteBlockIgnoreAbove = false; - public boolean persistentDroppableEntityDisplayNames = false; + public boolean persistentDroppableEntityDisplayNames = true; public boolean persistentTileEntityDisplayNames = false; @@ -156,6 +157,7 @@ public class PurpurWorldConfig { fireballsBypassMobGriefing = getBoolean("gameplay-mechanics.fireballs-bypass-mob-griefing", fireballsBypassMobGriefing);