Changed natural soil types for various biomes

This commit is contained in:
Matt Caughey 2016-01-17 19:30:36 -05:00
parent 3f7e4d026c
commit f748002641
14 changed files with 63 additions and 4 deletions

View file

@ -11,6 +11,9 @@ package biomesoplenty.common.biome.overworld;
import net.minecraft.util.BlockPos; import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
import biomesoplenty.common.world.BOPWorldSettings; import biomesoplenty.common.world.BOPWorldSettings;
@ -23,6 +26,9 @@ public class BiomeGenArctic extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(64).heightVariation(6, 4).octaves(0, 0, 2, 0, 0, 5).sidewaysNoise(0.2F); this.terrainSettings.avgHeight(64).heightVariation(6, 4).octaves(0, 0, 2, 0, 0, 5).sidewaysNoise(0.2F);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
this.setColor(14540253); this.setColor(14540253);
this.setEnableSnow(); this.setEnableSnow();
this.setTemperatureRainfall(0.05F, 0.5F); this.setTemperatureRainfall(0.05F, 0.5F);

View file

@ -55,7 +55,6 @@ public class BiomeGenBambooForest extends BOPBiome
this.setColor(0xA3E053); this.setColor(0xA3E053);
this.setTemperatureRainfall(1.2F, 0.9F); this.setTemperatureRainfall(1.2F, 0.9F);
this.waterColorMultiplier = 0x00ff66;
this.addWeight(BOPClimates.TROPICAL, 5); this.addWeight(BOPClimates.TROPICAL, 5);

View file

@ -9,6 +9,8 @@ import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks; import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPSand; import biomesoplenty.common.block.BlockBOPSand;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
@ -30,6 +32,8 @@ public class BiomeGenBrushland extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(66).heightVariation(3, 20); this.terrainSettings.avgHeight(66).heightVariation(3, 20);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SANDY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SANDY);
this.setColor(0xC9C17F); this.setColor(0xC9C17F);
this.setTemperatureRainfall(1.2F, 0.1F); this.setTemperatureRainfall(1.2F, 0.1F);
this.addWeight(BOPClimates.MEDITERANEAN, 10); this.addWeight(BOPClimates.MEDITERANEAN, 10);

View file

@ -14,6 +14,9 @@ import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
import biomesoplenty.common.enums.BOPPlants; import biomesoplenty.common.enums.BOPPlants;
@ -35,6 +38,9 @@ public class BiomeGenDeadForest extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(68).heightVariation(8, 25); this.terrainSettings.avgHeight(68).heightVariation(8, 25);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.LOAMY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.LOAMY);
this.setColor(0xBCA165); this.setColor(0xBCA165);
this.setTemperatureRainfall(0.4F, 0.3F); this.setTemperatureRainfall(0.4F, 0.3F);

View file

@ -20,7 +20,9 @@ import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks; import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.api.block.BlockQueries; import biomesoplenty.api.block.BlockQueries;
import biomesoplenty.common.block.BlockBOPCoral; import biomesoplenty.common.block.BlockBOPCoral;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPDoublePlant; import biomesoplenty.common.block.BlockBOPDoublePlant;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPMushroom; import biomesoplenty.common.block.BlockBOPMushroom;
import biomesoplenty.common.block.BlockBOPPlant; import biomesoplenty.common.block.BlockBOPPlant;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
@ -48,6 +50,9 @@ public class BiomeGenFen extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(64).heightVariation(8, 15); this.terrainSettings.avgHeight(64).heightVariation(8, 15);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.LOAMY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.LOAMY);
this.setColor(0xBAC481); this.setColor(0xBAC481);
this.setTemperatureRainfall(0.4F, 0.4F); this.setTemperatureRainfall(0.4F, 0.4F);

View file

@ -13,6 +13,9 @@ import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPFlowers; import biomesoplenty.common.enums.BOPFlowers;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
@ -32,6 +35,9 @@ public class BiomeGenFrostForest extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(66).heightVariation(6, 21); this.terrainSettings.avgHeight(66).heightVariation(6, 21);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
this.setColor(0xABD6BC); this.setColor(0xABD6BC);
this.skyColor = 0xCEE0EA; this.skyColor = 0xCEE0EA;
this.setEnableSnow(); this.setEnableSnow();

View file

@ -17,6 +17,9 @@ import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPFlowers; import biomesoplenty.common.enums.BOPFlowers;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
@ -40,6 +43,9 @@ public class BiomeGenHeathland extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(64).heightVariation(6, 21); this.terrainSettings.avgHeight(64).heightVariation(6, 21);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SANDY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SANDY);
this.setColor(0xCEC577); this.setColor(0xCEC577);
this.setTemperatureRainfall(0.8F, 0.2F); this.setTemperatureRainfall(0.8F, 0.2F);

View file

@ -15,6 +15,8 @@ import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks; import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
import biomesoplenty.common.enums.BOPPlants; import biomesoplenty.common.enums.BOPPlants;
@ -43,7 +45,7 @@ public class BiomeGenOutback extends BOPBiome
// splatter top blocks // splatter top blocks
IBlockPosQuery emptyHardSand = BlockQuery.buildAnd().withAirAbove().states(this.topBlock).create(); IBlockPosQuery emptyHardSand = BlockQuery.buildAnd().withAirAbove().states(this.topBlock).create();
this.addGenerator("grass_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(8.0F).generationAttempts(128).replace(emptyHardSand).with(Blocks.grass.getDefaultState()).create()); this.addGenerator("grass_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(8.0F).generationAttempts(128).replace(emptyHardSand).with(BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SANDY)).create());
this.addGenerator("red_sand_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(6.0F).replace(emptyHardSand).with(Blocks.sand.getDefaultState().withProperty(BlockSand.VARIANT, BlockSand.EnumType.RED_SAND)).create()); this.addGenerator("red_sand_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(6.0F).replace(emptyHardSand).with(Blocks.sand.getDefaultState().withProperty(BlockSand.VARIANT, BlockSand.EnumType.RED_SAND)).create());
// trees // trees

View file

@ -3,7 +3,10 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPDoublePlant; import biomesoplenty.common.block.BlockBOPDoublePlant;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPMushroom; import biomesoplenty.common.block.BlockBOPMushroom;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPFlowers; import biomesoplenty.common.enums.BOPFlowers;
@ -27,6 +30,9 @@ public class BiomeGenPrairie extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(64).heightVariation(4, 15); this.terrainSettings.avgHeight(64).heightVariation(4, 15);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
this.setColor(0xC8E580); this.setColor(0xC8E580);
this.setTemperatureRainfall(0.8F, 0.3F); this.setTemperatureRainfall(0.8F, 0.3F);

View file

@ -17,6 +17,7 @@ import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks; import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPCoral; import biomesoplenty.common.block.BlockBOPCoral;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPLilypad; import biomesoplenty.common.block.BlockBOPLilypad;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
@ -53,7 +54,7 @@ public class BiomeGenQuagmire extends BOPBiome
// splatter top blocks // splatter top blocks
IBlockPosQuery emptyMud = BlockQuery.buildAnd().withAirAbove().states(this.topBlock).create(); IBlockPosQuery emptyMud = BlockQuery.buildAnd().withAirAbove().states(this.topBlock).create();
this.addGenerator("grass_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(1.0F).generationAttempts(128).replace(emptyMud).with(Blocks.grass.getDefaultState()).create()); this.addGenerator("grass_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(1.0F).generationAttempts(128).replace(emptyMud).with(BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.LOAMY)).create());
// grasses // grasses
GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F); GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F);

View file

@ -15,7 +15,10 @@ import net.minecraft.init.Blocks;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPDoublePlant; import biomesoplenty.common.block.BlockBOPDoublePlant;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
import biomesoplenty.common.enums.BOPPlants; import biomesoplenty.common.enums.BOPPlants;
@ -35,6 +38,8 @@ public class BiomeGenShrubland extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(66).heightVariation(8, 15).octaves(0, 1, 2, 2, 1, 0).sidewaysNoise(0.1D); this.terrainSettings.avgHeight(66).heightVariation(8, 15).octaves(0, 1, 2, 2, 1, 0).sidewaysNoise(0.1D);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
this.setColor(8168286); this.setColor(8168286);
this.setTemperatureRainfall(0.6F, 0.05F); this.setTemperatureRainfall(0.6F, 0.05F);

View file

@ -13,6 +13,9 @@ import net.minecraft.init.Blocks;
import net.minecraft.util.BlockPos; import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.block.BlockBOPPlant; import biomesoplenty.common.block.BlockBOPPlant;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
@ -27,6 +30,8 @@ public class BiomeGenSteppe extends BOPBiome
public BiomeGenSteppe() public BiomeGenSteppe()
{ {
// terrain // terrain
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SANDY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SANDY);
this.terrainSettings.avgHeight(68).heightVariation(6, 20); this.terrainSettings.avgHeight(68).heightVariation(6, 20);
this.setColor(13413215); this.setColor(13413215);

View file

@ -14,6 +14,9 @@ import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPDirt;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
import biomesoplenty.common.enums.BOPPlants; import biomesoplenty.common.enums.BOPPlants;
@ -31,6 +34,9 @@ public class BiomeGenThicket extends BOPBiome
// terrain // terrain
this.terrainSettings.avgHeight(64).heightVariation(4, 15); this.terrainSettings.avgHeight(64).heightVariation(4, 15);
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
this.setColor(7248193); this.setColor(7248193);
this.setTemperatureRainfall(0.6F, 0.2F); this.setTemperatureRainfall(0.6F, 0.2F);

View file

@ -15,6 +15,8 @@ import net.minecraft.util.BlockPos;
import biomesoplenty.api.biome.BOPBiome; import biomesoplenty.api.biome.BOPBiome;
import biomesoplenty.api.biome.generation.GeneratorStage; import biomesoplenty.api.biome.generation.GeneratorStage;
import biomesoplenty.api.biome.generation.GeneratorWeighted; import biomesoplenty.api.biome.generation.GeneratorWeighted;
import biomesoplenty.api.block.BOPBlocks;
import biomesoplenty.common.block.BlockBOPGrass;
import biomesoplenty.common.enums.BOPClimates; import biomesoplenty.common.enums.BOPClimates;
import biomesoplenty.common.enums.BOPFlowers; import biomesoplenty.common.enums.BOPFlowers;
import biomesoplenty.common.enums.BOPGems; import biomesoplenty.common.enums.BOPGems;
@ -48,7 +50,7 @@ public class BiomeGenXericShrubland extends BOPBiome
// splatter top blocks // splatter top blocks
IBlockPosQuery emptySand = BlockQuery.buildAnd().withAirAbove().states(this.topBlock).create(); IBlockPosQuery emptySand = BlockQuery.buildAnd().withAirAbove().states(this.topBlock).create();
this.addGenerator("grass_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(5.0F).generationAttempts(128).replace(emptySand).with(Blocks.grass.getDefaultState()).create()); this.addGenerator("grass_splatter", GeneratorStage.SAND, (new GeneratorSplatter.Builder()).amountPerChunk(5.0F).generationAttempts(128).replace(emptySand).with(BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SANDY)).create());
// other plants // other plants
this.addGenerator("desertgrass", GeneratorStage.GRASS, (new GeneratorGrass.Builder()).amountPerChunk(0.8F).with(BOPPlants.DESERTGRASS).generationAttempts(8).create()); this.addGenerator("desertgrass", GeneratorStage.GRASS, (new GeneratorGrass.Builder()).amountPerChunk(0.8F).with(BOPPlants.DESERTGRASS).generationAttempts(8).create());