diff --git a/game/client/src/main/java/net/minecraft/client/render/block/model/BlockModelDispatcher.java b/game/client/src/main/java/net/minecraft/client/render/block/model/BlockModelDispatcher.java
index 0627c4fa7..ebbfdb2b0 100644
--- a/game/client/src/main/java/net/minecraft/client/render/block/model/BlockModelDispatcher.java
+++ b/game/client/src/main/java/net/minecraft/client/render/block/model/BlockModelDispatcher.java
@@ -126,12 +126,11 @@ public final class BlockModelDispatcher
         addDispatch(new BlockModelGenericWool<>(Blocks.WOOL, loadDataModel("minecraft:block/wool/white")));
         addDispatch(new BlockModelGenericRope<>(Blocks.ROPE));
 
+
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_CLAY, loadDataModel("minecraft:block/brick_clay")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_STONE_POLISHED, loadDataModel("minecraft:block/brick_stone_polished")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_STONE_POLISHED_MOSSY, loadDataModel("minecraft:block/brick_stone_polished_mossy")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_SANDSTONE, loadDataModel("minecraft:block/brick_sandstone")));
-        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_GOLD, loadDataModel("minecraft:block/brick_gold")));
-        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_LAPIS, loadDataModel("minecraft:block/brick_lapis")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_BASALT, loadDataModel("minecraft:block/brick_basalt")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_LIMESTONE, loadDataModel("minecraft:block/brick_limestone")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_GRANITE, loadDataModel("minecraft:block/brick_granite")));
@@ -139,8 +138,14 @@ public final class BlockModelDispatcher
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_SLATE, loadDataModel("minecraft:block/brick_slate")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_STONE, loadDataModel("minecraft:block/brick_stone")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_PERMAFROST, loadDataModel("minecraft:block/brick_permafrost")));
+
+        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_DIAMOND, loadDataModel("minecraft:block/brick_diamond")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_IRON, loadDataModel("minecraft:block/brick_iron")));
+        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_GOLD, loadDataModel("minecraft:block/brick_gold")));
+        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_LAPIS, loadDataModel("minecraft:block/brick_lapis")));
         addDispatch(new BlockModelGeneric<>(Blocks.BRICK_STEEL, loadDataModel("minecraft:block/brick_steel")));
+        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_OLIVINE, loadDataModel("minecraft:block/brick_olivine")));
+        addDispatch(new BlockModelGeneric<>(Blocks.BRICK_QUARTZ, loadDataModel("minecraft:block/brick_quartz")));
 
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_PLANKS_OAK, loadDataModel("minecraft:block/slab/planks/oak/lower"), loadDataModel("minecraft:block/slab/planks/oak/upper"), loadDataModel("minecraft:block/slab/planks/oak/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_COBBLE_STONE, loadDataModel("minecraft:block/slab/cobbled_stone/lower"), loadDataModel("minecraft:block/slab/cobbled_stone/upper"), loadDataModel("minecraft:block/slab/cobbled_stone/full")));
@@ -166,10 +171,14 @@ public final class BlockModelDispatcher
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_COBBLE_PERMAFROST, loadDataModel("minecraft:block/slab/cobbled_permafrost/lower"), loadDataModel("minecraft:block/slab/cobbled_permafrost/upper"), loadDataModel("minecraft:block/slab/cobbled_permafrost/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_SANDSTONE, loadDataModel("minecraft:block/slab/brick_sandstone/lower"), loadDataModel("minecraft:block/slab/brick_sandstone/upper"), loadDataModel("minecraft:block/slab/brick_sandstone/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_PERMAFROST, loadDataModel("minecraft:block/slab/brick_permafrost/lower"), loadDataModel("minecraft:block/slab/brick_permafrost/upper"), loadDataModel("minecraft:block/slab/brick_permafrost/full")));
+
+        addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_DIAMOND, loadDataModel("minecraft:block/slab/brick_diamond/lower"), loadDataModel("minecraft:block/slab/brick_diamond/upper"), loadDataModel("minecraft:block/slab/brick_diamond/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_IRON, loadDataModel("minecraft:block/slab/brick_iron/lower"), loadDataModel("minecraft:block/slab/brick_iron/upper"), loadDataModel("minecraft:block/slab/brick_iron/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_GOLD, loadDataModel("minecraft:block/slab/brick_gold/lower"), loadDataModel("minecraft:block/slab/brick_gold/upper"), loadDataModel("minecraft:block/slab/brick_gold/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_STEEL, loadDataModel("minecraft:block/slab/brick_steel/lower"), loadDataModel("minecraft:block/slab/brick_steel/upper"), loadDataModel("minecraft:block/slab/brick_steel/full")));
         addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_LAPIS, loadDataModel("minecraft:block/slab/brick_lapis/lower"), loadDataModel("minecraft:block/slab/brick_lapis/upper"), loadDataModel("minecraft:block/slab/brick_lapis/full")));
+        addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_OLIVINE, loadDataModel("minecraft:block/slab/brick_olivine/lower"), loadDataModel("minecraft:block/slab/brick_olivine/upper"), loadDataModel("minecraft:block/slab/brick_olivine/full")));
+        addDispatch(new BlockModelGenericSlab<>(Blocks.SLAB_BRICK_QUARTZ, loadDataModel("minecraft:block/slab/brick_quartz/lower"), loadDataModel("minecraft:block/slab/brick_quartz/upper"), loadDataModel("minecraft:block/slab/brick_quartz/full")));
 
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_PLANKS_OAK, loadDataModel("minecraft:block/stairs/planks/oak")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_COBBLE_STONE, loadDataModel("minecraft:block/stairs/cobbled_stone")));
@@ -189,10 +198,14 @@ public final class BlockModelDispatcher
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_COBBLE_PERMAFROST, loadDataModel("minecraft:block/stairs/cobbled_permafrost")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_SANDSTONE, loadDataModel("minecraft:block/stairs/brick_sandstone")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_PERMAFROST, loadDataModel("minecraft:block/stairs/brick_permafrost")));
+
+        addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_DIAMOND, loadDataModel("minecraft:block/stairs/brick_diamond")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_IRON, loadDataModel("minecraft:block/stairs/brick_iron")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_GOLD, loadDataModel("minecraft:block/stairs/brick_gold")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_STEEL, loadDataModel("minecraft:block/stairs/brick_steel")));
         addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_LAPIS, loadDataModel("minecraft:block/stairs/brick_lapis")));
+        addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_OLIVINE, loadDataModel("minecraft:block/stairs/brick_olivine")));
+        addDispatch(new BlockModelGenericStairs<>(Blocks.STAIRS_BRICK_QUARTZ, loadDataModel("minecraft:block/stairs/brick_quartz")));
 
         addDispatch(new BlockModelGeneric<>(Blocks.OBSIDIAN, loadDataModel("minecraft:block/obsidian")));
 
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/brick_diamond.json b/game/client/src/main/resources/assets/minecraft/models/block/brick_diamond.json
new file mode 100644
index 000000000..561923309
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/brick_diamond.json
@@ -0,0 +1,6 @@
+{
+  "parent": "minecraft:block/cube_all",
+  "textures": {
+    "all": "minecraft:block/brick_diamond"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/brick_olivine.json b/game/client/src/main/resources/assets/minecraft/models/block/brick_olivine.json
new file mode 100644
index 000000000..aaeb73f03
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/brick_olivine.json
@@ -0,0 +1,6 @@
+{
+  "parent": "minecraft:block/cube_all",
+  "textures": {
+    "all": "minecraft:block/brick_olivine"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/brick_quartz.json b/game/client/src/main/resources/assets/minecraft/models/block/brick_quartz.json
new file mode 100644
index 000000000..7468fd79c
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/brick_quartz.json
@@ -0,0 +1,6 @@
+{
+  "parent": "minecraft:block/cube_all",
+  "textures": {
+    "all": "minecraft:block/brick_quartz"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/full.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/full.json
new file mode 100644
index 000000000..561923309
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/full.json
@@ -0,0 +1,6 @@
+{
+  "parent": "minecraft:block/cube_all",
+  "textures": {
+    "all": "minecraft:block/brick_diamond"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/lower.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/lower.json
new file mode 100644
index 000000000..a6dd47b86
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/lower.json
@@ -0,0 +1,8 @@
+{
+  "parent": "minecraft:block/slab/lower",
+  "textures": {
+    "top": "minecraft:block/brick_diamond",
+    "bottom": "minecraft:block/brick_diamond",
+    "side": "minecraft:block/brick_diamond"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/upper.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/upper.json
new file mode 100644
index 000000000..c6dedc391
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_diamond/upper.json
@@ -0,0 +1,8 @@
+{
+  "parent": "minecraft:block/slab/upper",
+  "textures": {
+    "top": "minecraft:block/brick_diamond",
+    "bottom": "minecraft:block/brick_diamond",
+    "side": "minecraft:block/brick_diamond"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/full.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/full.json
new file mode 100644
index 000000000..aaeb73f03
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/full.json
@@ -0,0 +1,6 @@
+{
+  "parent": "minecraft:block/cube_all",
+  "textures": {
+    "all": "minecraft:block/brick_olivine"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/lower.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/lower.json
new file mode 100644
index 000000000..f698249fe
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/lower.json
@@ -0,0 +1,8 @@
+{
+  "parent": "minecraft:block/slab/lower",
+  "textures": {
+    "top": "minecraft:block/brick_olivine",
+    "bottom": "minecraft:block/brick_olivine",
+    "side": "minecraft:block/brick_olivine"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/upper.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/upper.json
new file mode 100644
index 000000000..8dc0165b2
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_olivine/upper.json
@@ -0,0 +1,8 @@
+{
+  "parent": "minecraft:block/slab/upper",
+  "textures": {
+    "top": "minecraft:block/brick_olivine",
+    "bottom": "minecraft:block/brick_olivine",
+    "side": "minecraft:block/brick_olivine"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/full.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/full.json
new file mode 100644
index 000000000..7468fd79c
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/full.json
@@ -0,0 +1,6 @@
+{
+  "parent": "minecraft:block/cube_all",
+  "textures": {
+    "all": "minecraft:block/brick_quartz"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/lower.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/lower.json
new file mode 100644
index 000000000..0b5d287f6
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/lower.json
@@ -0,0 +1,8 @@
+{
+  "parent": "minecraft:block/slab/lower",
+  "textures": {
+    "top": "minecraft:block/brick_quartz",
+    "bottom": "minecraft:block/brick_quartz",
+    "side": "minecraft:block/brick_quartz"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/upper.json b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/upper.json
new file mode 100644
index 000000000..fff6ca2a8
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/slab/brick_quartz/upper.json
@@ -0,0 +1,8 @@
+{
+  "parent": "minecraft:block/slab/upper",
+  "textures": {
+    "top": "minecraft:block/brick_quartz",
+    "bottom": "minecraft:block/brick_quartz",
+    "side": "minecraft:block/brick_quartz"
+  }
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_diamond.json b/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_diamond.json
new file mode 100644
index 000000000..a919c11aa
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_diamond.json
@@ -0,0 +1,8 @@
+{
+	"parent": "minecraft:block/stairs",
+	"textures": {
+		"top": "minecraft:block/brick_diamond",
+		"bottom": "minecraft:block/brick_diamond",
+		"side": "minecraft:block/brick_diamond"
+	}
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_olivine.json b/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_olivine.json
new file mode 100644
index 000000000..d275fd9a6
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_olivine.json
@@ -0,0 +1,8 @@
+{
+	"parent": "minecraft:block/stairs",
+	"textures": {
+		"top": "minecraft:block/brick_olivine",
+		"bottom": "minecraft:block/brick_olivine",
+		"side": "minecraft:block/brick_olivine"
+	}
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_quartz.json b/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_quartz.json
new file mode 100644
index 000000000..032073c13
--- /dev/null
+++ b/game/client/src/main/resources/assets/minecraft/models/block/stairs/brick_quartz.json
@@ -0,0 +1,8 @@
+{
+	"parent": "minecraft:block/stairs",
+	"textures": {
+		"top": "minecraft:block/brick_quartz",
+		"bottom": "minecraft:block/brick_quartz",
+		"side": "minecraft:block/brick_quartz"
+	}
+}
\ No newline at end of file
diff --git a/game/client/src/main/resources/assets/minecraft/textures/block/brick_diamond.png b/game/client/src/main/resources/assets/minecraft/textures/block/brick_diamond.png
new file mode 100644
index 000000000..8b530d157
Binary files /dev/null and b/game/client/src/main/resources/assets/minecraft/textures/block/brick_diamond.png differ
diff --git a/game/client/src/main/resources/assets/minecraft/textures/block/brick_lapis.png b/game/client/src/main/resources/assets/minecraft/textures/block/brick_lapis.png
index f48a4b8ad..b24a44f97 100644
Binary files a/game/client/src/main/resources/assets/minecraft/textures/block/brick_lapis.png and b/game/client/src/main/resources/assets/minecraft/textures/block/brick_lapis.png differ
diff --git a/game/client/src/main/resources/assets/minecraft/textures/block/brick_olivine.png b/game/client/src/main/resources/assets/minecraft/textures/block/brick_olivine.png
new file mode 100644
index 000000000..a3f6ce45f
Binary files /dev/null and b/game/client/src/main/resources/assets/minecraft/textures/block/brick_olivine.png differ
diff --git a/game/client/src/main/resources/assets/minecraft/textures/block/brick_quartz.png b/game/client/src/main/resources/assets/minecraft/textures/block/brick_quartz.png
new file mode 100644
index 000000000..45cc4e060
Binary files /dev/null and b/game/client/src/main/resources/assets/minecraft/textures/block/brick_quartz.png differ
diff --git a/game/core/src/main/java/net/minecraft/core/block/Blocks.java b/game/core/src/main/java/net/minecraft/core/block/Blocks.java
index 49e76fa40..55c008940 100644
--- a/game/core/src/main/java/net/minecraft/core/block/Blocks.java
+++ b/game/core/src/main/java/net/minecraft/core/block/Blocks.java
@@ -185,12 +185,12 @@ public final class Blocks {
     public static final @NotNull Block<?> BRICK_SANDSTONE = register("brick.sandstone", "minecraft:block/brick_sandstone", 123, (b) -> new BlockLogic(b, Materials.STONE))
         .withSound(BlockSounds.STONE).withHardness(0.8F).withBlastResistance(10F).withOverrideColor(MaterialColor.sand)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BRICK_GOLD = register("brick.gold", "minecraft:block/brick_gold", 124, (b) -> new BlockLogic(b, Materials.METAL))
-        .withSound(BlockSounds.METAL).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.gold)
-        .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BRICK_LAPIS = register("brick.lapis", "minecraft:block/brick_lapis", 125, (b) -> new BlockLogic(b, Materials.STONE))
-        .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.lapis)
-        .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
+    public static final @NotNull Block<?> BRICK_GOLD = register("brick.gold", "minecraft:block/brick_gold", 124, (b) -> new BlockLogic(b, Materials.GOLD))
+            .withSound(BlockSounds.METAL).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.gold)
+            .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
+    public static final @NotNull Block<?> BRICK_LAPIS = register("brick.lapis", "minecraft:block/brick_lapis", 125, (b) -> new BlockLogic(b, Materials.LAPIS))
+            .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.lapis)
+            .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
     public static final @NotNull Block<?> BRICK_BASALT = register("brick.basalt", "minecraft:block/brick_basalt", 126, (b) -> new BlockLogic(b, Materials.BASALT))
         .withSound(BlockSounds.STONE).withHardness(2.0F).withBlastResistance(10F)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
@@ -212,12 +212,20 @@ public final class Blocks {
     public static final @NotNull Block<?> BRICK_PERMAFROST = register("brick.permafrost", "minecraft:block/brick_permafrost", 132, (b) -> new BlockLogic(b, Materials.PERMAFROST))
         .withSound(BlockSounds.PERMAFROST).withHardness(1.0F)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BRICK_IRON = register("brick.iron", "minecraft:block/brick_iron", 133, (b) -> new BlockLogic(b, Materials.METAL))
+
+    public static final @NotNull Block<?> BRICK_IRON = register("brick.iron", "minecraft:block/brick_iron", 133, (b) -> new BlockLogic(b, Materials.IRON))
         .withSound(BlockSounds.METAL).withHardness(5F).withBlastResistance(10F).withOverrideColor(MaterialColor.iron)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
     public static final @NotNull Block<?> BRICK_STEEL = register("brick.steel", "minecraft:block/brick_steel", 134, (b) -> new BlockLogic(b, Materials.STEEL))
         .withSound(BlockSounds.METAL).withHardness(5F).withBlastResistance(2000F).withOverrideColor(MaterialColor.steel)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
+    public static final @NotNull Block<?> BRICK_OLIVINE = register("brick.olivine", "minecraft:block/brick_olivine", 135, (b) -> new BlockLogic(b, Materials.OLIVINE))
+        .withSound(BlockSounds.PERMAFROST).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.olivine);
+    public static final @NotNull Block<?> BRICK_QUARTZ = register("brick.quartz", "minecraft:block/brick_quartz", 136, (b) -> new BlockLogic(b, Materials.QUARTZ))
+        .withSound(BlockSounds.PERMAFROST).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.quartz);
+    public static final @NotNull Block<?> BRICK_DIAMOND = register("brick.diamond", "minecraft:block/brick_diamond", 137, (b) -> new BlockLogic(b, Materials.DIAMOND))
+        .withSound(BlockSounds.PERMAFROST).withHardness(5F).withBlastResistance(10F).withOverrideColor(MaterialColor.diamond);
+
 
     public static final @NotNull Block<BlockLogicSlab> SLAB_PLANKS_OAK = register("slab.planks.oak", "minecraft:block/slab_planks_oak", 140, (BlockLogicSupplier<BlockLogicSlab>)b -> new BlockLogicSlabPaintable(b, Blocks.PLANKS_OAK))
         .withSound(BlockSounds.WOOD).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
@@ -710,20 +718,20 @@ public final class Blocks {
     public static final @NotNull Block<?> BLOCK_COAL = register("block.coal", "minecraft:block/block_coal", 430, (b) -> new BlockLogic(b, Materials.STONE))
         .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.coal)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BLOCK_IRON = register("block.iron", "minecraft:block/block_iron", 431, (b) -> new BlockLogic(b, Materials.METAL))
+    public static final @NotNull Block<?> BLOCK_IRON = register("block.iron", "minecraft:block/block_iron", 431, (b) -> new BlockLogic(b, Materials.IRON))
         .withSound(BlockSounds.METAL).withHardness(5F).withBlastResistance(10F).withOverrideColor(MaterialColor.iron)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BLOCK_GOLD = register("block.gold", "minecraft:block/block_gold", 432, (b) -> new BlockLogic(b, Materials.METAL))
+    public static final @NotNull Block<?> BLOCK_GOLD = register("block.gold", "minecraft:block/block_gold", 432, (b) -> new BlockLogic(b, Materials.GOLD))
         .withSound(BlockSounds.METAL).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.gold)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BLOCK_LAPIS = register("block.lapis", "minecraft:block/block_lapis", 433, (b) -> new BlockLogic(b, Materials.STONE))
+    public static final @NotNull Block<?> BLOCK_LAPIS = register("block.lapis", "minecraft:block/block_lapis", 433, (b) -> new BlockLogic(b, Materials.LAPIS))
         .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(5F).withOverrideColor(MaterialColor.lapis)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
     public static final @NotNull Block<?> BLOCK_REDSTONE = register("block.redstone", "minecraft:block/block_redstone", 434, (b) -> new BlockLogicRedstone(b, Materials.STONE))
         .withSound(BlockSounds.STONE).withHardness(5F).withBlastResistance(10F).withOverrideColor(MaterialColor.redstone)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BLOCK_DIAMOND = register("block.diamond", "minecraft:block/block_diamond", 435, (b) -> new BlockLogic(b, Materials.STONE))
-        .withSound(BlockSounds.STONE).withHardness(5F).withBlastResistance(10F).withOverrideColor(MaterialColor.diamond)
+    public static final @NotNull Block<?> BLOCK_DIAMOND = register("block.diamond", "minecraft:block/block_diamond", 435, (b) -> new BlockLogic(b, Materials.DIAMOND))
+        .withSound(BlockSounds.PERMAFROST).withHardness(5F).withBlastResistance(10F).withOverrideColor(MaterialColor.diamond)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
     public static final @NotNull Block<?> BLOCK_NETHER_COAL = register("block.nethercoal", "minecraft:block/block_nethercoal", 436, (b) -> new BlockLogic(b, Materials.NETHERRACK))
         .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F)
@@ -731,11 +739,11 @@ public final class Blocks {
     public static final @NotNull Block<?> BLOCK_STEEL = register("block.steel", "minecraft:block/block_steel", 437, (b) -> new BlockLogic(b, Materials.STEEL))
         .withSound(BlockSounds.METAL).withHardness(5F).withBlastResistance(2000F).withOverrideColor(MaterialColor.steel)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BLOCK_QUARTZ = register("block.quartz", "minecraft:block/block_quartz", 438, (b) -> new BlockLogic(b, Materials.STEEL))
-        .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.quartz)
+    public static final @NotNull Block<?> BLOCK_QUARTZ = register("block.quartz", "minecraft:block/block_quartz", 438, (b) -> new BlockLogic(b, Materials.QUARTZ))
+        .withSound(BlockSounds.PERMAFROST).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.quartz)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
-    public static final @NotNull Block<?> BLOCK_OLIVINE = register("block.olivine", "minecraft:block/block_olivine", 439, (b) -> new BlockLogic(b, Materials.STONE))
-        .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.olivine)
+    public static final @NotNull Block<?> BLOCK_OLIVINE = register("block.olivine", "minecraft:block/block_olivine", 439, (b) -> new BlockLogic(b, Materials.OLIVINE))
+        .withSound(BlockSounds.PERMAFROST).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.olivine)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.CHAINLINK_FENCES_CONNECT);
     public static final @NotNull Block<?> BLOCK_CHARCOAL = register("block.charcoal", "minecraft:block/block_charcoal", 440, (b) -> new BlockLogic(b, Materials.STONE))
         .withSound(BlockSounds.STONE).withHardness(3F).withBlastResistance(10F).withOverrideColor(MaterialColor.coal)
@@ -1254,6 +1262,8 @@ public final class Blocks {
         .withSound(BlockSounds.GLASS).withHardness(0.1F).withDisabledNeighborNotifyOnMetadataChange().setStatParent(() -> Items.JAR_BUTTERFLY_SILVER)
         .withTags(BlockTags.BROKEN_BY_FLUIDS, BlockTags.MINEABLE_BY_PICKAXE, BlockTags.NOT_IN_CREATIVE_MENU);
 
+    //ID 999 taken by SLAB_BRICK_DIAMOND, placed near other ore brick slabs for organization. Ran out of IDs on that side                                             - id:999 -
+
     public static final @NotNull Block<BlockLogicSlab> SLAB_BRICK_SANDSTONE = register("slab.brick.sandstone", "minecraft:block/slab_brick_sandstone", 1000, (BlockLogicSupplier<BlockLogicSlab>) b -> new BlockLogicSlab(b, Blocks.BRICK_SANDSTONE))
         .withSound(BlockSounds.STONE).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE);
@@ -1266,6 +1276,10 @@ public final class Blocks {
     public static final @NotNull Block<BlockLogicSlab> SLAB_PERMAFROST_POLISHED = register("slab.permafrost.carved", "minecraft:block/slab_permafrost_carved", 1003, (BlockLogicSupplier<BlockLogicSlab>) b -> new BlockLogicSlab(b, Blocks.PERMAFROST_CARVED))
         .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE);
+
+    public static final @NotNull Block<BlockLogicSlab> SLAB_BRICK_DIAMOND = register("slab.brick.diamond", "minecraft:block/slab_brick_diamond", 999, (BlockLogicSupplier<BlockLogicSlab>)b -> new BlockLogicSlab(b, Blocks.BRICK_DIAMOND))
+            .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
+            .withTags(BlockTags.MINEABLE_BY_PICKAXE);
     public static final @NotNull Block<BlockLogicSlab> SLAB_BRICK_IRON = register("slab.brick.iron", "minecraft:block/slab_brick_iron", 1004, (BlockLogicSupplier<BlockLogicSlab>)b -> new BlockLogicSlab(b, Blocks.BRICK_IRON))
         .withSound(BlockSounds.METAL).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE);
@@ -1278,6 +1292,12 @@ public final class Blocks {
     public static final @NotNull Block<BlockLogicSlab> SLAB_BRICK_LAPIS = register("slab.brick.lapis", "minecraft:block/slab_brick_lapis", 1007, (BlockLogicSupplier<BlockLogicSlab>)b -> new BlockLogicSlab(b, Blocks.BRICK_LAPIS))
         .withSound(BlockSounds.STONE).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE);
+    public static final @NotNull Block<BlockLogicSlab> SLAB_BRICK_OLIVINE = register("slab.brick.olivine", "minecraft:block/slab_brick_olivine", 1008, (BlockLogicSupplier<BlockLogicSlab>)b -> new BlockLogicSlab(b, Blocks.BRICK_OLIVINE))
+        .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
+        .withTags(BlockTags.MINEABLE_BY_PICKAXE);
+    public static final @NotNull Block<BlockLogicSlab> SLAB_BRICK_QUARTZ = register("slab.brick.quartz", "minecraft:block/slab_brick_quartz", 1009, (BlockLogicSupplier<BlockLogicSlab>)b -> new BlockLogicSlab(b, Blocks.BRICK_QUARTZ))
+        .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
+        .withTags(BlockTags.MINEABLE_BY_PICKAXE);
 
     public static final @NotNull Block<BlockLogicStatue> STATUE_STONE_LOWER = register("statue.stone.lower", "minecraft:block/statue_stone_lower", 1010, (BlockLogicSupplier<BlockLogicStatue>) b -> new BlockLogicStatue(b, Materials.STONE, true, () -> Items.STATUE_STONE))
         .withSound(BlockSounds.STONE).withHardness(1.5F)
@@ -1359,6 +1379,9 @@ public final class Blocks {
         .withSound(BlockSounds.STONE).withHardness(3.5F).withDisabledNeighborNotifyOnMetadataChange()
         .withTags(BlockTags.MINEABLE_BY_PICKAXE, BlockTags.NOT_IN_CREATIVE_MENU);
 
+    public static final @NotNull Block<BlockLogicStairs> STAIRS_BRICK_DIAMOND = register("stairs.brick.diamond", "minecraft:block/stairs_brick_diamond", 1049, (BlockLogicSupplier<BlockLogicStairs>)b -> new BlockLogicStairs(b, Blocks.BRICK_DIAMOND))
+        .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
+        .withTags(BlockTags.MINEABLE_BY_PICKAXE);
     public static final @NotNull Block<BlockLogicStairs> STAIRS_BRICK_IRON = register("stairs.brick.iron", "minecraft:block/stairs_brick_iron", 1050, (BlockLogicSupplier<BlockLogicStairs>)b -> new BlockLogicStairs(b, Blocks.BRICK_IRON))
         .withSound(BlockSounds.METAL).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE);
@@ -1371,6 +1394,12 @@ public final class Blocks {
     public static final @NotNull Block<BlockLogicStairs> STAIRS_BRICK_LAPIS = register("stairs.brick.lapis", "minecraft:block/stairs_brick_lapis", 1053, (BlockLogicSupplier<BlockLogicStairs>)b -> new BlockLogicStairs(b, Blocks.BRICK_LAPIS))
         .withSound(BlockSounds.STONE).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
         .withTags(BlockTags.MINEABLE_BY_PICKAXE);
+    public static final @NotNull Block<BlockLogicStairs> STAIRS_BRICK_OLIVINE = register("stairs.brick.olivine", "minecraft:block/stairs_brick_olivine", 1054, (BlockLogicSupplier<BlockLogicStairs>)b -> new BlockLogicStairs(b, Blocks.BRICK_OLIVINE))
+        .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
+        .withTags(BlockTags.MINEABLE_BY_PICKAXE);
+    public static final @NotNull Block<BlockLogicStairs> STAIRS_BRICK_QUARTZ = register("stairs.brick.quartz", "minecraft:block/stairs_brick_quartz", 1055, (BlockLogicSupplier<BlockLogicStairs>)b -> new BlockLogicStairs(b, Blocks.BRICK_QUARTZ))
+        .withSound(BlockSounds.PERMAFROST).withDisabledNeighborNotifyOnMetadataChange().withLitInteriorSurface(true)
+        .withTags(BlockTags.MINEABLE_BY_PICKAXE);
 
     public static final @NotNull Block<BlockLogicFlowstone> FLOWSTONE = register("flowstone", "minecraft:block/flowstone", 1060, BlockLogicFlowstone::new)
         .withSound(BlockSounds.STONE).withHardness(1.5F).withDisabledNeighborNotifyOnMetadataChange()
diff --git a/game/core/src/main/java/net/minecraft/core/block/material/Materials.java b/game/core/src/main/java/net/minecraft/core/block/material/Materials.java
index b7cf31eeb..bdd7e38ad 100644
--- a/game/core/src/main/java/net/minecraft/core/block/material/Materials.java
+++ b/game/core/src/main/java/net/minecraft/core/block/material/Materials.java
@@ -17,6 +17,12 @@ public final class Materials {
     public static final @NotNull Material NETHERRACK = new Material(MaterialColor.netherrack).setConductivity(Material.LIGHTNING_LIGHT_INSULATOR).setAsStone().notAlwaysDestroyable();
     public static final @NotNull Material GLOOMSTONE = new Material(MaterialColor.gloomstone).setConductivity(Material.LIGHTNING_LIGHT_INSULATOR).setAsStone().notAlwaysDestroyable();
     public static final @NotNull Material METAL = new Material(MaterialColor.metal).setConductivity(Material.LIGHTNING_STRONG_CONDUCTOR).setAsMetal().notAlwaysDestroyable();
+    public static final @NotNull Material DIAMOND = new Material(MaterialColor.diamond).setConductivity(Material.LIGHTNING_LIGHT_INSULATOR).setAsStone().notAlwaysDestroyable();
+    public static final @NotNull Material IRON = new Material(MaterialColor.iron).setConductivity(Material.LIGHTNING_STRONG_CONDUCTOR).setAsMetal().notAlwaysDestroyable();
+    public static final @NotNull Material GOLD = new Material(MaterialColor.gold).setConductivity(Material.LIGHTNING_STRONG_CONDUCTOR).setAsMetal().notAlwaysDestroyable();
+    public static final @NotNull Material LAPIS = new Material(MaterialColor.lapis).setConductivity(Material.LIGHTNING_LIGHT_INSULATOR).setAsStone().notAlwaysDestroyable();
+    public static final @NotNull Material OLIVINE = new Material(MaterialColor.olivine).setConductivity(Material.LIGHTNING_LIGHT_INSULATOR).setAsStone().notAlwaysDestroyable();
+    public static final @NotNull Material QUARTZ = new Material(MaterialColor.quartz).setConductivity(Material.LIGHTNING_LIGHT_INSULATOR).setAsStone().notAlwaysDestroyable();
     public static final @NotNull Material STEEL = new Material(MaterialColor.steel).setConductivity(Material.LIGHTNING_STRONG_CONDUCTOR).setAsMetal().notAlwaysDestroyable();
     public static final @NotNull Material WATER = new MaterialLiquid(MaterialColor.water).setConductivity(Material.LIGHTNING_LIGHT_CONDUCTOR).destroyOnPush();
     public static final @NotNull Material LAVA = new MaterialLiquid(MaterialColor.fire).destroyOnPush();
diff --git a/game/core/src/main/resources/lang/en_US/tile.lang b/game/core/src/main/resources/lang/en_US/tile.lang
index 883ef3b6a..48e858b23 100644
--- a/game/core/src/main/resources/lang/en_US/tile.lang
+++ b/game/core/src/main/resources/lang/en_US/tile.lang
@@ -220,10 +220,6 @@ tile.brick.stone.polished.mossy.name=Mossy Polished Stone Bricks
 tile.brick.stone.polished.mossy.desc=Stacked bricks of polished stone with added greenery.
 tile.brick.sandstone.name=Sandstone Bricks
 tile.brick.sandstone.desc=Stacked bricks of sandstone.
-tile.brick.gold.name=Gold Bricks
-tile.brick.gold.desc=Stacked bricks of gold.
-tile.brick.lapis.name=Lapis Lazuli Bricks
-tile.brick.lapis.desc=Stacked bricks of lapis lazuli.
 tile.brick.basalt.name=Basalt Bricks
 tile.brick.basalt.desc=Stacked bricks of basalt.
 tile.brick.limestone.name=Limestone Bricks
@@ -238,10 +234,21 @@ tile.brick.stone.name=Stone Bricks
 tile.brick.stone.desc=Stacked bricks of stone.
 tile.brick.permafrost.name=Permafrost Bricks
 tile.brick.permafrost.desc=Stacked bricks of permafrost.
+
+tile.brick.diamond.name=Diamond Bricks
+tile.brick.diamond.desc=Stacked bricks of diamond.
 tile.brick.iron.name=Iron Bricks
 tile.brick.iron.desc=Stacked bricks of iron.
+tile.brick.gold.name=Gold Bricks
+tile.brick.gold.desc=Stacked bricks of gold.
+tile.brick.lapis.name=Lapis Lazuli Bricks
+tile.brick.lapis.desc=Stacked bricks of lapis lazuli.
 tile.brick.steel.name=Steel Bricks
 tile.brick.steel.desc=Stacked bricks of steel.
+tile.brick.olivine.name=Olivine Bricks
+tile.brick.olivine.desc=Stacked bricks of olivine.
+tile.brick.quartz.name=Quartz Bricks
+tile.brick.quartz.desc=Stacked bricks of quartz.
 
 tile.slab.planks.oak.name=Wooden Slab
 tile.slab.planks.oak.desc=A slab of wooden planks.
@@ -324,14 +331,21 @@ tile.slab.brick.sandstone.name=Sandstone Brick Slab
 tile.slab.brick.sandstone.desc=A slab of sandstone bricks.
 tile.slab.brick.permafrost.name=Permafrost Brick Slab
 tile.slab.brick.permafrost.desc=A slab of permafrost bricks.
+
+tile.slab.brick.diamond.name=Diamond Brick Slab
+tile.slab.brick.diamond.desc=A slab of diamond bricks.
 tile.slab.brick.iron.name=Iron Brick Slab
 tile.slab.brick.iron.desc=A slab of iron bricks.
 tile.slab.brick.gold.name=Gold Brick Slab
 tile.slab.brick.gold.desc=A slab of gold bricks.
-tile.slab.brick.steel.name=Steel Brick Slab
-tile.slab.brick.steel.desc=A slab of steel bricks.
 tile.slab.brick.lapis.name=Lapis Brick Slab
 tile.slab.brick.lapis.desc=A slab of lapis bricks.
+tile.slab.brick.steel.name=Steel Brick Slab
+tile.slab.brick.steel.desc=A slab of steel bricks.
+tile.slab.brick.olivine.name=Olivine Brick Slab
+tile.slab.brick.olivine.desc=A slab of olivine bricks.
+tile.slab.brick.quartz.name=Quartz Brick Slab
+tile.slab.brick.quartz.desc=A slab of quartz bricks.
 
 tile.stairs.planks.oak.name=Wooden Stairs
 tile.stairs.planks.oak.desc=Wooden block used for rapid vertical movement.
@@ -367,14 +381,21 @@ tile.stairs.brick.sandstone.name=Sandstone Brick Stairs
 tile.stairs.brick.sandstone.desc=Sandstone brick block used for rapid vertical movement.
 tile.stairs.brick.permafrost.name=Permafrost Brick Stairs
 tile.stairs.brick.permafrost.desc=Permafrost brick block used for rapid vertical movement.
+
+tile.stairs.brick.diamond.name=Diamond Brick Stairs
+tile.stairs.brick.diamond.desc=Diamond brick block used for rapid vertical movement.
 tile.stairs.brick.iron.name=Iron Brick Stairs
 tile.stairs.brick.iron.desc=Iron brick block used for rapid vertical movement.
 tile.stairs.brick.gold.name=Gold Brick Stairs
 tile.stairs.brick.gold.desc=Gold brick block used for rapid vertical movement.
-tile.stairs.brick.steel.name=Steel Brick Stairs
-tile.stairs.brick.steel.desc=Steel brick block used for rapid vertical movement.
 tile.stairs.brick.lapis.name=Lapis Brick Stairs
 tile.stairs.brick.lapis.desc=Lapis brick block used for rapid vertical movement.
+tile.stairs.brick.steel.name=Steel Brick Stairs
+tile.stairs.brick.steel.desc=Steel brick block used for rapid vertical movement.
+tile.stairs.brick.olivine.name=Olivine Brick Stairs
+tile.stairs.brick.olivine.desc=Olivine brick block used for rapid vertical movement.
+tile.stairs.brick.quartz.name=Quartz Brick Stairs
+tile.stairs.brick.quartz.desc=Quartz brick block used for rapid vertical movement.
 
 tile.stairs.planks.oak.painted.name=Mystery Wooden Stairs
 tile.stairs.planks.oak.painted.desc=How did you get this?!
diff --git a/util/datagen/src/main/java/net/minecraft/datagen/WorkbenchGenerator.java b/util/datagen/src/main/java/net/minecraft/datagen/WorkbenchGenerator.java
index 19b25d8a9..7e2a27e36 100644
--- a/util/datagen/src/main/java/net/minecraft/datagen/WorkbenchGenerator.java
+++ b/util/datagen/src/main/java/net/minecraft/datagen/WorkbenchGenerator.java
@@ -756,12 +756,14 @@ class WorkbenchGenerator {
             );
 
         final int stackSize = 4;
-
+        bricks.addInput('X', Items.DIAMOND).create("diamond_bricks", new ItemStack(Blocks.BRICK_DIAMOND, stackSize));
         bricks.addInput('X', Items.BRICK_CLAY).create("clay_bricks", new ItemStack(Blocks.BRICK_CLAY, stackSize));
         bricks.addInput('X', Items.INGOT_GOLD).create("golden_bricks", new ItemStack(Blocks.BRICK_GOLD, stackSize));
         bricks.addInput('X', Items.INGOT_IRON).create("iron_bricks", new ItemStack(Blocks.BRICK_IRON, stackSize));
         bricks.addInput('X', Items.INGOT_STEEL_CRUDE).create("steel_bricks", new ItemStack(Blocks.BRICK_STEEL, stackSize));
         bricks.addInput('X', Items.DYE, DyeColor.BLUE.itemMeta).create("lapis_lazuli_bricks", new ItemStack(Blocks.BRICK_LAPIS, stackSize));
+        bricks.addInput('X', Items.OLIVINE).create("olivine_bricks", new ItemStack(Blocks.BRICK_OLIVINE, stackSize));
+        bricks.addInput('X', Items.QUARTZ).create("quartz_bricks", new ItemStack(Blocks.BRICK_QUARTZ, stackSize));
         bricks.addInput('X', Blocks.SANDSTONE).create("sandstone_bricks", new ItemStack(Blocks.BRICK_SANDSTONE, stackSize));
         bricks.addInput('X', Blocks.STONE).create("stone_bricks", new ItemStack(Blocks.BRICK_STONE, stackSize));
         bricks.addInput('X', Blocks.BASALT).create("basalt_bricks", new ItemStack(Blocks.BRICK_BASALT, stackSize));
@@ -819,10 +821,14 @@ class WorkbenchGenerator {
         slabs.addInput('X', Blocks.BRICK_NETHERRACK).create("netherrack_brick_slab", new ItemStack(Blocks.SLAB_BRICK_NETHERRACK, stackSize));
         slabs.addInput('X', Blocks.BRICK_GLOOMSTONE).create("gloomstone_brick_slab", new ItemStack(Blocks.SLAB_BRICK_GLOOMSTONE, stackSize));
 
+        slabs.addInput('X', Blocks.BRICK_DIAMOND).create("diamond_brick_slab", new ItemStack(Blocks.SLAB_BRICK_DIAMOND, stackSize));
         slabs.addInput('X', Blocks.BRICK_IRON).create("iron_brick_slab", new ItemStack(Blocks.SLAB_BRICK_IRON, stackSize));
         slabs.addInput('X', Blocks.BRICK_GOLD).create("gold_brick_slab", new ItemStack(Blocks.SLAB_BRICK_GOLD, stackSize));
         slabs.addInput('X', Blocks.BRICK_STEEL).create("steel_brick_slab", new ItemStack(Blocks.SLAB_BRICK_STEEL, stackSize));
         slabs.addInput('X', Blocks.BRICK_LAPIS).create("lapis_brick_slab", new ItemStack(Blocks.SLAB_BRICK_LAPIS, stackSize));
+        slabs.addInput('X', Blocks.BRICK_OLIVINE).create("olivine_brick_slab", new ItemStack(Blocks.SLAB_BRICK_OLIVINE, stackSize));
+        slabs.addInput('X', Blocks.BRICK_QUARTZ).create("quartz_brick_slab", new ItemStack(Blocks.SLAB_BRICK_QUARTZ, stackSize));
+
     }
 
     private static void generateStairs() {
@@ -865,10 +871,14 @@ class WorkbenchGenerator {
         stairs.addInput('X', Blocks.BRICK_NETHERRACK).create("netherrack_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_NETHERRACK, stackSize));
         stairs.addInput('X', Blocks.BRICK_GLOOMSTONE).create("gloomstone_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_GLOOMSTONE, stackSize));
 
+        stairs.addInput('X', Blocks.BRICK_DIAMOND).create("diamond_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_DIAMOND, stackSize));
         stairs.addInput('X', Blocks.BRICK_IRON).create("iron_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_IRON, stackSize));
         stairs.addInput('X', Blocks.BRICK_GOLD).create("gold_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_GOLD, stackSize));
         stairs.addInput('X', Blocks.BRICK_STEEL).create("steel_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_STEEL, stackSize));
         stairs.addInput('X', Blocks.BRICK_LAPIS).create("lapis_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_LAPIS, stackSize));
+        stairs.addInput('X', Blocks.BRICK_OLIVINE).create("olivine_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_OLIVINE, stackSize));
+        stairs.addInput('X', Blocks.BRICK_QUARTZ).create("quartz_brick_stairs", new ItemStack(Blocks.STAIRS_BRICK_QUARTZ, stackSize));
+
     }
 
     private static void generateDoors() {
