diff --git a/bukkit-legacy/src/main/java/com/viaversion/viaversion/bukkit/listeners/protocol1_9to1_8/ArmorListener.java b/bukkit-legacy/src/main/java/com/viaversion/viaversion/bukkit/listeners/protocol1_9to1_8/ArmorListener.java
index 8d71c6bc0..adb4219fa 100644
--- a/bukkit-legacy/src/main/java/com/viaversion/viaversion/bukkit/listeners/protocol1_9to1_8/ArmorListener.java
+++ b/bukkit-legacy/src/main/java/com/viaversion/viaversion/bukkit/listeners/protocol1_9to1_8/ArmorListener.java
@@ -21,11 +21,10 @@ import com.viaversion.viaversion.api.Via;
import com.viaversion.viaversion.api.protocol.packet.PacketWrapper;
import com.viaversion.viaversion.api.type.Type;
import com.viaversion.viaversion.bukkit.listeners.ViaBukkitListener;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ArmorType;
+import com.viaversion.viaversion.protocols.v1_8to1_9.data.ArmorType;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ClientboundPackets1_9;
import java.util.UUID;
-import java.util.logging.Level;
import org.bukkit.Bukkit;
import org.bukkit.entity.HumanEntity;
import org.bukkit.entity.Player;
diff --git a/common/src/main/java/com/viaversion/viaversion/ViaManagerImpl.java b/common/src/main/java/com/viaversion/viaversion/ViaManagerImpl.java
index a5985529a..f1bd8e532 100644
--- a/common/src/main/java/com/viaversion/viaversion/ViaManagerImpl.java
+++ b/common/src/main/java/com/viaversion/viaversion/ViaManagerImpl.java
@@ -41,7 +41,7 @@ import com.viaversion.viaversion.protocol.ProtocolManagerImpl;
import com.viaversion.viaversion.protocol.ServerProtocolVersionRange;
import com.viaversion.viaversion.protocol.ServerProtocolVersionSingleton;
import com.viaversion.viaversion.protocols.v1_12_2to1_13.task.TabCompleteThread;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ViaIdleThread;
+import com.viaversion.viaversion.protocols.v1_8to1_9.task.ViaIdleThread;
import com.viaversion.viaversion.scheduler.TaskScheduler;
import com.viaversion.viaversion.update.UpdateUtil;
import java.util.ArrayList;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ArmorType.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/ArmorType.java
similarity index 98%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ArmorType.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/ArmorType.java
index 87fdacfc9..1ae0ddecd 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ArmorType.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/ArmorType.java
@@ -15,7 +15,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9;
+package com.viaversion.viaversion.protocols.v1_8to1_9.data;
import java.util.HashMap;
import java.util.Map;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/Effect.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/Effect.java
similarity index 97%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/Effect.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/Effect.java
index 7728eed03..ad0fa2d2b 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/Effect.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/Effect.java
@@ -15,7 +15,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9.sounds;
+package com.viaversion.viaversion.protocols.v1_8to1_9.data;
import it.unimi.dsi.fastutil.ints.Int2IntMap;
import it.unimi.dsi.fastutil.ints.Int2IntOpenHashMap;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/chat/GameMode.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/GameMode.java
similarity index 95%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/chat/GameMode.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/GameMode.java
index 9ba58c297..326b50387 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/chat/GameMode.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/GameMode.java
@@ -15,7 +15,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9.chat;
+package com.viaversion.viaversion.protocols.v1_8to1_9.data;
public enum GameMode {
SURVIVAL(0, "Survival Mode"),
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/SoundCategory.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/SoundCategory.java
similarity index 95%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/SoundCategory.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/SoundCategory.java
index 2555a4cb4..1fe02ba5f 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/SoundCategory.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/SoundCategory.java
@@ -15,7 +15,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9.sounds;
+package com.viaversion.viaversion.protocols.v1_8to1_9.data;
public enum SoundCategory {
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/SoundEffect.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/SoundEffect.java
similarity index 99%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/SoundEffect.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/SoundEffect.java
index 29786e699..321349908 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/sounds/SoundEffect.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/data/SoundEffect.java
@@ -15,10 +15,9 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9.sounds;
+package com.viaversion.viaversion.protocols.v1_8to1_9.data;
import java.util.HashMap;
-import java.util.Locale;
import java.util.Map;
public enum SoundEffect {
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/metadata/MetadataRewriter1_9To1_8.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/metadata/MetadataRewriter1_9To1_8.java
index 3d2dc1cca..e36f8eae5 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/metadata/MetadataRewriter1_9To1_8.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/metadata/MetadataRewriter1_9To1_8.java
@@ -26,7 +26,7 @@ import com.viaversion.viaversion.api.minecraft.metadata.MetaType;
import com.viaversion.viaversion.api.minecraft.metadata.Metadata;
import com.viaversion.viaversion.api.minecraft.metadata.types.MetaType1_8;
import com.viaversion.viaversion.protocols.v1_8.packet.ClientboundPackets1_8;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ItemRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ItemRewriter;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.rewriter.EntityRewriter;
import com.viaversion.viaversion.rewriter.meta.MetaHandlerEvent;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/chat/ChatRewriter.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ChatRewriter.java
similarity index 96%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/chat/ChatRewriter.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ChatRewriter.java
index 02b51d2f5..89eda1583 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/chat/ChatRewriter.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ChatRewriter.java
@@ -15,7 +15,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9.chat;
+package com.viaversion.viaversion.protocols.v1_8to1_9.rewriter;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/EntityPacketRewriter1_9.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/EntityPacketRewriter1_9.java
index 9dd838165..a87ce23e8 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/EntityPacketRewriter1_9.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/EntityPacketRewriter1_9.java
@@ -28,7 +28,7 @@ import com.viaversion.viaversion.api.type.Type;
import com.viaversion.viaversion.api.type.types.version.Types1_8;
import com.viaversion.viaversion.api.type.types.version.Types1_9;
import com.viaversion.viaversion.protocols.v1_8.packet.ClientboundPackets1_8;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ItemRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ItemRewriter;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.metadata.MetadataRewriter1_9To1_8;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ClientboundPackets1_9;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemPacketRewriter1_9.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemPacketRewriter1_9.java
index 69088d1a7..ed7ddeb9b 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemPacketRewriter1_9.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemPacketRewriter1_9.java
@@ -22,7 +22,7 @@ import com.viaversion.viaversion.api.minecraft.item.Item;
import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers;
import com.viaversion.viaversion.api.type.Type;
import com.viaversion.viaversion.protocols.v1_8.packet.ClientboundPackets1_8;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ItemRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ItemRewriter;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ClientboundPackets1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ServerboundPackets1_9;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ItemRewriter.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemRewriter.java
similarity index 99%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ItemRewriter.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemRewriter.java
index 3d8d8e4bc..22ac4c0ac 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ItemRewriter.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/ItemRewriter.java
@@ -15,7 +15,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9;
+package com.viaversion.viaversion.protocols.v1_8to1_9.rewriter;
import com.viaversion.nbt.tag.CompoundTag;
import com.viaversion.nbt.tag.ListTag;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/PlayerPackets1_9.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/PlayerPackets1_9.java
index 1251d3970..9237031f0 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/PlayerPackets1_9.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/PlayerPackets1_9.java
@@ -26,10 +26,10 @@ import com.viaversion.viaversion.api.protocol.remapper.PacketHandler;
import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers;
import com.viaversion.viaversion.api.type.Type;
import com.viaversion.viaversion.protocols.v1_8.packet.ClientboundPackets1_8;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ItemRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ItemRewriter;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
-import com.viaversion.viaversion.protocols.v1_8to1_9.chat.ChatRewriter;
-import com.viaversion.viaversion.protocols.v1_8to1_9.chat.GameMode;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ChatRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.data.GameMode;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ServerboundPackets1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.providers.CommandBlockProvider;
import com.viaversion.viaversion.protocols.v1_8to1_9.providers.CompressionProvider;
@@ -37,8 +37,6 @@ import com.viaversion.viaversion.protocols.v1_8to1_9.providers.MainHandProvider;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.ClientChunks;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.EntityTracker1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.MovementTracker;
-import com.viaversion.viaversion.util.ComponentUtil;
-import java.util.logging.Level;
public class PlayerPackets1_9 {
public static void register(Protocol1_8To1_9 protocol) {
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/SpawnPackets1_9.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/SpawnPackets1_9.java
index 90416ecdd..8db3f8aa4 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/SpawnPackets1_9.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/SpawnPackets1_9.java
@@ -31,14 +31,13 @@ import com.viaversion.viaversion.api.type.Type;
import com.viaversion.viaversion.api.type.types.version.Types1_8;
import com.viaversion.viaversion.api.type.types.version.Types1_9;
import com.viaversion.viaversion.protocols.v1_8.packet.ClientboundPackets1_8;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ItemRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ItemRewriter;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.metadata.MetadataRewriter1_9To1_8;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ClientboundPackets1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.EntityTracker1_9;
import java.util.ArrayList;
import java.util.List;
-import java.util.logging.Level;
public class SpawnPackets1_9 {
public static final ValueTransformer toNewDouble = new ValueTransformer<>(Type.DOUBLE) {
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/WorldPacketRewriter1_9.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/WorldPacketRewriter1_9.java
index cfb8f78d9..3b94f41f3 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/WorldPacketRewriter1_9.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/rewriter/WorldPacketRewriter1_9.java
@@ -36,13 +36,13 @@ import com.viaversion.viaversion.api.type.types.chunk.ChunkType1_8;
import com.viaversion.viaversion.api.type.types.chunk.ChunkType1_9_1;
import com.viaversion.viaversion.protocols.v1_8.packet.ClientboundPackets1_8;
import com.viaversion.viaversion.protocols.v1_8.packet.ServerboundPackets1_8;
-import com.viaversion.viaversion.protocols.v1_8to1_9.ItemRewriter;
+import com.viaversion.viaversion.protocols.v1_8to1_9.rewriter.ItemRewriter;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ClientboundPackets1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ServerboundPackets1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.providers.CommandBlockProvider;
-import com.viaversion.viaversion.protocols.v1_8to1_9.sounds.Effect;
-import com.viaversion.viaversion.protocols.v1_8to1_9.sounds.SoundEffect;
+import com.viaversion.viaversion.protocols.v1_8to1_9.data.Effect;
+import com.viaversion.viaversion.protocols.v1_8to1_9.data.SoundEffect;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.ClientChunks;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.EntityTracker1_9;
import com.viaversion.viaversion.util.ComponentUtil;
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/storage/EntityTracker1_9.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/storage/EntityTracker1_9.java
index 3cda27c64..e412c326a 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/storage/EntityTracker1_9.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/storage/EntityTracker1_9.java
@@ -33,7 +33,7 @@ import com.viaversion.viaversion.api.protocol.packet.PacketWrapper;
import com.viaversion.viaversion.api.type.Type;
import com.viaversion.viaversion.data.entity.EntityTrackerBase;
import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
-import com.viaversion.viaversion.protocols.v1_8to1_9.chat.GameMode;
+import com.viaversion.viaversion.protocols.v1_8to1_9.data.GameMode;
import com.viaversion.viaversion.protocols.v1_8to1_9.packet.ClientboundPackets1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.providers.BossBarProvider;
import com.viaversion.viaversion.protocols.v1_8to1_9.providers.EntityIdProvider;
@@ -49,7 +49,6 @@ import java.util.List;
import java.util.Set;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
-import java.util.logging.Level;
public class EntityTracker1_9 extends EntityTrackerBase {
public static final String WITHER_TRANSLATABLE = "{\"translate\":\"entity.WitherBoss.name\"}";
diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ViaIdleThread.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/task/ViaIdleThread.java
similarity index 93%
rename from common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ViaIdleThread.java
rename to common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/task/ViaIdleThread.java
index 49d5da28a..c575d60b4 100644
--- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/ViaIdleThread.java
+++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_8to1_9/task/ViaIdleThread.java
@@ -15,11 +15,12 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-package com.viaversion.viaversion.protocols.v1_8to1_9;
+package com.viaversion.viaversion.protocols.v1_8to1_9.task;
import com.viaversion.viaversion.api.Via;
import com.viaversion.viaversion.api.connection.ProtocolInfo;
import com.viaversion.viaversion.api.connection.UserConnection;
+import com.viaversion.viaversion.protocols.v1_8to1_9.Protocol1_8To1_9;
import com.viaversion.viaversion.protocols.v1_8to1_9.providers.MovementTransmitterProvider;
import com.viaversion.viaversion.protocols.v1_8to1_9.storage.MovementTracker;