--- a/net/minecraft/server/commands/CommandSpreadPlayers.java
+++ b/net/minecraft/server/commands/CommandSpreadPlayers.java
@@ -80,7 +80,7 @@
             if (entity instanceof EntityHuman) {
                 set.add(entity.getScoreboardTeam());
             } else {
-                set.add((Object) null);
+                set.add((ScoreboardTeamBase) null); // CraftBukkit - decompile error
             }
         }
 
@@ -289,7 +289,7 @@
 
             for (boolean flag2 = iblockaccess.getType(blockposition_mutableblockposition).isAir(); blockposition_mutableblockposition.getY() > iblockaccess.getMinBuildHeight(); flag2 = flag1) {
                 blockposition_mutableblockposition.c(EnumDirection.DOWN);
-                flag1 = iblockaccess.getType(blockposition_mutableblockposition).isAir();
+                flag1 = getType(iblockaccess, blockposition_mutableblockposition).isAir(); // CraftBukkit
                 if (!flag1 && flag2 && flag) {
                     return blockposition_mutableblockposition.getY() + 1;
                 }
@@ -302,7 +302,7 @@
 
         public boolean b(IBlockAccess iblockaccess, int i) {
             BlockPosition blockposition = new BlockPosition(this.x, (double) (this.a(iblockaccess, i) - 1), this.z);
-            IBlockData iblockdata = iblockaccess.getType(blockposition);
+            IBlockData iblockdata = getType(iblockaccess, blockposition); // CraftBukkit
             Material material = iblockdata.getMaterial();
 
             return blockposition.getY() < i && !material.isLiquid() && material != Material.FIRE;
@@ -312,5 +312,12 @@
             this.x = MathHelper.a(random, d0, d2);
             this.z = MathHelper.a(random, d1, d3);
         }
+
+        // CraftBukkit start - add a version of getType which force loads chunks
+        private static IBlockData getType(IBlockAccess iblockaccess, BlockPosition position) {
+            ((WorldServer) iblockaccess).getChunkProvider().getChunkAt(position.getX() >> 4, position.getZ() >> 4, true);
+            return iblockaccess.getType(position);
+        }
+        // CraftBukkit end
     }
 }
