diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index fc4b96d71..7e843f41e 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -237,12 +237,21 @@ into most IDEs and formatters by default. There are a few notes, however:
## Patch Notes
-When submitting patches to Purpur, we may ask you to add notes to the patch
-header. While we do not require it for all changes, you should add patch notes
-when the changes you're making are technical, complex, or require an explanation
-of some kind. It is very likely that your patch will remain long after we've all
-forgotten about the details of your PR; patch notes will help us maintain it
-without having to dig back through GitHub history looking for your PR.
+When submitting patches to Purpur, they should be prefixed with a type (`[feat]`,
+`[fix]`, `[meta]`, `[refactor]`, `[perf]`). The type should also appear in your PR title.
+
+This lets us and users:
+
+* know what type of PR it is
+* know what the patches do at a glance
+* categorize the patches
+
+We also ask you to add notes to the patch header. You should add patch notes even
+if the changes you're making aren't technical or complex. These notes are there
+for both the users of the software and us, so it's not difficult to figure out
+what the patch does. It is very likely that your patch will remain long after
+we've all forgotten about the details of your PR; patch notes will help us
+maintain it without having to dig back through GitHub history looking for your PR.
These notes should express the intent of your patch, as well as any pertinent
technical details we should keep in mind long-term. Ultimately, they exist to
@@ -447,4 +456,4 @@ everything like usual.
> in Windows like described here:
>
-[MiniMappingViewer]: https://minidigger.github.io/MiniMappingViewer/
\ No newline at end of file
+[MiniMappingViewer]: https://minidigger.github.io/MiniMappingViewer/
diff --git a/patches/server/0001-Airplane-Server-Changes.patch b/patches/server/0001-META-Airplane-Server-Changes.patch
similarity index 99%
rename from patches/server/0001-Airplane-Server-Changes.patch
rename to patches/server/0001-META-Airplane-Server-Changes.patch
index bd50f8628..eea12d403 100644
--- a/patches/server/0001-Airplane-Server-Changes.patch
+++ b/patches/server/0001-META-Airplane-Server-Changes.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Initial Source
Date: Fri, 16 Jul 2021 17:11:36 -0500
-Subject: [PATCH] Airplane Server Changes
+Subject: [PATCH] |META| Airplane Server Changes
Copyright (C) 2020 Technove LLC
diff --git a/patches/server/0002-Change-Airplane-defaults-closer-to-vanilla.patch b/patches/server/0002-META-Change-Airplane-defaults-closer-to-vanilla.patch
similarity index 93%
rename from patches/server/0002-Change-Airplane-defaults-closer-to-vanilla.patch
rename to patches/server/0002-META-Change-Airplane-defaults-closer-to-vanilla.patch
index 12b2ec104..5dee11f96 100644
--- a/patches/server/0002-Change-Airplane-defaults-closer-to-vanilla.patch
+++ b/patches/server/0002-META-Change-Airplane-defaults-closer-to-vanilla.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Wed, 18 Aug 2021 13:53:37 -0500
-Subject: [PATCH] Change Airplane defaults closer to vanilla
+Subject: [PATCH] |META| Change Airplane defaults closer to vanilla
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
-index 25f1656a47037b0245cdd32e475b41e64dbad1de..c6dd2567ac88c7bfff0a23201752fa6561f2565b 100644
+index 3cb9e223c90f97aa106ee1e9512d33897a6bac1a..7037f868f0e925a79fbf6be8f3810d9e75133fda 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -202,7 +202,7 @@ public class PaperConfig {
diff --git a/patches/server/0003-Rebrand.patch b/patches/server/0003-META-Rebrand.patch
similarity index 99%
rename from patches/server/0003-Rebrand.patch
rename to patches/server/0003-META-Rebrand.patch
index 59b996c18..87d98f985 100644
--- a/patches/server/0003-Rebrand.patch
+++ b/patches/server/0003-META-Rebrand.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 4 May 2019 01:02:11 -0500
-Subject: [PATCH] Rebrand
+Subject: [PATCH] |META| Rebrand
+Changes user facing branding to Purpur
diff --git a/build.gradle.kts b/build.gradle.kts
index c1e70d5f127804deabcf626b725390863e896d38..c6b4a4d679614b13215768e0c38b9fe0e9ca76a7 100644
diff --git a/patches/server/0004-Purpur-config-files.patch b/patches/server/0004-META-Purpur-config-files.patch
similarity index 99%
rename from patches/server/0004-Purpur-config-files.patch
rename to patches/server/0004-META-Purpur-config-files.patch
index 839274d3f..406f1fc2b 100644
--- a/patches/server/0004-Purpur-config-files.patch
+++ b/patches/server/0004-META-Purpur-config-files.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 9 May 2019 18:09:43 -0500
-Subject: [PATCH] Purpur config files
+Subject: [PATCH] |META| Purpur config files
+Gets the Purpur configuration system in place
diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java
index f5d01bce4d5547b4aeca96b7962b2090f47ea541..05f1b6d103ec20f196b60944f5bc007384c449f1 100644
diff --git a/patches/server/0005-Purpur-client-support.patch b/patches/server/0005-FEAT-Purpur-client-support.patch
similarity index 98%
rename from patches/server/0005-Purpur-client-support.patch
rename to patches/server/0005-FEAT-Purpur-client-support.patch
index d2a3b07c0..aac20c9ad 100644
--- a/patches/server/0005-Purpur-client-support.patch
+++ b/patches/server/0005-FEAT-Purpur-client-support.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 30 Jul 2021 14:31:25 -0500
-Subject: [PATCH] Purpur client support
+Subject: [PATCH] |FEAT| Purpur client support
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
diff --git a/patches/server/0006-Component-related-conveniences.patch b/patches/server/0006-META-Component-related-conveniences.patch
similarity index 97%
rename from patches/server/0006-Component-related-conveniences.patch
rename to patches/server/0006-META-Component-related-conveniences.patch
index de6b2de16..a554d07cb 100644
--- a/patches/server/0006-Component-related-conveniences.patch
+++ b/patches/server/0006-META-Component-related-conveniences.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 29 Jun 2021 21:37:40 -0500
-Subject: [PATCH] Component related conveniences
+Subject: [PATCH] |META| Component related conveniences
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -103,7 +103,7 @@ index ad9fb50791779a5fe7d22268b71bd10d9c9ff3f0..1c1602f839828252748e1acacfe42c7c
this.server.sendMessage(message, sender);
Iterator iterator = this.players.iterator();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index 732eb171f6a8fe1b02044a00fcf85217c41116ac..3b7d72f035d7fd74971af043294047ff1ed4c95c 100644
+index 598575b540752e050a94ca703a2b135adbb2018c..033ef002588881985a22e9990adb09fa56b28106 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3596,6 +3596,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0007-Ridables.patch b/patches/server/0007-FEAT-Ridables.patch
similarity index 99%
rename from patches/server/0007-Ridables.patch
rename to patches/server/0007-FEAT-Ridables.patch
index dddca0f51..2a81d4e6b 100644
--- a/patches/server/0007-Ridables.patch
+++ b/patches/server/0007-FEAT-Ridables.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 5 Jul 2020 22:19:49 -0500
-Subject: [PATCH] Ridables
+Subject: [PATCH] |FEAT| Ridables
diff --git a/src/main/java/net/minecraft/core/BlockPos.java b/src/main/java/net/minecraft/core/BlockPos.java
diff --git a/patches/server/0008-Configurable-entity-base-attributes.patch b/patches/server/0008-FEAT-Configurable-entity-base-attributes.patch
similarity index 99%
rename from patches/server/0008-Configurable-entity-base-attributes.patch
rename to patches/server/0008-FEAT-Configurable-entity-base-attributes.patch
index eb52acf2c..c139d0b32 100644
--- a/patches/server/0008-Configurable-entity-base-attributes.patch
+++ b/patches/server/0008-FEAT-Configurable-entity-base-attributes.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 10 Dec 2020 16:44:54 -0600
-Subject: [PATCH] Configurable entity base attributes
+Subject: [PATCH] |FEAT| Configurable entity base attributes
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index 33edd0863374b4a7f2b0812879b23533515da447..efcba8ea0ab1f25f6480fe0a3bbe1537764438aa 100644
+index 530d3e8c0377593e973fad65b98f9f484e1ca3bd..3ba4408f172f22bc9a86c5fcc71e01119f85ca07 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -150,7 +150,7 @@ import org.bukkit.plugin.PluginManager;
@@ -34,7 +34,7 @@ index 8f8bc29d847801938e251904b8334b4b31bd21c5..87d01bebbb179eec53323e9e23db011a
@Override
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
-index 69acb18fb715c751e3c3c412dae151fb6a8239b6..a7e0126d1fed75bfa810f405a4dd5b70668bf08e 100644
+index 6515850e975e8bb303fd6ac1fb4a205dd582237f..2f32bb77a31a40dc34da24dda4defe1f3b1b150f 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -287,6 +287,7 @@ public abstract class LivingEntity extends Entity {
diff --git a/patches/server/0009-Timings-stuff.patch b/patches/server/0009-FEAT-Timings-modifications.patch
similarity index 82%
rename from patches/server/0009-Timings-stuff.patch
rename to patches/server/0009-FEAT-Timings-modifications.patch
index 6c1b56a8c..7e6986262 100644
--- a/patches/server/0009-Timings-stuff.patch
+++ b/patches/server/0009-FEAT-Timings-modifications.patch
@@ -1,11 +1,25 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 5 Jun 2020 21:30:19 -0500
-Subject: [PATCH] Timings stuff
+Subject: [PATCH] |FEAT| Timings modifications
+Adds server.properties and purpur.yml to the configs tab in timings.
+Replaces aikar's timings link with purpur's.
+Doesn't include server.properties options that start with "rcon" or
+"query", or equal to "level-seed".
+
+$-----------------------------$
+settings:
+ timings:
+ url:
+ default: https://timings.pl3x.net
+ description: |-
+ The server where timing reports are posted to.
+ To use Aikar's timings server use "http://timings.aikar.co"
+$-----------------------------$
diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java
-index da6a5b1b2f5203a0fab8e4fccd727951df7c9c9a..bca3bc0b8687940dff181bab6a5a2a3c11423358 100644
+index 6e8001c7ff6497c9e5c274a5fe85cc204f3ba4c5..c5803537b23d44bad5f447bd2f98d54226d3e80e 100644
--- a/src/main/java/co/aikar/timings/TimingsExport.java
+++ b/src/main/java/co/aikar/timings/TimingsExport.java
@@ -226,10 +226,14 @@ public class TimingsExport extends Thread {
@@ -46,7 +60,7 @@ index da6a5b1b2f5203a0fab8e4fccd727951df7c9c9a..bca3bc0b8687940dff181bab6a5a2a3c
JSONObject object = new JSONObject();
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
-index 3781e7c23347a5860c448a94bd01cb90979d9d4a..977363508e090ede5191f7dbc4c258bfb0a9c911 100644
+index 2ac56ca31d57991aef4fd77212cd9a537753b8d7..7a580dec61eaf50d57628b30f84d246558266dd1 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -217,7 +217,7 @@ public class PaperConfig {
@@ -59,7 +73,7 @@ index 3781e7c23347a5860c448a94bd01cb90979d9d4a..977363508e090ede5191f7dbc4c258bf
TimingsManager.url += "/";
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index 41134227b3902f6e008f1db7b0803a1f81e7fd6e..b634d1a67b741feadf3f8fda5439a501fef3d132 100644
+index f5cdf3338411650add4a2eb41e0412182b1f6fdf..8747593597ed270400ef3d3f6b141a0fb370f1b4 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -161,4 +161,17 @@ public class PurpurConfig {
diff --git a/patches/server/0010-Barrels-and-enderchests-6-rows.patch b/patches/server/0010-FEAT-Barrels-and-enderchests-have-6-rows.patch
similarity index 92%
rename from patches/server/0010-Barrels-and-enderchests-6-rows.patch
rename to patches/server/0010-FEAT-Barrels-and-enderchests-have-6-rows.patch
index c30286e9c..c134ff924 100644
--- a/patches/server/0010-Barrels-and-enderchests-6-rows.patch
+++ b/patches/server/0010-FEAT-Barrels-and-enderchests-have-6-rows.patch
@@ -1,8 +1,34 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 23 May 2019 21:50:37 -0500
-Subject: [PATCH] Barrels and enderchests 6 rows
+Subject: [PATCH] |FEAT| Barrels and enderchests have 6 rows
+Adds the ability to increase barrel and enderchest inventory sizes
+from 3 rows to 6 rows. Optionally also adds permission based row
+sizes for enderchests for 1 - 6 rows based on permissions.
+
+$-----------------------------$
+settings:
+ blocks:
+ barrel:
+ six-rows:
+ default: false
+ description: |-
+ Barrels should have 6 rows of inventory space instead of 3
+ ender_chest:
+ six-rows:
+ default: false
+ description: |-
+ Ender chests should have 6 rows of inventory space instead of 3
+ use-permissions-for-rows:
+ default: false
+ description: |-
+ Use permission nodes to determine the number of rows allowed.
+ With this setting enabled all players have six rows by default unless otherwise specified using permissions
+
+ Requires settings.blocks.ender_chest.six-rows to be true
+ Requires the purpur.enderchest.rows. permission
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/inventory/ChestMenu.java b/src/main/java/net/minecraft/world/inventory/ChestMenu.java
index e9d9245f7efaaeefc8f107b8016a462ce173816a..56dcc1b6ceaad998be62e3b8c125e8f5e833e4c0 100644
@@ -170,7 +196,7 @@ index f494063ead9c6303fb3ca880aba2a877ae8d83ab..aa4d3a8a51050df14d5df4a494ee6665
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index d6c27e3e0f7c3a574c00dc86bf76f8a4a9dc0213..995c77d2ea5a095d1529fc0507703d64f59028c1 100644
+index 8747593597ed270400ef3d3f6b141a0fb370f1b4..eaff201b75f74a41e14c43d522d7b87faf9296b3 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -174,4 +174,39 @@ public class PurpurConfig {
diff --git a/patches/server/0011-Advancement-API.patch b/patches/server/0011-FEAT-Advancement-API.patch
similarity index 98%
rename from patches/server/0011-Advancement-API.patch
rename to patches/server/0011-FEAT-Advancement-API.patch
index 6f1fd1b39..3758aca09 100644
--- a/patches/server/0011-Advancement-API.patch
+++ b/patches/server/0011-FEAT-Advancement-API.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 31 May 2019 21:24:33 -0500
-Subject: [PATCH] Advancement API
+Subject: [PATCH] |FEAT| Advancement API
+Exposes more advancement internals to the API for plugin use
diff --git a/src/main/java/net/minecraft/advancements/DisplayInfo.java b/src/main/java/net/minecraft/advancements/DisplayInfo.java
index dea17bc7a6e4db470afaaad3c98940297a50e4e4..fcce31f9d575cc7388d8ec4bc2e088c9f4781833 100644
diff --git a/patches/server/0012-Llama-API.patch b/patches/server/0012-FEAT-Llama-API.patch
similarity index 98%
rename from patches/server/0012-Llama-API.patch
rename to patches/server/0012-FEAT-Llama-API.patch
index 5f347ee25..8f9e11f36 100644
--- a/patches/server/0012-Llama-API.patch
+++ b/patches/server/0012-FEAT-Llama-API.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 18 Oct 2019 22:50:12 -0500
-Subject: [PATCH] Llama API
+Subject: [PATCH] |FEAT| Llama API
+Exposes more llama entity internals to the API for plugin use
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java b/src/main/java/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java
index e037d618955de9a213a9cd90752b29d189faace4..34dec0a94840a8865f1d80857ec54a1022ae5b84 100644
diff --git a/patches/server/0013-AFK-API.patch b/patches/server/0013-FEAT-AFK-API.patch
similarity index 90%
rename from patches/server/0013-AFK-API.patch
rename to patches/server/0013-FEAT-AFK-API.patch
index c1d957c30..4db45f2df 100644
--- a/patches/server/0013-AFK-API.patch
+++ b/patches/server/0013-FEAT-AFK-API.patch
@@ -1,8 +1,55 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 8 Aug 2019 15:29:15 -0500
-Subject: [PATCH] AFK API
+Subject: [PATCH] |FEAT| AFK API
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Changes Mojang's player idle timeout feature into an AFK system and
+exposes it to the API for plugin use.
+
+$-----------------------------$
+settings:
+ messages:
+ afk-broadcast-away:
+ default: "§e§o%s is now AFK"
+ description: |-
+ This is the message that gets broadcasted when a user goes AFK (must have
+ player-idle-timeout set greater than 0 & kick-if-idle set as false)
+ afk-broadcast-back:
+ default: "§e§o%s is no longer AFK"
+ description: |-
+ This is the message that gets broadcasted when a user is no longer AFK (must
+ have player-idle-timeout set greater than 0 & kick-if-idle set as false)
+ afk-tab-list-prefix:
+ default: "[AFK] "
+ description: |-
+ The prefix that shows up on the playerlist before someone's name when they're AFK
+world-settings:
+ default:
+ gameplay-mechanics:
+ player:
+ idle-timeout:
+ kick-if-idle:
+ default: true
+ description: |-
+ Kick players if they become idle (see server.properties for player-idle-timeout time)
+ tick-nearby-entities:
+ default: true
+ description: |-
+ Should entities tick normally when nearby players are afk. False will require at
+ least 1 non-afk player in order to tick
+ count-as-sleeping:
+ default: false
+ description: |-
+ Should AFK players count as sleeping? (allows active players to skip night by
+ sleeping, even if AFK players are not in bed)
+ update-tab-list:
+ default: false
+ description: |-
+ Should AFK players have their name updated in the tab list (puts [AFK] in front of their name)
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index d2d2e3c58bd3d08f4e7f6257502ce8c2bca19825..04d2e4e641c12fb259ee7758db81b3544193a2df 100644
diff --git a/patches/server/0014-Bring-back-server-name.patch b/patches/server/0014-FEAT-Bring-back-server-name.patch
similarity index 92%
rename from patches/server/0014-Bring-back-server-name.patch
rename to patches/server/0014-FEAT-Bring-back-server-name.patch
index ec4a870ef..b3ccd5e01 100644
--- a/patches/server/0014-Bring-back-server-name.patch
+++ b/patches/server/0014-FEAT-Bring-back-server-name.patch
@@ -1,8 +1,10 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 26 May 2019 15:19:14 -0500
-Subject: [PATCH] Bring back server name
+Subject: [PATCH] |FEAT| Bring back server name
+Re-adds the `server-name` property to server.properties and exposes
+it to the API for plugin use
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
index 0544ac93513d3a274bfb53bb6120bd598f4d603b..9ce5984fbeba4839290c9d213d441957d38fe835 100644
diff --git a/patches/server/0015-Configurable-server-mod-name.patch b/patches/server/0015-FEAT-Configurable-server-mod-name.patch
similarity index 83%
rename from patches/server/0015-Configurable-server-mod-name.patch
rename to patches/server/0015-FEAT-Configurable-server-mod-name.patch
index de43e2d2d..064f0a498 100644
--- a/patches/server/0015-Configurable-server-mod-name.patch
+++ b/patches/server/0015-FEAT-Configurable-server-mod-name.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 21 Mar 2020 11:47:39 -0500
-Subject: [PATCH] Configurable server mod name
+Subject: [PATCH] |FEAT| Configurable server mod name
+Adds a config option that allows you to modify the server name
+
+$-----------------------------$
+settings:
+ server-mod-name:
+ default: Purpur
+ description: |-
+ The server name that shows up when a client is outdated or when someone opens the debug screen [F3]
+
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index aa1c40af600245e0020b85d292a673683caecba7..adb69ec9916304204930a5988569c20e8a8868f9 100644
diff --git a/patches/server/0016-LivingEntity-safeFallDistance.patch b/patches/server/0016-FEAT-LivingEntity-safeFallDistance.patch
similarity index 95%
rename from patches/server/0016-LivingEntity-safeFallDistance.patch
rename to patches/server/0016-FEAT-LivingEntity-safeFallDistance.patch
index bc7dd90ae..b980e4304 100644
--- a/patches/server/0016-LivingEntity-safeFallDistance.patch
+++ b/patches/server/0016-FEAT-LivingEntity-safeFallDistance.patch
@@ -1,8 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 5 May 2019 12:58:45 -0500
-Subject: [PATCH] LivingEntity safeFallDistance
+Subject: [PATCH] |FEAT| LivingEntity safeFallDistance
+Adds the ability to change the safe fall distance for LivingEntity instances with the API
+
+By default the vanilla safe distance value of 3.0 is used until a plugin changes it
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 2f32bb77a31a40dc34da24dda4defe1f3b1b150f..f7446fdf4c18399a3b3ac5182f1a8fc5bde08919 100644
diff --git a/patches/server/0017-Lagging-threshold.patch b/patches/server/0017-FEAT-Lagging-threshold.patch
similarity index 84%
rename from patches/server/0017-Lagging-threshold.patch
rename to patches/server/0017-FEAT-Lagging-threshold.patch
index 9fd644e75..557f05158 100644
--- a/patches/server/0017-Lagging-threshold.patch
+++ b/patches/server/0017-FEAT-Lagging-threshold.patch
@@ -1,8 +1,19 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 23 Jul 2019 10:07:16 -0500
-Subject: [PATCH] Lagging threshold
+Subject: [PATCH] |FEAT| Lagging threshold
+Adds the config option below that lets you determine what level of TPS is considered lagging.
+
+$-----------------------------$
+settings:
+ lagging-threshold:
+ default: 19.0
+ description: |-
+ Purpur keeps track of when it is lagging in order to have the ability to change behaviors accordingly.
+ This value is that threshold when you want to consider the server to be lagging.
+ Right now this is only used for the mob.villager.brain-ticks setting
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index adb69ec9916304204930a5988569c20e8a8868f9..ce0b5770129d91c7fc1cfa751f9828973444e5fe 100644
diff --git a/patches/server/0018-ItemFactory-getMonsterEgg.patch b/patches/server/0018-FEAT-ItemFactory-getMonsterEgg.patch
similarity index 93%
rename from patches/server/0018-ItemFactory-getMonsterEgg.patch
rename to patches/server/0018-FEAT-ItemFactory-getMonsterEgg.patch
index a46925fa0..ae09f4ffe 100644
--- a/patches/server/0018-ItemFactory-getMonsterEgg.patch
+++ b/patches/server/0018-FEAT-ItemFactory-getMonsterEgg.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 5 Jul 2019 16:36:55 -0500
-Subject: [PATCH] ItemFactory#getMonsterEgg
+Subject: [PATCH] |FEAT| ItemFactory#getMonsterEgg
+Adds and exposes a convenience method to the API to easily get a spawn egg for an EntityType
diff --git a/src/main/java/net/minecraft/world/item/SpawnEggItem.java b/src/main/java/net/minecraft/world/item/SpawnEggItem.java
index b16f338a001254c700fe4e10a5cec0d6dc7bd127..6afba641943717cc9c75420d9f3af1048543a17e 100644
diff --git a/patches/server/0019-PlayerSetSpawnerTypeWithEggEvent.patch b/patches/server/0019-FEAT-PlayerSetSpawnerTypeWithEggEvent.patch
similarity index 95%
rename from patches/server/0019-PlayerSetSpawnerTypeWithEggEvent.patch
rename to patches/server/0019-FEAT-PlayerSetSpawnerTypeWithEggEvent.patch
index 08578abed..ba3f94e1a 100644
--- a/patches/server/0019-PlayerSetSpawnerTypeWithEggEvent.patch
+++ b/patches/server/0019-FEAT-PlayerSetSpawnerTypeWithEggEvent.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 5 Jul 2019 18:21:00 -0500
-Subject: [PATCH] PlayerSetSpawnerTypeWithEggEvent
+Subject: [PATCH] |FEAT| PlayerSetSpawnerTypeWithEggEvent
+Adds a new event to the API that triggers when a player changes a spawner's mob type using a spawner egg
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
index 03371c99c34ba4b2ffde3f6da36f171b582e3c3f..d354b44ecabdd2ce245c224c6e22bfd5c2e58553 100644
diff --git a/patches/server/0020-EMC-MonsterEggSpawnEvent.patch b/patches/server/0020-FEAT-EMC-MonsterEggSpawnEvent.patch
similarity index 97%
rename from patches/server/0020-EMC-MonsterEggSpawnEvent.patch
rename to patches/server/0020-FEAT-EMC-MonsterEggSpawnEvent.patch
index 38f0267fa..b4c68203a 100644
--- a/patches/server/0020-EMC-MonsterEggSpawnEvent.patch
+++ b/patches/server/0020-FEAT-EMC-MonsterEggSpawnEvent.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar
Date: Sat, 20 Jul 2013 22:40:56 -0400
-Subject: [PATCH] EMC - MonsterEggSpawnEvent
+Subject: [PATCH] |FEAT| EMC - MonsterEggSpawnEvent
+Adds a new event that triggers when a mob is spawned using a spawner egg
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
index d354b44ecabdd2ce245c224c6e22bfd5c2e58553..88e556fc543c3143bffc62edf868c9dc44ab2597 100644
diff --git a/patches/server/0021-Player-invulnerabilities.patch b/patches/server/0021-FEAT-Player-invulnerabilities.patch
similarity index 93%
rename from patches/server/0021-Player-invulnerabilities.patch
rename to patches/server/0021-FEAT-Player-invulnerabilities.patch
index 17193e2c5..7a9b87402 100644
--- a/patches/server/0021-Player-invulnerabilities.patch
+++ b/patches/server/0021-FEAT-Player-invulnerabilities.patch
@@ -1,8 +1,25 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 2 May 2020 20:55:44 -0500
-Subject: [PATCH] Player invulnerabilities
+Subject: [PATCH] |FEAT| Player invulnerabilities
+Exposes player invulnerability after spawning to the config.
+
+Also adds a new setting to put a player into invulnerable mode while
+accepting a resource pack so they dont take damage during the loading screen
+
+$-----------------------------$
+gameplay-mechanics:
+ player:
+ spawn-invulnerable-ticks:
+ default: 60
+ description: |-
+ How long in ticks a player is invulnerable when they first spawn in
+ invulnerable-while-accepting-resource-pack:
+ default: false
+ description: |-
+ Sets the player as invulnerable while they download the resource pack
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 04d2e4e641c12fb259ee7758db81b3544193a2df..dafb9dcb3199f217e910a0cd969b863da1df6127 100644
diff --git a/patches/server/0022-Anvil-API.patch b/patches/server/0022-FEAT-Anvil-API.patch
similarity index 98%
rename from patches/server/0022-Anvil-API.patch
rename to patches/server/0022-FEAT-Anvil-API.patch
index b6045a4ce..a07c5bf0d 100644
--- a/patches/server/0022-Anvil-API.patch
+++ b/patches/server/0022-FEAT-Anvil-API.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 19 Apr 2020 00:17:56 -0500
-Subject: [PATCH] Anvil API
+Subject: [PATCH] |FEAT| Anvil API
+Exposes more anvil internals to the API for plugin use
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
index 593e23c10f2b1616db7256158dfe564b2d289df1..3ce51ff7af5b907cc044c9dd5894be1a03dc2719 100644
diff --git a/patches/server/0023-Configurable-villager-brain-ticks.patch b/patches/server/0023-FEAT-Configurable-villager-brain-ticks.patch
similarity index 80%
rename from patches/server/0023-Configurable-villager-brain-ticks.patch
rename to patches/server/0023-FEAT-Configurable-villager-brain-ticks.patch
index 3e949a9d6..a2e2b3552 100644
--- a/patches/server/0023-Configurable-villager-brain-ticks.patch
+++ b/patches/server/0023-FEAT-Configurable-villager-brain-ticks.patch
@@ -1,8 +1,25 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 23 Jul 2019 08:28:21 -0500
-Subject: [PATCH] Configurable villager brain ticks
+Subject: [PATCH] |FEAT| Configurable villager brain ticks
+Controls the number of times a villager's brain can tick. Skipping brain ticks
+leads to less lag, but comes at a cost of slower reaction times.
+
+$-----------------------------$
+mobs:
+ villager:
+ brain-ticks:
+ default: 1
+ description: |-
+ How often (in ticks) should villager's tick their brain logic. Vanilla value is to tick every tick (1).
+ Higher amounts makes them tick less often to reduce lag, but setting it too high could result in unresponsive villagers
+ use-brain-ticks-only-when-lagging:
+ default: true
+ description: |-
+ Only use the brain ticks setting when the server is lagging (see settings.lagging-threshold).
+ If set to false the mobs.villager.brain-ticks setting is always used
+$-----------------------------$
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 682feb6f3c109b0b3034f3942f7dfa73721d359b..14b27c84624467615ad7cc4d5df94cd60fccb8f0 100644
diff --git a/patches/server/0024-Alternative-Keepalive-Handling.patch b/patches/server/0024-FEAT-Alternative-keepalive-handling.patch
similarity index 83%
rename from patches/server/0024-Alternative-Keepalive-Handling.patch
rename to patches/server/0024-FEAT-Alternative-keepalive-handling.patch
index d99965808..48864439b 100644
--- a/patches/server/0024-Alternative-Keepalive-Handling.patch
+++ b/patches/server/0024-FEAT-Alternative-keepalive-handling.patch
@@ -1,8 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 11 Oct 2019 00:17:39 -0500
-Subject: [PATCH] Alternative Keepalive Handling
+Subject: [PATCH] |FEAT| Alternative keepalive handling
+Replaces Mojang's keep-alive packet processing with a completely different implementation.
+
+This new implementation will send out a keep alive packet every 1 second, and if any of these
+packets are responded to within 30 seconds the connection is considered alive and the player
+will not be kicked.
+
+$-----------------------------$
+settings:
+ use-alternate-keepalive:
+ default: false
+ description: |-
+ Uses a different approach to keepalive ping timeouts.
+ Enabling this sends a keepalive packet once per second to a player and only kicks for timeout if none of them were responded to in 30 seconds.
+ Responding to any of them in any order will keep the player connected. AKA, it won't kick your players because 1 packet gets dropped somewhere along the lines
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index c69c663d9f569cf15381ed63031a34a5e2ffac7d..94d526fd0c1e8c68638fdeadf088b70889452d5f 100644
diff --git a/patches/server/0025-Silk-touch-spawners.patch b/patches/server/0025-FEAT-Silk-touch-spawners.patch
similarity index 91%
rename from patches/server/0025-Silk-touch-spawners.patch
rename to patches/server/0025-FEAT-Silk-touch-spawners.patch
index 3f69a17f6..58ac16dbd 100644
--- a/patches/server/0025-Silk-touch-spawners.patch
+++ b/patches/server/0025-FEAT-Silk-touch-spawners.patch
@@ -1,8 +1,41 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 9 May 2019 14:27:37 -0500
-Subject: [PATCH] Silk touch spawners
+Subject: [PATCH] |FEAT| Silk touch spawners
+Adds the ability to mine spawner cages using tools with silk touch enchantment, and
+the ability to place those spawner cages back down without them reverting to pig spawners.
+
+Note: Some plugins may interfere with this (Essentials, CMI, etc). Server admins will have
+to bypass those plugins' features using whatever method is available to them.
+
+$-----------------------------$
+gameplay-mechanics:
+ silk-touch:
+ enabled:
+ default: false
+ description: |-
+ Make it so spawners can be picked up by using the silk touch enchantment
+
+ Requires the purpur.drop.spawners and purpur.place.spawners permissions
+ spawner-name:
+ default: Spawner
+ description: |-
+ The name of the spawner
+ spawner-lore:
+ default: |-
+ - Spawns a {mob}
+ description: |-
+ The lore of the spawner
+ tools:
+ default: |-
+ - minecraft:iron_pickaxe
+ - minecraft:golden_pickaxe
+ - minecraft:diamond_pickaxe
+ - minecraft:netherite_pickaxe
+ description: |-
+ The whitelist of tools that can pick up spawners if they the have silk touch enchantment
+$-----------------------------$
diff --git a/src/main/java/io/papermc/paper/adventure/PaperAdventure.java b/src/main/java/io/papermc/paper/adventure/PaperAdventure.java
index f763a3ea5796737304e0c1f41349622e1d7adadf..26c5c3c6e7c51ad6ccc9bac05e2af4972658179d 100644
diff --git a/patches/server/0026-MC-168772-Fix-Add-turtle-egg-block-options.patch b/patches/server/0026-FIX-FEAT-MC-168772-Turtle-egg-block-options.patch
similarity index 88%
rename from patches/server/0026-MC-168772-Fix-Add-turtle-egg-block-options.patch
rename to patches/server/0026-FIX-FEAT-MC-168772-Turtle-egg-block-options.patch
index cfd83b174..4b70dacfe 100644
--- a/patches/server/0026-MC-168772-Fix-Add-turtle-egg-block-options.patch
+++ b/patches/server/0026-FIX-FEAT-MC-168772-Turtle-egg-block-options.patch
@@ -1,8 +1,26 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 6 Jun 2019 22:15:46 -0500
-Subject: [PATCH] MC-168772 Fix - Add turtle egg block options
+Subject: [PATCH] |FIX| |FEAT| MC-168772 - Turtle egg block options
+Adds configuration options to disable turtle eggs from breaking.
+
+$-----------------------------$
+blocks:
+ turtle_egg:
+ break-from-exp-orbs:
+ default: true
+ description: |-
+ EXP orbs damage/break turtle eggs
+ break-from-items:
+ default: true
+ description: |-
+ Dropped items damage/break turtle eggs
+ break-from-minecarts:
+ default: true
+ description: |-
+ Minecarts damage/break turtle eggs
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/level/block/TurtleEggBlock.java b/src/main/java/net/minecraft/world/level/block/TurtleEggBlock.java
index fdb3ab919a78221605257ae82bfd026346ce2ffb..e98fc3c235f9160f1928a8afb0d7991a6d3430cb 100644
diff --git a/patches/server/0027-Fix-vanilla-command-permission-handler.patch b/patches/server/0027-FIX-Vanilla-command-permission-handler.patch
similarity index 85%
rename from patches/server/0027-Fix-vanilla-command-permission-handler.patch
rename to patches/server/0027-FIX-Vanilla-command-permission-handler.patch
index c9a502e9a..54a6dc2b0 100644
--- a/patches/server/0027-Fix-vanilla-command-permission-handler.patch
+++ b/patches/server/0027-FIX-Vanilla-command-permission-handler.patch
@@ -1,11 +1,13 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 28 Mar 2020 01:51:32 -0500
-Subject: [PATCH] Fix vanilla command permission handler
+Subject: [PATCH] |FIX| Vanilla command permission handler
+Fixes vanilla commands from showing in tab complete and /help if a player does not
+have the correct permission to perform the command.
diff --git a/src/main/java/com/mojang/brigadier/tree/CommandNode.java b/src/main/java/com/mojang/brigadier/tree/CommandNode.java
-index 30274979d8dafc7c0a374c3e6b1d1b5dbd6cfe4c..a3bc8192c10f888c0d395709108019670f0bad62 100644
+index f64aa22ed6fcb4af67317b99f459ee5296392548..36c91793e0aa4895193623cf8cba7820d31f4eca 100644
--- a/src/main/java/com/mojang/brigadier/tree/CommandNode.java
+++ b/src/main/java/com/mojang/brigadier/tree/CommandNode.java
@@ -34,6 +34,7 @@ public abstract class CommandNode implements Comparable> {
diff --git a/patches/server/0028-Logger-settings-suppressing-pointless-logs.patch b/patches/server/0028-FEAT-Logger-settings-suppress-pointless-logs.patch
similarity index 86%
rename from patches/server/0028-Logger-settings-suppressing-pointless-logs.patch
rename to patches/server/0028-FEAT-Logger-settings-suppress-pointless-logs.patch
index 1837d4af8..5ea15eedf 100644
--- a/patches/server/0028-Logger-settings-suppressing-pointless-logs.patch
+++ b/patches/server/0028-FEAT-Logger-settings-suppress-pointless-logs.patch
@@ -1,8 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 19 Oct 2019 00:52:12 -0500
-Subject: [PATCH] Logger settings (suppressing pointless logs)
+Subject: [PATCH] |FEAT| Logger settings (suppress pointless logs)
+Adds configuration options to disable certain useless log output
+
+$-----------------------------$
+settings:
+ logger:
+ suppress-init-legacy-material-errors:
+ default: false
+ description: |-
+ Suppress warnings about plugins initializing the legacy material api
+ suppress-ignored-advancement-warnings:
+ default: false
+ description: |-
+ Suppress warnings about unknown attributes in console and logs
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java
index 7d6dc0a8ee35274052b122bbc446bc54750de0a6..c46df052a5a39d92688f51377ee1f7b5b5b36faa 100644
@@ -29,7 +43,7 @@ index 63a4fa2408edf84b490ca39e824977135d78eff0..461796c9c559f43bd2e0126b12a46bfc
} else {
handler.accept((Recipe) optional.get());
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index db286d3c0d37603e5f06cfff4642b321e879e6b4..62396ba628de428c05d4e803e489503607391e9b 100644
+index 4b6bb477db0af506508e73dd42155429777b49d0..7f08a6a0e92300825ca90aeb55379a07474b76e5 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -232,4 +232,13 @@ public class PurpurConfig {
diff --git a/patches/server/0029-Disable-outdated-build-check.patch b/patches/server/0029-FIX-Disable-outdated-build-check.patch
similarity index 90%
rename from patches/server/0029-Disable-outdated-build-check.patch
rename to patches/server/0029-FIX-Disable-outdated-build-check.patch
index 9e1ff1871..3d664e693 100644
--- a/patches/server/0029-Disable-outdated-build-check.patch
+++ b/patches/server/0029-FIX-Disable-outdated-build-check.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 15 Dec 2019 12:53:59 -0600
-Subject: [PATCH] Disable outdated build check
+Subject: [PATCH] |FIX| Disable outdated build check
+Permanently disable Spigot's outdated build check and startup delay.
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 5b527a32f56a82131168879106f76c1f6cbb7b30..56674053351962a75b2731dde137dbbc0c70dbde 100644
diff --git a/patches/server/0030-Giants-AI-settings.patch b/patches/server/0030-FEAT-Giants-AI-settings.patch
similarity index 87%
rename from patches/server/0030-Giants-AI-settings.patch
rename to patches/server/0030-FEAT-Giants-AI-settings.patch
index 44a7273ad..5a137b6dc 100644
--- a/patches/server/0030-Giants-AI-settings.patch
+++ b/patches/server/0030-FEAT-Giants-AI-settings.patch
@@ -1,8 +1,43 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 12 May 2019 00:43:12 -0500
-Subject: [PATCH] Giants AI settings
+Subject: [PATCH] |FEAT| Giants AI settings
+Adds zombie AI to Giants, and offers configuration for basic settings.
+
+$-----------------------------$
+mobs:
+ giant:
+ step-height:
+ default: 2.0
+ description: |-
+ Amount of blocks giants can walk up without needing to jump
+ jump-height:
+ default: 1.0
+ description: |-
+ Jump height modifier. Default value makes giants jump about as high as their waist
+ movement-speed:
+ default: 0.5
+ description: |-
+ Movement speed attribute
+ attack-damage:
+ default: 50.0
+ description: |-
+ The amount of hitpoints an attack will do
+ have-ai:
+ default: false
+ description: |-
+ Should a giant have AI when it gets spawned
+ have-hostile-ai:
+ default: false
+ description: |-
+ Should a giant have hostile AI when it gets spawned
+ attributes:
+ max-health:
+ default: 100.0
+ description: |-
+ The amount of max health a giant has
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/monster/Giant.java b/src/main/java/net/minecraft/world/entity/monster/Giant.java
index a8ffdc8810152d77668aad7bad15a00c4d194d4c..91e28c414545d2bbb4e2f22c516d0f683e8b04ec 100644
diff --git a/patches/server/0031-Zombie-horse-naturally-spawn.patch b/patches/server/0031-FEAT-Zombie-horse-naturally-spawn.patch
similarity index 85%
rename from patches/server/0031-Zombie-horse-naturally-spawn.patch
rename to patches/server/0031-FEAT-Zombie-horse-naturally-spawn.patch
index ea5ff6088..6248953ea 100644
--- a/patches/server/0031-Zombie-horse-naturally-spawn.patch
+++ b/patches/server/0031-FEAT-Zombie-horse-naturally-spawn.patch
@@ -1,11 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 7 Jul 2019 19:52:16 -0500
-Subject: [PATCH] Zombie horse naturally spawn
+Subject: [PATCH] |FEAT| Zombie horse naturally spawn
+Adds the ability to control natural zombie horse spawns during thunderstorms. These zombie horse
+spawns will replace the natural skeleton horse spawns at the configured percent value (0.0 - 1.0)
+
+$-----------------------------$
+mobs:
+ zombie_horse:
+ spawn-chance:
+ default: 0.0
+ description: |-
+ Percent chance (0.0 - 1.0) a zombie horse will spawn instead of a skeleton horse during thunderstorms
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index 372eea42755cad6bf957fa94b816db25751d707b..9d238d4bf3151dd0c37d0b908c9fe3886975c4d2 100644
+index 93d7860c229f78a214b1e89c7b401eac986ddabb..32c725eb4819b28279f7cc4db30b5f711967a799 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -866,9 +866,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
diff --git a/patches/server/0032-Charged-creeper-naturally-spawn.patch b/patches/server/0032-FEAT-Charged-creeper-naturally-spawn.patch
similarity index 87%
rename from patches/server/0032-Charged-creeper-naturally-spawn.patch
rename to patches/server/0032-FEAT-Charged-creeper-naturally-spawn.patch
index 7fe3f7c11..9e1ee5456 100644
--- a/patches/server/0032-Charged-creeper-naturally-spawn.patch
+++ b/patches/server/0032-FEAT-Charged-creeper-naturally-spawn.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 29 Nov 2019 22:37:44 -0600
-Subject: [PATCH] Charged creeper naturally spawn
+Subject: [PATCH] |FEAT| Charged creeper naturally spawn
+Adds configuration to control percent change a creeper will be charged (powered) when it spawns
+
+$-----------------------------$
+mobs:
+ creeper:
+ naturally-charged-chance:
+ default: 0.0
+ description: |-
+ Percent chance (0.0 - 1.0) creepers are charged (powered) when spawning
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
index 3a14f975e26530e1c4887844ec0c3967bd15a05b..9e05eadd09df031bac8321748f0e89c2701b74a1 100644
diff --git a/patches/server/0033-Rabbit-naturally-spawn-toast-and-killer.patch b/patches/server/0033-FEAT-Rabbit-naturally-spawn-toast-and-killer.patch
similarity index 85%
rename from patches/server/0033-Rabbit-naturally-spawn-toast-and-killer.patch
rename to patches/server/0033-FEAT-Rabbit-naturally-spawn-toast-and-killer.patch
index b1ad9e56d..434f34a42 100644
--- a/patches/server/0033-Rabbit-naturally-spawn-toast-and-killer.patch
+++ b/patches/server/0033-FEAT-Rabbit-naturally-spawn-toast-and-killer.patch
@@ -1,8 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 31 Aug 2019 17:47:11 -0500
-Subject: [PATCH] Rabbit naturally spawn toast and killer
+Subject: [PATCH] |FEAT| Rabbit naturally spawn toast and killer
+Adds a percent chance to spawn the killer rabbit or toast variations of the rabbit
+
+$-----------------------------$
+mobs:
+ rabbit:
+ spawn-toast-chance:
+ default: 0.0
+ description: |-
+ Percent chance (0.0-1.0) a rabbit named Toast naturally spawns
+ spawn-killer-rabbit-chance:
+ default: 0.0
+ description: |-
+ Percent chance (0.0-1.0) the killer rabbit naturally spawns
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
index 587feda351efae19407cb9f23c6c1d42d5ed0cc9..e0ba1ef404c9f8ba1eae563b733d10d94b1442e4 100644
diff --git a/patches/server/0034-Fix-outdated-server-showing-in-ping-before-server-fu.patch b/patches/server/0034-FIX-Prevent-outdated-server-showing-in-ping.patch
similarity index 82%
rename from patches/server/0034-Fix-outdated-server-showing-in-ping-before-server-fu.patch
rename to patches/server/0034-FIX-Prevent-outdated-server-showing-in-ping.patch
index 67cbdd3d5..8cdaaaf75 100644
--- a/patches/server/0034-Fix-outdated-server-showing-in-ping-before-server-fu.patch
+++ b/patches/server/0034-FIX-Prevent-outdated-server-showing-in-ping.patch
@@ -1,9 +1,10 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 4 Jun 2019 15:50:08 -0500
-Subject: [PATCH] Fix 'outdated server' showing in ping before server fully
- boots
+Subject: [PATCH] |FIX| Prevent 'outdated server' showing in ping
+Fixes a bug where the server will respond to server list pings before knowing the protocol
+version. This stops the client from showing a red X thinking it it outdated.
diff --git a/src/main/java/net/minecraft/server/network/ServerStatusPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerStatusPacketListenerImpl.java
index d65191a50349ec86fe35df4ac1070f94fbb77b4c..9c57dfd72ef559d8052aac4e073cd36e76079ed7 100644
diff --git a/patches/server/0035-Dont-send-useless-entity-packets.patch b/patches/server/0035-FEAT-PERF-Dont-send-useless-entity-packets.patch
similarity index 84%
rename from patches/server/0035-Dont-send-useless-entity-packets.patch
rename to patches/server/0035-FEAT-PERF-Dont-send-useless-entity-packets.patch
index 4fb42ba93..99d6d77dc 100644
--- a/patches/server/0035-Dont-send-useless-entity-packets.patch
+++ b/patches/server/0035-FEAT-PERF-Dont-send-useless-entity-packets.patch
@@ -1,8 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 6 Jul 2019 17:00:04 -0500
-Subject: [PATCH] Dont send useless entity packets
+Subject: [PATCH] |FEAT| |PERF| Dont send useless entity packets
+Dont send empty move packets to clients if an entity has not actually moved. Cuts down
+on the amount of bandwidth used.
+
+$-----------------------------$
+settings:
+ dont-send-useless-entity-packets:
+ default: false
+ description: |-
+ Skips sending relative move packets for entities that didn't really move
+
+ Known to cause issues with certain plugins installed; notably Tab and Companions
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
index c71bc00973899feec0ec5530bf3d237928810cf4..c85ca046acbb976f32a671c18ee4efde7be16fd3 100644
@@ -40,7 +52,7 @@ index c71bc00973899feec0ec5530bf3d237928810cf4..c85ca046acbb976f32a671c18ee4efde
this.entity.stopSeenByPlayer(player);
player.connection.send(new ClientboundRemoveEntitiesPacket(new int[]{this.entity.getId()}));
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index a91f51f80e8c19cfca75086ff7a1a9f71abc4647..bfe334678aef01738a834b4b281bed34d8e71a23 100644
+index 7f08a6a0e92300825ca90aeb55379a07474b76e5..504e8d2f9c0a2c8c8f6a710c0ad1d438f53d1439 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -233,6 +233,11 @@ public class PurpurConfig {
diff --git a/patches/server/0036-Tulips-change-fox-type.patch b/patches/server/0036-FEAT-Tulips-change-fox-type.patch
similarity index 92%
rename from patches/server/0036-Tulips-change-fox-type.patch
rename to patches/server/0036-FEAT-Tulips-change-fox-type.patch
index 8e3a03b7c..7a38e8fa1 100644
--- a/patches/server/0036-Tulips-change-fox-type.patch
+++ b/patches/server/0036-FEAT-Tulips-change-fox-type.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 13 Jul 2019 15:56:22 -0500
-Subject: [PATCH] Tulips change fox type
+Subject: [PATCH] |FEAT| Tulips change fox type
+Change a fox's variation by feeding it an orange (for regular fox) or white (for snow fox) tulip.
+
+$-----------------------------$
+mobs:
+ fox:
+ tulips-change-type:
+ default: false
+ description: |-
+ Feeding a white/orange tulip changes the fox's type to snow/regular
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/Fox.java b/src/main/java/net/minecraft/world/entity/animal/Fox.java
index 80749df5d00df415a1b9e7c0e8586625b6453ffb..406b6ed8084c18da1062d8e8049bdfff65101565 100644
diff --git a/patches/server/0037-Breedable-Polar-Bears.patch b/patches/server/0037-FEAT-Breedable-Polar-Bears.patch
similarity index 92%
rename from patches/server/0037-Breedable-Polar-Bears.patch
rename to patches/server/0037-FEAT-Breedable-Polar-Bears.patch
index 082e297dc..96f329a53 100644
--- a/patches/server/0037-Breedable-Polar-Bears.patch
+++ b/patches/server/0037-FEAT-Breedable-Polar-Bears.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 26 Mar 2020 19:46:44 -0500
-Subject: [PATCH] Breedable Polar Bears
+Subject: [PATCH] |FEAT| Breedable Polar Bears
+Makes polar bears breedable by tempting and feeding them a specific item.
+
+$-----------------------------$
+mobs:
+ polar_bear:
+ breedable-item:
+ default: ""
+ description: |-
+ The item to tempt/feed polar bears and make them breed
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
index 18780fb268cabb47bb0deb84c44520831c1a762b..d39c88af3882a09ff1a06f9052d7b9b8afdddda4 100644
diff --git a/patches/server/0038-Chickens-can-retaliate.patch b/patches/server/0038-FEAT-Chickens-can-retaliate.patch
similarity index 93%
rename from patches/server/0038-Chickens-can-retaliate.patch
rename to patches/server/0038-FEAT-Chickens-can-retaliate.patch
index 2a81c1765..72c61a1c2 100644
--- a/patches/server/0038-Chickens-can-retaliate.patch
+++ b/patches/server/0038-FEAT-Chickens-can-retaliate.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 12 Apr 2020 13:19:34 -0500
-Subject: [PATCH] Chickens can retaliate
+Subject: [PATCH] |FEAT| Chickens can retaliate
+Chickens will fight back if you attack them.
+
+$-----------------------------$
+mobs:
+ chicken:
+ retaliate:
+ default: false
+ description: |-
+ Fights back if it gets attacked
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/Chicken.java b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
index 9fe68301b9a6efd703fb9d2215a9cd3b2f017a4e..35cf6b9fb4d72df905d93bf52c02846b21b04007 100644
diff --git a/patches/server/0039-Add-option-to-set-armorstand-step-height.patch b/patches/server/0039-FEAT-Option-to-set-armorstand-step-height.patch
similarity index 75%
rename from patches/server/0039-Add-option-to-set-armorstand-step-height.patch
rename to patches/server/0039-FEAT-Option-to-set-armorstand-step-height.patch
index 65b69c526..f60c34124 100644
--- a/patches/server/0039-Add-option-to-set-armorstand-step-height.patch
+++ b/patches/server/0039-FEAT-Option-to-set-armorstand-step-height.patch
@@ -1,8 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 6 Oct 2019 12:46:35 -0500
-Subject: [PATCH] Add option to set armorstand step height
+Subject: [PATCH] |FEAT| Option to set armorstand step height
+Adjust the step-height of armorstands to make them walk up blocks when pushed against them.
+Useful for plugins that make armorstands movable, like Vehicles.
+
+$-----------------------------$
+gameplay-mechanics:
+ armorstand:
+ step-height:
+ default: 0.0
+ description: |-
+ The step height of armorstands.
+ Useful for plugins that utilize armorstands as vehicles and allows them to drive over blocks without jumping, etc
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
index 5fc66d7096afcfe63eba774e1dc330ac3263e4b0..7a3a364f5e3b025cc0a5694401cb9298c80cb733 100644
diff --git a/patches/server/0040-Cat-spawning-options.patch b/patches/server/0040-FEAT-Cat-spawning-options.patch
similarity index 84%
rename from patches/server/0040-Cat-spawning-options.patch
rename to patches/server/0040-FEAT-Cat-spawning-options.patch
index 43ad8e4d6..7c755ce14 100644
--- a/patches/server/0040-Cat-spawning-options.patch
+++ b/patches/server/0040-FEAT-Cat-spawning-options.patch
@@ -1,8 +1,28 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 26 Dec 2019 18:52:55 -0600
-Subject: [PATCH] Cat spawning options
+Subject: [PATCH] |FEAT| Cat spawning options
+Control natural cat spawning in villages and witch huts
+
+$-----------------------------$
+mobs:
+ cat:
+ spawn-delay:
+ default: 1200
+ description: |-
+ Number of ticks between attempting to naturally spawn a cat
+ scan-range-for-other-cats.swamp-hut:
+ default: 16
+ description: |-
+ Will stop the cat from spawning if another one is found in this block range.
+ Set to 0 to disable
+ scan-range-for-other-cats.village:
+ default: 48
+ description: |-
+ Will stop the cat from spawning if another one is found in this block range.
+ Set to 0 to disable
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/npc/CatSpawner.java b/src/main/java/net/minecraft/world/entity/npc/CatSpawner.java
index 4cab98b5e441a174482893d3d289bbafa1f7a5fc..fa3cdff99a16b67ed86c8f7940ffa139930c3448 100644
diff --git a/patches/server/0041-MC-147659-Fix-non-black-cats-spawning-in-swamp-huts.patch b/patches/server/0041-FIX-MC-147659-Non-black-cats-spawn-in-swamp-huts.patch
similarity index 86%
rename from patches/server/0041-MC-147659-Fix-non-black-cats-spawning-in-swamp-huts.patch
rename to patches/server/0041-FIX-MC-147659-Non-black-cats-spawn-in-swamp-huts.patch
index b9a0239e9..882a961c7 100644
--- a/patches/server/0041-MC-147659-Fix-non-black-cats-spawning-in-swamp-huts.patch
+++ b/patches/server/0041-FIX-MC-147659-Non-black-cats-spawn-in-swamp-huts.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 2 Jan 2020 01:23:22 -0600
-Subject: [PATCH] MC-147659 - Fix non black cats spawning in swamp huts
+Subject: [PATCH] |FIX| MC-147659 Non black cats spawn in swamp huts
+Fixes a bug where any cat will naturally spawn in a witch hut when it is supposed to only spawn black cats
diff --git a/src/main/java/net/minecraft/world/entity/npc/CatSpawner.java b/src/main/java/net/minecraft/world/entity/npc/CatSpawner.java
index fa3cdff99a16b67ed86c8f7940ffa139930c3448..89defd6b6d64e9048b0b2e7c872f1a199876457f 100644
diff --git a/patches/server/0042-Cows-eat-mushrooms.patch b/patches/server/0042-FEAT-Cows-eat-mushrooms.patch
similarity index 93%
rename from patches/server/0042-Cows-eat-mushrooms.patch
rename to patches/server/0042-FEAT-Cows-eat-mushrooms.patch
index 031d6dfc0..5deeb3f38 100644
--- a/patches/server/0042-Cows-eat-mushrooms.patch
+++ b/patches/server/0042-FEAT-Cows-eat-mushrooms.patch
@@ -1,8 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 4 May 2019 01:10:30 -0500
-Subject: [PATCH] Cows eat mushrooms
+Subject: [PATCH] |FEAT| Cows eat mushrooms
+Makes feeding mushrooms to cows change into a mooshroom. The color of the mushroom used
+determines the color of the mooshroom (brown or red).
+
+$-----------------------------$
+mobs:
+ cow:
+ feed-mushrooms-for-mooshroom:
+ default: 0
+ description: |-
+ Number of mushrooms to feed a cow to make it transform into a mooshroom.
+ Value of 0 disables this feature
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cow.java b/src/main/java/net/minecraft/world/entity/animal/Cow.java
index bee82d5bf600cbeacfcede600e5606529af1435e..9da76357da891a70e20ad80f50873b3b487dc84c 100644
diff --git a/patches/server/0043-Fix-cow-rotation-when-shearing-mooshroom.patch b/patches/server/0043-FIX-Cow-rotation-when-shearing-mooshroom.patch
similarity index 88%
rename from patches/server/0043-Fix-cow-rotation-when-shearing-mooshroom.patch
rename to patches/server/0043-FIX-Cow-rotation-when-shearing-mooshroom.patch
index d713c520c..b44c2af5f 100644
--- a/patches/server/0043-Fix-cow-rotation-when-shearing-mooshroom.patch
+++ b/patches/server/0043-FIX-Cow-rotation-when-shearing-mooshroom.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 3 May 2019 23:53:16 -0500
-Subject: [PATCH] Fix cow rotation when shearing mooshroom
+Subject: [PATCH] |FIX| Cow rotation when shearing mooshroom
+Fixes a bug where cows always face south when they are sheared instead of the way the mooshroom was facing
diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
index b9aeb196f61582801416dab21c12d50e2e68d39e..9dde33111658b2b80dfe9609114067332ec7df27 100644
diff --git a/patches/server/0044-Pigs-give-saddle-back.patch b/patches/server/0044-FEAT-Pigs-give-saddle-back.patch
similarity index 87%
rename from patches/server/0044-Pigs-give-saddle-back.patch
rename to patches/server/0044-FEAT-Pigs-give-saddle-back.patch
index a53c848fd..914924ba5 100644
--- a/patches/server/0044-Pigs-give-saddle-back.patch
+++ b/patches/server/0044-FEAT-Pigs-give-saddle-back.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 12 May 2019 01:14:46 -0500
-Subject: [PATCH] Pigs give saddle back
+Subject: [PATCH] |FEAT| Pigs give saddle back
+Make pigs give your saddle back without killing them by shift right clicking the pig
+
+$-----------------------------$
+mobs:
+ pig:
+ give-saddle-back:
+ default: false
+ description: |-
+ Sneak right-click a pig that has a saddle on it's back to remove the saddle
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/Pig.java b/src/main/java/net/minecraft/world/entity/animal/Pig.java
index f4a099e691dce3c57069e76d67859161b459098e..518d28dc0b5b8c04263c93a4347e4c971a1318d8 100644
diff --git a/patches/server/0045-Snowman-drop-and-put-back-pumpkin.patch b/patches/server/0045-FEAT-Snowman-drop-and-put-back-pumpkin.patch
similarity index 86%
rename from patches/server/0045-Snowman-drop-and-put-back-pumpkin.patch
rename to patches/server/0045-FEAT-Snowman-drop-and-put-back-pumpkin.patch
index bd130a99e..57ea19123 100644
--- a/patches/server/0045-Snowman-drop-and-put-back-pumpkin.patch
+++ b/patches/server/0045-FEAT-Snowman-drop-and-put-back-pumpkin.patch
@@ -1,8 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 3 May 2019 23:58:44 -0500
-Subject: [PATCH] Snowman drop and put back pumpkin
+Subject: [PATCH] |FEAT| Snowman drop and put back pumpkin
+Control the pumpkin on snowman heads.
+
+$-----------------------------$
+mobs:
+ snow_golem:
+ drop-pumpkin-when-sheared:
+ default: true
+ description: |-
+ Shearing a snow golem makes the pumpkin drop
+ pumpkin-can-be-added-back:
+ default: false
+ description: |-
+ Pumpkin can be re-added to a snow golem with no pumpkin on it's head
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/animal/SnowGolem.java b/src/main/java/net/minecraft/world/entity/animal/SnowGolem.java
index fcf3092ef1863f62d9e76a77c0299ce1495ca1b7..ee64f4084b25d77f1c25b76a5b7d90cd2547bffb 100644
diff --git a/patches/server/0046-Ender-dragon-always-drop-full-exp.patch b/patches/server/0046-FEAT-Ender-dragon-always-drop-full-exp.patch
similarity index 84%
rename from patches/server/0046-Ender-dragon-always-drop-full-exp.patch
rename to patches/server/0046-FEAT-Ender-dragon-always-drop-full-exp.patch
index 57dfc2044..c9b022664 100644
--- a/patches/server/0046-Ender-dragon-always-drop-full-exp.patch
+++ b/patches/server/0046-FEAT-Ender-dragon-always-drop-full-exp.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 24 Aug 2019 14:42:54 -0500
-Subject: [PATCH] Ender dragon always drop full exp
+Subject: [PATCH] |FEAT| Ender dragon always drop full exp
+Make the ender dragon always drop full amount of exp when killed, even if its not the first one.
+
+$-----------------------------$
+mobs:
+ ender_dragon:
+ always-drop-full-exp:
+ default: false
+ description: |-
+ All valid ender dragon deaths will drop the full amount of experience orbs as if it were the first dragon death
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
index d3caa18f5de2d96eae691655dd13e83f82c61e0c..f637cd740ec3801ce1c387473b5c4ff6080e76ec 100644
diff --git a/patches/server/0047-Signs-editable-on-right-click.patch b/patches/server/0047-FEAT-Signs-editable-on-right-click.patch
similarity index 87%
rename from patches/server/0047-Signs-editable-on-right-click.patch
rename to patches/server/0047-FEAT-Signs-editable-on-right-click.patch
index c957ede86..e9a3d3328 100644
--- a/patches/server/0047-Signs-editable-on-right-click.patch
+++ b/patches/server/0047-FEAT-Signs-editable-on-right-click.patch
@@ -1,8 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 24 May 2019 02:39:25 -0500
-Subject: [PATCH] Signs editable on right click
+Subject: [PATCH] |FEAT| Signs editable on right click
+Add the ability to edit signs by right clicking then with a sign in hand.
+
+$-----------------------------$
+blocks:
+ sign:
+ right-click-edit:
+ default: false
+ description: |-
+ edit signs by right-clicking them with a sign in hand
+
+ Requires the purpur.sign.edit permission
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/level/block/SignBlock.java b/src/main/java/net/minecraft/world/level/block/SignBlock.java
index 1844ea93f8cea420f01937f85ed17c0ec1bb8bf0..9e80ba8970cad91ea22ac701f76e1413551a591f 100644
diff --git a/patches/server/0048-Signs-allow-color-codes.patch b/patches/server/0048-FEAT-Signs-allow-color-codes.patch
similarity index 93%
rename from patches/server/0048-Signs-allow-color-codes.patch
rename to patches/server/0048-FEAT-Signs-allow-color-codes.patch
index b74fa8a62..cd01f0186 100644
--- a/patches/server/0048-Signs-allow-color-codes.patch
+++ b/patches/server/0048-FEAT-Signs-allow-color-codes.patch
@@ -1,8 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 6 Jun 2019 17:40:30 -0500
-Subject: [PATCH] Signs allow color codes
+Subject: [PATCH] |FEAT| Signs allow color codes
+Allow using legacy color codes on signs
+
+$-----------------------------$
+blocks:
+ sign:
+ allow-colors:
+ default: false
+ description: |-
+ Use color codes on signs
+
+ Requires the purpur.sign.color, purpur.sign.style, and/or purpur.sign.magic permissions
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index dafb9dcb3199f217e910a0cd969b863da1df6127..b1e1ea0ec16f3fc9b83b8d000024e731e48c7401 100644
diff --git a/patches/server/0049-Allow-soil-to-moisten-from-water-directly-under-it.patch b/patches/server/0049-FEAT-Soil-moistens-from-water-directly-below-it.patch
similarity index 81%
rename from patches/server/0049-Allow-soil-to-moisten-from-water-directly-under-it.patch
rename to patches/server/0049-FEAT-Soil-moistens-from-water-directly-below-it.patch
index 8742ededf..35990aeb7 100644
--- a/patches/server/0049-Allow-soil-to-moisten-from-water-directly-under-it.patch
+++ b/patches/server/0049-FEAT-Soil-moistens-from-water-directly-below-it.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 21 Jun 2019 14:37:10 -0500
-Subject: [PATCH] Allow soil to moisten from water directly under it
+Subject: [PATCH] |FEAT| Soil moistens from water directly below it
+Adds an old beta mechanic where soil (farmland) will get moist when water is directly below it
+
+$-----------------------------$
+blocks:
+ farmland:
+ gets-moist-from-below:
+ default: false
+ description: |-
+ Soil moistens from water directly below it
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java
index 5955c95efbfa3e614ecf03de3e485a1ea88b7859..f638c7b27a846bf9db73e98ce9eb5d579bc25cac 100644
diff --git a/patches/server/0050-Minecart-settings-and-WASD-controls.patch b/patches/server/0050-FEAT-Minecart-settings-and-WASD-controls.patch
similarity index 91%
rename from patches/server/0050-Minecart-settings-and-WASD-controls.patch
rename to patches/server/0050-FEAT-Minecart-settings-and-WASD-controls.patch
index 1028f035c..b809e38c5 100644
--- a/patches/server/0050-Minecart-settings-and-WASD-controls.patch
+++ b/patches/server/0050-FEAT-Minecart-settings-and-WASD-controls.patch
@@ -1,8 +1,49 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 29 Jun 2019 02:32:40 -0500
-Subject: [PATCH] Minecart settings and WASD controls
+Subject: [PATCH] |FEAT| Minecart settings and WASD controls
+Adds minecart settings and WASD controls
+
+$-----------------------------$
+gameplay-mechanics:
+ minecart:
+ max-speed
+ default: 0.4
+ description: |-
+ The speed of a minecart (0.0 - 1.0)
+ place-anywhere:
+ default: false
+ description: |-
+ Minecarts can be placed anywhere, not just on rails
+ controllable:
+ enabled:
+ default: false
+ description: |-
+ Minecarts can be controlled off rails
+ step-height:
+ default: 1.0
+ description: |-
+ The stepheight of a minecart being controlled
+ hop-boost:
+ default: 0.5
+ description: |-
+ Jump power when pressing a spacebar on a controllable minecart
+ fall-damage:
+ default: true
+ description: |-
+ Fall damage should affect the player in the minecart
+ base-speed:
+ default: 0.1
+ description: |-
+ Speed of minecart when controlled
+ block-speed:
+ default: |-
+ grass_block: 0.3
+ stone: 0.5
+ description: |-
+ List of speed overrides per block type
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index b1e1ea0ec16f3fc9b83b8d000024e731e48c7401..5f974fec242181729340b6c353dc6b17c3f73837 100644
diff --git a/patches/server/0051-Disable-loot-drops-on-death-by-cramming.patch b/patches/server/0051-FEAT-Disable-loot-drops-on-death-by-cramming.patch
similarity index 82%
rename from patches/server/0051-Disable-loot-drops-on-death-by-cramming.patch
rename to patches/server/0051-FEAT-Disable-loot-drops-on-death-by-cramming.patch
index 7277c2d16..ca801fd56 100644
--- a/patches/server/0051-Disable-loot-drops-on-death-by-cramming.patch
+++ b/patches/server/0051-FEAT-Disable-loot-drops-on-death-by-cramming.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Wed, 3 Jul 2019 23:58:31 -0500
-Subject: [PATCH] Disable loot drops on death by cramming
+Subject: [PATCH] |FEAT| Disable loot drops on death by cramming
+Stops entities from dropping loot on death if killed by cramming gamerule, effectively
+neutralizing one type of laggy mob farm.
+
+$-----------------------------$
+gameplay-mechanics:
+ disable-drops-on-cramming-death:
+ default: false
+ description: |-
+ Stops entities from dropping loot on death if killed by cramming gamerule
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index f7446fdf4c18399a3b3ac5182f1a8fc5bde08919..56c4319ba36b3bec71f5fc5548ec2022ac49331e 100644
diff --git a/patches/server/0052-Option-to-toggle-milk-curing-bad-omen.patch b/patches/server/0052-FEAT-FIX-Milk-curing-bad-omen-toggle.patch
similarity index 86%
rename from patches/server/0052-Option-to-toggle-milk-curing-bad-omen.patch
rename to patches/server/0052-FEAT-FIX-Milk-curing-bad-omen-toggle.patch
index d0cedc08f..6612cbb2d 100644
--- a/patches/server/0052-Option-to-toggle-milk-curing-bad-omen.patch
+++ b/patches/server/0052-FEAT-FIX-Milk-curing-bad-omen-toggle.patch
@@ -1,8 +1,17 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Wed, 10 Jul 2019 20:43:05 -0500
-Subject: [PATCH] Option to toggle milk curing bad omen
+Subject: [PATCH] |FEAT| |FIX| Milk curing bad omen toggle
+Removes the ability for milk to cure bad omen for those that feel bad omen is a curse, not a potion effect
+
+$-----------------------------$
+gameplay-mechanics:
+ milk-cures-bad-omen:
+ default: true
+ description: |-
+ Drinking milk cures the bad omen status effect
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/item/MilkBucketItem.java b/src/main/java/net/minecraft/world/item/MilkBucketItem.java
index f33977d95b6db473be4f95075ba99caf90ad0220..56dc04d8875971ee9a5d077a695509af74fe2473 100644
diff --git a/patches/server/0053-End-gateway-should-check-if-entity-can-use-portal.patch b/patches/server/0053-End-gateway-checks-if-entity-can-use-portal.patch
similarity index 89%
rename from patches/server/0053-End-gateway-should-check-if-entity-can-use-portal.patch
rename to patches/server/0053-End-gateway-checks-if-entity-can-use-portal.patch
index ce3f12779..0c0be2999 100644
--- a/patches/server/0053-End-gateway-should-check-if-entity-can-use-portal.patch
+++ b/patches/server/0053-End-gateway-checks-if-entity-can-use-portal.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 21 Mar 2020 18:33:05 -0500
-Subject: [PATCH] End gateway should check if entity can use portal
+Subject: [PATCH] End gateway checks if entity can use portal
+Stops the end dragon from teleporting through end gateways (MC-86836)
diff --git a/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
index 782becb96b6300f14deee360b653dc99c57fdc12..09cbce5aec6eabfa220f7de81b492a180cb8ca1e 100644
diff --git a/patches/server/0054-Fix-the-dead-lagging-the-server.patch b/patches/server/0054-FIX-Stop-dead-entities-lagging-the-server.patch
similarity index 87%
rename from patches/server/0054-Fix-the-dead-lagging-the-server.patch
rename to patches/server/0054-FIX-Stop-dead-entities-lagging-the-server.patch
index 7cb295997..e4b047d15 100644
--- a/patches/server/0054-Fix-the-dead-lagging-the-server.patch
+++ b/patches/server/0054-FIX-Stop-dead-entities-lagging-the-server.patch
@@ -1,11 +1,12 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 6 Mar 2020 13:37:26 -0600
-Subject: [PATCH] Fix the dead lagging the server
+Subject: [PATCH] |FIX| Stop dead entities lagging the server
+Skips heavy processing of chunks when a dead entity is ticked
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index efcba8ea0ab1f25f6480fe0a3bbe1537764438aa..d946d334af4354be0f23eee40f2723fb414bb844 100644
+index 3ba4408f172f22bc9a86c5fcc71e01119f85ca07..7417cfa1a64f7adbc8b4699eef05a2662846dce4 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1768,6 +1768,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0055-Skip-events-if-there-s-no-listeners.patch b/patches/server/0055-PERF-Skip-events-if-there-s-no-listeners.patch
similarity index 91%
rename from patches/server/0055-Skip-events-if-there-s-no-listeners.patch
rename to patches/server/0055-PERF-Skip-events-if-there-s-no-listeners.patch
index 996db0ab2..3fe1698f6 100644
--- a/patches/server/0055-Skip-events-if-there-s-no-listeners.patch
+++ b/patches/server/0055-PERF-Skip-events-if-there-s-no-listeners.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 4 Apr 2020 03:07:59 -0500
-Subject: [PATCH] Skip events if there's no listeners
+Subject: [PATCH] |PERF| Skip events if there's no listeners
+Skips creating objects for events if there is nothing listening to them
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index 6fec6a47538da4c0c5a4505e9bedf492bb3376dd..8c019cede209c1c022a843146f16db36ca292012 100644
diff --git a/patches/server/0056-Add-permission-for-F3-N-debug.patch b/patches/server/0056-FEAT-Permission-check-for-F3-N-debug-keybind.patch
similarity index 86%
rename from patches/server/0056-Add-permission-for-F3-N-debug.patch
rename to patches/server/0056-FEAT-Permission-check-for-F3-N-debug-keybind.patch
index ac96154ef..2d4081f38 100644
--- a/patches/server/0056-Add-permission-for-F3-N-debug.patch
+++ b/patches/server/0056-FEAT-Permission-check-for-F3-N-debug-keybind.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 28 Dec 2019 04:21:54 -0600
-Subject: [PATCH] Add permission for F3+N debug
+Subject: [PATCH] |FEAT| Permission check for F3+N debug keybind
+Adds a "purpur.debug.f3n" permission check for the F3+N debug keybind
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 5b1641eae57b974997803fbc42710032ba914b21..bd5ab259d37f13542c2510530fdf5fc5d6496975 100644
diff --git a/patches/server/0057-Configurable-TPS-Catchup.patch b/patches/server/0057-FEAT-Configurable-TPS-Catchup.patch
similarity index 82%
rename from patches/server/0057-Configurable-TPS-Catchup.patch
rename to patches/server/0057-FEAT-Configurable-TPS-Catchup.patch
index 4ff0d8da4..7f75fe979 100644
--- a/patches/server/0057-Configurable-TPS-Catchup.patch
+++ b/patches/server/0057-FEAT-Configurable-TPS-Catchup.patch
@@ -1,11 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 26 Mar 2020 19:06:22 -0500
-Subject: [PATCH] Configurable TPS Catchup
+Subject: [PATCH] |FEAT| Configurable TPS Catchup
+Allow to disable spigot's TPS catchup system
+
+$-----------------------------$
+settings:
+ tps-catchup:
+ default: true
+ description: |-
+ Allows you to disable spigot's TPS catchup system
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
-index a7dffb26a96c52ddc185c8ce852d5e1c22ce9e36..446e34941997b3c779fadf7322afe11c1da63360 100644
+index ce0b5770129d91c7fc1cfa751f9828973444e5fe..db74d4db83d537beb8a404ac58843b124b1dc496 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1276,7 +1276,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop
Date: Thu, 19 Mar 2020 19:39:34 -0500
-Subject: [PATCH] Add option to allow loyalty on tridents to work in the void
+Subject: [PATCH] |FEAT| Allow tridents' loyalty to work in the void
+If a trident with loyalty gets throw into the void it will come back to you instead of die
+
+$-----------------------------$
+option:
+ default: 0.0
+ description: |-
+ The void height at which a trident with loyalty will return to it's thrower.
+ A value of 0.0 or higher disables this feature.
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
index c95eef8596fe3e1ca83e620a6c54b164c797cbe1..1e6a5404d767318de29184b3e3a2bc41c1ee2602 100644
diff --git a/patches/server/0059-Add-enderman-and-creeper-griefing-controls.patch b/patches/server/0059-FEAT-Enderman-and-creeper-griefing-controls.patch
similarity index 92%
rename from patches/server/0059-Add-enderman-and-creeper-griefing-controls.patch
rename to patches/server/0059-FEAT-Enderman-and-creeper-griefing-controls.patch
index 6820570af..360311104 100644
--- a/patches/server/0059-Add-enderman-and-creeper-griefing-controls.patch
+++ b/patches/server/0059-FEAT-Enderman-and-creeper-griefing-controls.patch
@@ -1,8 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 26 Apr 2020 16:28:38 -0500
-Subject: [PATCH] Add enderman and creeper griefing controls
+Subject: [PATCH] |FEAT| Enderman and creeper griefing controls
+{EXPLANATION}
+
+$-----------------------------$
+mobs:
+ creeper:
+ allow-griefing:
+ default: true
+ description: |-
+ Control if this mob can grief the world
+ enderman:
+ allow-griefing:
+ default: true
+ description: |-
+ Control if this mob can grief the world
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
index 9e05eadd09df031bac8321748f0e89c2701b74a1..cda677a5cb5b9993764be24140bc9b27cc3298af 100644
diff --git a/patches/server/0060-Villagers-follow-emerald-blocks.patch b/patches/server/0060-FEAT-Villagers-follow-emerald-blocks.patch
similarity index 95%
rename from patches/server/0060-Villagers-follow-emerald-blocks.patch
rename to patches/server/0060-FEAT-Villagers-follow-emerald-blocks.patch
index cf61d29e4..3bb3023c5 100644
--- a/patches/server/0060-Villagers-follow-emerald-blocks.patch
+++ b/patches/server/0060-FEAT-Villagers-follow-emerald-blocks.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 29 Nov 2019 22:10:12 -0600
-Subject: [PATCH] Villagers follow emerald blocks
+Subject: [PATCH] |FEAT| Villagers follow emerald blocks
+{EXPLANATION}
+
+$-----------------------------$
+mobs:
+ villager:
+ follow-emerald-blocks:
+ default: false
+ description: |-
+ villagers will be tempted by emerald blocks and follow players holding them
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/TemptGoal.java b/src/main/java/net/minecraft/world/entity/ai/goal/TemptGoal.java
index 30ef9d0a431b393b7238e497d16e8013f90036ef..90f8434100893d577544f7f5fbbc4503223390c0 100644
diff --git a/patches/server/0061-Allow-leashing-villagers.patch b/patches/server/0061-FEAT-Allow-leashing-villagers.patch
similarity index 93%
rename from patches/server/0061-Allow-leashing-villagers.patch
rename to patches/server/0061-FEAT-Allow-leashing-villagers.patch
index d76a560a9..a0aba953e 100644
--- a/patches/server/0061-Allow-leashing-villagers.patch
+++ b/patches/server/0061-FEAT-Allow-leashing-villagers.patch
@@ -1,8 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 3 Oct 2019 18:08:03 -0500
-Subject: [PATCH] Allow leashing villagers
+Subject: [PATCH] |FEAT| Allow leashing villagers
+{EXPLANATION}
+
+$-----------------------------$
+mobs:
+ villager:
+ can-be-leashed:
+ default: false
+ description: |-
+ Allow players to use leads on villagers
+ wandering_trader:
+ can-be-leashed:
+ default: false
+ description: |-
+ Allow players to use leads on wandering traders
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 4cf2bc22e1b6452d056b7bc85f84b6177d1091dc..20862d2c4a10f24f76b627f66af292813b1d0264 100644
diff --git a/patches/server/0062-Implement-configurable-search-radius-for-villagers-t.patch b/patches/server/0062-FEAT-Search-radius-for-villagers-to-spawn-iron-golem.patch
similarity index 84%
rename from patches/server/0062-Implement-configurable-search-radius-for-villagers-t.patch
rename to patches/server/0062-FEAT-Search-radius-for-villagers-to-spawn-iron-golem.patch
index 2db79aa88..4cc09d3ca 100644
--- a/patches/server/0062-Implement-configurable-search-radius-for-villagers-t.patch
+++ b/patches/server/0062-FEAT-Search-radius-for-villagers-to-spawn-iron-golem.patch
@@ -1,9 +1,24 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 22 Jul 2019 17:32:17 -0500
-Subject: [PATCH] Implement configurable search radius for villagers to spawn
- iron golems
+Subject: [PATCH] |FEAT| Search radius for villagers to spawn iron golems
+{EXPLANATION}
+
+$-----------------------------$
+mobs:
+ villager:
+ spawn-iron-golem:
+ radius:
+ default: 0
+ description: |-
+ Radius villagers search for existing iron golems before spawning more.
+ Value of 0 disables this
+ limit:
+ default: 0
+ description: |-
+ Maximum amount of iron golems villagers can spawn in configured radius
+$-----------------------------$
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 481595bb478ebbf2e76948cfdfa531d703f22b6d..69465bc31cff3e96904fa2fabbe31061e9f5ba4b 100644
diff --git a/patches/server/0063-Implement-infinite-lava.patch b/patches/server/0063-FEAT-Infinite-lava-source.patch
similarity index 87%
rename from patches/server/0063-Implement-infinite-lava.patch
rename to patches/server/0063-FEAT-Infinite-lava-source.patch
index ca6227fa3..023d028a3 100644
--- a/patches/server/0063-Implement-infinite-lava.patch
+++ b/patches/server/0063-FEAT-Infinite-lava-source.patch
@@ -1,8 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 23 Nov 2019 17:55:42 -0600
-Subject: [PATCH] Implement infinite lava
+Subject: [PATCH] |FEAT| Infinite lava source
+{EXPLANATION}
+
+$-----------------------------$
+blocks:
+ lava:
+ infinite-source:
+ default: false
+ description: |-
+ Allow lava to take on infinite supply properties similar to water
+ infinite-required-sources:
+ default: 2
+ description: |-
+ The amount of sources required to have infinite lava
+ `infinite-source` must be enabled for this option to work
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/level/material/FlowingFluid.java b/src/main/java/net/minecraft/world/level/material/FlowingFluid.java
index adf91f3006a2d224c957f08520f93f761c3ba832..400da59613f80a45f233cb83e9d54b5b32791d84 100644
diff --git a/patches/server/0064-Make-lava-flow-speed-configurable.patch b/patches/server/0064-FEAT-Configurable-lava-flow-speed.patch
similarity index 81%
rename from patches/server/0064-Make-lava-flow-speed-configurable.patch
rename to patches/server/0064-FEAT-Configurable-lava-flow-speed.patch
index dbbe26525..36f51b113 100644
--- a/patches/server/0064-Make-lava-flow-speed-configurable.patch
+++ b/patches/server/0064-FEAT-Configurable-lava-flow-speed.patch
@@ -1,8 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 2 Jan 2020 11:31:36 -0600
-Subject: [PATCH] Make lava flow speed configurable
+Subject: [PATCH] |FEAT| Configurable lava flow speed
+{EXPLANATION}
+
+$-----------------------------$
+blocks:
+ lava:
+ speed:
+ nether:
+ default: 10
+ description: |-
+ Delay in ticks between physics/flowing in the nether (lower is faster)
+ not-nether:
+ default: 30
+ description: |-
+ Delay in ticks between physics/flowing in non-nether dimensions (lower is faster)
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/level/material/LavaFluid.java b/src/main/java/net/minecraft/world/level/material/LavaFluid.java
index cd1a33a1f10d04a91358f51d736bda34110324c4..b0d671ba015d1ad37fdf600b8e70def2d7a0fa2e 100644
diff --git a/patches/server/0065-Add-player-death-exp-control-options.patch b/patches/server/0065-FEAT-Player-death-exp-control.patch
similarity index 86%
rename from patches/server/0065-Add-player-death-exp-control-options.patch
rename to patches/server/0065-FEAT-Player-death-exp-control.patch
index 1e324254d..91e3ac3e9 100644
--- a/patches/server/0065-Add-player-death-exp-control-options.patch
+++ b/patches/server/0065-FEAT-Player-death-exp-control.patch
@@ -1,8 +1,24 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 26 Dec 2019 22:08:37 -0600
-Subject: [PATCH] Add player death exp control options
+Subject: [PATCH] |FEAT| Player death exp control
+{EXPLANATION}
+
+$-----------------------------$
+gameplay-mechanics:
+ player:
+ exp-dropped-on-death:
+ equation:
+ default: "expLevel * 7"
+ description: |-
+ How much exp to drop on death.
+ Available NMS variables are `expLevel`, `expTotal`, and `exp`
+ maximum:
+ default: 100
+ description: |-
+ Maximum amount of exp value to drop on death
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
index 9ffe8832ef9b74ed3794243965d0cc3d3fbc4ef5..c557bee52a3f136696bb55853622b03220735109 100644
diff --git a/patches/server/0066-Configurable-void-damage-height-and-damage.patch b/patches/server/0066-FEAT-Configurable-void-damage-height-and-damage.patch
similarity index 87%
rename from patches/server/0066-Configurable-void-damage-height-and-damage.patch
rename to patches/server/0066-FEAT-Configurable-void-damage-height-and-damage.patch
index f9eb8a3e2..f4b646570 100644
--- a/patches/server/0066-Configurable-void-damage-height-and-damage.patch
+++ b/patches/server/0066-FEAT-Configurable-void-damage-height-and-damage.patch
@@ -1,11 +1,24 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 27 Feb 2020 21:42:19 -0600
-Subject: [PATCH] Configurable void damage height and damage
+Subject: [PATCH] |FEAT| Configurable void damage height and damage
+{EXPLANATION}
+
+$-----------------------------$
+gameplay-mechanics:
+ void-damage-height:
+ default: -64.0
+ description: |-
+ The height at which void damage begins
+ void-damage-dealt:
+ default: 4.0
+ description: |-
+ The amount of void damage dealt
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index d946d334af4354be0f23eee40f2723fb414bb844..c07ab3ec326bd43f857324679a4dae482b40b392 100644
+index 7417cfa1a64f7adbc8b4699eef05a2662846dce4..7c042280e3b462f2c3e2658e0ff944ffe83c55fa 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -799,7 +799,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0067-Add-canSaveToDisk-to-Entity.patch b/patches/server/0067-FEAT-PERF-Add-canSaveToDisk-to-Entity.patch
similarity index 98%
rename from patches/server/0067-Add-canSaveToDisk-to-Entity.patch
rename to patches/server/0067-FEAT-PERF-Add-canSaveToDisk-to-Entity.patch
index 03926fd78..808f18bf5 100644
--- a/patches/server/0067-Add-canSaveToDisk-to-Entity.patch
+++ b/patches/server/0067-FEAT-PERF-Add-canSaveToDisk-to-Entity.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 18 Feb 2020 20:07:08 -0600
-Subject: [PATCH] Add canSaveToDisk to Entity
+Subject: [PATCH] |FEAT| |PERF| Add canSaveToDisk to Entity
+{EXPLANATION}
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 7c042280e3b462f2c3e2658e0ff944ffe83c55fa..33f26475b314f8480130ffa9ef091cb6ec37249e 100644
diff --git a/patches/server/0068-Dispenser-curse-of-binding-protection.patch b/patches/server/0068-FEAT-FIX-Dispenser-curse-of-binding-protection.patch
similarity index 91%
rename from patches/server/0068-Dispenser-curse-of-binding-protection.patch
rename to patches/server/0068-FEAT-FIX-Dispenser-curse-of-binding-protection.patch
index d0017cc0e..09b0b4f02 100644
--- a/patches/server/0068-Dispenser-curse-of-binding-protection.patch
+++ b/patches/server/0068-FEAT-FIX-Dispenser-curse-of-binding-protection.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 25 Aug 2019 00:09:52 -0500
-Subject: [PATCH] Dispenser curse of binding protection
+Subject: [PATCH] |FEAT| |FIX| Dispenser curse of binding protection
+{EXPLANATION}
+
+$-----------------------------$
+blocks:
+ dispenser:
+ apply-cursed-to-armor-slots:
+ default: true
+ description: |-
+ apply armor enchanted with curse of binding to armor slots
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 20862d2c4a10f24f76b627f66af292813b1d0264..e985f795747e25c5456658df3e1d65a520d8a2cc 100644
diff --git a/patches/server/0069-Add-option-for-boats-to-eject-players-on-land.patch b/patches/server/0069-FEAT-FIX-boats-eject-players-on-land.patch
similarity index 88%
rename from patches/server/0069-Add-option-for-boats-to-eject-players-on-land.patch
rename to patches/server/0069-FEAT-FIX-boats-eject-players-on-land.patch
index 0e3237177..c8a27467c 100644
--- a/patches/server/0069-Add-option-for-boats-to-eject-players-on-land.patch
+++ b/patches/server/0069-FEAT-FIX-boats-eject-players-on-land.patch
@@ -1,8 +1,18 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 7 Sep 2019 22:47:59 -0500
-Subject: [PATCH] Add option for boats to eject players on land
+Subject: [PATCH] |FEAT| |FIX| boats eject players on land
+{EXPLANATION}
+
+$-----------------------------$
+gameplay-mechanics:
+ boat:
+ eject-players-on-land:
+ default: false
+ description: |-
+ Boats eject players onto land
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
index 391454a58d18d7373b974e094fd62514ca0d0b6b..6acd2dc6ec9c3761fa330c74df8c7e7b19266f8e 100644
diff --git a/patches/server/0070-Mending-mends-most-damages-equipment-first.patch b/patches/server/0070-FEAT-Mending-repairs-the-most-damaged-item-first.patch
similarity index 92%
rename from patches/server/0070-Mending-mends-most-damages-equipment-first.patch
rename to patches/server/0070-FEAT-Mending-repairs-the-most-damaged-item-first.patch
index b118be630..0dd5dfb49 100644
--- a/patches/server/0070-Mending-mends-most-damages-equipment-first.patch
+++ b/patches/server/0070-FEAT-Mending-repairs-the-most-damaged-item-first.patch
@@ -1,11 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 14 Jul 2019 19:52:47 -0500
-Subject: [PATCH] Mending mends most damages equipment first
+Subject: [PATCH] |FEAT| Mending repairs the most damaged item first
+{EXPLANATION}
+
+$-----------------------------$
+gameplay-mechanics:
+ use-better-mending:
+ default: false
+ description: |-
+ The mending enchantment wil always repair the most damaged item first
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java
-index 1caf10ecf949e0f465ffe573f3bed1a3c5733a7f..8b6614bde99b17db2e161f3fe4ab2491ff7b679c 100644
+index ec7d011fa5df0b4775bedc01632ba549d3803693..bc2000c27395618d1816719a862aa9829128d863 100644
--- a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java
+++ b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java
@@ -319,7 +319,7 @@ public class ExperienceOrb extends Entity {
diff --git a/patches/server/0071-Add-5-second-tps-average-in-tps.patch b/patches/server/0071-META-5-second-tps-average-in-tps.patch
similarity index 98%
rename from patches/server/0071-Add-5-second-tps-average-in-tps.patch
rename to patches/server/0071-META-5-second-tps-average-in-tps.patch
index 0b460764c..8262d2c35 100644
--- a/patches/server/0071-Add-5-second-tps-average-in-tps.patch
+++ b/patches/server/0071-META-5-second-tps-average-in-tps.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 28 Jul 2019 01:27:37 -0500
-Subject: [PATCH] Add 5 second tps average in /tps
+Subject: [PATCH] |META| 5 second tps average in /tps
+Simply adds a 5 second average to the output of the /tps command
diff --git a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java
index fa56cd09102a89692b42f1d14257990508c5c720..f9251183df72ddc56662fd3f02acf21641a2200c 100644
diff --git a/patches/server/0072-Implement-elytra-settings.patch b/patches/server/0072-FEAT-FIX-Elytra-Configurability.patch
similarity index 90%
rename from patches/server/0072-Implement-elytra-settings.patch
rename to patches/server/0072-FEAT-FIX-Elytra-Configurability.patch
index d023658c0..645ec327a 100644
--- a/patches/server/0072-Implement-elytra-settings.patch
+++ b/patches/server/0072-FEAT-FIX-Elytra-Configurability.patch
@@ -1,8 +1,36 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 25 Jul 2019 18:07:37 -0500
-Subject: [PATCH] Implement elytra settings
+Subject: [PATCH] |FEAT| |FIX| Elytra Configurability
+{EXPLANATION}
+
+$-----------------------------$
+gameplay-mechanics:
+ elytra:
+ damage-per-second:
+ default: 1
+ description: |-
+ the damage an elytra takes during flight per second
+ damage-multiplied-by:
+ default: 0.0
+ description: |-
+ Damage is multiplied by speed if flight is faster than set speed.
+ Set to 0 to disable
+ ignore-unbreaking:
+ default: false
+ description: |-
+ Should elytras ignore the unbreaking enchantment
+ damage-per-boost:
+ firework:
+ default: 0
+ description: |-
+ amount of damage to deal to the elytra when firework boost activates
+ trident:
+ default: 0
+ description: |-
+ amount of damage to deal to the elytra when firework boost activates
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 3626912350c6412f386578bfd5a338e120cae7fb..a0e9c17662682394168ffbaf8111121c0211e679 100644
diff --git a/patches/server/0073-Item-entity-immunities.patch b/patches/server/0073-FEAT-Item-entity-immunities.patch
similarity index 92%
rename from patches/server/0073-Item-entity-immunities.patch
rename to patches/server/0073-FEAT-Item-entity-immunities.patch
index 233f09fd8..c20b66c8b 100644
--- a/patches/server/0073-Item-entity-immunities.patch
+++ b/patches/server/0073-FEAT-Item-entity-immunities.patch
@@ -1,11 +1,34 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 22 Feb 2020 15:54:08 -0600
-Subject: [PATCH] Item entity immunities
+Subject: [PATCH] |FEAT| Item entity immunities
+{EXPLANATION}
+
+$-----------------------------$
+gameplay-mechanics:
+ item:
+ immune:
+ cactus:
+ default: []
+ description: |-
+ List of items that are immune to cactus damage
+ explosion:
+ default: []
+ description: |-
+ List of items that are immune to explosion damage
+ fire:
+ default: []
+ description: |-
+ List of items that are immune to fire damage
+ lightning:
+ default: []
+ description: |-
+ List of items that are immune to lightning damage
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
-index 2eacfbe3512f374169d96ac66c8be5a4f1561b6a..676b1585233a0824b03894ab3ae6b024c7776bd6 100644
+index 961787473601fcddef98f321eb4fb5127c0f8ebc..8ab5000cd5a2e31d6efbabb4a8698028694af923 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -2272,7 +2272,7 @@ Sections go from 0..16. Now whenever a section is not empty, it can potentially
diff --git a/patches/server/0074-Add-ping-command.patch b/patches/server/0074-FEAT-Add-ping-command.patch
similarity index 88%
rename from patches/server/0074-Add-ping-command.patch
rename to patches/server/0074-FEAT-Add-ping-command.patch
index f1f00dd16..f6439ab33 100644
--- a/patches/server/0074-Add-ping-command.patch
+++ b/patches/server/0074-FEAT-Add-ping-command.patch
@@ -1,8 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 13 Mar 2020 22:29:10 -0500
-Subject: [PATCH] Add ping command
+Subject: [PATCH] |FEAT| Add /ping command
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+{EXPLANATION}
+
+$-----------------------------$
+settings:
+ messages:
+ ping-command-output:
+ permission: bukkit.command.ping
+ default: "§a%s's ping is %sms"
+ description: |-
+ The output when `/ping ` is ran.
+$-----------------------------$
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index 8c019cede209c1c022a843146f16db36ca292012..688835cb5116c245e1e25449d41999a944da54cf 100644
@@ -17,7 +31,7 @@ index 8c019cede209c1c022a843146f16db36ca292012..688835cb5116c245e1e25449d41999a9
if (environment.includeIntegrated) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index 6226e04e34f88579e4cd8b9fae5fddfcc0d01912..bd0078f2859384c4cfddf897ee86fd1c0617a0d0 100644
+index c27088998dca02124c0381dd4166d63e75a634f6..10a3bcd31f6cd2ec27c79c622fecc4a24fda9f17 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -162,12 +162,14 @@ public class PurpurConfig {
diff --git a/patches/server/0075-Add-demo-command.patch b/patches/server/0075-FEAT-Add-demo-command.patch
similarity index 96%
rename from patches/server/0075-Add-demo-command.patch
rename to patches/server/0075-FEAT-Add-demo-command.patch
index d2887aa50..65f4e6597 100644
--- a/patches/server/0075-Add-demo-command.patch
+++ b/patches/server/0075-FEAT-Add-demo-command.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 30 Nov 2020 03:12:04 -0600
-Subject: [PATCH] Add demo command
+Subject: [PATCH] |FEAT| Add /demo command
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
@@ -17,7 +17,7 @@ index 688835cb5116c245e1e25449d41999a944da54cf..98392e818d1f2df9f82af630206d0cd2
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index bd0078f2859384c4cfddf897ee86fd1c0617a0d0..f9401fb20fa152ce88c7b7ccbfd812992c500930 100644
+index 10a3bcd31f6cd2ec27c79c622fecc4a24fda9f17..196f57d3c7f1b9e57122c42c73de7157da477246 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -162,6 +162,7 @@ public class PurpurConfig {
diff --git a/patches/server/0076-Add-credits-command.patch b/patches/server/0076-FEAT-Add-credits-command.patch
similarity index 96%
rename from patches/server/0076-Add-credits-command.patch
rename to patches/server/0076-FEAT-Add-credits-command.patch
index 54f45f05e..bce8c8b07 100644
--- a/patches/server/0076-Add-credits-command.patch
+++ b/patches/server/0076-FEAT-Add-credits-command.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42
Date: Fri, 30 Apr 2021 14:03:06 -0400
-Subject: [PATCH] Add credits command
+Subject: [PATCH] |FEAT| Add /credits command
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
@@ -17,7 +17,7 @@ index 98392e818d1f2df9f82af630206d0cd2bdbddb50..42deff516bd363d0882b441fa6928ac7
net.pl3x.purpur.command.PingCommand.register(this.dispatcher); // Purpur
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index f9401fb20fa152ce88c7b7ccbfd812992c500930..53051c4d193cdc5ac7e624a4c7def0ea10e3285e 100644
+index 196f57d3c7f1b9e57122c42c73de7157da477246..c202cb7e325b8ace1ed3aa3ba86419d7571d0f0e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -162,6 +162,7 @@ public class PurpurConfig {
diff --git a/patches/server/0077-Configurable-jockey-options.patch b/patches/server/0077-FEAT-Configurable-jockey-options.patch
similarity index 99%
rename from patches/server/0077-Configurable-jockey-options.patch
rename to patches/server/0077-FEAT-Configurable-jockey-options.patch
index be0869937..13407ae11 100644
--- a/patches/server/0077-Configurable-jockey-options.patch
+++ b/patches/server/0077-FEAT-Configurable-jockey-options.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 26 Mar 2020 21:39:32 -0500
-Subject: [PATCH] Configurable jockey options
+Subject: [PATCH] |FEAT| Configurable jockey options
diff --git a/src/main/java/net/minecraft/world/entity/monster/Drowned.java b/src/main/java/net/minecraft/world/entity/monster/Drowned.java
diff --git a/patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch b/patches/server/0078-FEAT-Phantoms-attracted-to-crystals-and-crystals-sho.patch
similarity index 99%
rename from patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch
rename to patches/server/0078-FEAT-Phantoms-attracted-to-crystals-and-crystals-sho.patch
index 5fe4ba68b..9df654241 100644
--- a/patches/server/0078-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch
+++ b/patches/server/0078-FEAT-Phantoms-attracted-to-crystals-and-crystals-sho.patch
@@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 9 May 2019 18:26:06 -0500
-Subject: [PATCH] Phantoms attracted to crystals and crystals shoot phantoms
+Subject: [PATCH] |FEAT| Phantoms attracted to crystals and crystals shoot
+ phantoms
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java
diff --git a/patches/server/0079-Add-phantom-spawning-options.patch b/patches/server/0079-FEAT-Add-phantom-spawning-options.patch
similarity index 99%
rename from patches/server/0079-Add-phantom-spawning-options.patch
rename to patches/server/0079-FEAT-Add-phantom-spawning-options.patch
index 2bb400418..4a00ab3a3 100644
--- a/patches/server/0079-Add-phantom-spawning-options.patch
+++ b/patches/server/0079-FEAT-Add-phantom-spawning-options.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 3 Jul 2020 00:03:52 -0500
-Subject: [PATCH] Add phantom spawning options
+Subject: [PATCH] |FEAT| Add phantom spawning options
diff --git a/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java b/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
diff --git a/patches/server/0080-Implement-bed-explosion-options.patch b/patches/server/0080-FEAT-Implement-bed-explosion-options.patch
similarity index 98%
rename from patches/server/0080-Implement-bed-explosion-options.patch
rename to patches/server/0080-FEAT-Implement-bed-explosion-options.patch
index 637e5496c..33a51f2ed 100644
--- a/patches/server/0080-Implement-bed-explosion-options.patch
+++ b/patches/server/0080-FEAT-Implement-bed-explosion-options.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 4 Jul 2020 13:12:43 -0500
-Subject: [PATCH] Implement bed explosion options
+Subject: [PATCH] |FEAT| Implement bed explosion options
diff --git a/src/main/java/net/minecraft/world/level/block/BedBlock.java b/src/main/java/net/minecraft/world/level/block/BedBlock.java
diff --git a/patches/server/0081-Implement-respawn-anchor-explosion-options.patch b/patches/server/0081-FEAT-Implement-respawn-anchor-explosion-options.patch
similarity index 98%
rename from patches/server/0081-Implement-respawn-anchor-explosion-options.patch
rename to patches/server/0081-FEAT-Implement-respawn-anchor-explosion-options.patch
index 7f533cea3..a9aee1afb 100644
--- a/patches/server/0081-Implement-respawn-anchor-explosion-options.patch
+++ b/patches/server/0081-FEAT-Implement-respawn-anchor-explosion-options.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 4 Jul 2020 13:23:19 -0500
-Subject: [PATCH] Implement respawn anchor explosion options
+Subject: [PATCH] |FEAT| Implement respawn anchor explosion options
diff --git a/src/main/java/net/minecraft/world/level/block/RespawnAnchorBlock.java b/src/main/java/net/minecraft/world/level/block/RespawnAnchorBlock.java
diff --git a/patches/server/0082-Add-allow-water-in-end-world-option.patch b/patches/server/0082-FEAT-Add-allow-water-in-end-world-option.patch
similarity index 97%
rename from patches/server/0082-Add-allow-water-in-end-world-option.patch
rename to patches/server/0082-FEAT-Add-allow-water-in-end-world-option.patch
index 2c9096ebf..fa5dc50d7 100644
--- a/patches/server/0082-Add-allow-water-in-end-world-option.patch
+++ b/patches/server/0082-FEAT-Add-allow-water-in-end-world-option.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 5 Jul 2020 23:40:16 -0500
-Subject: [PATCH] Add allow water in end world option
+Subject: [PATCH] |FEAT| Add allow water in end world option
diff --git a/src/main/java/net/minecraft/world/item/BucketItem.java b/src/main/java/net/minecraft/world/item/BucketItem.java
@@ -68,7 +68,7 @@ index df4f2c729f09d5229553308e4876f29de648543f..f2b0278679fa649bbc2904660e0dc9ab
} else {
world.setBlockAndUpdate(pos, Blocks.WATER.defaultBlockState());
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index e98257697af84bf7501ee40db0683ab8b9880ee6..a35d10d864418c06b8f4543d886ac14a1ba76a76 100644
+index c202cb7e325b8ace1ed3aa3ba86419d7571d0f0e..b2b7d0a89a6a0d3482caea8fcad1d46de7e4b8ee 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -244,6 +244,11 @@ public class PurpurConfig {
diff --git a/patches/server/0083-Allow-color-codes-in-books.patch b/patches/server/0083-FEAT-Allow-color-codes-in-books.patch
similarity index 98%
rename from patches/server/0083-Allow-color-codes-in-books.patch
rename to patches/server/0083-FEAT-Allow-color-codes-in-books.patch
index 29935edd1..ab9ba2abd 100644
--- a/patches/server/0083-Allow-color-codes-in-books.patch
+++ b/patches/server/0083-FEAT-Allow-color-codes-in-books.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 3 Nov 2020 01:25:06 -0600
-Subject: [PATCH] Allow color codes in books
+Subject: [PATCH] |FEAT| Allow color codes in books
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
diff --git a/patches/server/0084-Entity-lifespan.patch b/patches/server/0084-FEAT-PERF-Entity-lifespan.patch
similarity index 98%
rename from patches/server/0084-Entity-lifespan.patch
rename to patches/server/0084-FEAT-PERF-Entity-lifespan.patch
index 354066569..40d1c3359 100644
--- a/patches/server/0084-Entity-lifespan.patch
+++ b/patches/server/0084-FEAT-PERF-Entity-lifespan.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 11 Jul 2020 19:41:34 -0500
-Subject: [PATCH] Entity lifespan
+Subject: [PATCH] |FEAT| |PERF| Entity lifespan
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
diff --git a/patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch b/patches/server/0085-FEAT-FIX-Add-option-to-teleport-to-spawn-if-outside-.patch
similarity index 95%
rename from patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch
rename to patches/server/0085-FEAT-FIX-Add-option-to-teleport-to-spawn-if-outside-.patch
index f6228add6..d5d8b02ed 100644
--- a/patches/server/0085-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch
+++ b/patches/server/0085-FEAT-FIX-Add-option-to-teleport-to-spawn-if-outside-.patch
@@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 13 Jul 2020 11:40:00 -0500
-Subject: [PATCH] Add option to teleport to spawn if outside world border
+Subject: [PATCH] |FEAT| |FIX| Add option to teleport to spawn if outside world
+ border
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -35,7 +36,7 @@ index 5f974fec242181729340b6c353dc6b17c3f73837..bfcd520f5186e61ff601de27aa10b25c
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
-index d08a9032a0551361e5ced4fe20cf803d68898665..8896f8aa3f21dba3fe78b5cf6f3ee1adfac2bac3 100644
+index a0e9c17662682394168ffbaf8111121c0211e679..2107c20a6bd7eeac17ac0ca41721f60acbbed701 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -45,6 +45,7 @@ import net.minecraft.network.syncher.EntityDataAccessor;
diff --git a/patches/server/0086-Squid-EAR-immunity.patch b/patches/server/0086-FIX-Squid-EAR-immunity.patch
similarity index 98%
rename from patches/server/0086-Squid-EAR-immunity.patch
rename to patches/server/0086-FIX-Squid-EAR-immunity.patch
index df3e08d15..69f5f74ca 100644
--- a/patches/server/0086-Squid-EAR-immunity.patch
+++ b/patches/server/0086-FIX-Squid-EAR-immunity.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 13 Jul 2020 13:49:41 -0500
-Subject: [PATCH] Squid EAR immunity
+Subject: [PATCH] |FIX| Squid EAR immunity
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
diff --git a/patches/server/0087-Phantoms-burn-in-light.patch b/patches/server/0087-FEAT-Phantoms-burn-in-light.patch
similarity index 99%
rename from patches/server/0087-Phantoms-burn-in-light.patch
rename to patches/server/0087-FEAT-Phantoms-burn-in-light.patch
index b6c47b419..43cd9b7e6 100644
--- a/patches/server/0087-Phantoms-burn-in-light.patch
+++ b/patches/server/0087-FEAT-Phantoms-burn-in-light.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: draycia
Date: Sun, 12 Apr 2020 20:41:59 -0700
-Subject: [PATCH] Phantoms burn in light
+Subject: [PATCH] |FEAT| Phantoms burn in light
diff --git a/src/main/java/net/minecraft/world/entity/monster/Phantom.java b/src/main/java/net/minecraft/world/entity/monster/Phantom.java
diff --git a/patches/server/0088-Configurable-villager-breeding.patch b/patches/server/0088-FEAT-Configurable-villager-breeding.patch
similarity index 97%
rename from patches/server/0088-Configurable-villager-breeding.patch
rename to patches/server/0088-FEAT-Configurable-villager-breeding.patch
index 315ddbfef..21a50fc19 100644
--- a/patches/server/0088-Configurable-villager-breeding.patch
+++ b/patches/server/0088-FEAT-Configurable-villager-breeding.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: draycia
Date: Tue, 31 Mar 2020 23:48:55 -0700
-Subject: [PATCH] Configurable villager breeding
+Subject: [PATCH] |FEAT| Configurable villager breeding
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
diff --git a/patches/server/0089-Redstone-deactivates-spawners.patch b/patches/server/0089-FEAT-Redstone-deactivates-spawners.patch
similarity index 97%
rename from patches/server/0089-Redstone-deactivates-spawners.patch
rename to patches/server/0089-FEAT-Redstone-deactivates-spawners.patch
index 5d5380fa8..5ad7ee4d9 100644
--- a/patches/server/0089-Redstone-deactivates-spawners.patch
+++ b/patches/server/0089-FEAT-Redstone-deactivates-spawners.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: draycia
Date: Tue, 14 Apr 2020 00:35:12 -0700
-Subject: [PATCH] Redstone deactivates spawners
+Subject: [PATCH] |FEAT| Redstone deactivates spawners
diff --git a/src/main/java/net/minecraft/world/level/BaseSpawner.java b/src/main/java/net/minecraft/world/level/BaseSpawner.java
diff --git a/patches/server/0090-Totems-work-in-inventory.patch b/patches/server/0090-FEAT-Totems-work-in-inventory.patch
similarity index 95%
rename from patches/server/0090-Totems-work-in-inventory.patch
rename to patches/server/0090-FEAT-Totems-work-in-inventory.patch
index d0aa2d64e..bbdcd98e3 100644
--- a/patches/server/0090-Totems-work-in-inventory.patch
+++ b/patches/server/0090-FEAT-Totems-work-in-inventory.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: draycia
Date: Wed, 29 Apr 2020 00:45:58 -0700
-Subject: [PATCH] Totems work in inventory
+Subject: [PATCH] |FEAT| Totems work in inventory
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
-index 8896f8aa3f21dba3fe78b5cf6f3ee1adfac2bac3..7339ec31aba03974991fdb247beefc747fa003a5 100644
+index 2107c20a6bd7eeac17ac0ca41721f60acbbed701..ff37a1dc067da82b9496da4cea2cf267cebe1b0a 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -1516,6 +1516,19 @@ public abstract class LivingEntity extends Entity {
diff --git a/patches/server/0091-Add-vindicator-johnny-spawn-chance.patch b/patches/server/0091-FEAT-Add-vindicator-johnny-spawn-chance.patch
similarity index 97%
rename from patches/server/0091-Add-vindicator-johnny-spawn-chance.patch
rename to patches/server/0091-FEAT-Add-vindicator-johnny-spawn-chance.patch
index 461360d36..f6fe9cd27 100644
--- a/patches/server/0091-Add-vindicator-johnny-spawn-chance.patch
+++ b/patches/server/0091-FEAT-Add-vindicator-johnny-spawn-chance.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 24 Jul 2020 19:38:21 -0500
-Subject: [PATCH] Add vindicator johnny spawn chance
+Subject: [PATCH] |FEAT| Add vindicator johnny spawn chance
diff --git a/src/main/java/net/minecraft/world/entity/monster/Vindicator.java b/src/main/java/net/minecraft/world/entity/monster/Vindicator.java
diff --git a/patches/server/0092-Add-option-to-disable-certain-block-updates.patch b/patches/server/0092-FEAT-Add-option-to-disable-certain-block-updates.patch
similarity index 98%
rename from patches/server/0092-Add-option-to-disable-certain-block-updates.patch
rename to patches/server/0092-FEAT-Add-option-to-disable-certain-block-updates.patch
index ea8e99632..0570fef31 100644
--- a/patches/server/0092-Add-option-to-disable-certain-block-updates.patch
+++ b/patches/server/0092-FEAT-Add-option-to-disable-certain-block-updates.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 4 Aug 2020 17:11:58 -0500
-Subject: [PATCH] Add option to disable certain block updates
+Subject: [PATCH] |FEAT| Add option to disable certain block updates
diff --git a/src/main/java/net/minecraft/world/level/block/ChorusPlantBlock.java b/src/main/java/net/minecraft/world/level/block/ChorusPlantBlock.java
@@ -125,7 +125,7 @@ index f8e58d9f71703139a736d93e7f1996e027a29444..59ae3bb34678cdb5241f691915c96d65
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index 9783c7c36bb5534d960e7ba310412e4ecf78c479..00d3288cde9ce69835de937aa548f2f880d9365b 100644
+index b2b7d0a89a6a0d3482caea8fcad1d46de7e4b8ee..c55f0be5437f36d42dacb2e61efcecac3cf379ee 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -249,6 +249,15 @@ public class PurpurConfig {
diff --git a/patches/server/0093-Dispensers-place-anvils-option.patch b/patches/server/0093-FEAT-Dispensers-place-anvils-option.patch
similarity index 98%
rename from patches/server/0093-Dispensers-place-anvils-option.patch
rename to patches/server/0093-FEAT-Dispensers-place-anvils-option.patch
index e775efa5f..fc4399c51 100644
--- a/patches/server/0093-Dispensers-place-anvils-option.patch
+++ b/patches/server/0093-FEAT-Dispensers-place-anvils-option.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 4 Aug 2020 21:11:03 -0500
-Subject: [PATCH] Dispensers place anvils option
+Subject: [PATCH] |FEAT| Dispensers place anvils option
diff --git a/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java b/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java
diff --git a/patches/server/0094-Allow-anvil-colors.patch b/patches/server/0094-FEAT-Allow-anvil-colors.patch
similarity index 98%
rename from patches/server/0094-Allow-anvil-colors.patch
rename to patches/server/0094-FEAT-Allow-anvil-colors.patch
index 9598ed0c3..2b42c9c77 100644
--- a/patches/server/0094-Allow-anvil-colors.patch
+++ b/patches/server/0094-FEAT-Allow-anvil-colors.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 4 Aug 2020 22:08:23 -0500
-Subject: [PATCH] Allow anvil colors
+Subject: [PATCH] |FEAT| Allow anvil colors
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
diff --git a/patches/server/0095-Add-no-random-tick-block-list.patch b/patches/server/0095-FEAT-PERF-Add-no-random-tick-block-list.patch
similarity index 96%
rename from patches/server/0095-Add-no-random-tick-block-list.patch
rename to patches/server/0095-FEAT-PERF-Add-no-random-tick-block-list.patch
index e8f5fed79..ac78171f1 100644
--- a/patches/server/0095-Add-no-random-tick-block-list.patch
+++ b/patches/server/0095-FEAT-PERF-Add-no-random-tick-block-list.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 7 Aug 2020 12:53:36 -0500
-Subject: [PATCH] Add no-random-tick block list
+Subject: [PATCH] |FEAT| |PERF| Add no-random-tick block list
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index 9d238d4bf3151dd0c37d0b908c9fe3886975c4d2..38f4c77355f3a63bf1da1ced5df49512b10a424d 100644
+index 32c725eb4819b28279f7cc4db30b5f711967a799..d39c35710461dcd8918f63cf12a2c9b7403d9749 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -482,7 +482,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
diff --git a/patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch b/patches/server/0096-FEAT-PERF-Add-option-to-disable-dolphin-treasure-sea.patch
similarity index 96%
rename from patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch
rename to patches/server/0096-FEAT-PERF-Add-option-to-disable-dolphin-treasure-sea.patch
index 0eaa84422..7c8e5319a 100644
--- a/patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch
+++ b/patches/server/0096-FEAT-PERF-Add-option-to-disable-dolphin-treasure-sea.patch
@@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 8 Aug 2020 16:11:51 -0500
-Subject: [PATCH] Add option to disable dolphin treasure searching
+Subject: [PATCH] |FEAT| |PERF| Add option to disable dolphin treasure
+ searching
diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
diff --git a/patches/server/0097-Short-enderman-height.patch b/patches/server/0097-FEAT-Short-enderman-height.patch
similarity index 92%
rename from patches/server/0097-Short-enderman-height.patch
rename to patches/server/0097-FEAT-Short-enderman-height.patch
index 08374a087..50184586a 100644
--- a/patches/server/0097-Short-enderman-height.patch
+++ b/patches/server/0097-FEAT-Short-enderman-height.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 10 Aug 2020 21:46:22 -0500
-Subject: [PATCH] Short enderman height
+Subject: [PATCH] |FEAT| Short enderman height
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
-index 20094345f90dba666902a8694035b47e0606e02c..88fcd673e36336b99e3cef27e290532f49acbca3 100644
+index 88e556fc543c3143bffc62edf868c9dc44ab2597..818e620a83f005c5942f0c531095b6c131bdd094 100644
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
@@ -280,7 +280,8 @@ public class EntityType implements EntityTypeTest {
@@ -31,7 +31,7 @@ index a36313c321f9057350a9edb8b0959fd49a8e21a3..10c3a0c49579fbd9f1fe7ec82eebd42b
if (this.tryEscape(com.destroystokyo.paper.event.entity.EndermanEscapeEvent.Reason.INDIRECT)) { // Paper start
for (int i = 0; i < 64; ++i) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index 41e78e5229f225665733308490e1d23bfd37ce61..4c950f90963b80acc6956008f7636248f09f6c7a 100644
+index c55f0be5437f36d42dacb2e61efcecac3cf379ee..ee78e74edb95f29c42ae94e733fd44043191206e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -239,6 +239,12 @@ public class PurpurConfig {
diff --git a/patches/server/0098-Stop-squids-floating-on-top-of-water.patch b/patches/server/0098-FEAT-FIX-Stop-squids-floating-on-top-of-water.patch
similarity index 96%
rename from patches/server/0098-Stop-squids-floating-on-top-of-water.patch
rename to patches/server/0098-FEAT-FIX-Stop-squids-floating-on-top-of-water.patch
index 306a25d11..e21a120c8 100644
--- a/patches/server/0098-Stop-squids-floating-on-top-of-water.patch
+++ b/patches/server/0098-FEAT-FIX-Stop-squids-floating-on-top-of-water.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 13 Aug 2020 04:00:26 -0500
-Subject: [PATCH] Stop squids floating on top of water
+Subject: [PATCH] |FEAT| |FIX| Stop squids floating on top of water
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index 06097dbb8df50d92c7480e4ce3478e7f5c6560b9..d2ff6445b4afb2b8a5aee1ba5b58b69a438ec8b2 100644
+index 33f26475b314f8480130ffa9ef091cb6ec37249e..f6f9d2f5c2dfc26359974e77e0cd398d4fbf8536 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3875,11 +3875,17 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0099-Use-configured-height-for-nether-surface-builders.patch b/patches/server/0099-FIX-Use-configured-height-for-nether-surface-builder.patch
similarity index 91%
rename from patches/server/0099-Use-configured-height-for-nether-surface-builders.patch
rename to patches/server/0099-FIX-Use-configured-height-for-nether-surface-builder.patch
index 60f7e2108..06cfd638c 100644
--- a/patches/server/0099-Use-configured-height-for-nether-surface-builders.patch
+++ b/patches/server/0099-FIX-Use-configured-height-for-nether-surface-builder.patch
@@ -1,8 +1,9 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 15 Aug 2020 06:51:46 -0500
-Subject: [PATCH] Use configured height for nether surface builders
+Subject: [PATCH] |FIX| Use configured height for nether surface builders
+{EXPLANATION} (something something double nether height)
diff --git a/src/main/java/net/minecraft/world/level/levelgen/surfacebuilders/NetherCappedSurfaceBuilder.java b/src/main/java/net/minecraft/world/level/levelgen/surfacebuilders/NetherCappedSurfaceBuilder.java
index cdfbdb411eacf5f8c6ced2dbc5789e0d49b93e1f..e4013f241a5e9aeb334dadde8b55c7e6ca32233c 100644
diff --git a/patches/server/0100-Crying-obsidian-valid-for-portal-frames.patch b/patches/server/0100-FEAT-Crying-obsidian-valid-for-portal-frames.patch
similarity index 93%
rename from patches/server/0100-Crying-obsidian-valid-for-portal-frames.patch
rename to patches/server/0100-FEAT-Crying-obsidian-valid-for-portal-frames.patch
index 46be81f9e..3a5df2e4a 100644
--- a/patches/server/0100-Crying-obsidian-valid-for-portal-frames.patch
+++ b/patches/server/0100-FEAT-Crying-obsidian-valid-for-portal-frames.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 17 Aug 2020 17:34:33 -0500
-Subject: [PATCH] Crying obsidian valid for portal frames
+Subject: [PATCH] |FEAT| Crying obsidian valid for portal frames
diff --git a/src/main/java/net/minecraft/world/level/portal/PortalShape.java b/src/main/java/net/minecraft/world/level/portal/PortalShape.java
@@ -18,7 +18,7 @@ index c07b5d1f1ef8b5e6026c7555d476880c8802d6c5..068f1b184a3694603f564d49fa45d5ce
private final LevelAccessor level;
private final Direction.Axis axis;
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index 4c950f90963b80acc6956008f7636248f09f6c7a..eee9f3091b2fa5368655db232670a84ed2703193 100644
+index ee78e74edb95f29c42ae94e733fd44043191206e..0af482784c7d9337b16c52ba52962f0380ae43e0 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -207,6 +207,7 @@ public class PurpurConfig {
diff --git a/patches/server/0101-Entities-can-use-portals-configuration.patch b/patches/server/0101-FEAT-Entities-can-use-portals-configuration.patch
similarity index 95%
rename from patches/server/0101-Entities-can-use-portals-configuration.patch
rename to patches/server/0101-FEAT-Entities-can-use-portals-configuration.patch
index 517c52392..98b689c36 100644
--- a/patches/server/0101-Entities-can-use-portals-configuration.patch
+++ b/patches/server/0101-FEAT-Entities-can-use-portals-configuration.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 17 Aug 2020 19:32:05 -0500
-Subject: [PATCH] Entities can use portals configuration
+Subject: [PATCH] |FEAT| Entities can use portals configuration
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index 003aefff36185613a195edad1bd0121b8526a90b..c2b808a80696b319143ac7f96e75be51d4a2642a 100644
+index f6f9d2f5c2dfc26359974e77e0cd398d4fbf8536..33f25c3fd6899a50298dae08770aded78804ca30 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2732,7 +2732,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0102-LivingEntity-broadcastItemBreak.patch b/patches/server/0102-FEAT-LivingEntity-broadcastItemBreak.patch
similarity index 94%
rename from patches/server/0102-LivingEntity-broadcastItemBreak.patch
rename to patches/server/0102-FEAT-LivingEntity-broadcastItemBreak.patch
index e7c1f536f..44b01989c 100644
--- a/patches/server/0102-LivingEntity-broadcastItemBreak.patch
+++ b/patches/server/0102-FEAT-LivingEntity-broadcastItemBreak.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 17 Aug 2020 21:50:39 -0500
-Subject: [PATCH] LivingEntity#broadcastItemBreak
+Subject: [PATCH] |FEAT| LivingEntity#broadcastItemBreak
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
diff --git a/patches/server/0103-Customizable-wither-health-and-healing.patch b/patches/server/0103-FEAT-Customizable-wither-health-and-healing.patch
similarity index 97%
rename from patches/server/0103-Customizable-wither-health-and-healing.patch
rename to patches/server/0103-FEAT-Customizable-wither-health-and-healing.patch
index c50a5782e..3d9c50b4c 100644
--- a/patches/server/0103-Customizable-wither-health-and-healing.patch
+++ b/patches/server/0103-FEAT-Customizable-wither-health-and-healing.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Thu, 20 Aug 2020 17:38:12 -0700
-Subject: [PATCH] Customizable wither health and healing
+Subject: [PATCH] |FEAT| Customizable wither health and healing
Adds the ability to customize the health of the wither, as well as the amount that it heals, and how often.
diff --git a/patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch b/patches/server/0104-FEAT-Toggleable-special-MobSpawners-per-world.patch
similarity index 97%
rename from patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch
rename to patches/server/0104-FEAT-Toggleable-special-MobSpawners-per-world.patch
index cc75f192d..e4f44ee3f 100644
--- a/patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch
+++ b/patches/server/0104-FEAT-Toggleable-special-MobSpawners-per-world.patch
@@ -1,12 +1,12 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sat, 22 Aug 2020 20:47:11 -0700
-Subject: [PATCH] Allow toggling special MobSpawners per world
+Subject: [PATCH] |FEAT| Toggleable special MobSpawners per world
In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this.
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index 38f4c77355f3a63bf1da1ced5df49512b10a424d..1ea18770c65583e2ed604eb15d15067a638a33a2 100644
+index d39c35710461dcd8918f63cf12a2c9b7403d9749..e36ae87412ef0ba4a979fec9da0ce6c620150d50 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -83,6 +83,7 @@ import net.minecraft.world.entity.MobCategory;
diff --git a/patches/server/0105-Raid-cooldown-setting.patch b/patches/server/0105-FEAT-Raid-cooldown-setting.patch
similarity index 98%
rename from patches/server/0105-Raid-cooldown-setting.patch
rename to patches/server/0105-FEAT-Raid-cooldown-setting.patch
index fcdadde35..e6094ce1f 100644
--- a/patches/server/0105-Raid-cooldown-setting.patch
+++ b/patches/server/0105-FEAT-Raid-cooldown-setting.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Thu, 27 Aug 2020 13:48:52 -0700
-Subject: [PATCH] Raid cooldown setting
+Subject: [PATCH] |FEAT| Raid cooldown setting
diff --git a/src/main/java/net/minecraft/world/entity/raid/Raids.java b/src/main/java/net/minecraft/world/entity/raid/Raids.java
diff --git a/patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch b/patches/server/0106-FEAT-PERF-Despawn-rate-config-options-per-projectile.patch
similarity index 99%
rename from patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch
rename to patches/server/0106-FEAT-PERF-Despawn-rate-config-options-per-projectile.patch
index d1c0f0a4d..8f6092eff 100644
--- a/patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch
+++ b/patches/server/0106-FEAT-PERF-Despawn-rate-config-options-per-projectile.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Mon, 14 Sep 2020 10:09:05 -0700
-Subject: [PATCH] Despawn rate config options per projectile type
+Subject: [PATCH] |FEAT| |PERF| Despawn rate config options per projectile type
Default values of -1 respect vanilla behaviour.
diff --git a/patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch b/patches/server/0107-FEAT-PERF-Allow-disabling-zombie-aggressiveness-towa.patch
similarity index 98%
rename from patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch
rename to patches/server/0107-FEAT-PERF-Allow-disabling-zombie-aggressiveness-towa.patch
index f65594f7a..d4e86c222 100644
--- a/patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch
+++ b/patches/server/0107-FEAT-PERF-Allow-disabling-zombie-aggressiveness-towa.patch
@@ -1,8 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: nitricspace
Date: Mon, 21 Sep 2020 23:19:43 +0100
-Subject: [PATCH] Add option to disable zombie aggressiveness towards villagers
- when lagging
+Subject: [PATCH] |FEAT| |PERF| Allow disabling zombie aggressiveness towards
+ villagers when lagging
diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java
diff --git a/patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch b/patches/server/0108-FEAT-Persistent-TileEntity-Lore-and-DisplayName.patch
similarity index 99%
rename from patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch
rename to patches/server/0108-FEAT-Persistent-TileEntity-Lore-and-DisplayName.patch
index c06a19f92..d1516d95e 100644
--- a/patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch
+++ b/patches/server/0108-FEAT-Persistent-TileEntity-Lore-and-DisplayName.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Wed, 30 Sep 2020 14:32:46 -0700
-Subject: [PATCH] Persistent TileEntity Lore and DisplayName
+Subject: [PATCH] |FEAT| Persistent TileEntity Lore and DisplayName
Makes it so that when a TileEntity is placed in the world and then broken,
the dropped ItemStack retains any original custom display name/lore.
diff --git a/patches/server/0109-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch b/patches/server/0109-FEAT-Add-predicate-to-recipe-s-ExactChoice-ingredien.patch
similarity index 97%
rename from patches/server/0109-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch
rename to patches/server/0109-FEAT-Add-predicate-to-recipe-s-ExactChoice-ingredien.patch
index 2c84a8f65..7000276b0 100644
--- a/patches/server/0109-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch
+++ b/patches/server/0109-FEAT-Add-predicate-to-recipe-s-ExactChoice-ingredien.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 3 Oct 2020 17:40:52 -0500
-Subject: [PATCH] Add predicate to recipe's ExactChoice ingredient
+Subject: [PATCH] |FEAT| Add predicate to recipe's ExactChoice ingredient
diff --git a/src/main/java/net/minecraft/world/item/crafting/Ingredient.java b/src/main/java/net/minecraft/world/item/crafting/Ingredient.java
diff --git a/patches/server/0110-Flying-squids-Oh-my.patch b/patches/server/0110-FEAT-Flying-squids-Oh-my.patch
similarity index 98%
rename from patches/server/0110-Flying-squids-Oh-my.patch
rename to patches/server/0110-FEAT-Flying-squids-Oh-my.patch
index 9fb0235b4..c8597c57f 100644
--- a/patches/server/0110-Flying-squids-Oh-my.patch
+++ b/patches/server/0110-FEAT-Flying-squids-Oh-my.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 4 Oct 2020 12:00:42 -0500
-Subject: [PATCH] Flying squids! Oh my!
+Subject: [PATCH] |FEAT| Flying squids! Oh my!
diff --git a/src/main/java/net/minecraft/world/entity/GlowSquid.java b/src/main/java/net/minecraft/world/entity/GlowSquid.java
diff --git a/patches/server/0111-Infinity-bow-settings.patch b/patches/server/0111-FEAT-Infinity-bow-settings.patch
similarity index 98%
rename from patches/server/0111-Infinity-bow-settings.patch
rename to patches/server/0111-FEAT-Infinity-bow-settings.patch
index 24842f0a2..5a4c92f7b 100644
--- a/patches/server/0111-Infinity-bow-settings.patch
+++ b/patches/server/0111-FEAT-Infinity-bow-settings.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 4 Oct 2020 19:08:53 -0500
-Subject: [PATCH] Infinity bow settings
+Subject: [PATCH] |FEAT| Infinity bow settings
diff --git a/src/main/java/net/minecraft/world/item/BowItem.java b/src/main/java/net/minecraft/world/item/BowItem.java
diff --git a/patches/server/0112-Stonecutter-damage.patch b/patches/server/0112-FEAT-Configurable-stonecutter-damage.patch
similarity index 96%
rename from patches/server/0112-Stonecutter-damage.patch
rename to patches/server/0112-FEAT-Configurable-stonecutter-damage.patch
index c261e73bf..57a1244aa 100644
--- a/patches/server/0112-Stonecutter-damage.patch
+++ b/patches/server/0112-FEAT-Configurable-stonecutter-damage.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 5 Oct 2020 12:15:14 -0500
-Subject: [PATCH] Stonecutter damage
+Subject: [PATCH] |FEAT| Configurable stonecutter damage
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index c2b808a80696b319143ac7f96e75be51d4a2642a..98d47b29763fbffedcc351b1e33400ce7e329f1c 100644
+index 33f25c3fd6899a50298dae08770aded78804ca30..094a8e883ef99225a3604346e563b64c41b82f9a 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1034,7 +1034,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
diff --git a/patches/server/0113-Configurable-daylight-cycle.patch b/patches/server/0113-FEAT-Configurable-daylight-cycle.patch
similarity index 97%
rename from patches/server/0113-Configurable-daylight-cycle.patch
rename to patches/server/0113-FEAT-Configurable-daylight-cycle.patch
index 7e5d89c30..c1b97a159 100644
--- a/patches/server/0113-Configurable-daylight-cycle.patch
+++ b/patches/server/0113-FEAT-Configurable-daylight-cycle.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 10 Oct 2020 14:29:55 -0500
-Subject: [PATCH] Configurable daylight cycle
+Subject: [PATCH] |FEAT| Configurable daylight cycle
diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundSetTimePacket.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundSetTimePacket.java
@@ -18,7 +18,7 @@ index 689ad22925b2561f7c8db961743eb1f821dbb25f..fa3c960992cc240161817e54659d83fe
public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) {
this.gameTime = time % 192000; // Paper - fix guardian beam
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index 1ea18770c65583e2ed604eb15d15067a638a33a2..85b3ffb58b06ff6342abdd8948c1607079c4ee8f 100644
+index e36ae87412ef0ba4a979fec9da0ce6c620150d50..c9b22e0d05129c5e030e0eb06408c8b76c2b9919 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -195,6 +195,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
diff --git a/patches/server/0114-Allow-infinite-and-mending-enchantments-together.patch b/patches/server/0114-FEAT-Allow-infinite-and-mending-enchantments-togethe.patch
similarity index 92%
rename from patches/server/0114-Allow-infinite-and-mending-enchantments-together.patch
rename to patches/server/0114-FEAT-Allow-infinite-and-mending-enchantments-togethe.patch
index 198947116..d0a809d7b 100644
--- a/patches/server/0114-Allow-infinite-and-mending-enchantments-together.patch
+++ b/patches/server/0114-FEAT-Allow-infinite-and-mending-enchantments-togethe.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 13 Oct 2020 20:04:33 -0500
-Subject: [PATCH] Allow infinite and mending enchantments together
+Subject: [PATCH] |FEAT| Allow infinite and mending enchantments together
diff --git a/src/main/java/net/minecraft/world/item/enchantment/ArrowInfiniteEnchantment.java b/src/main/java/net/minecraft/world/item/enchantment/ArrowInfiniteEnchantment.java
@@ -17,7 +17,7 @@ index 3aece8245060dd1ba269c08d226c84247a6f0a83..6763d0b96c83d1b462999f525bf1f31c
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index eee9f3091b2fa5368655db232670a84ed2703193..af299caa01193a6fa76656814164b0c5fbeec350 100644
+index 0af482784c7d9337b16c52ba52962f0380ae43e0..adcb7b6df1027fefc90f1affc9e6ab93b713e98e 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -241,6 +241,16 @@ public class PurpurConfig {
diff --git a/patches/server/0115-Furnace-uses-lava-from-underneath.patch b/patches/server/0115-FEAT-Furnace-uses-lava-from-underneath.patch
similarity index 98%
rename from patches/server/0115-Furnace-uses-lava-from-underneath.patch
rename to patches/server/0115-FEAT-Furnace-uses-lava-from-underneath.patch
index 5316a0362..3d3277cc2 100644
--- a/patches/server/0115-Furnace-uses-lava-from-underneath.patch
+++ b/patches/server/0115-FEAT-Furnace-uses-lava-from-underneath.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 19 Oct 2020 15:14:01 -0500
-Subject: [PATCH] Furnace uses lava from underneath
+Subject: [PATCH] |FEAT| Furnace uses lava from underneath
diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
diff --git a/patches/server/0116-Arrows-should-not-reset-despawn-counter.patch b/patches/server/0116-FIX-PERF-Arrows-should-not-reset-despawn-counter.patch
similarity index 94%
rename from patches/server/0116-Arrows-should-not-reset-despawn-counter.patch
rename to patches/server/0116-FIX-PERF-Arrows-should-not-reset-despawn-counter.patch
index 7c3aee370..86a4e1621 100644
--- a/patches/server/0116-Arrows-should-not-reset-despawn-counter.patch
+++ b/patches/server/0116-FIX-PERF-Arrows-should-not-reset-despawn-counter.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Wed, 4 Nov 2020 13:12:50 -0600
-Subject: [PATCH] Arrows should not reset despawn counter
+Subject: [PATCH] |FIX| |PERF| Arrows should not reset despawn counter
This prevents keeping arrows alive indefinitely (such as when the block
the arrow is stuck in gets removed, like a piston head going up/down)
diff --git a/patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch b/patches/server/0117-FEAT-Ability-to-re-add-farmland-mechanics-from-Alpha.patch
similarity index 96%
rename from patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch
rename to patches/server/0117-FEAT-Ability-to-re-add-farmland-mechanics-from-Alpha.patch
index b5280695c..f9d01eadb 100644
--- a/patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch
+++ b/patches/server/0117-FEAT-Ability-to-re-add-farmland-mechanics-from-Alpha.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Yive
Date: Sat, 14 Nov 2020 08:06:20 -0800
-Subject: [PATCH] Ability to re-add farmland mechanics from Alpha
+Subject: [PATCH] |FEAT| Ability to re-add farmland mechanics from Alpha
diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java
diff --git a/patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch b/patches/server/0118-FEAT-Add-adjustable-breeding-cooldown-to-config.patch
similarity index 99%
rename from patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch
rename to patches/server/0118-FEAT-Add-adjustable-breeding-cooldown-to-config.patch
index 2f00e7dea..0ddb08865 100644
--- a/patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch
+++ b/patches/server/0118-FEAT-Add-adjustable-breeding-cooldown-to-config.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: montlikadani
Date: Fri, 13 Nov 2020 17:52:40 +0100
-Subject: [PATCH] Add adjustable breeding cooldown to config
+Subject: [PATCH] |FEAT| Add adjustable breeding cooldown to config
diff --git a/src/main/java/net/minecraft/world/entity/animal/Animal.java b/src/main/java/net/minecraft/world/entity/animal/Animal.java
diff --git a/patches/server/0119-Make-entity-breeding-times-configurable.patch b/patches/server/0119-FEAT-Make-entity-breeding-times-configurable.patch
similarity index 99%
rename from patches/server/0119-Make-entity-breeding-times-configurable.patch
rename to patches/server/0119-FEAT-Make-entity-breeding-times-configurable.patch
index e57c70263..de51ffb28 100644
--- a/patches/server/0119-Make-entity-breeding-times-configurable.patch
+++ b/patches/server/0119-FEAT-Make-entity-breeding-times-configurable.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sun, 15 Nov 2020 02:18:15 -0800
-Subject: [PATCH] Make entity breeding times configurable
+Subject: [PATCH] |FEAT| Make entity breeding times configurable
diff --git a/src/main/java/net/minecraft/world/entity/ai/behavior/VillagerMakeLove.java b/src/main/java/net/minecraft/world/entity/ai/behavior/VillagerMakeLove.java
diff --git a/patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch b/patches/server/0120-FEAT-Apply-display-names-from-item-forms-of-entities.patch
similarity index 99%
rename from patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch
rename to patches/server/0120-FEAT-Apply-display-names-from-item-forms-of-entities.patch
index 625801135..da4b5b3d7 100644
--- a/patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch
+++ b/patches/server/0120-FEAT-Apply-display-names-from-item-forms-of-entities.patch
@@ -1,8 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Tue, 17 Nov 2020 03:23:48 -0800
-Subject: [PATCH] Apply display names from item forms of entities to entities
- and vice versa
+Subject: [PATCH] |FEAT| Apply display names from item forms of entities to
+ entities and vice versa
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
diff --git a/patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch b/patches/server/0121-FEAT-Set-name-visible-when-using-a-Name-Tag-on-an-Ar.patch
similarity index 96%
rename from patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch
rename to patches/server/0121-FEAT-Set-name-visible-when-using-a-Name-Tag-on-an-Ar.patch
index 0f5833f08..c4efad7a3 100644
--- a/patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch
+++ b/patches/server/0121-FEAT-Set-name-visible-when-using-a-Name-Tag-on-an-Ar.patch
@@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Tue, 17 Nov 2020 13:12:09 -0800
-Subject: [PATCH] Set name visible when using a Name Tag on an Armor Stand
+Subject: [PATCH] |FEAT| Set name visible when using a Name Tag on an Armor
+ Stand
diff --git a/src/main/java/net/minecraft/world/item/NameTagItem.java b/src/main/java/net/minecraft/world/item/NameTagItem.java
diff --git a/patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch b/patches/server/0122-FEAT-Add-twisting-and-weeping-vines-growth-rates.patch
similarity index 98%
rename from patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch
rename to patches/server/0122-FEAT-Add-twisting-and-weeping-vines-growth-rates.patch
index da2a71607..997489374 100644
--- a/patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch
+++ b/patches/server/0122-FEAT-Add-twisting-and-weeping-vines-growth-rates.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 22 Nov 2020 06:02:32 -0600
-Subject: [PATCH] Add twisting and weeping vines growth rates
+Subject: [PATCH] |FEAT| Add twisting and weeping vines growth rates
diff --git a/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java b/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java
diff --git a/patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch b/patches/server/0123-FEAT-Kelp-weeping-and-twisting-vines-configurable-ma.patch
similarity index 98%
rename from patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch
rename to patches/server/0123-FEAT-Kelp-weeping-and-twisting-vines-configurable-ma.patch
index 1ec4ed747..d662625ab 100644
--- a/patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch
+++ b/patches/server/0123-FEAT-Kelp-weeping-and-twisting-vines-configurable-ma.patch
@@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sun, 22 Nov 2020 20:13:27 -0600
-Subject: [PATCH] Kelp weeping and twisting vines configurable max growth age
+Subject: [PATCH] |FEAT| Kelp weeping and twisting vines configurable max
+ growth age
diff --git a/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java b/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java
diff --git a/patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch b/patches/server/0124-FEAT-Add-config-for-allowing-Endermen-to-despawn-eve.patch
similarity index 96%
rename from patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch
rename to patches/server/0124-FEAT-Add-config-for-allowing-Endermen-to-despawn-eve.patch
index b8c5ed080..03ad42aa4 100644
--- a/patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch
+++ b/patches/server/0124-FEAT-Add-config-for-allowing-Endermen-to-despawn-eve.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sun, 22 Nov 2020 22:17:53 -0800
-Subject: [PATCH] Add config for allowing Endermen to despawn even while
+Subject: [PATCH] |FEAT| Add config for allowing Endermen to despawn even while
holding a block
This should help to reduce the amount of dirt, gravel, grass, and etc.
diff --git a/patches/server/0125-Add-critical-hit-check-to-EntityDamagedByEntityEvent.patch b/patches/server/0125-FEAT-Add-critical-hit-check-to-EntityDamagedByEntity.patch
similarity index 96%
rename from patches/server/0125-Add-critical-hit-check-to-EntityDamagedByEntityEvent.patch
rename to patches/server/0125-FEAT-Add-critical-hit-check-to-EntityDamagedByEntity.patch
index 737a8ac16..491886643 100644
--- a/patches/server/0125-Add-critical-hit-check-to-EntityDamagedByEntityEvent.patch
+++ b/patches/server/0125-FEAT-Add-critical-hit-check-to-EntityDamagedByEntity.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 24 Nov 2020 04:30:46 -0600
-Subject: [PATCH] Add critical hit check to EntityDamagedByEntityEvent
+Subject: [PATCH] |FEAT| Add critical hit check to EntityDamagedByEntityEvent
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -33,7 +33,7 @@ index c557bee52a3f136696bb55853622b03220735109..5b0647a8b8d2dd8a44b38c378312ad91
if (flag5) {
if (i > 0) {
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 18059a30b53f566dd1d2ed3af1460e5672d6e32f..b5e873f8693442f20eb5d67f22c4f96cac54f461 100644
+index f02e7faff60867a64594638d1806d2f03d31fb1e..14478b4c8d6f24a21d3f1d49237b4b000f285660 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -972,7 +972,7 @@ public class CraftEventFactory {
diff --git a/patches/server/0126-Add-configurable-snowball-damage.patch b/patches/server/0126-FEAT-Add-configurable-snowball-damage.patch
similarity index 97%
rename from patches/server/0126-Add-configurable-snowball-damage.patch
rename to patches/server/0126-FEAT-Add-configurable-snowball-damage.patch
index 3c3cd66b6..c6edb7b36 100644
--- a/patches/server/0126-Add-configurable-snowball-damage.patch
+++ b/patches/server/0126-FEAT-Add-configurable-snowball-damage.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Tue, 24 Nov 2020 05:32:02 -0600
-Subject: [PATCH] Add configurable snowball damage
+Subject: [PATCH] |FEAT| Add configurable snowball damage
diff --git a/src/main/java/net/minecraft/world/entity/projectile/Snowball.java b/src/main/java/net/minecraft/world/entity/projectile/Snowball.java
diff --git a/patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch b/patches/server/0127-FEAT-Zombie-break-door-minimum-difficulty-option.patch
similarity index 98%
rename from patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch
rename to patches/server/0127-FEAT-Zombie-break-door-minimum-difficulty-option.patch
index 67593762b..4550d7045 100644
--- a/patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch
+++ b/patches/server/0127-FEAT-Zombie-break-door-minimum-difficulty-option.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Fri, 27 Nov 2020 10:33:33 -0600
-Subject: [PATCH] Zombie break door minimum difficulty option
+Subject: [PATCH] |FEAT| Zombie break door minimum difficulty option
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/BreakDoorGoal.java b/src/main/java/net/minecraft/world/entity/ai/goal/BreakDoorGoal.java
diff --git a/patches/server/0128-Left-handed-API.patch b/patches/server/0128-FEAT-Left-handed-API.patch
similarity index 96%
rename from patches/server/0128-Left-handed-API.patch
rename to patches/server/0128-FEAT-Left-handed-API.patch
index f0ac2d079..3dc80064f 100644
--- a/patches/server/0128-Left-handed-API.patch
+++ b/patches/server/0128-FEAT-Left-handed-API.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 30 Nov 2020 06:03:06 -0600
-Subject: [PATCH] Left handed API
+Subject: [PATCH] |FEAT| Left handed API
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMob.java
diff --git a/patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch b/patches/server/0129-FEAT-Changeable-Mob-Left-Handed-Chance.patch
similarity index 97%
rename from patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch
rename to patches/server/0129-FEAT-Changeable-Mob-Left-Handed-Chance.patch
index d5cdef799..785a9dc0a 100644
--- a/patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch
+++ b/patches/server/0129-FEAT-Changeable-Mob-Left-Handed-Chance.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Ben Kerllenevich
Date: Mon, 30 Nov 2020 11:40:11 -0500
-Subject: [PATCH] Changeable Mob Left Handed Chance
+Subject: [PATCH] |FEAT| Changeable Mob Left Handed Chance
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
diff --git a/patches/server/0130-Add-boat-fall-damage-config.patch b/patches/server/0130-FEAT-Add-boat-fall-damage-config.patch
similarity index 98%
rename from patches/server/0130-Add-boat-fall-damage-config.patch
rename to patches/server/0130-FEAT-Add-boat-fall-damage-config.patch
index 307c89be0..ff2fa5a72 100644
--- a/patches/server/0130-Add-boat-fall-damage-config.patch
+++ b/patches/server/0130-FEAT-Add-boat-fall-damage-config.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Mon, 30 Nov 2020 19:36:35 -0600
-Subject: [PATCH] Add boat fall damage config
+Subject: [PATCH] |FEAT| Add boat fall damage config
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
diff --git a/patches/server/0131-Snow-Golem-rate-of-fire-config.patch b/patches/server/0131-FEAT-Snow-Golem-rate-of-fire-config.patch
similarity index 98%
rename from patches/server/0131-Snow-Golem-rate-of-fire-config.patch
rename to patches/server/0131-FEAT-Snow-Golem-rate-of-fire-config.patch
index 54ee0d1a3..9de29298c 100644
--- a/patches/server/0131-Snow-Golem-rate-of-fire-config.patch
+++ b/patches/server/0131-FEAT-Snow-Golem-rate-of-fire-config.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Simon Gardling
Date: Tue, 1 Dec 2020 16:50:36 -0500
-Subject: [PATCH] Snow Golem rate of fire config
+Subject: [PATCH] |FEAT| Snow Golem rate of fire config
The formula used to determine the amount of ticks between shots is:
((sqrt(distanceToTarget) / snowGolemAttackDistance) / snowGolemSnowBallModifer) * (maxShootIntervalTicks - minShootIntervalTicks) + minShootIntervalTicks
diff --git a/patches/server/0132-EMC-Configurable-disable-give-dropping.patch b/patches/server/0132-FEAT-EMC-Configurable-disable-give-dropping.patch
similarity index 92%
rename from patches/server/0132-EMC-Configurable-disable-give-dropping.patch
rename to patches/server/0132-FEAT-EMC-Configurable-disable-give-dropping.patch
index c2891221f..9e1ca6430 100644
--- a/patches/server/0132-EMC-Configurable-disable-give-dropping.patch
+++ b/patches/server/0132-FEAT-EMC-Configurable-disable-give-dropping.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar
Date: Thu, 14 Jan 2016 00:49:14 -0500
-Subject: [PATCH] EMC - Configurable disable give dropping
+Subject: [PATCH] |FEAT| EMC - Configurable disable give dropping
Modified version of a patch by Aikar from EMC. Adds a config option in
purpur.yml to disable the /give command from dropping items on the
@@ -20,7 +20,7 @@ index a0dc380e90415de9068ea408d62a1605c82631df..60fd566f7e1499ecf2ad91216a667f12
itemStack.setCount(1);
ItemEntity itemEntity2 = serverPlayer.drop(itemStack, false, false, true); // Paper - Fix duplicating /give items on item drop cancel
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
-index af299caa01193a6fa76656814164b0c5fbeec350..8323b10a6ab17f56c6e5d1ad2cee9ebc7ad403de 100644
+index adcb7b6df1027fefc90f1affc9e6ab93b713e98e..defd23f85fb0e67511ee93f7f9c00cfceb71c484 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -204,6 +204,11 @@ public class PurpurConfig {
diff --git a/patches/server/0133-Lobotomize-stuck-villagers.patch b/patches/server/0133-FEAT-PERF-Lobotomize-stuck-villagers.patch
similarity index 98%
rename from patches/server/0133-Lobotomize-stuck-villagers.patch
rename to patches/server/0133-FEAT-PERF-Lobotomize-stuck-villagers.patch
index 99771010e..59bd325e0 100644
--- a/patches/server/0133-Lobotomize-stuck-villagers.patch
+++ b/patches/server/0133-FEAT-PERF-Lobotomize-stuck-villagers.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 3 Dec 2020 17:56:18 -0600
-Subject: [PATCH] Lobotomize stuck villagers
+Subject: [PATCH] |FEAT| |PERF| Lobotomize stuck villagers
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
diff --git a/patches/server/0134-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch b/patches/server/0134-FEAT-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch
similarity index 99%
rename from patches/server/0134-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch
rename to patches/server/0134-FEAT-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch
index 26c1978cc..4cc7696e4 100644
--- a/patches/server/0134-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch
+++ b/patches/server/0134-FEAT-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sat, 5 Dec 2020 01:20:16 -0800
-Subject: [PATCH] Option for Villager Clerics to farm Nether Wart
+Subject: [PATCH] |FEAT| Option for Villager Clerics to farm Nether Wart
Adds an option so that Villagers with the Cleric profession are able to
farm Nether Wart. Reimplemented based on a feature of the carpet-extra
diff --git a/patches/server/0135-Toggle-for-Zombified-Piglin-death-always-counting-as.patch b/patches/server/0135-FEAT-FIX-Toggle-for-Zombified-Piglin-death-always-co.patch
similarity index 96%
rename from patches/server/0135-Toggle-for-Zombified-Piglin-death-always-counting-as.patch
rename to patches/server/0135-FEAT-FIX-Toggle-for-Zombified-Piglin-death-always-co.patch
index 4cdf1849e..f14a031e3 100644
--- a/patches/server/0135-Toggle-for-Zombified-Piglin-death-always-counting-as.patch
+++ b/patches/server/0135-FEAT-FIX-Toggle-for-Zombified-Piglin-death-always-co.patch
@@ -1,8 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sat, 5 Dec 2020 02:34:22 -0800
-Subject: [PATCH] Toggle for Zombified Piglin death always counting as player
- kill when angry
+Subject: [PATCH] |FEAT| |FIX| Toggle for Zombified Piglin death always
+ counting as player kill when angry
In Vanilla (as of 1.16.4), when Zombified Piglins die while angry, it will
count as a player kill regardless of whether a player has ever hit them,
diff --git a/patches/server/0136-Spread-out-and-optimise-player-list-ticksSpread-out-.patch b/patches/server/0136-PERF-Spread-out-and-optimise-player-list-ticksSpread.patch
similarity index 96%
rename from patches/server/0136-Spread-out-and-optimise-player-list-ticksSpread-out-.patch
rename to patches/server/0136-PERF-Spread-out-and-optimise-player-list-ticksSpread.patch
index 49f01019e..e94394095 100644
--- a/patches/server/0136-Spread-out-and-optimise-player-list-ticksSpread-out-.patch
+++ b/patches/server/0136-PERF-Spread-out-and-optimise-player-list-ticksSpread.patch
@@ -1,8 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: James Lyne
Date: Mon, 7 Dec 2020 17:52:36 +0000
-Subject: [PATCH] Spread out and optimise player list ticksSpread out and
- optimise player list ticks
+Subject: [PATCH] |PERF| Spread out and optimise player list ticksSpread out
+ and optimise player list ticks
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
diff --git a/patches/server/0137-Configurable-chance-for-wolves-to-spawn-rabid.patch b/patches/server/0137-FEAT-Configurable-chance-for-wolves-to-spawn-rabid.patch
similarity index 99%
rename from patches/server/0137-Configurable-chance-for-wolves-to-spawn-rabid.patch
rename to patches/server/0137-FEAT-Configurable-chance-for-wolves-to-spawn-rabid.patch
index 5b756aec8..324c4f1e5 100644
--- a/patches/server/0137-Configurable-chance-for-wolves-to-spawn-rabid.patch
+++ b/patches/server/0137-FEAT-Configurable-chance-for-wolves-to-spawn-rabid.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42
Date: Tue, 8 Dec 2020 17:15:15 -0500
-Subject: [PATCH] Configurable chance for wolves to spawn rabid
+Subject: [PATCH] |FEAT| Configurable chance for wolves to spawn rabid
Configurable chance to spawn a wolf that is rabid.
Rabid wolves attack all players, mobs, and animals.
diff --git a/patches/server/0138-Configurable-default-collar-color.patch b/patches/server/0138-FEAT-Configurable-default-collar-color.patch
similarity index 98%
rename from patches/server/0138-Configurable-default-collar-color.patch
rename to patches/server/0138-FEAT-Configurable-default-collar-color.patch
index 55ee82298..f03f36784 100644
--- a/patches/server/0138-Configurable-default-collar-color.patch
+++ b/patches/server/0138-FEAT-Configurable-default-collar-color.patch
@@ -1,13 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42
Date: Thu, 10 Dec 2020 13:43:28 -0500
-Subject: [PATCH] Configurable default collar color
+Subject: [PATCH] |FEAT| Configurable default collar color
This allows for the server to set a default collar color when a wolf or cat is tamed.
Resets to RED when the value is invalid.
-test
-
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java
index 052d1e51a891ee17bed0043f6f3fd162c15b16b2..cea244bae0449a52b04989d1db1e4fbbd178241c 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Cat.java
diff --git a/patches/server/0139-Phantom-flames-on-swoop.patch b/patches/server/0139-FEAT-Phantom-flames-on-swoop.patch
similarity index 97%
rename from patches/server/0139-Phantom-flames-on-swoop.patch
rename to patches/server/0139-FEAT-Phantom-flames-on-swoop.patch
index 07283f9ea..d5da54b76 100644
--- a/patches/server/0139-Phantom-flames-on-swoop.patch
+++ b/patches/server/0139-FEAT-Phantom-flames-on-swoop.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 12 Dec 2020 09:10:59 -0600
-Subject: [PATCH] Phantom flames on swoop
+Subject: [PATCH] |FEAT| Phantom flames on swoop
diff --git a/src/main/java/net/minecraft/world/entity/monster/Phantom.java b/src/main/java/net/minecraft/world/entity/monster/Phantom.java
diff --git a/patches/server/0140-Option-for-chests-to-open-even-with-a-solid-block-on.patch b/patches/server/0140-FEAT-Option-for-chests-to-open-even-with-a-solid-blo.patch
similarity index 90%
rename from patches/server/0140-Option-for-chests-to-open-even-with-a-solid-block-on.patch
rename to patches/server/0140-FEAT-Option-for-chests-to-open-even-with-a-solid-blo.patch
index d32f4a815..952024787 100644
--- a/patches/server/0140-Option-for-chests-to-open-even-with-a-solid-block-on.patch
+++ b/patches/server/0140-FEAT-Option-for-chests-to-open-even-with-a-solid-blo.patch
@@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Date: Sat, 12 Dec 2020 14:34:18 -0800
-Subject: [PATCH] Option for chests to open even with a solid block on top
+Subject: [PATCH] |FEAT| Option for chests to open even with a solid block on
+ top
diff --git a/src/main/java/net/minecraft/world/level/block/ChestBlock.java b/src/main/java/net/minecraft/world/level/block/ChestBlock.java
@@ -17,7 +18,7 @@ index eecb8c089b5f426b1395b47f714af32c210555ef..ac82e2b0f4ca1232cc7ec6e4c7dd2613
return world.getBlockState(blockposition1).isRedstoneConductor(world, blockposition1);
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
-index 10c6c8a053acf761e2645c86823d1e2eb7c13e13..dcaca117ed5bf3b9c2459cbe72c7752e96b84850 100644
+index 980c9cae159e67374cc613e0b0e07f2c8eff3d45..8db3f93e13bb6b302fe048c06ae5029bfb7b0c40 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -442,6 +442,11 @@ public class PurpurWorldConfig {
diff --git a/patches/server/0141-Implement-TPSBar.patch b/patches/server/0141-META-Implement-TPSBar.patch
similarity index 98%
rename from patches/server/0141-Implement-TPSBar.patch
rename to patches/server/0141-META-Implement-TPSBar.patch
index 4898084da..ca034e432 100644
--- a/patches/server/0141-Implement-TPSBar.patch
+++ b/patches/server/0141-META-Implement-TPSBar.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Sat, 12 Dec 2020 21:19:05 -0600
-Subject: [PATCH] Implement TPSBar
+Subject: [PATCH] |META| Implement TPSBar
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
@@ -17,7 +17,7 @@ index 42deff516bd363d0882b441fa6928ac7eecbfccc..386e9ad013369633e2be543b9281e5a5
if (environment.includeIntegrated) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
-index 5f1f6c43a155956298ac57acf54773728cb1215b..dd4be57611028acde485bc03640e83e07b0bd34f 100644
+index 9592e3c54da1fddd5a9c199c210f9d2780da1f1d..e22efbd106191d6c478cc2d9fb983dbea0dfa7c8 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1134,6 +1134,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop
Date: Sun, 13 Dec 2020 20:40:57 -0500
-Subject: [PATCH] Striders give saddle back
+Subject: [PATCH] |FEAT| Striders give saddle back
diff --git a/src/main/java/net/minecraft/world/entity/monster/Strider.java b/src/main/java/net/minecraft/world/entity/monster/Strider.java
diff --git a/patches/server/0143-PlayerBookTooLargeEvent.patch b/patches/server/0143-FEAT-PlayerBookTooLargeEvent.patch
similarity index 98%
rename from patches/server/0143-PlayerBookTooLargeEvent.patch
rename to patches/server/0143-FEAT-PlayerBookTooLargeEvent.patch
index 5659c02c1..9b987e090 100644
--- a/patches/server/0143-PlayerBookTooLargeEvent.patch
+++ b/patches/server/0143-FEAT-PlayerBookTooLargeEvent.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Wed, 23 Dec 2020 00:43:59 -0600
-Subject: [PATCH] PlayerBookTooLargeEvent
+Subject: [PATCH] |FEAT| PlayerBookTooLargeEvent
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
diff --git a/patches/server/0144-Full-netherite-armor-grants-fire-resistance.patch b/patches/server/0144-FEAT-Full-netherite-armor-grants-fire-resistance.patch
similarity index 95%
rename from patches/server/0144-Full-netherite-armor-grants-fire-resistance.patch
rename to patches/server/0144-FEAT-Full-netherite-armor-grants-fire-resistance.patch
index ccbefd7d6..020f49a29 100644
--- a/patches/server/0144-Full-netherite-armor-grants-fire-resistance.patch
+++ b/patches/server/0144-FEAT-Full-netherite-armor-grants-fire-resistance.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Thu, 24 Dec 2020 11:00:15 -0600
-Subject: [PATCH] Full netherite armor grants fire resistance
+Subject: [PATCH] |FEAT| Full netherite armor grants fire resistance
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -26,7 +26,7 @@ index 5b0647a8b8d2dd8a44b38c378312ad917d5314d9..d7a3d2928a63517a1513f5572b121f77
protected ItemCooldowns createItemCooldowns() {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
-index 666dcdc11178ea576c84f50e37da57f3844b7bf4..a8390aad9b3991ae83102de0057a2ed45914c612 100644
+index 870c93b7d0d04b9aebde2d95cfa0ae0ed0b4bc11..b6800b176e59bb9d5e108bcc4f3d8e00423c393d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -267,6 +267,19 @@ public class PurpurWorldConfig {
diff --git a/patches/server/0145-Fix-rotating-UP-DOWN-CW-and-CCW.patch b/patches/server/0145-FIX-Fix-rotating-UP-DOWN-CW-and-CCW.patch
similarity index 95%
rename from patches/server/0145-Fix-rotating-UP-DOWN-CW-and-CCW.patch
rename to patches/server/0145-FIX-Fix-rotating-UP-DOWN-CW-and-CCW.patch
index 4f6572695..4e1a6654c 100644
--- a/patches/server/0145-Fix-rotating-UP-DOWN-CW-and-CCW.patch
+++ b/patches/server/0145-FIX-Fix-rotating-UP-DOWN-CW-and-CCW.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath
Date: Wed, 6 Jan 2021 02:19:29 -0600
-Subject: [PATCH] Fix rotating UP/DOWN CW and CCW
+Subject: [PATCH] |FIX| Fix rotating UP/DOWN CW and CCW
diff --git a/src/main/java/net/minecraft/core/Direction.java b/src/main/java/net/minecraft/core/Direction.java
diff --git a/patches/server/0146-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0146-FEAT-Add-mobGriefing-bypass-to-everything-affected.patch
similarity index 99%
rename from patches/server/0146-Add-mobGriefing-bypass-to-everything-affected.patch
rename to patches/server/0146-FEAT-Add-mobGriefing-bypass-to-everything-affected.patch
index 85892eaf0..7faba69da 100644
--- a/patches/server/0146-Add-mobGriefing-bypass-to-everything-affected.patch
+++ b/patches/server/0146-FEAT-Add-mobGriefing-bypass-to-everything-affected.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42
Date: Tue, 5 Jan 2021 22:21:56 -0500
-Subject: [PATCH] Add mobGriefing bypass to everything affected
+Subject: [PATCH] |FEAT| Add mobGriefing bypass to everything affected
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
diff --git a/patches/server/0147-Config-to-allow-Note-Block-sounds-when-blocked.patch b/patches/server/0147-FEAT-Config-to-allow-Note-Block-sounds-when-blocked.patch
similarity index 94%
rename from patches/server/0147-Config-to-allow-Note-Block-sounds-when-blocked.patch
rename to patches/server/0147-FEAT-Config-to-allow-Note-Block-sounds-when-blocked.patch
index 623a78a3a..ca142f247 100644
--- a/patches/server/0147-Config-to-allow-Note-Block-sounds-when-blocked.patch
+++ b/patches/server/0147-FEAT-Config-to-allow-Note-Block-sounds-when-blocked.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42
Date: Fri, 8 Jan 2021 16:07:32 -0500
-Subject: [PATCH] Config to allow Note Block sounds when blocked
+Subject: [PATCH] |FEAT| Config to allow Note Block sounds when blocked
Allows for Note Blocks to ignore whether or not there's air above them to play.
@@ -22,7 +22,7 @@ index 59ae3bb34678cdb5241f691915c96d6568363d3b..f6c0c9fca005f72c3764a4a4f8df0582
org.bukkit.event.block.NotePlayEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callNotePlayEvent(world, blockposition, data.getValue(NoteBlock.INSTRUMENT), data.getValue(NoteBlock.NOTE));
if (!event.isCancelled()) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
-index 8df99d5ccee0ff4280a720b2373407e51f4d4ec2..fd9ba48619b103071f9de669dea7d59bd2db2fee 100644
+index 282a98b682558818bc1b694b82592feb3bc5dad7..c9fb98c7aacf0745ee5f008629ebfe2d117f664d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -384,6 +384,7 @@ public class PurpurWorldConfig {
diff --git a/patches/server/0148-Add-EntityTeleportHinderedEvent.patch b/patches/server/0148-FEAT-Add-EntityTeleportHinderedEvent.patch
similarity index 99%
rename from patches/server/0148-Add-EntityTeleportHinderedEvent.patch
rename to patches/server/0148-FEAT-Add-EntityTeleportHinderedEvent.patch
index 3624dba31..3a1e9bc52 100644
--- a/patches/server/0148-Add-EntityTeleportHinderedEvent.patch
+++ b/patches/server/0148-FEAT-Add-EntityTeleportHinderedEvent.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Mariell Hoversholm
Date: Sat, 9 Jan 2021 15:27:46 +0100
-Subject: [PATCH] Add EntityTeleportHinderedEvent
+Subject: [PATCH] |FEAT| Add EntityTeleportHinderedEvent
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/patches/server/0149-Add-StructureGenerateEvent.patch b/patches/server/0149-FEAT-Add-StructureGenerateEvent.patch
similarity index 97%
rename from patches/server/0149-Add-StructureGenerateEvent.patch
rename to patches/server/0149-FEAT-Add-StructureGenerateEvent.patch
index 0cd0bb02a..6a0d4a18e 100644
--- a/patches/server/0149-Add-StructureGenerateEvent.patch
+++ b/patches/server/0149-FEAT-Add-StructureGenerateEvent.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nahuel
Date: Sat, 9 Jan 2021 15:36:59 +0100
-Subject: [PATCH] Add StructureGenerateEvent
+Subject: [PATCH] |FEAT| Add StructureGenerateEvent
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/patches/server/0150-Farmland-trampling-changes.patch b/patches/server/0150-FEAT-Farmland-trampling-changes.patch
similarity index 96%
rename from patches/server/0150-Farmland-trampling-changes.patch
rename to patches/server/0150-FEAT-Farmland-trampling-changes.patch
index 3ec83c71f..6d6ecf772 100644
--- a/patches/server/0150-Farmland-trampling-changes.patch
+++ b/patches/server/0150-FEAT-Farmland-trampling-changes.patch
@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Mariell Hoversholm
Date: Sat, 9 Jan 2021 16:06:40 +0100
-Subject: [PATCH] Farmland trampling changes
+Subject: [PATCH] |FEAT| Farmland trampling changes
This lets us choose if farmland trampling is fully disabled or only
players may trample farmland.
@@ -37,7 +37,7 @@ index e06a8a68ccb9c9a77df061264e58fd850cf1f794..010da2b44fa3a4f033e4f86e9a0917b5
if (CraftEventFactory.callEntityChangeBlockEvent(entity, pos, Blocks.DIRT.defaultBlockState()).isCancelled()) {
return;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
-index 6b02ac8a7ed8e4787abf017af23936718cee8d9c..8eda95b6b8c71fdc2c1938304b51c626f66235bd 100644
+index 58812794be7c3676fa527cdeb8e48e243e73dffd..fd524821899fda17167edfcfafdcd5867e6835ab 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -480,10 +480,16 @@ public class PurpurWorldConfig {