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

# A short description of this BO3 object
Description: Converted version of the BO2 JungleForest1

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

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

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

# The height limits for the BO3.
MinHeight: 51

MaxHeight: 199

# 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: STONE:1,STONE:3,STONE:5,DIRT:1,DIRT,SAND,GRASS,DIRT:2,STATIONARY_WATER,HARD_CLAY,STAINED_CLAY,CLAY,SANDSTONE,SAND:1,AIR,STONE,GRAVEL,31,31:1,31:2,32,37,38,39,40

# 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:
# 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.
Block(2,11,4,LEAVES:3)
Block(4,11,-3,LEAVES:3)
Block(5,11,2,LEAVES:3)
Block(2,12,4,LEAVES:3)
Block(4,10,-3,LEAVES:3)
Block(2,19,4,LEAVES:3)
Block(5,19,2,LEAVES:3)
Block(-2,20,-3,LEAVES:3)
Block(1,9,-4,LEAVES:3)
Block(-2,19,-3,LEAVES:3)
Block(-4,19,-1,LEAVES:3)
Block(1,20,1,LEAVES:3)
Block(-4,14,-1,LEAVES:3)
Block(-4,13,-1,LEAVES:3)
Block(-4,12,-1,LEAVES:3)
Block(4,19,-3,LEAVES:3)
Block(-3,13,2,LEAVES:3)
Block(-3,18,2,VINE:4)
Block(-3,19,2,LEAVES:3)
Block(2,19,-5,LEAVES:3)
Block(2,11,-5,LEAVES:3)
Block(2,10,-5,LEAVES:3)
Block(1,18,1,LEAVES:3)
Block(-3,20,2,LEAVES:3)
Block(1,19,1,LEAVES:3)
Block(1,19,-1,LEAVES:3)
Block(1,18,-1,LEAVES:3)
Block(1,17,-1,LOG:3)
Block(4,20,-2,LEAVES:3)
Block(2,20,3,LEAVES:3)
Block(1,9,-3,LEAVES:3)
Block(1,7,-3,LOG:3)
Block(1,8,-3,LOG:3)
Block(1,11,2,LEAVES:3)
Block(1,18,2,LOG:3)
Block(0,19,-6,LEAVES:3)
Block(1,19,2,LEAVES:3)
Block(-6,13,0,LEAVES:3)
Block(4,10,-2,LEAVES:3)
Block(4,19,-2,LEAVES:3)
Block(0,1,0,LOG:3)
Block(0,0,0,LOG:3)
Block(-6,13,1,LEAVES:3)
Block(0,3,0,LOG:3)
Block(0,2,0,LOG:3)
Block(0,5,0,LOG:3)
Block(-3,19,3,LEAVES:3)
Block(0,4,0,LOG:3)
Block(0,7,0,LOG:3)
Block(-2,19,0,LEAVES:3)
Block(0,6,0,LOG:3)
Block(-2,18,0,LEAVES:3)
Block(-2,13,0,LEAVES:3)
Block(-2,14,0,LEAVES:3)
Block(-2,11,0,LOG:7)
Block(-2,10,0,LOG:7)
Block(4,9,-5,LEAVES:3)
Block(2,20,-3,LEAVES:3)
Block(1,5,-2,LEAVES:3)
Block(-4,13,3,LEAVES:3)
Block(-4,19,3,LEAVES:3)
Block(2,12,3,LEAVES:3)
Block(4,19,0,LEAVES:3)
Block(3,11,6,LEAVES:3)
Block(-4,13,-3,LEAVES:3)
Block(2,10,3,LEAVES:3)
Block(2,11,3,LEAVES:3)
Block(4,11,-4,LEAVES:3)
Block(4,10,-4,LEAVES:3)
Block(-4,19,-3,LEAVES:3)
Block(-2,20,0,LEAVES:3)
Block(2,18,3,VINE:4)
Block(2,19,3,LEAVES:3)
Block(6,19,-2,LEAVES:3)
Block(-2,19,-4,LEAVES:3)
Block(1,20,2,LEAVES:3)
Block(2,5,-1,LEAVES:3)
Block(4,19,-4,LEAVES:3)
Block(2,12,2,LEAVES:3)
Block(2,11,2,LEAVES:3)
Block(4,19,1,LEAVES:3)
Block(2,10,2,LEAVES:3)
Block(2,19,2,LOG:3)
Block(2,19,-4,LEAVES:3)
Block(4,11,1,LEAVES:3)
Block(2,18,2,LEAVES:3)
Block(4,9,-4,LEAVES:3)
Block(-2,19,-5,LEAVES:3)
Block(2,11,-4,LEAVES:3)
Block(2,10,-4,LEAVES:3)
Block(1,5,-1,LEAVES:3)
Block(1,6,-1,LEAVES:3)
Block(6,10,-3,LEAVES:3)
Block(0,19,-5,LEAVES:3)
Block(-3,19,4,LEAVES:3)
Block(2,20,2,LEAVES:3)
Block(1,10,3,LEAVES:3)
Block(0,10,-5,LEAVES:3)
Block(1,11,3,LEAVES:3)
Block(0,9,0,LOG:3)
Block(0,8,0,LOG:3)
Block(1,18,3,LEAVES:3)
Block(1,19,3,LEAVES:3)
Block(-6,19,-2,LEAVES:3)
Block(2,20,1,LEAVES:3)
Block(-5,19,-3,LEAVES:3)
Block(-2,20,1,LEAVES:3)
Block(1,11,4,LEAVES:3)
Block(0,19,1,LEAVES:3)
Block(0,18,1,LOG:3)
Block(0,17,1,COCOA:10)
Block(1,19,4,LEAVES:3)
Block(3,10,-7,LEAVES:3)
Block(2,9,-3,LEAVES:3)
Block(5,10,-5,LEAVES:3)
Block(4,11,-5,LEAVES:3)
Block(4,10,-5,LEAVES:3)
Block(0,19,0,LOG:3)
Block(-2,20,-1,LEAVES:3)
Block(-2,13,-1,LEAVES:3)
Block(5,11,4,LEAVES:3)
Block(-2,18,-1,LOG:3)
Block(3,11,5,LEAVES:3)
Block(-2,19,-1,LEAVES:3)
Block(5,10,-4,LEAVES:3)
Block(0,21,0,LEAVES:3)
Block(0,20,0,LEAVES:3)
Block(5,11,-4,LEAVES:3)
Block(2,11,1,LEAVES:3)
Block(-5,13,-2,LEAVES:3)
Block(-2,18,1,LEAVES:3)
Block(-1,19,-1,LEAVES:3)
Block(-2,19,1,LEAVES:3)
Block(2,19,1,LEAVES:3)
Block(-2,13,1,LEAVES:3)
Block(-1,17,-1,LOG:3)
Block(-1,18,-1,LEAVES:3)
Block(-5,19,-2,LEAVES:3)
Block(0,14,0,LOG:3)
Block(-4,19,2,LEAVES:3)
Block(0,13,0,LOG:3)
Block(0,12,0,LOG:3)
Block(-1,20,-1,LEAVES:3)
Block(0,11,0,LOG:3)
Block(-1,21,-1,LEAVES:3)
Block(0,18,0,LOG:3)
Block(0,17,0,LOG:3)
Block(6,10,-4,LEAVES:3)
Block(-4,13,2,LEAVES:3)
Block(0,16,0,LOG:3)
Block(0,15,0,LOG:3)
Block(0,10,0,LOG:3)
Block(2,9,-4,LOG:3)
Block(2,8,-4,LOG:3)
Block(0,7,-2,LOG:3)
Block(2,19,0,LEAVES:3)
Block(3,19,3,LEAVES:3)
Block(6,10,-5,LEAVES:3)
Block(3,12,3,LEAVES:3)
Block(0,20,2,LEAVES:3)
Block(5,10,-6,LEAVES:3)
Block(3,11,3,LOG:3)
Block(3,10,3,LOG:3)
Block(-4,20,-2,LEAVES:3)
Block(2,20,0,LEAVES:3)
Block(5,11,3,LEAVES:3)
Block(-2,19,3,LEAVES:3)
Block(2,10,-6,LEAVES:3)
Block(-1,18,-3,LEAVES:3)
Block(-1,19,-3,LOG:3)
Block(-6,13,-1,LEAVES:3)
Block(-2,20,3,LEAVES:3)
Block(-4,16,0,VINE:8)
Block(0,17,2,VINE)
Block(-3,18,-1,LEAVES:3)
Block(0,18,2,LEAVES:3)
Block(-1,20,-3,LEAVES:3)
Block(-4,17,0,VINE:8)
Block(-4,14,0,LEAVES:3)
Block(-3,19,-1,LEAVES:3)
Block(0,19,2,LEAVES:3)
Block(-4,15,0,VINE:8)
Block(-4,12,0,LEAVES:3)
Block(-4,13,0,LOG:3)
Block(-4,19,-2,LEAVES:3)
Block(-3,11,-1,VINE:1)
Block(-3,12,-1,LEAVES:3)
Block(-4,13,-2,LEAVES:3)
Block(2,9,-5,LEAVES:3)
Block(-3,13,-1,LEAVES:3)
Block(-3,14,-1,LEAVES:3)
Block(-4,18,0,VINE:8)
Block(-4,19,0,LEAVES:3)
Block(-5,13,-1,LEAVES:3)
Block(-2,18,2,LEAVES:3)
Block(2,10,-7,LEAVES:3)
Block(-2,19,2,LOG:3)
Block(-5,19,-1,LEAVES:3)
Block(-1,18,-2,LEAVES:3)
Block(-1,19,-2,LEAVES:3)
Block(3,10,-6,LEAVES:3)
Block(-1,20,-2,LEAVES:3)
Block(-2,20,2,LEAVES:3)
Block(-4,14,1,LEAVES:3)
Block(-4,13,1,LEAVES:3)
Block(-4,12,1,LEAVES:3)
Block(-3,20,-1,LEAVES:3)
Block(-4,19,1,LEAVES:3)
Block(4,10,-6,LEAVES:3)
Block(-2,20,-2,LEAVES:3)
Block(3,19,4,LEAVES:3)
Block(-2,18,-2,LEAVES:3)
Block(3,12,4,LEAVES:3)
Block(3,11,4,LEAVES:3)
Block(3,10,4,LEAVES:3)
Block(-2,19,-2,LEAVES:3)
Block(0,21,1,LEAVES:3)
Block(0,20,1,LEAVES:3)
Block(3,9,-3,LEAVES:3)
Block(-3,20,-2,LEAVES:3)
Block(-1,19,-4,LEAVES:3)
Block(-2,19,4,LEAVES:3)
Block(3,11,-4,LEAVES:3)
Block(5,19,-2,LEAVES:3)
Block(-5,19,2,LEAVES:3)
Block(-5,13,2,LEAVES:3)
Block(3,10,-4,LEAVES:3)
Block(2,9,2,LOG:3)
Block(-3,19,-2,LOG:3)
Block(2,8,2,LOG:3)
Block(-3,18,-2,LEAVES:3)
Block(3,19,-4,LEAVES:3)
Block(-1,18,1,LOG:3)
Block(-1,19,1,LEAVES:3)
Block(-1,20,-4,LEAVES:3)
Block(-3,13,-2,LEAVES:3)
Block(0,21,-1,LEAVES:3)
Block(0,20,-1,LEAVES:3)
Block(5,10,-2,LEAVES:3)
Block(-1,5,0,LEAVES:3)
Block(-1,4,0,LEAVES:3)
Block(-1,6,0,LEAVES:3)
Block(4,11,5,LEAVES:3)
Block(3,18,2,VINE:2)
Block(3,19,2,LEAVES:3)
Block(3,10,2,LEAVES:3)
Block(3,11,2,LEAVES:3)
Block(-1,20,1,LEAVES:3)
Block(3,12,2,LEAVES:3)
Block(0,5,-1,LEAVES:3)
Block(0,7,-1,LOG:3)
Block(0,6,-1,LEAVES:3)
Block(3,9,-2,LEAVES:3)
Block(4,11,4,LEAVES:3)
Block(0,19,3,LEAVES:3)
Block(0,11,3,LEAVES:3)
Block(3,20,2,LEAVES:3)
Block(0,18,-1,LEAVES:3)
Block(0,17,-1,COCOA:8)
Block(0,19,-1,LEAVES:3)
Block(1,19,-6,LEAVES:3)
Block(-5,13,1,LEAVES:3)
Block(3,11,-5,LEAVES:3)
Block(3,10,-5,LOG:3)
Block(-1,18,2,LEAVES:3)
Block(-3,19,-3,LEAVES:3)
Block(-1,19,2,LEAVES:3)
Block(3,19,-5,LEAVES:3)
Block(1,10,-6,LEAVES:3)
Block(3,9,-5,LEAVES:3)
Block(1,20,-4,LEAVES:3)
Block(3,20,0,LEAVES:3)
Block(-1,5,2,LEAVES:3)
Block(3,9,2,VINE:2)
Block(3,11,-3,LEAVES:3)
Block(1,18,-4,VINE:1)
Block(3,10,-3,LOG:3)
Block(1,19,-4,LEAVES:3)
Block(-2,5,0,LEAVES:3)
Block(1,10,-4,LOG:3)
Block(3,19,-3,LEAVES:3)
Block(-1,15,0,VINE:8)
Block(3,18,-3,VINE:2)
Block(-1,17,0,COCOA:11)
Block(1,11,-4,LEAVES:3)
Block(-1,18,0,LEAVES:3)
Block(-1,19,0,LEAVES:3)
Block(-1,10,0,LOG:7)
Block(-1,13,0,LEAVES:3)
Block(-1,14,0,VINE:8)
Block(3,8,-4,VINE:2)
Block(3,9,-4,LEAVES:3)
Block(1,19,-5,LEAVES:3)
Block(3,20,-3,LEAVES:3)
Block(1,10,-5,LEAVES:3)
Block(3,19,1,LEAVES:3)
Block(-1,20,0,LEAVES:3)
Block(-1,21,0,LEAVES:3)
Block(-3,19,-4,LEAVES:3)
Block(3,11,1,LEAVES:3)
Block(-1,5,1,LEAVES:3)
Block(3,9,3,LOG:3)
Block(5,19,-3,LEAVES:3)
Block(-2,19,5,LEAVES:3)
Block(-1,19,-5,LEAVES:3)
Block(3,20,1,LEAVES:3)
Block(5,10,-3,LEAVES:3)
Block(0,18,-4,LEAVES:3)
Block(0,19,-4,LEAVES:3)
Block(1,9,0,VINE:2)
Block(0,5,2,LEAVES:3)
Block(-4,19,-4,LEAVES:3)
Block(3,20,-1,LEAVES:3)
Block(1,18,-3,LEAVES:3)
Block(2,18,-2,LOG:3)
Block(1,19,-3,LOG:3)
Block(2,19,-2,LEAVES:3)
Block(1,10,-3,LEAVES:3)
Block(2,10,-2,LEAVES:3)
Block(4,9,-3,LEAVES:3)
Block(0,10,-4,LEAVES:3)
Block(-1,19,4,LEAVES:3)
Block(2,21,-2,LEAVES:3)
Block(-7,13,0,LEAVES:3)
Block(0,20,-4,LEAVES:3)
Block(2,20,-2,LEAVES:3)
Block(-3,19,-5,LEAVES:3)
Block(0,4,1,LEAVES:3)
Block(1,8,1,LOG:3)
Block(0,6,1,LEAVES:3)
Block(6,11,3,LEAVES:3)
Block(0,5,1,LEAVES:3)
Block(3,10,-2,LEAVES:3)
Block(3,11,-2,LEAVES:3)
Block(-1,19,-6,LEAVES:3)
Block(3,17,-2,VINE)
Block(3,18,-2,LEAVES:3)
Block(3,19,-2,LOG:3)
Block(0,20,-3,LEAVES:3)
Block(-3,11,0,LOG:7)
Block(-3,12,0,LOG:3)
Block(4,19,2,LEAVES:3)
Block(-3,13,0,LEAVES:3)
Block(-3,14,0,LEAVES:3)
Block(-3,19,0,LEAVES:3)
Block(3,20,-2,LEAVES:3)
Block(2,19,-3,LEAVES:3)
Block(-3,18,0,LEAVES:3)
Block(-2,5,1,LEAVES:3)
Block(4,11,2,LEAVES:3)
Block(2,18,-3,LEAVES:3)
Block(1,20,-3,LEAVES:3)
Block(2,11,-3,LEAVES:3)
Block(3,19,0,LEAVES:3)
Block(2,10,-3,LEAVES:3)
Block(1,6,0,LEAVES:3)
Block(1,5,0,LEAVES:3)
Block(1,4,0,VINE:2)
Block(3,11,0,LEAVES:3)
Block(-3,20,0,LEAVES:3)
Block(4,19,3,LEAVES:3)
Block(4,12,3,LEAVES:3)
Block(4,11,3,LEAVES:3)
Block(4,10,3,LEAVES:3)
Block(-1,20,2,LEAVES:3)
Block(0,19,-3,LEAVES:3)
Block(1,19,0,LEAVES:3)
Block(1,18,0,LEAVES:3)
Block(-1,5,-1,LEAVES:3)
Block(1,17,0,LEAVES:3)
Block(0,18,-3,LEAVES:3)
Block(1,16,0,VINE:2)
Block(1,15,0,VINE:2)
Block(1,14,0,VINE:2)
Block(1,13,0,VINE:2)
Block(1,12,0,VINE:2)
Block(2,18,-1,LEAVES:3)
Block(1,11,0,VINE:2)
Block(5,19,-1,LEAVES:3)
Block(1,10,0,VINE:2)
Block(2,19,-1,LEAVES:3)
Block(2,10,-1,LEAVES:3)
Block(1,5,1,LEAVES:3)
Block(0,10,-3,LEAVES:3)
Block(1,21,-1,LEAVES:3)
Block(1,20,-1,LEAVES:3)
Block(-3,12,1,LEAVES:3)
Block(-3,13,1,LEAVES:3)
Block(0,19,-2,LEAVES:3)
Block(0,18,-2,LOG:3)
Block(4,10,-1,LEAVES:3)
Block(-5,14,0,LEAVES:3)
Block(-5,13,0,LEAVES:3)
Block(1,21,0,LEAVES:3)
Block(-5,12,0,LEAVES:3)
Block(-3,18,1,LEAVES:3)
Block(1,20,0,LEAVES:3)
Block(-3,19,1,LEAVES:3)
Block(-1,19,3,LEAVES:3)
Block(2,20,-1,LEAVES:3)
Block(4,19,-1,LEAVES:3)
Block(1,20,-2,LEAVES:3)
Block(1,21,-2,LEAVES:3)
Block(-3,20,1,LEAVES:3)
Block(2,11,5,LEAVES:3)
Block(2,5,0,LEAVES:3)
Block(3,10,-1,LEAVES:3)
Block(1,18,-2,LEAVES:3)
Block(1,19,-2,LEAVES:3)
Block(2,19,5,LEAVES:3)
Block(1,10,-2,LEAVES:3)
Block(3,19,-1,LEAVES:3)
Block(0,20,-2,LEAVES:3)
Block(0,21,-2,LEAVES:3)

#######################################################################
# +-----------------------------------------------------------------+ #
# |                            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,GRASS,DIRT,DIRT:2,HARD_CLAY,STAINED_CLAY,CLAY,SANDSTONE,SAND:1,SAND)

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