diff --git a/connector/src/main/java/org/geysermc/connector/network/session/cache/ChunkCache.java b/connector/src/main/java/org/geysermc/connector/network/session/cache/ChunkCache.java
index e8396e06e..a4c466973 100644
--- a/connector/src/main/java/org/geysermc/connector/network/session/cache/ChunkCache.java
+++ b/connector/src/main/java/org/geysermc/connector/network/session/cache/ChunkCache.java
@@ -79,7 +79,7 @@ public class ChunkCache {
         Position blockPosition = chunkPosition.getChunkBlock(position.getX(), position.getY(), position.getZ());
         if (chunk != null) {
             BlockState blockState = chunk.getBlocks().get(blockPosition.getX(), blockPosition.getY(), blockPosition.getZ());
-            return TranslatorsInit.getItemTranslator().getBedrockBlock(blockState);
+            return TranslatorsInit.getBlockTranslator().getBedrockBlock(blockState);
         }
 
         return BedrockItem.AIR;
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java b/connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java
index 9f791d272..e7150acc3 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/TranslatorsInit.java
@@ -73,6 +73,7 @@ import org.geysermc.connector.network.translators.bedrock.BedrockCommandRequestT
 import org.geysermc.connector.network.translators.bedrock.BedrockMobEquipmentTranslator;
 import org.geysermc.connector.network.translators.bedrock.BedrockMovePlayerTranslator;
 import org.geysermc.connector.network.translators.bedrock.BedrockTextTranslator;
+import org.geysermc.connector.network.translators.block.BlockTranslator;
 import org.geysermc.connector.network.translators.inventory.GenericInventoryTranslator;
 import org.geysermc.connector.network.translators.inventory.InventoryTranslator;
 import org.geysermc.connector.network.translators.item.ItemTranslator;
@@ -117,6 +118,9 @@ public class TranslatorsInit {
     @Getter
     private static ItemTranslator itemTranslator;
 
+    @Getter
+    private static BlockTranslator blockTranslator;
+
     @Getter
     private static Map<WindowType, InventoryTranslator> inventoryTranslators = new HashMap<WindowType, InventoryTranslator>();
 
@@ -186,6 +190,7 @@ public class TranslatorsInit {
         Registry.registerBedrock(MovePlayerPacket.class, new BedrockMovePlayerTranslator());
 
         itemTranslator = new ItemTranslator();
+        blockTranslator = new BlockTranslator();
 
         registerInventoryTranslators();
     }
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/block/BlockTranslator.java b/connector/src/main/java/org/geysermc/connector/network/translators/block/BlockTranslator.java
new file mode 100644
index 000000000..fe4accf56
--- /dev/null
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/block/BlockTranslator.java
@@ -0,0 +1,20 @@
+package org.geysermc.connector.network.translators.block;
+
+import com.github.steveice10.mc.protocol.data.game.entity.metadata.ItemStack;
+import com.github.steveice10.mc.protocol.data.game.world.block.BlockState;
+import org.geysermc.connector.network.translators.item.BedrockItem;
+import org.geysermc.connector.utils.Remapper;
+
+// Class for future expansion
+public class BlockTranslator {
+
+    public BedrockItem getBedrockBlock(BlockState state) {
+        BedrockItem bedrockItem = Remapper.BLOCK_REMAPPER.convertToBedrockB(new ItemStack(state.getId()));
+        if (bedrockItem == null) {
+            // GeyserLogger.DEFAULT.debug("Missing mapping for java block " + state.getId());
+            return BedrockItem.AIR;
+        }
+
+        return bedrockItem;
+    }
+}
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/block/ColoredBlock.java b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/ColoredBlock.java
similarity index 95%
rename from connector/src/main/java/org/geysermc/connector/network/translators/item/block/ColoredBlock.java
rename to connector/src/main/java/org/geysermc/connector/network/translators/block/type/ColoredBlock.java
index c1686eae3..ec869fa0e 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/block/ColoredBlock.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/ColoredBlock.java
@@ -23,7 +23,7 @@
  * @link https://github.com/GeyserMC/Geyser
  */
 
-package org.geysermc.connector.network.translators.item.block;
+package org.geysermc.connector.network.translators.block.type;
 
 public enum ColoredBlock {
 
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/type/DyeColor.java b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/DyeColor.java
similarity index 96%
rename from connector/src/main/java/org/geysermc/connector/network/translators/item/type/DyeColor.java
rename to connector/src/main/java/org/geysermc/connector/network/translators/block/type/DyeColor.java
index 1d794d718..4ba713d5e 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/type/DyeColor.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/DyeColor.java
@@ -23,7 +23,7 @@
  * @link https://github.com/GeyserMC/Geyser
  */
 
-package org.geysermc.connector.network.translators.item.type;
+package org.geysermc.connector.network.translators.block.type;
 
 import lombok.Getter;
 
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/type/StoneType.java b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/StoneType.java
similarity index 95%
rename from connector/src/main/java/org/geysermc/connector/network/translators/item/type/StoneType.java
rename to connector/src/main/java/org/geysermc/connector/network/translators/block/type/StoneType.java
index 7888bd607..db66eac82 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/type/StoneType.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/StoneType.java
@@ -23,7 +23,7 @@
  * @link https://github.com/GeyserMC/Geyser
  */
 
-package org.geysermc.connector.network.translators.item.type;
+package org.geysermc.connector.network.translators.block.type;
 
 import lombok.Getter;
 
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/block/WoodBlock.java b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/WoodBlock.java
similarity index 95%
rename from connector/src/main/java/org/geysermc/connector/network/translators/item/block/WoodBlock.java
rename to connector/src/main/java/org/geysermc/connector/network/translators/block/type/WoodBlock.java
index 0684cf3fa..f4b9d0f73 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/block/WoodBlock.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/WoodBlock.java
@@ -23,7 +23,7 @@
  * @link https://github.com/GeyserMC/Geyser
  */
 
-package org.geysermc.connector.network.translators.item.block;
+package org.geysermc.connector.network.translators.block.type;
 
 public enum WoodBlock {
 
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/type/WoodType.java b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/WoodType.java
similarity index 95%
rename from connector/src/main/java/org/geysermc/connector/network/translators/item/type/WoodType.java
rename to connector/src/main/java/org/geysermc/connector/network/translators/block/type/WoodType.java
index d490f3f5f..a2cdce730 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/type/WoodType.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/block/type/WoodType.java
@@ -23,7 +23,7 @@
  * @link https://github.com/GeyserMC/Geyser
  */
 
-package org.geysermc.connector.network.translators.item.type;
+package org.geysermc.connector.network.translators.block.type;
 
 import lombok.Getter;
 
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/CommonItem.java b/connector/src/main/java/org/geysermc/connector/network/translators/item/CommonItem.java
deleted file mode 100644
index fdcbaceef..000000000
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/CommonItem.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package org.geysermc.connector.network.translators.item;
-
-import lombok.Getter;
-
-@Getter
-public class CommonItem {
-
-    private JavaItem java;
-    private BedrockItem bedrock;
-}
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/item/ItemTranslator.java b/connector/src/main/java/org/geysermc/connector/network/translators/item/ItemTranslator.java
index 01d2fcf28..ec047c834 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/item/ItemTranslator.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/item/ItemTranslator.java
@@ -26,7 +26,6 @@
 package org.geysermc.connector.network.translators.item;
 
 import com.github.steveice10.mc.protocol.data.game.entity.metadata.ItemStack;
-import com.github.steveice10.mc.protocol.data.game.world.block.BlockState;
 import com.github.steveice10.mc.protocol.data.message.Message;
 import com.github.steveice10.opennbt.tag.builtin.ByteArrayTag;
 import com.github.steveice10.opennbt.tag.builtin.ByteTag;
@@ -85,7 +84,6 @@ public class ItemTranslator {
         return bedrockItem;
     }
 
-
     public JavaItem getJavaItem(ItemData data) {
         JavaItem javaItem = Remapper.ITEM_REMAPPER.convertToJava(data);
         if (javaItem == null) {
@@ -96,16 +94,6 @@ public class ItemTranslator {
         return javaItem;
     }
 
-    public BedrockItem getBedrockBlock(BlockState state) {
-        BedrockItem bedrockItem = Remapper.BLOCK_REMAPPER.convertToBedrockB(new ItemStack(state.getId()));
-        if (bedrockItem == null) {
-            // GeyserLogger.DEFAULT.debug("Missing mapping for java block " + state.getId());
-            return BedrockItem.AIR;
-        }
-
-        return bedrockItem;
-    }
-
     private CompoundTag translateToJavaNBT(com.nukkitx.nbt.tag.CompoundTag tag) {
         CompoundTag javaTag = new CompoundTag(tag.getName());
         Map<String, Tag> javaValue = javaTag.getValue();
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaBlockChangeTranslator.java b/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaBlockChangeTranslator.java
index 417ac9ee3..63d1b927d 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaBlockChangeTranslator.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaBlockChangeTranslator.java
@@ -21,7 +21,7 @@ public class JavaBlockChangeTranslator extends PacketTranslator<ServerBlockChang
                 record.getPosition().getY(),
                 record.getPosition().getZ()));
 
-        BedrockItem bedrockItem = TranslatorsInit.getItemTranslator().getBedrockBlock(record.getBlock());
+        BedrockItem bedrockItem = TranslatorsInit.getBlockTranslator().getBedrockBlock(record.getBlock());
         updateBlockPacket.setRuntimeId(GlobalBlockPalette.getOrCreateRuntimeId(bedrockItem.hashCode()));
 
         session.getUpstream().sendPacket(updateBlockPacket);
diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaMultiBlockChangeTranslator.java b/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaMultiBlockChangeTranslator.java
index ec8748bd4..8dd28dea6 100644
--- a/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaMultiBlockChangeTranslator.java
+++ b/connector/src/main/java/org/geysermc/connector/network/translators/java/world/JavaMultiBlockChangeTranslator.java
@@ -47,7 +47,7 @@ public class JavaMultiBlockChangeTranslator extends PacketTranslator<ServerMulti
                     record.getPosition().getY(),
                     record.getPosition().getZ()));
 
-            BedrockItem bedrockItem = TranslatorsInit.getItemTranslator().getBedrockBlock(record.getBlock());
+            BedrockItem bedrockItem = TranslatorsInit.getBlockTranslator().getBedrockBlock(record.getBlock());
             updateBlockPacket.setRuntimeId(GlobalBlockPalette.getOrCreateRuntimeId(bedrockItem.hashCode()));
 
             session.getUpstream().sendPacket(updateBlockPacket);
diff --git a/connector/src/main/java/org/geysermc/connector/utils/ChunkUtils.java b/connector/src/main/java/org/geysermc/connector/utils/ChunkUtils.java
index b4b20e699..770cc50ba 100644
--- a/connector/src/main/java/org/geysermc/connector/utils/ChunkUtils.java
+++ b/connector/src/main/java/org/geysermc/connector/utils/ChunkUtils.java
@@ -34,7 +34,7 @@ public class ChunkUtils {
                 for (int y = 0; y < 16; y++) {
                     for (int z = 0; z < 16; z++) {
                         BlockState block = storage.get(x, y, z);
-                        BedrockItem bedrockBlock = TranslatorsInit.getItemTranslator().getBedrockBlock(block);
+                        BedrockItem bedrockBlock = TranslatorsInit.getBlockTranslator().getBedrockBlock(block);
 
                         section.getBlockStorageArray()[0].setFullBlock(ChunkSection.blockPosition(x, y, z),
                                 bedrockBlock.getId() << 4 | bedrockBlock.getData());
diff --git a/connector/src/main/java/org/geysermc/connector/utils/Remapper.java b/connector/src/main/java/org/geysermc/connector/utils/Remapper.java
index 98d6faa1f..39182d37c 100644
--- a/connector/src/main/java/org/geysermc/connector/utils/Remapper.java
+++ b/connector/src/main/java/org/geysermc/connector/utils/Remapper.java
@@ -4,11 +4,11 @@ import com.github.steveice10.mc.protocol.data.game.entity.metadata.ItemStack;
 import com.nukkitx.protocol.bedrock.data.ItemData;
 import org.geysermc.connector.network.translators.item.BedrockItem;
 import org.geysermc.connector.network.translators.item.JavaItem;
-import org.geysermc.connector.network.translators.item.block.ColoredBlock;
-import org.geysermc.connector.network.translators.item.type.DyeColor;
-import org.geysermc.connector.network.translators.item.type.StoneType;
-import org.geysermc.connector.network.translators.item.block.WoodBlock;
-import org.geysermc.connector.network.translators.item.type.WoodType;
+import org.geysermc.connector.network.translators.block.type.ColoredBlock;
+import org.geysermc.connector.network.translators.block.type.DyeColor;
+import org.geysermc.connector.network.translators.block.type.StoneType;
+import org.geysermc.connector.network.translators.block.type.WoodBlock;
+import org.geysermc.connector.network.translators.block.type.WoodType;
 
 import java.util.HashMap;
 import java.util.Map;