#######################################################################
# +-----------------------------------------------------------------+ #
# |                            BO3 object                           | #
# +-----------------------------------------------------------------+ #
#######################################################################

# This is the config file of a custom object.
# If you add this object correctly to your BiomeConfigs, it will spawn in the world.

# This is the creator of this BO3 object
Author: LordSmellyPants

# A short description of this BO3 object
Description: No description given

# The BO3 version, don't change this! It can be used by external applications to do a version check.
Version: 3

# The settings mode, WriteAll, WriteWithoutComments or WriteDisable. See WorldConfig.
SettingsMode: WriteDisable


#######################################################################
# +-----------------------------------------------------------------+ #
# |                          Main settings                          | #
# +-----------------------------------------------------------------+ #
#######################################################################

# This needs to be set to true to spawn the object in the Tree and Sapling resources.
Tree: false

# The frequency of the BO3 from 1 to 200. Tries this many times to spawn this BO3 when using the CustomObject(...) resource.
# Ignored by Tree(..), Sapling(..) and CustomStructure(..)
Frequency: 1

# The rarity of the BO3 from 0 to 100. Each spawn attempt has rarity% chance to succeed when using the CustomObject(...) resource.
# Ignored by Tree(..), Sapling(..) and CustomStructure(..)
Rarity: 0.15

# If you set this to true, the BO3 will be placed with a random rotation.
RotateRandomly: true

# The spawn height of the BO3 - atMinY, randomY, highestBlock or highestSolidBlock.
SpawnHeight: highestSolidBlock

# The offset from the spawn height to spawn this BO3
# Ex. SpawnHeight = highestSolidBlock, SpawnHeightOffset = 3; This object will spawn 3 blocks above the highest solid block
SpawnHeightOffset: 0

# A random amount to offset the spawn location from the spawn offset height
# Ex. SpawnHeightOffset = 3, SpawnHeightVariance = 3; This object will spawn 3 to 6 blocks above the original spot it would have spawned
SpawnHeightVariance: 0

##############################
# Height Limits for the BO3. #
##############################

# When in randomY mode used as the minimum Y or in atMinY mode as the actual Y to spawn this BO3 at.
MinHeight: 63

# When in randomY mode used as the maximum Y to spawn this BO3 at.
MaxHeight: 81

######################
# Extrusion settings #
######################

# The style of extrusion you wish to use - BottomDown, TopUp, None (Default)
ExtrudeMode: None

# The blocks to extrude your BO3 through
ExtrudeThroughBlocks: AIR

# Objects can have other objects attacthed to it: branches. Branches can also
# have branches attached to it, which can also have branches, etc. This is the
# maximum branch depth for this objects.
MaxBranchDepth: 10

# When spawned with the UseWorld keyword, this BO3 should NOT spawn in the following biomes.
# If you write the BO3 name directly in the BiomeConfigs, this will be ignored.
ExcludedBiomes: All


#######################################################################
# +-----------------------------------------------------------------+ #
# |                      Source block settings                      | #
# +-----------------------------------------------------------------+ #
#######################################################################

# The B(s) the BO3 should spawn in.
SourceBlocks: STONE:1,STONE:3,STONE:5,DIRT:1,DIRT,SAND,GRASS,DIRT:2,HARD_CLAY,159,CLAY,SANDSTONE,179,SAND:1,AIR,STONE,GRAVEL,31,31:1,31:2,32,37,38,39,40,38,38:1,38:2,38:3,38:4,38:5,38:6,38:7,38:8,39,40,175,175:1,175:2,175:3,175:4,175:5,31,31:1,31:2,32,IRON_ORE,GOLD_ORE,LAPIS_ORE,COAL_ORE,DIAMOND_ORE,REDSTONE_ORE,EMERALD_ORE

# The maximum percentage of the BO3 that can be outside the SourceBlock.
# The BO3 won't be placed on a location with more blocks outside the SourceBlock than this percentage.
MaxPercentageOutsideSourceBlock: 0

# What to do when a block is about to be placed outside the SourceBlock? (dontPlace, placeAnyway)
OutsideSourceBlock: placeAnyway


#######################################################################
# +-----------------------------------------------------------------+ #
# |                              Blocks                             | #
# +-----------------------------------------------------------------+ #
#######################################################################

# All the blocks used in the BO3 are listed here. Possible blocks:
# B(x,y,z,id[.data][,nbtfile.nbt)
# RB(x,y,z,id[:data][,nbtfile.nbt],chance[,id[:data][,nbtfile.nbt],chance[,...]])
#  So RB(0,0,0,CHEST,chest.nbt,50,CHEST,anotherchest.nbt,100) will spawn a chest at
#  the BO3 origin, and give it a 50% chance to have the contents of chest.nbt, or, if that
#  fails, a 100% percent chance to have the contents of anotherchest.nbt.
# MinecraftObject(x,y,z,name)
#  Spawns an object in the Mojang NBT structure format. For example, 
#  MinecraftObject(0,0,0,minecraft:igloo/igloo_bottom)
#  spawns the bottom part of an igloo.
B(-5,-1,-4,AIR)
B(-5,-1,-3,AIR)
B(-5,-1,-2,AIR)
B(-5,0,-4,AIR)
B(-5,0,-3,AIR)
B(-5,0,-2,AIR)
B(-5,1,-4,AIR)
B(-5,1,-3,AIR)
B(-5,1,-2,AIR)
B(-5,2,-4,AIR)
B(-5,2,-3,AIR)
B(-5,2,-2,AIR)
B(-5,3,-4,AIR)
B(-5,3,-3,AIR)
B(-5,3,-2,AIR)
B(-5,4,-4,AIR)
B(-5,4,-3,AIR)
B(-5,4,-2,AIR)
B(-5,5,-4,AIR)
B(-5,5,-3,AIR)
B(-5,5,-2,AIR)
B(-5,6,-4,AIR)
B(-5,6,-3,AIR)
B(-5,6,-2,AIR)
B(-5,7,-4,AIR)
B(-5,7,-3,AIR)
B(-5,7,-2,AIR)
B(-4,-2,-2,SAND)
B(-4,-2,-1,SAND)
B(-4,-2,0,SAND)
B(-4,-2,1,SAND)
B(-4,-2,2,SAND)
B(-4,-1,-5,AIR)
B(-4,-1,-4,AIR)
B(-4,-1,-3,AIR)
B(-4,-1,-2,AIR)
B(-4,-1,-1,AIR)
B(-4,-1,0,AIR)
B(-4,-1,1,AIR)
B(-4,-1,2,AIR)
B(-4,0,-5,AIR)
B(-4,0,-4,AIR)
B(-4,0,-3,AIR)
B(-4,0,-2,AIR)
B(-4,0,-1,AIR)
B(-4,0,0,AIR)
B(-4,0,1,AIR)
B(-4,0,2,AIR)
B(-4,1,-5,AIR)
B(-4,1,-4,AIR)
B(-4,1,-3,AIR)
B(-4,1,-2,AIR)
B(-4,1,-1,AIR)
B(-4,1,0,AIR)
B(-4,1,1,AIR)
B(-4,1,2,AIR)
B(-4,2,-5,AIR)
B(-4,2,-4,AIR)
B(-4,2,-3,AIR)
B(-4,2,-2,AIR)
B(-4,2,-1,AIR)
B(-4,2,0,AIR)
B(-4,2,1,AIR)
B(-4,2,2,AIR)
B(-4,3,-5,AIR)
B(-4,3,-4,AIR)
B(-4,3,-3,AIR)
B(-4,3,-2,AIR)
B(-4,3,-1,AIR)
B(-4,3,0,AIR)
B(-4,3,1,AIR)
B(-4,3,2,AIR)
B(-4,4,-5,AIR)
B(-4,4,-4,AIR)
B(-4,4,-3,AIR)
B(-4,4,-2,AIR)
B(-4,4,-1,AIR)
B(-4,4,0,AIR)
B(-4,4,1,AIR)
B(-4,4,2,AIR)
B(-4,5,-5,AIR)
B(-4,5,-4,AIR)
B(-4,5,-3,AIR)
B(-4,5,-2,AIR)
B(-4,5,-1,AIR)
B(-4,5,0,AIR)
B(-4,5,1,AIR)
B(-4,5,2,AIR)
B(-4,6,-5,AIR)
B(-4,6,-4,AIR)
B(-4,6,-3,AIR)
B(-4,6,-2,AIR)
B(-4,6,-1,AIR)
B(-4,6,0,AIR)
B(-4,6,1,AIR)
B(-4,6,2,AIR)
B(-4,7,-5,AIR)
B(-4,7,-4,AIR)
B(-4,7,-3,AIR)
B(-4,7,-2,AIR)
B(-4,7,-1,AIR)
B(-4,7,0,AIR)
B(-4,7,1,AIR)
B(-4,7,2,AIR)
B(-3,-2,-4,SAND)
B(-3,-2,-3,SAND)
B(-3,-2,-2,SAND)
B(-3,-2,-1,STATIONARY_WATER)
B(-3,-2,0,STATIONARY_WATER)
B(-3,-2,1,STATIONARY_WATER)
B(-3,-2,2,SAND)
B(-3,-2,3,SAND)
B(-3,-1,-5,AIR)
B(-3,-1,-4,AIR)
B(-3,-1,-3,AIR)
B(-3,-1,-2,AIR)
B(-3,-1,-1,AIR)
B(-3,-1,0,AIR)
B(-3,-1,1,AIR)
B(-3,-1,2,AIR)
B(-3,-1,3,AIR)
B(-3,0,-5,AIR)
B(-3,0,-4,AIR)
B(-3,0,-3,AIR)
B(-3,0,-2,AIR)
B(-3,0,-1,AIR)
B(-3,0,0,AIR)
B(-3,0,1,AIR)
B(-3,0,2,AIR)
B(-3,0,3,AIR)
B(-3,1,-5,AIR)
B(-3,1,-4,AIR)
B(-3,1,-3,AIR)
B(-3,1,-2,AIR)
B(-3,1,-1,AIR)
B(-3,1,0,AIR)
B(-3,1,1,AIR)
B(-3,1,2,AIR)
B(-3,1,3,AIR)
B(-3,2,-5,AIR)
B(-3,2,-4,AIR)
B(-3,2,-3,AIR)
B(-3,2,-2,AIR)
B(-3,2,-1,AIR)
B(-3,2,0,AIR)
B(-3,2,1,AIR)
B(-3,2,2,AIR)
B(-3,2,3,AIR)
B(-3,3,-5,AIR)
B(-3,3,-4,AIR)
B(-3,3,-3,AIR)
B(-3,3,-2,AIR)
B(-3,3,-1,AIR)
B(-3,3,0,AIR)
B(-3,3,1,AIR)
B(-3,3,2,AIR)
B(-3,3,3,AIR)
B(-3,4,-5,AIR)
B(-3,4,-4,AIR)
B(-3,4,-3,AIR)
B(-3,4,-2,AIR)
B(-3,4,-1,AIR)
B(-3,4,0,AIR)
B(-3,4,1,AIR)
B(-3,4,2,AIR)
B(-3,4,3,AIR)
B(-3,5,-5,AIR)
B(-3,5,-4,AIR)
B(-3,5,-3,AIR)
B(-3,5,-2,AIR)
B(-3,5,-1,AIR)
B(-3,5,0,AIR)
B(-3,5,1,AIR)
B(-3,5,2,AIR)
B(-3,5,3,AIR)
B(-3,6,-5,AIR)
B(-3,6,-4,AIR)
B(-3,6,-3,AIR)
B(-3,6,-2,AIR)
B(-3,6,-1,AIR)
B(-3,6,0,AIR)
B(-3,6,1,AIR)
B(-3,6,2,AIR)
B(-3,6,3,AIR)
B(-3,7,-5,AIR)
B(-3,7,-4,AIR)
B(-3,7,-3,AIR)
B(-3,7,-2,AIR)
B(-3,7,-1,AIR)
B(-3,7,0,AIR)
B(-3,7,1,AIR)
B(-3,7,2,AIR)
B(-3,7,3,AIR)
B(-2,-3,-2,STATIONARY_WATER)
B(-2,-3,-1,STATIONARY_WATER)
B(-2,-2,-5,SAND)
B(-2,-2,-4,STATIONARY_WATER)
B(-2,-2,-3,STATIONARY_WATER)
B(-2,-2,-2,STATIONARY_WATER)
B(-2,-2,-1,STATIONARY_WATER)
B(-2,-2,0,STATIONARY_WATER)
B(-2,-2,1,STATIONARY_WATER)
B(-2,-2,2,STATIONARY_WATER)
B(-2,-2,3,SAND)
B(-2,-1,-5,AIR)
B(-2,-1,-4,AIR)
B(-2,-1,-3,AIR)
B(-2,-1,-2,AIR)
B(-2,-1,-1,AIR)
B(-2,-1,0,AIR)
B(-2,-1,1,AIR)
B(-2,-1,2,AIR)
B(-2,-1,3,AIR)
B(-2,0,-5,AIR)
B(-2,0,-4,AIR)
B(-2,0,-3,AIR)
B(-2,0,-2,AIR)
B(-2,0,-1,AIR)
B(-2,0,0,AIR)
B(-2,0,1,AIR)
B(-2,0,2,AIR)
B(-2,0,3,AIR)
B(-2,1,-5,AIR)
B(-2,1,-4,AIR)
B(-2,1,-3,AIR)
B(-2,1,-2,AIR)
B(-2,1,-1,AIR)
B(-2,1,0,AIR)
B(-2,1,1,AIR)
B(-2,1,2,AIR)
B(-2,1,3,AIR)
B(-2,2,-5,AIR)
B(-2,2,-4,AIR)
B(-2,2,-3,AIR)
B(-2,2,-2,AIR)
B(-2,2,-1,AIR)
B(-2,2,0,AIR)
B(-2,2,1,AIR)
B(-2,2,2,AIR)
B(-2,2,3,AIR)
B(-2,3,-5,AIR)
B(-2,3,-4,AIR)
B(-2,3,-3,AIR)
B(-2,3,-2,AIR)
B(-2,3,-1,AIR)
B(-2,3,0,AIR)
B(-2,3,1,AIR)
B(-2,3,2,AIR)
B(-2,3,3,AIR)
B(-2,4,-5,AIR)
B(-2,4,-4,AIR)
B(-2,4,-3,AIR)
B(-2,4,-2,AIR)
B(-2,4,-1,AIR)
B(-2,4,0,AIR)
B(-2,4,1,AIR)
B(-2,4,2,AIR)
B(-2,4,3,AIR)
B(-2,5,-5,AIR)
B(-2,5,-4,AIR)
B(-2,5,-3,AIR)
B(-2,5,-2,AIR)
B(-2,5,-1,AIR)
B(-2,5,0,AIR)
B(-2,5,1,AIR)
B(-2,5,2,AIR)
B(-2,5,3,AIR)
B(-2,6,-5,AIR)
B(-2,6,-4,AIR)
B(-2,6,-3,AIR)
B(-2,6,-2,AIR)
B(-2,6,-1,AIR)
B(-2,6,0,AIR)
B(-2,6,1,AIR)
B(-2,6,2,AIR)
B(-2,6,3,AIR)
B(-2,7,-5,AIR)
B(-2,7,-4,AIR)
B(-2,7,-3,AIR)
B(-2,7,-2,AIR)
B(-2,7,-1,AIR)
B(-2,7,0,AIR)
B(-2,7,1,AIR)
B(-2,7,2,AIR)
B(-2,7,3,AIR)
B(-1,-3,-2,STATIONARY_WATER)
B(-1,-3,-1,STATIONARY_WATER)
B(-1,-3,0,STATIONARY_WATER)
B(-1,-2,-5,SAND)
B(-1,-2,-4,STATIONARY_WATER)
B(-1,-2,-3,STATIONARY_WATER)
B(-1,-2,-2,STATIONARY_WATER)
B(-1,-2,-1,STATIONARY_WATER)
B(-1,-2,0,STATIONARY_WATER)
B(-1,-2,1,STATIONARY_WATER)
B(-1,-2,2,STATIONARY_WATER)
B(-1,-2,3,STATIONARY_WATER)
B(-1,-1,-5,AIR)
B(-1,-1,-4,AIR)
B(-1,-1,-3,AIR)
B(-1,-1,-2,AIR)
B(-1,-1,-1,AIR)
B(-1,-1,0,AIR)
B(-1,-1,1,AIR)
B(-1,-1,2,AIR)
B(-1,-1,3,AIR)
B(-1,0,-5,AIR)
B(-1,0,-4,AIR)
B(-1,0,-3,AIR)
B(-1,0,-2,AIR)
B(-1,0,-1,AIR)
B(-1,0,0,AIR)
B(-1,0,1,AIR)
B(-1,0,2,AIR)
B(-1,0,3,AIR)
B(-1,1,-5,AIR)
B(-1,1,-4,AIR)
B(-1,1,-3,AIR)
B(-1,1,-2,AIR)
B(-1,1,-1,AIR)
B(-1,1,0,AIR)
B(-1,1,1,AIR)
B(-1,1,2,AIR)
B(-1,1,3,AIR)
B(-1,2,-5,AIR)
B(-1,2,-4,AIR)
B(-1,2,-3,AIR)
B(-1,2,-2,AIR)
B(-1,2,-1,AIR)
B(-1,2,0,AIR)
B(-1,2,1,AIR)
B(-1,2,2,AIR)
B(-1,2,3,AIR)
B(-1,3,-5,AIR)
B(-1,3,-4,AIR)
B(-1,3,-3,AIR)
B(-1,3,-2,AIR)
B(-1,3,-1,AIR)
B(-1,3,0,AIR)
B(-1,3,1,AIR)
B(-1,3,2,AIR)
B(-1,3,3,AIR)
B(-1,4,-5,AIR)
B(-1,4,-4,AIR)
B(-1,4,-3,AIR)
B(-1,4,-2,AIR)
B(-1,4,-1,AIR)
B(-1,4,0,AIR)
B(-1,4,1,AIR)
B(-1,4,2,AIR)
B(-1,4,3,AIR)
B(-1,5,-5,AIR)
B(-1,5,-4,AIR)
B(-1,5,-3,AIR)
B(-1,5,-2,AIR)
B(-1,5,-1,AIR)
B(-1,5,0,AIR)
B(-1,5,1,AIR)
B(-1,5,2,AIR)
B(-1,5,3,AIR)
B(-1,6,-5,AIR)
B(-1,6,-4,AIR)
B(-1,6,-3,AIR)
B(-1,6,-2,AIR)
B(-1,6,-1,AIR)
B(-1,6,0,AIR)
B(-1,6,1,AIR)
B(-1,6,2,AIR)
B(-1,6,3,AIR)
B(-1,7,-5,AIR)
B(-1,7,-4,AIR)
B(-1,7,-3,AIR)
B(-1,7,-2,AIR)
B(-1,7,-1,AIR)
B(-1,7,0,AIR)
B(-1,7,1,AIR)
B(-1,7,2,AIR)
B(-1,7,3,AIR)
B(0,-3,-2,STATIONARY_WATER)
B(0,-3,-1,STATIONARY_WATER)
B(0,-3,0,STATIONARY_WATER)
B(0,-2,-5,SAND)
B(0,-2,-4,STATIONARY_WATER)
B(0,-2,-3,STATIONARY_WATER)
B(0,-2,-2,STATIONARY_WATER)
B(0,-2,-1,STATIONARY_WATER)
B(0,-2,0,STATIONARY_WATER)
B(0,-2,1,STATIONARY_WATER)
B(0,-2,2,STATIONARY_WATER)
B(0,-2,3,SAND)
B(0,-2,4,SAND)
B(0,-1,-5,AIR)
B(0,-1,-4,AIR)
B(0,-1,-3,AIR)
B(0,-1,-2,AIR)
B(0,-1,-1,AIR)
B(0,-1,0,AIR)
B(0,-1,1,AIR)
B(0,-1,2,AIR)
B(0,-1,3,AIR)
B(0,-1,4,AIR)
B(0,0,-5,AIR)
B(0,0,-4,AIR)
B(0,0,-3,AIR)
B(0,0,-2,AIR)
B(0,0,-1,AIR)
B(0,0,0,AIR)
B(0,0,1,AIR)
B(0,0,2,AIR)
B(0,0,3,AIR)
B(0,0,4,AIR)
B(0,1,-5,AIR)
B(0,1,-4,AIR)
B(0,1,-3,AIR)
B(0,1,-2,AIR)
B(0,1,-1,AIR)
B(0,1,0,AIR)
B(0,1,1,AIR)
B(0,1,2,AIR)
B(0,1,3,AIR)
B(0,1,4,AIR)
B(0,2,-5,AIR)
B(0,2,-4,AIR)
B(0,2,-3,AIR)
B(0,2,-2,AIR)
B(0,2,-1,AIR)
B(0,2,0,AIR)
B(0,2,1,AIR)
B(0,2,2,AIR)
B(0,2,3,AIR)
B(0,2,4,AIR)
B(0,3,-5,AIR)
B(0,3,-4,AIR)
B(0,3,-3,AIR)
B(0,3,-2,AIR)
B(0,3,-1,AIR)
B(0,3,0,AIR)
B(0,3,1,AIR)
B(0,3,2,AIR)
B(0,3,3,AIR)
B(0,3,4,AIR)
B(0,4,-5,AIR)
B(0,4,-4,AIR)
B(0,4,-3,AIR)
B(0,4,-2,AIR)
B(0,4,-1,AIR)
B(0,4,0,AIR)
B(0,4,1,AIR)
B(0,4,2,AIR)
B(0,4,3,AIR)
B(0,4,4,AIR)
B(0,5,-5,AIR)
B(0,5,-4,AIR)
B(0,5,-3,AIR)
B(0,5,-2,AIR)
B(0,5,-1,AIR)
B(0,5,0,AIR)
B(0,5,1,AIR)
B(0,5,2,AIR)
B(0,5,3,AIR)
B(0,5,4,AIR)
B(0,6,-5,AIR)
B(0,6,-4,AIR)
B(0,6,-3,AIR)
B(0,6,-2,AIR)
B(0,6,-1,AIR)
B(0,6,0,AIR)
B(0,6,1,AIR)
B(0,6,2,AIR)
B(0,6,3,AIR)
B(0,6,4,AIR)
B(0,7,-5,AIR)
B(0,7,-4,AIR)
B(0,7,-3,AIR)
B(0,7,-2,AIR)
B(0,7,-1,AIR)
B(0,7,0,AIR)
B(0,7,1,AIR)
B(0,7,2,AIR)
B(0,7,3,AIR)
B(0,7,4,AIR)
B(1,-3,-2,STATIONARY_WATER)
B(1,-3,-1,STATIONARY_WATER)
B(1,-3,0,STATIONARY_WATER)
B(1,-2,-5,SAND)
B(1,-2,-4,SAND)
B(1,-2,-3,STATIONARY_WATER)
B(1,-2,-2,STATIONARY_WATER)
B(1,-2,-1,STATIONARY_WATER)
B(1,-2,0,STATIONARY_WATER)
B(1,-2,1,STATIONARY_WATER)
B(1,-2,2,STATIONARY_WATER)
B(1,-2,3,SAND)
B(1,-1,-5,AIR)
B(1,-1,-4,AIR)
B(1,-1,-3,AIR)
B(1,-1,-2,AIR)
B(1,-1,-1,AIR)
B(1,-1,0,AIR)
B(1,-1,1,AIR)
B(1,-1,2,AIR)
B(1,-1,3,AIR)
B(1,-1,4,AIR)
B(1,0,-5,AIR)
B(1,0,-4,AIR)
B(1,0,-3,AIR)
B(1,0,-2,AIR)
B(1,0,-1,AIR)
B(1,0,0,AIR)
B(1,0,1,AIR)
B(1,0,2,AIR)
B(1,0,3,AIR)
B(1,0,4,AIR)
B(1,1,-5,AIR)
B(1,1,-4,AIR)
B(1,1,-3,AIR)
B(1,1,-2,AIR)
B(1,1,-1,AIR)
B(1,1,0,AIR)
B(1,1,1,AIR)
B(1,1,2,AIR)
B(1,1,3,AIR)
B(1,1,4,AIR)
B(1,2,-5,AIR)
B(1,2,-4,AIR)
B(1,2,-3,AIR)
B(1,2,-2,AIR)
B(1,2,-1,AIR)
B(1,2,0,AIR)
B(1,2,1,AIR)
B(1,2,2,AIR)
B(1,2,3,AIR)
B(1,2,4,AIR)
B(1,3,-5,AIR)
B(1,3,-4,AIR)
B(1,3,-3,AIR)
B(1,3,-2,AIR)
B(1,3,-1,AIR)
B(1,3,0,AIR)
B(1,3,1,AIR)
B(1,3,2,AIR)
B(1,3,3,AIR)
B(1,3,4,AIR)
B(1,4,-5,AIR)
B(1,4,-4,AIR)
B(1,4,-3,AIR)
B(1,4,-2,AIR)
B(1,4,-1,AIR)
B(1,4,0,AIR)
B(1,4,1,AIR)
B(1,4,2,AIR)
B(1,4,3,AIR)
B(1,4,4,AIR)
B(1,5,-5,AIR)
B(1,5,-4,AIR)
B(1,5,-3,AIR)
B(1,5,-2,AIR)
B(1,5,-1,AIR)
B(1,5,0,AIR)
B(1,5,1,AIR)
B(1,5,2,AIR)
B(1,5,3,AIR)
B(1,5,4,AIR)
B(1,6,-5,AIR)
B(1,6,-4,AIR)
B(1,6,-3,AIR)
B(1,6,-2,AIR)
B(1,6,-1,AIR)
B(1,6,0,AIR)
B(1,6,1,AIR)
B(1,6,2,AIR)
B(1,6,3,AIR)
B(1,6,4,AIR)
B(1,7,-5,AIR)
B(1,7,-4,AIR)
B(1,7,-3,AIR)
B(1,7,-2,AIR)
B(1,7,-1,AIR)
B(1,7,0,AIR)
B(1,7,1,AIR)
B(1,7,2,AIR)
B(1,7,3,AIR)
B(1,7,4,AIR)
B(2,-2,-4,SAND)
B(2,-2,-3,STATIONARY_WATER)
B(2,-2,-2,STATIONARY_WATER)
B(2,-2,-1,STATIONARY_WATER)
B(2,-2,0,STATIONARY_WATER)
B(2,-2,1,STATIONARY_WATER)
B(2,-2,2,STATIONARY_WATER)
B(2,-2,3,SAND)
B(2,-1,-4,AIR)
B(2,-1,-3,AIR)
B(2,-1,-2,AIR)
B(2,-1,-1,AIR)
B(2,-1,0,AIR)
B(2,-1,1,AIR)
B(2,-1,2,AIR)
B(2,-1,3,AIR)
B(2,-1,4,AIR)
B(2,0,-4,AIR)
B(2,0,-3,AIR)
B(2,0,-2,AIR)
B(2,0,-1,AIR)
B(2,0,0,AIR)
B(2,0,1,AIR)
B(2,0,2,AIR)
B(2,0,3,AIR)
B(2,0,4,AIR)
B(2,1,-4,AIR)
B(2,1,-3,AIR)
B(2,1,-2,AIR)
B(2,1,-1,AIR)
B(2,1,0,AIR)
B(2,1,1,AIR)
B(2,1,2,AIR)
B(2,1,3,AIR)
B(2,1,4,AIR)
B(2,2,-4,AIR)
B(2,2,-3,AIR)
B(2,2,-2,AIR)
B(2,2,-1,AIR)
B(2,2,0,AIR)
B(2,2,1,AIR)
B(2,2,2,AIR)
B(2,2,3,AIR)
B(2,2,4,AIR)
B(2,3,-4,AIR)
B(2,3,-3,AIR)
B(2,3,-2,AIR)
B(2,3,-1,AIR)
B(2,3,0,AIR)
B(2,3,1,AIR)
B(2,3,2,AIR)
B(2,3,3,AIR)
B(2,3,4,AIR)
B(2,4,-4,AIR)
B(2,4,-3,AIR)
B(2,4,-2,AIR)
B(2,4,-1,AIR)
B(2,4,0,AIR)
B(2,4,1,AIR)
B(2,4,2,AIR)
B(2,4,3,AIR)
B(2,4,4,AIR)
B(2,5,-4,AIR)
B(2,5,-3,AIR)
B(2,5,-2,AIR)
B(2,5,-1,AIR)
B(2,5,0,AIR)
B(2,5,1,AIR)
B(2,5,2,AIR)
B(2,5,3,AIR)
B(2,5,4,AIR)
B(2,6,-4,AIR)
B(2,6,-3,AIR)
B(2,6,-2,AIR)
B(2,6,-1,AIR)
B(2,6,0,AIR)
B(2,6,1,AIR)
B(2,6,2,AIR)
B(2,6,3,AIR)
B(2,6,4,AIR)
B(2,7,-4,AIR)
B(2,7,-3,AIR)
B(2,7,-2,AIR)
B(2,7,-1,AIR)
B(2,7,0,AIR)
B(2,7,1,AIR)
B(2,7,2,AIR)
B(2,7,3,AIR)
B(2,7,4,AIR)
B(3,-2,-2,SAND)
B(3,-2,-1,STATIONARY_WATER)
B(3,-2,0,STATIONARY_WATER)
B(3,-2,1,STATIONARY_WATER)
B(3,-2,2,SAND)
B(3,-1,-2,AIR)
B(3,-1,-1,AIR)
B(3,-1,0,AIR)
B(3,-1,1,AIR)
B(3,-1,2,AIR)
B(3,-1,3,AIR)
B(3,0,-2,AIR)
B(3,0,-1,AIR)
B(3,0,0,AIR)
B(3,0,1,AIR)
B(3,0,2,AIR)
B(3,0,3,AIR)
B(3,1,-2,AIR)
B(3,1,-1,AIR)
B(3,1,0,AIR)
B(3,1,1,AIR)
B(3,1,2,AIR)
B(3,1,3,AIR)
B(3,2,-2,AIR)
B(3,2,-1,AIR)
B(3,2,0,AIR)
B(3,2,1,AIR)
B(3,2,2,AIR)
B(3,2,3,AIR)
B(3,3,-2,AIR)
B(3,3,-1,AIR)
B(3,3,0,AIR)
B(3,3,1,AIR)
B(3,3,2,AIR)
B(3,3,3,AIR)
B(3,4,-2,AIR)
B(3,4,-1,AIR)
B(3,4,0,AIR)
B(3,4,1,AIR)
B(3,4,2,AIR)
B(3,4,3,AIR)
B(3,5,-2,AIR)
B(3,5,-1,AIR)
B(3,5,0,AIR)
B(3,5,1,AIR)
B(3,5,2,AIR)
B(3,5,3,AIR)
B(3,6,-2,AIR)
B(3,6,-1,AIR)
B(3,6,0,AIR)
B(3,6,1,AIR)
B(3,6,2,AIR)
B(3,6,3,AIR)
B(3,7,-2,AIR)
B(3,7,-1,AIR)
B(3,7,0,AIR)
B(3,7,1,AIR)
B(3,7,2,AIR)
B(3,7,3,AIR)
B(4,-2,-2,SAND)
B(4,-2,-1,SAND)
B(4,-2,0,SAND)
B(4,-2,1,SAND)
B(4,-1,-2,AIR)
B(4,-1,-1,AIR)
B(4,-1,0,AIR)
B(4,-1,1,AIR)
B(4,-1,2,AIR)
B(4,0,-2,AIR)
B(4,0,-1,AIR)
B(4,0,0,AIR)
B(4,0,1,AIR)
B(4,0,2,AIR)
B(4,1,-2,AIR)
B(4,1,-1,AIR)
B(4,1,0,AIR)
B(4,1,1,AIR)
B(4,1,2,AIR)
B(4,2,-2,AIR)
B(4,2,-1,AIR)
B(4,2,0,AIR)
B(4,2,1,AIR)
B(4,2,2,AIR)
B(4,3,-2,AIR)
B(4,3,-1,AIR)
B(4,3,0,AIR)
B(4,3,1,AIR)
B(4,3,2,AIR)
B(4,4,-2,AIR)
B(4,4,-1,AIR)
B(4,4,0,AIR)
B(4,4,1,AIR)
B(4,4,2,AIR)
B(4,5,-2,AIR)
B(4,5,-1,AIR)
B(4,5,0,AIR)
B(4,5,1,AIR)
B(4,5,2,AIR)
B(4,6,-2,AIR)
B(4,6,-1,AIR)
B(4,6,0,AIR)
B(4,6,1,AIR)
B(4,6,2,AIR)
B(4,7,-2,AIR)
B(4,7,-1,AIR)
B(4,7,0,AIR)
B(4,7,1,AIR)
B(4,7,2,AIR)
B(5,-1,-1,AIR)
B(5,-1,0,AIR)
B(5,-1,1,AIR)
B(5,0,-1,AIR)
B(5,0,0,AIR)
B(5,0,1,AIR)
B(5,1,-1,AIR)
B(5,1,0,AIR)
B(5,1,1,AIR)
B(5,2,-1,AIR)
B(5,2,0,AIR)
B(5,2,1,AIR)
B(5,3,-1,AIR)
B(5,3,0,AIR)
B(5,3,1,AIR)
B(5,4,-1,AIR)
B(5,4,0,AIR)
B(5,4,1,AIR)
B(5,5,-1,AIR)
B(5,5,0,AIR)
B(5,5,1,AIR)
B(5,6,-1,AIR)
B(5,6,0,AIR)
B(5,6,1,AIR)
B(5,7,-1,AIR)
B(5,7,0,AIR)
B(5,7,1,AIR)

#######################################################################
# +-----------------------------------------------------------------+ #
# |                            BO3 checks                           | #
# +-----------------------------------------------------------------+ #
#######################################################################

# Require a condition at a certain location in order for the BO3 to be spawned.
# BlockCheck(x,y,z,BlockName[,BlockName[,...]]) - one of the blocks must be at the location
# BlockCheckNot(x,y,z,BlockName[,BlockName[,...]]) - all the blocks must not be at the location
# LightCheck(x,y,z,minLightLevel,maxLightLevel) - light must be between min and max (inclusive)

# You can use "Solid" as a BlockName for matching all solid blocks or "All" to match all blocks that aren't air.

# Examples:
#   BlockCheck(0,-1,0,GRASS,DIRT)  Require grass or dirt just below the object
#   BlockCheck(0,-1,0,Solid)       Require any solid block just below the object
#   BlockCheck(0,-1,0,WOOL)        Require any type of wool just below the object
#   BlockCheck(0,-1,0,WOOL:0)      Require white wool just below the object
#   BlockCheckNot(0,-1,0,WOOL:0)   Require that there is no white wool below the object
#   LightCheck(0,0,0,0,1)          Require almost complete darkness just below the object 
BlockCheck(0,-1,0,Solid) 
BlockCheck(-2,-1,0,Solid) 
BlockCheck(0,-1,2,Solid) 
BlockCheck(2,-1,0,Solid) 
BlockCheck(0,-1,-2,Solid)

#######################################################################
# +-----------------------------------------------------------------+ #
# |                             Branches                            | #
# +-----------------------------------------------------------------+ #
#######################################################################

# Branches are objects that will spawn when this object spawns when it is used in
# the CustomStructure resource. Branches can also have branches, making complex
# structures possible. See the wiki for more details.

# Regular Branches spawn each branch with an independent chance of spawning.
# Branch(x,y,z,branchName,rotation,chance[,anotherBranchName,rotation,chance[,...]][IndividualChance])
# branchName - name of the object to spawn.
# rotation - NORTH, SOUTH, EAST or WEST.
# IndividualChance - The chance each branch has to spawn, assumed to be 100 when left blank

# Weighted Branches spawn branches with a dependent chance of spawning.
# WBR(x,y,z,branchName,rotation,chance[,anotherBranchName,rotation,chance[,...]][MaxChanceOutOf])
# MaxChanceOutOf - The chance all branches have to spawn out of, assumed to be 100 when left blank