
#######################################################################
# +-----------------------------------------------------------------+ #
# |                            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: true

# 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: 100.0

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

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

# The height limits for the BO3.
MinHeight: 52

MaxHeight: 256

# 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 writer.write the BO3 name directly in the BiomeConfigs, this will be ignored.
ExcludedBiomes: All


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

# The block(s) the BO3 should spawn in.
SourceBlocks: AIR

# 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: 100

# 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:
# Block(x,y,z,id[.data][,nbtfile.nbt)
# RandomBlock(x,y,z,id[:data][,nbtfile.nbt],chance[,id[:data][,nbtfile.nbt],chance[,...]])
# So RandomBlock(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.
RandomBlock(-6,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-6,-3,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-6,-2,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-6,-1,0,AIR)
Block(-6,0,0,AIR)
Block(-6,1,0,AIR)
Block(-6,2,0,AIR)
RandomBlock(-5,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-5,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-5,-3,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-5,-3,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-5,-2,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-5,-2,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-5,-1,-1,GRAVEL)
RandomBlock(-5,-1,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-5,0,-1,AIR)
Block(-5,0,0,STEP:5)
Block(-5,1,-1,AIR)
Block(-5,1,0,AIR)
Block(-5,2,-1,AIR)
Block(-5,2,0,AIR)
RandomBlock(-4,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-4,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-4,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-4,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-4,-3,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-4,-3,-1,COBBLESTONE)
Block(-4,-3,0,DIRT)
RandomBlock(-4,-3,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-4,-2,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-4,-2,-1,STEP:5)
Block(-4,-2,0,AIR)
RandomBlock(-4,-2,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-4,-1,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-4,-1,-1,AIR)
Block(-4,-1,0,AIR)
RandomBlock(-4,-1,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-4,0,-2,AIR)
Block(-4,0,-1,AIR)
Block(-4,0,0,AIR)
RandomBlock(-4,0,1,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(-4,1,-2,AIR)
Block(-4,1,-1,AIR)
Block(-4,1,0,AIR)
Block(-4,1,1,AIR)
Block(-4,2,-2,AIR)
Block(-4,2,-1,AIR)
Block(-4,2,0,AIR)
Block(-4,2,1,AIR)
RandomBlock(-3,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-3,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-3,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-3,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-3,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-3,-3,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-3,-3,-1,DIRT)
Block(-3,-3,0,DIRT)
Block(-3,-3,1,COBBLESTONE)
RandomBlock(-3,-3,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-3,-2,-2,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(-3,-2,-1,AIR)
Block(-3,-2,0,LONG_GRASS:1)
Block(-3,-2,1,AIR)
RandomBlock(-3,-2,2,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(-3,-1,-2,AIR)
Block(-3,-1,-1,AIR)
Block(-3,-1,0,AIR)
Block(-3,-1,1,AIR)
Block(-3,-1,2,AIR)
Block(-3,0,-2,AIR)
Block(-3,0,-1,AIR)
Block(-3,0,0,AIR)
Block(-3,0,1,AIR)
Block(-3,0,2,AIR)
Block(-3,1,-2,AIR)
Block(-3,1,-1,AIR)
Block(-3,1,0,AIR)
Block(-3,1,1,AIR)
Block(-3,1,2,AIR)
Block(-3,2,-2,AIR)
Block(-3,2,-1,AIR)
Block(-3,2,0,AIR)
Block(-3,2,1,AIR)
Block(-3,2,2,AIR)
RandomBlock(-2,-5,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-5,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-5,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-4,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-3,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-2,-3,-2,COBBLESTONE)
Block(-2,-3,-1,COBBLESTONE)
Block(-2,-3,0,COBBLESTONE)
Block(-2,-3,1,COBBLESTONE)
Block(-2,-3,2,GRASS)
RandomBlock(-2,-3,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-2,-2,-3,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(-2,-2,-2,AIR)
Block(-2,-2,-1,AIR)
Block(-2,-2,0,AIR)
Block(-2,-2,1,AIR)
Block(-2,-2,2,LONG_GRASS:1)
RandomBlock(-2,-2,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-2,-1,-3,AIR)
Block(-2,-1,-2,AIR)
Block(-2,-1,-1,AIR)
Block(-2,-1,0,AIR)
Block(-2,-1,1,AIR)
Block(-2,-1,2,AIR)
Block(-2,-1,3,IRON_FENCE)
Block(-2,0,-3,AIR)
Block(-2,0,-2,AIR)
Block(-2,0,-1,AIR)
Block(-2,0,0,AIR)
Block(-2,0,1,AIR)
Block(-2,0,2,AIR)
Block(-2,0,3,AIR)
Block(-2,1,-3,AIR)
Block(-2,1,-2,AIR)
Block(-2,1,-1,AIR)
Block(-2,1,0,AIR)
Block(-2,1,1,AIR)
Block(-2,1,2,AIR)
Block(-2,1,3,AIR)
Block(-2,2,-3,AIR)
Block(-2,2,-2,AIR)
Block(-2,2,-1,AIR)
Block(-2,2,0,AIR)
Block(-2,2,1,AIR)
Block(-2,2,2,AIR)
Block(-2,2,3,AIR)
RandomBlock(-1,-5,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-5,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-4,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-3,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-1,-3,-3,COBBLESTONE)
Block(-1,-3,-2,GRASS)
RandomBlock(-1,-3,-1,MOSSY_COBBLESTONE,33,AIR,100)
Block(-1,-3,0,COBBLESTONE)
Block(-1,-3,1,GRASS)
Block(-1,-3,2,GRASS)
RandomBlock(-1,-3,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(-1,-2,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-1,-2,-3,AIR)
Block(-1,-2,-2,LONG_GRASS:1)
Block(-1,-2,-1,AIR)
Block(-1,-2,0,AIR)
Block(-1,-2,1,LONG_GRASS:1)
Block(-1,-2,2,LEAVES:0)
Block(-1,-2,3,AIR)
RandomBlock(-1,-1,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(-1,-1,-3,AIR)
Block(-1,-1,-2,AIR)
Block(-1,-1,-1,AIR)
Block(-1,-1,0,AIR)
Block(-1,-1,1,AIR)
Block(-1,-1,2,AIR)
Block(-1,-1,3,AIR)
Block(-1,0,-4,GRAVEL)
Block(-1,0,-3,AIR)
Block(-1,0,-2,AIR)
Block(-1,0,-1,AIR)
Block(-1,0,0,AIR)
Block(-1,0,1,AIR)
Block(-1,0,2,AIR)
Block(-1,0,3,AIR)
Block(-1,1,-4,AIR)
Block(-1,1,-3,AIR)
Block(-1,1,-2,AIR)
Block(-1,1,-1,AIR)
Block(-1,1,0,AIR)
Block(-1,1,1,AIR)
Block(-1,1,2,AIR)
Block(-1,1,3,AIR)
Block(-1,2,-4,AIR)
Block(-1,2,-3,AIR)
Block(-1,2,-2,AIR)
Block(-1,2,-1,AIR)
Block(-1,2,0,AIR)
Block(-1,2,1,AIR)
Block(-1,2,2,AIR)
Block(-1,2,3,AIR)
RandomBlock(0,-5,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-5,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-5,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-4,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-3,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(0,-3,-2,COBBLESTONE)
Block(0,-3,-1,COBBLESTONE)
Block(0,-3,0,COBBLESTONE)
Block(0,-3,1,COBBLESTONE)
Block(0,-3,2,DIRT)
RandomBlock(0,-3,3,SMOOTH_BRICK,30,98:1,30,AIR,100)
RandomBlock(0,-2,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(0,-2,-2,LOG)
Block(0,-2,-1,LEAVES:0)
Block(0,-2,0,AIR)
Block(0,-2,1,LEAVES:0)
Block(0,-2,2,LOG)
RandomBlock(0,-2,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(0,-1,-3,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(0,-1,-2,LEAVES:0)
Block(0,-1,-1,AIR)
Block(0,-1,0,AIR)
Block(0,-1,1,AIR)
Block(0,-1,2,LEAVES:0)
Block(0,-1,3,AIR)
Block(0,0,-3,AIR)
Block(0,0,-2,AIR)
Block(0,0,-1,AIR)
Block(0,0,0,AIR)
Block(0,0,1,AIR)
Block(0,0,2,AIR)
Block(0,0,3,AIR)
Block(0,1,-3,AIR)
Block(0,1,-2,AIR)
Block(0,1,-1,AIR)
Block(0,1,0,AIR)
Block(0,1,1,AIR)
Block(0,1,2,AIR)
Block(0,1,3,AIR)
Block(0,2,-3,AIR)
Block(0,2,-2,AIR)
Block(0,2,-1,AIR)
Block(0,2,0,AIR)
Block(0,2,1,AIR)
Block(0,2,2,AIR)
Block(0,2,3,AIR)
RandomBlock(1,-5,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-5,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-5,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-4,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(1,-3,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(1,-3,-2,COBBLESTONE)
Block(1,-3,-1,COBBLESTONE)
Block(1,-3,0,COBBLESTONE)
Block(1,-3,1,DIRT)
Block(1,-3,2,COBBLESTONE)
RandomBlock(1,-3,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(1,-2,-3,STEP:5)
Block(1,-2,-2,LEAVES:0)
Block(1,-2,-1,AIR)
Block(1,-2,0,AIR)
Block(1,-2,1,AIR)
Block(1,-2,2,LEAVES:0)
RandomBlock(1,-2,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(1,-1,-3,AIR)
Block(1,-1,-2,AIR)
Block(1,-1,-1,AIR)
Block(1,-1,0,AIR)
Block(1,-1,1,AIR)
Block(1,-1,2,AIR)
RandomBlock(1,-1,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(1,0,-3,AIR)
Block(1,0,-2,AIR)
Block(1,0,-1,AIR)
Block(1,0,0,AIR)
Block(1,0,1,AIR)
Block(1,0,2,AIR)
RandomBlock(1,0,3,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(1,1,-3,AIR)
Block(1,1,-2,AIR)
Block(1,1,-1,AIR)
Block(1,1,0,AIR)
Block(1,1,1,AIR)
Block(1,1,2,AIR)
Block(1,1,3,AIR)
Block(1,2,-3,AIR)
Block(1,2,-2,AIR)
Block(1,2,-1,AIR)
Block(1,2,0,AIR)
Block(1,2,1,AIR)
Block(1,2,2,AIR)
Block(1,2,3,AIR)
RandomBlock(2,-5,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-5,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-4,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-3,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-3,-3,MOSSY_COBBLESTONE,33,AIR,100)
Block(2,-3,-2,COBBLESTONE)
Block(2,-3,-1,COBBLESTONE)
Block(2,-3,0,COBBLESTONE)
Block(2,-3,1,COBBLESTONE)
Block(2,-3,2,COBBLESTONE)
RandomBlock(2,-3,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(2,-2,-4,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(2,-2,-3,AIR)
Block(2,-2,-2,AIR)
Block(2,-2,-1,AIR)
Block(2,-2,0,AIR)
Block(2,-2,1,AIR)
Block(2,-2,2,STEP:5)
RandomBlock(2,-2,3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(2,-1,-4,AIR)
Block(2,-1,-3,AIR)
Block(2,-1,-2,AIR)
Block(2,-1,-1,AIR)
Block(2,-1,0,AIR)
Block(2,-1,1,AIR)
Block(2,-1,2,AIR)
Block(2,-1,3,AIR)
Block(2,0,-4,AIR)
Block(2,0,-3,AIR)
Block(2,0,-2,AIR)
Block(2,0,-1,AIR)
Block(2,0,0,AIR)
Block(2,0,1,AIR)
Block(2,0,2,AIR)
Block(2,0,3,AIR)
Block(2,1,-4,AIR)
Block(2,1,-3,AIR)
Block(2,1,-2,AIR)
Block(2,1,-1,AIR)
Block(2,1,0,AIR)
Block(2,1,1,AIR)
Block(2,1,2,AIR)
Block(2,1,3,AIR)
Block(2,2,-4,AIR)
Block(2,2,-3,AIR)
Block(2,2,-2,AIR)
Block(2,2,-1,AIR)
Block(2,2,0,AIR)
Block(2,2,1,AIR)
Block(2,2,2,AIR)
Block(2,2,3,AIR)
RandomBlock(3,-5,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-5,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-4,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-4,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-3,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(3,-3,-2,DIRT)
Block(3,-3,-1,DIRT)
Block(3,-3,0,COBBLESTONE)
RandomBlock(3,-3,1,MOSSY_COBBLESTONE,33,AIR,100)
RandomBlock(3,-3,2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(3,-2,-3,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(3,-2,-2,LONG_GRASS:1)
Block(3,-2,-1,AIR)
Block(3,-2,0,AIR)
Block(3,-2,1,AIR)
RandomBlock(3,-2,2,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(3,-1,-3,STEP:5)
Block(3,-1,-2,AIR)
Block(3,-1,-1,AIR)
Block(3,-1,0,AIR)
Block(3,-1,1,AIR)
Block(3,-1,2,AIR)
Block(3,0,-3,AIR)
Block(3,0,-2,AIR)
Block(3,0,-1,AIR)
Block(3,0,0,AIR)
Block(3,0,1,AIR)
Block(3,0,2,AIR)
Block(3,1,-3,AIR)
Block(3,1,-2,AIR)
Block(3,1,-1,AIR)
Block(3,1,0,AIR)
Block(3,1,1,AIR)
Block(3,1,2,AIR)
Block(3,2,-3,AIR)
Block(3,2,-2,AIR)
Block(3,2,-1,AIR)
Block(3,2,0,AIR)
Block(3,2,1,AIR)
Block(3,2,2,AIR)
RandomBlock(4,-5,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-5,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-4,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-4,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-3,-2,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(4,-3,-1,COBBLESTONE)
Block(4,-3,0,GRASS)
RandomBlock(4,-3,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(4,-2,-2,SMOOTH_BRICK,30,98:1,30,AIR,100)
Block(4,-2,-1,AIR)
Block(4,-2,0,LONG_GRASS:1)
RandomBlock(4,-2,1,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(4,-1,-2,AIR)
Block(4,-1,-1,AIR)
Block(4,-1,0,AIR)
Block(4,-1,1,GRAVEL)
Block(4,0,-2,AIR)
Block(4,0,-1,AIR)
Block(4,0,0,AIR)
Block(4,0,1,AIR)
Block(4,1,-2,AIR)
Block(4,1,-1,AIR)
Block(4,1,0,AIR)
Block(4,1,1,AIR)
Block(4,2,-2,AIR)
Block(4,2,-1,AIR)
Block(4,2,0,AIR)
Block(4,2,1,AIR)
RandomBlock(5,-5,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(5,-5,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(5,-4,-1,SMOOTH_BRICK,30,98:1,30,98:2,100)
RandomBlock(5,-4,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(5,-3,-1,GRAVEL)
RandomBlock(5,-3,0,SMOOTH_BRICK,30,98:1,30,98:2,100)
Block(5,-2,-1,AIR)
Block(5,-2,0,AIR)
Block(5,-1,-1,AIR)
Block(5,-1,0,AIR)
Block(5,0,-1,AIR)
Block(5,0,0,AIR)
Block(5,1,-1,AIR)
Block(5,1,0,AIR)
Block(5,2,-1,AIR)
Block(5,2,0,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:
#     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,AIR)        Require any type of AIR just below the object
#   BlockCheck(0,-1,0,AIR:0)      Require white AIR just below the object
#   BlockCheckNot(0,0,0,AIR:0)   Require that there is no white AIR below the object
#   LightCheck(0,0,0,0,1)          Require almost complete darkness just below the object 
BlockCheckNot(0,0,0,STATIONARY_WATER) 
BlockCheckNot(0,0,0,LOG) 
BlockCheck(0,-1,0,GRASS,DIRT,GRAVEL) 

#######################################################################
# +-----------------------------------------------------------------+ #
# |                             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.
# WeightedBranch(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
Branch(-6,0,0,RuinsBasementWall1x1,NORTH,50,RuinsBasementBrickfloor1x2,NORTH,50,RuinsBasementBrickWallBush5x6,NORTH,50,RuinsBasementTorch1x1,NORTH,50,RuinsBasementGravel1x1,NORTH,50)
Branch(-6,0,-6,RuinsBasementBrickfloor4x5,NORTH,50,RuinsBasementBrickWall3x3,NORTH,50,RuinsBasementCobblestone2x2,NORTH,50,RuinsBasementWall1x1,NORTH,50,RuinsBasementGravelBush3x3,NORTH,50)
Branch(0,0,-6,RuinsBasementWall1x1,NORTH,50,RuinsBasementWall2x3,NORTH,50,RuinsBasementBushWall3x3,NORTH,50,RuinsBasementCobble1x1,NORTH,50,RuinsBasementBrickWallBush5x6,NORTH,50)
Branch(6,0,0,RuinsBasementGravel1x1,NORTH,50,RuinsBasementTorch1x1,NORTH,50,RuinsBasementWall1x1,NORTH,50,RuinsBasementWall2x3,NORTH,50,RuinsBasementCobblestone2x2,NORTH,50)
Branch(0,0,6,RuinsBasementGravel1x1,NORTH,50,RuinsBasementGravelBush3x3,NORTH,50,RuinsBasementBrickWall3x4,NORTH,50,RuinsBasementCobblestone2x2,NORTH,50,RuinsBasementCobble1x1,NORTH,50)
Branch(6,0,6,RuinsBasementGravelBush3x3,NORTH,50,RuinsBasementBrickfloor1x2,NORTH,50,RuinsBasementGravel1x1,NORTH,50,RuinsBasementBrickfloor4x5,NORTH,50,RuinsBasementWall2x3,NORTH,50)
Branch(-6,0,6,RuinsBasementTorch1x1,NORTH,50,RuinsBasementWall2x3,NORTH,50,RuinsBasementBrickWallBush5x6,NORTH,50,RuinsBasementBushWall3x3,NORTH,50,RuinsBasementWall1x1,NORTH,50)
Branch(6,0,-6,RuinsBasementBrickfloor1x2,NORTH,50,RuinsBasementGravelBush3x3,NORTH,50,RuinsBasementCobblestone2x2,NORTH,50,RuinsBasementCobble1x1,NORTH,50,RuinsBasementGravel1x1,NORTH,50)
