--- a/net/minecraft/server/ChunkSection.java
+++ b/net/minecraft/server/ChunkSection.java
@@ -19,6 +19,24 @@
 
     }
 
+    // CraftBukkit start
+    public ChunkSection(int y, boolean flag, char[] blockIds) {
+        this.yPos = y;
+        this.blockIds = new DataPaletteBlock();
+        for (int i = 0; i < blockIds.length; i++) {
+            int xx = i & 15;
+            int yy = (i >> 8) & 15;
+            int zz = (i >> 4) & 15;
+            this.blockIds.setBlock(xx, yy, zz, Block.REGISTRY_ID.fromId(blockIds[i]));
+        }
+        this.emittedLight = new NibbleArray();
+        if (flag) {
+            this.skyLight = new NibbleArray();
+        }
+        recalcBlockCounts();
+    }
+    // CraftBukkit end
+
     public IBlockData getType(int i, int j, int k) {
         return this.blockIds.a(i, j, k);
     }
@@ -46,7 +64,7 @@
     }
 
     public boolean a() {
-        return this.nonEmptyBlockCount == 0;
+        return false; // CraftBukkit - MC-80966
     }
 
     public boolean shouldTick() {