####################################################################### # +-----------------------------------------------------------------+ # # | 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.5 # 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: 63 MaxHeight: 81 # 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 B(s) the BO3 should spawn in. SourceBlocks: AIR,STONE,DIRT,GRASS,GRAVEL,31:1,48 # 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: 50 # 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. B(-4,8,-2,AIR) B(-4,8,-1,AIR) B(-4,8,0,AIR) B(-4,8,1,AIR) B(-4,8,2,AIR) B(-3,-3,-1,SMOOTH_BRICK) B(-3,-3,0,SMOOTH_BRICK) B(-3,-3,1,SMOOTH_BRICK) B(-3,-2,-1,SMOOTH_BRICK) B(-3,-2,0,SMOOTH_BRICK) B(-3,-2,1,SMOOTH_BRICK) B(-3,-1,-1,SMOOTH_BRICK) B(-3,-1,0,SMOOTH_BRICK) B(-3,-1,1,SMOOTH_BRICK) B(-3,6,-2,SMOOTH_BRICK) B(-3,6,-1,SMOOTH_BRICK) B(-3,6,0,STEP:5) B(-3,6,1,SMOOTH_BRICK) B(-3,6,2,SMOOTH_BRICK) B(-3,7,-2,SMOOTH_BRICK) B(-3,7,-1,SMOOTH_BRICK) B(-3,7,1,SMOOTH_BRICK) B(-3,7,2,SMOOTH_BRICK) B(-3,8,-2,AIR) B(-3,8,-1,SMOOTH_BRICK) B(-3,8,1,SMOOTH_BRICK) B(-3,8,2,AIR) B(-3,9,-1,AIR) B(-3,9,0,AIR) B(-3,9,1,AIR) B(-2,-3,-2,SMOOTH_BRICK) B(-2,-3,-1,SMOOTH_BRICK) B(-2,-3,0,SMOOTH_BRICK) B(-2,-3,1,SMOOTH_BRICK) B(-2,-3,2,SMOOTH_BRICK) B(-2,-2,-2,SMOOTH_BRICK) B(-2,-2,-1,SMOOTH_BRICK) B(-2,-2,0,SMOOTH_BRICK) B(-2,-2,1,SMOOTH_BRICK) B(-2,-2,2,SMOOTH_BRICK) B(-2,-1,-2,SMOOTH_BRICK) B(-2,-1,-1,SMOOTH_BRICK) B(-2,-1,0,SMOOTH_BRICK) B(-2,-1,1,SMOOTH_BRICK) B(-2,-1,2,SMOOTH_BRICK) B(-2,0,-1,SMOOTH_BRICK) B(-2,0,0,WOODEN_DOOR:0) B(-2,0,1,SMOOTH_BRICK) B(-2,1,-1,SMOOTH_BRICK) B(-2,1,0,WOODEN_DOOR:8) B(-2,1,1,SMOOTH_BRICK) B(-2,2,-1,SMOOTH_BRICK) B(-2,2,0,SMOOTH_BRICK) B(-2,2,1,SMOOTH_BRICK) B(-2,5,-2,SMOOTH_STAIRS:6) B(-2,5,-1,SMOOTH_STAIRS:4) B(-2,5,0,SMOOTH_STAIRS:4) B(-2,5,1,SMOOTH_STAIRS:4) B(-2,5,2,SMOOTH_STAIRS:7) B(-2,6,-3,SMOOTH_BRICK) B(-2,6,-2,AIR) B(-2,6,-1,AIR) B(-2,6,0,AIR) B(-2,6,1,AIR) RB(-2,6,2,CHEST,../../nbt/VanillaLoot/simple_dungeon.nbt,50,CHEST,../../nbt/VanillaLoot/abandoned_mineshaft.nbt,30,CHEST,../../nbt/VanillaLoot/stronghold_library.nbt,100) B(-2,6,3,SMOOTH_BRICK) B(-2,7,-3,SMOOTH_BRICK) B(-2,7,3,SMOOTH_BRICK) B(-2,8,-4,AIR) B(-2,8,-3,AIR) B(-2,8,3,AIR) B(-2,8,4,AIR) B(-2,9,-2,AIR) B(-2,9,-1,AIR) B(-2,9,0,AIR) B(-2,9,1,AIR) B(-2,9,2,AIR) B(-1,-3,-3,SMOOTH_BRICK) B(-1,-3,-2,SMOOTH_BRICK) B(-1,-3,-1,SMOOTH_BRICK) B(-1,-3,0,SMOOTH_BRICK) B(-1,-3,1,SMOOTH_BRICK) B(-1,-3,2,SMOOTH_BRICK) B(-1,-3,3,SMOOTH_BRICK) B(-1,-2,-3,SMOOTH_BRICK) B(-1,-2,-2,SMOOTH_BRICK) B(-1,-2,-1,SMOOTH_BRICK) B(-1,-2,0,SMOOTH_BRICK) B(-1,-2,1,SMOOTH_BRICK) B(-1,-2,2,SMOOTH_BRICK) B(-1,-2,3,SMOOTH_BRICK) B(-1,-1,-3,SMOOTH_BRICK) B(-1,-1,-2,SMOOTH_BRICK) B(-1,-1,-1,SMOOTH_STAIRS:1) B(-1,-1,0,SMOOTH_STAIRS:1) B(-1,-1,1,SMOOTH_STAIRS:1) B(-1,-1,2,SMOOTH_BRICK) B(-1,-1,3,SMOOTH_BRICK) B(-1,0,-2,SMOOTH_BRICK) B(-1,0,-1,AIR) B(-1,0,0,AIR) B(-1,0,1,AIR) B(-1,0,2,SMOOTH_BRICK) B(-1,1,-2,SMOOTH_STAIRS:2) B(-1,1,-1,AIR) B(-1,1,0,AIR) B(-1,1,1,AIR) B(-1,1,2,SMOOTH_STAIRS:3) B(-1,2,-1,SMOOTH_BRICK) B(-1,2,0,SMOOTH_BRICK) B(-1,2,1,SMOOTH_BRICK) B(-1,3,0,SMOOTH_BRICK) B(-1,4,0,SMOOTH_BRICK) B(-1,5,-2,SMOOTH_STAIRS:6) B(-1,5,-1,SMOOTH_BRICK) B(-1,5,0,SMOOTH_BRICK) B(-1,5,1,SMOOTH_BRICK) B(-1,5,2,SMOOTH_STAIRS:7) B(-1,6,-3,SMOOTH_BRICK) RB(-1,6,-2,FURNACE:4,../../nbt/Misc/Furnace.nbt,30,FURNACE:2,../../nbt/Misc/Furnace2.nbt,30,FURNACE:2,../../nbt/Misc/Furnace3.nbt,100) B(-1,6,-1,AIR) B(-1,6,0,AIR) B(-1,6,1,AIR) B(-1,6,2,AIR) B(-1,6,3,SMOOTH_BRICK) B(-1,7,-3,SMOOTH_BRICK) B(-1,7,3,SMOOTH_BRICK) B(-1,8,-4,AIR) B(-1,8,-3,SMOOTH_BRICK) B(-1,8,3,SMOOTH_BRICK) B(-1,8,4,AIR) B(-1,9,-3,AIR) B(-1,9,-2,AIR) B(-1,9,2,AIR) B(-1,9,3,AIR) B(-1,10,-1,AIR) B(-1,10,0,AIR) B(-1,10,1,AIR) B(0,-3,-3,SMOOTH_BRICK) B(0,-3,-2,SMOOTH_BRICK) B(0,-3,-1,SMOOTH_BRICK) B(0,-3,0,SMOOTH_BRICK) B(0,-3,1,SMOOTH_BRICK) B(0,-3,2,SMOOTH_BRICK) B(0,-3,3,SMOOTH_BRICK) B(0,-2,-3,SMOOTH_BRICK) B(0,-2,-2,SMOOTH_BRICK) B(0,-2,-1,SMOOTH_BRICK) B(0,-2,0,SMOOTH_BRICK) B(0,-2,1,SMOOTH_BRICK) B(0,-2,2,SMOOTH_BRICK) B(0,-2,3,SMOOTH_BRICK) B(0,-1,-3,SMOOTH_BRICK) B(0,-1,-2,SMOOTH_BRICK) B(0,-1,-1,AIR) B(0,-1,0,LADDER:4) B(0,-1,1,AIR) B(0,-1,2,SMOOTH_BRICK) B(0,-1,3,SMOOTH_BRICK) B(0,0,-2,SMOOTH_BRICK) B(0,0,-1,AIR) B(0,0,0,LADDER:4) B(0,0,1,AIR) B(0,0,2,SMOOTH_BRICK) B(0,1,-2,SMOOTH_STAIRS:2) B(0,1,-1,AIR) B(0,1,0,LADDER:4) B(0,1,1,AIR) B(0,1,2,SMOOTH_STAIRS:3) B(0,2,-1,SMOOTH_BRICK) B(0,2,0,LADDER:4) B(0,2,1,SMOOTH_BRICK) B(0,3,-1,SMOOTH_BRICK) B(0,3,0,LADDER:4) B(0,3,1,SMOOTH_BRICK) B(0,4,-1,SMOOTH_BRICK) B(0,4,0,LADDER:4) B(0,4,1,SMOOTH_BRICK) B(0,5,-2,SMOOTH_STAIRS:6) B(0,5,-1,SMOOTH_BRICK) B(0,5,0,LADDER:4) B(0,5,1,SMOOTH_BRICK) B(0,5,2,SMOOTH_STAIRS:7) B(0,6,-3,SMOOTH_BRICK) B(0,6,-2,AIR) B(0,6,-1,AIR) B(0,6,1,AIR) B(0,6,2,AIR) B(0,6,3,SMOOTH_BRICK) B(0,7,-3,SMOOTH_BRICK) B(0,7,3,SMOOTH_BRICK) B(0,8,-4,AIR) B(0,8,-3,SMOOTH_BRICK) B(0,8,3,SMOOTH_BRICK) B(0,8,4,AIR) B(0,9,-3,AIR) B(0,9,-2,AIR) B(0,9,2,AIR) B(0,9,3,AIR) B(0,10,-1,AIR) B(0,10,0,AIR) B(0,10,1,AIR) B(1,-3,-3,SMOOTH_BRICK) B(1,-3,-2,SMOOTH_BRICK) B(1,-3,-1,SMOOTH_BRICK) B(1,-3,0,SMOOTH_BRICK) B(1,-3,1,SMOOTH_BRICK) B(1,-3,2,SMOOTH_BRICK) B(1,-3,3,SMOOTH_BRICK) B(1,-2,-3,SMOOTH_BRICK) B(1,-2,-2,SMOOTH_BRICK) B(1,-2,-1,SMOOTH_BRICK) B(1,-2,0,SMOOTH_BRICK) B(1,-2,1,SMOOTH_BRICK) B(1,-2,2,SMOOTH_BRICK) B(1,-2,3,SMOOTH_BRICK) B(1,-1,-3,SMOOTH_BRICK) B(1,-1,-2,SMOOTH_BRICK) B(1,-1,-1,AIR) B(1,-1,0,SMOOTH_BRICK) B(1,-1,1,AIR) B(1,-1,2,SMOOTH_BRICK) B(1,-1,3,SMOOTH_BRICK) B(1,0,-2,SMOOTH_BRICK) B(1,0,-1,AIR) B(1,0,0,SMOOTH_BRICK) B(1,0,1,AIR) B(1,0,2,SMOOTH_BRICK) B(1,1,-2,SMOOTH_STAIRS:2) B(1,1,-1,AIR) B(1,1,0,SMOOTH_BRICK) B(1,1,1,AIR) B(1,1,2,SMOOTH_STAIRS:3) B(1,2,-1,SMOOTH_BRICK) B(1,2,0,SMOOTH_BRICK) B(1,2,1,SMOOTH_BRICK) B(1,3,0,SMOOTH_BRICK) B(1,4,0,SMOOTH_BRICK) B(1,5,-2,SMOOTH_STAIRS:6) B(1,5,-1,SMOOTH_BRICK) B(1,5,0,SMOOTH_BRICK) B(1,5,1,SMOOTH_BRICK) B(1,5,2,SMOOTH_STAIRS:7) B(1,6,-3,SMOOTH_BRICK) B(1,6,-2,AIR) B(1,6,-1,AIR) B(1,6,0,AIR) B(1,6,1,AIR) B(1,6,3,SMOOTH_BRICK) B(1,7,-3,SMOOTH_BRICK) B(1,7,3,SMOOTH_BRICK) B(1,8,-4,AIR) B(1,8,-3,SMOOTH_BRICK) B(1,8,3,SMOOTH_BRICK) B(1,8,4,AIR) B(1,9,-3,AIR) B(1,9,-2,AIR) B(1,9,2,AIR) B(1,9,3,AIR) B(1,10,-1,AIR) B(1,10,0,AIR) B(1,10,1,AIR) B(2,-3,-2,SMOOTH_BRICK) B(2,-3,-1,SMOOTH_BRICK) B(2,-3,0,SMOOTH_BRICK) B(2,-3,1,SMOOTH_BRICK) B(2,-3,2,SMOOTH_BRICK) B(2,-2,-2,SMOOTH_BRICK) B(2,-2,-1,SMOOTH_BRICK) B(2,-2,0,SMOOTH_BRICK) B(2,-2,1,SMOOTH_BRICK) B(2,-2,2,SMOOTH_BRICK) B(2,-1,-2,SMOOTH_BRICK) B(2,-1,-1,SMOOTH_BRICK) B(2,-1,0,SMOOTH_BRICK) B(2,-1,1,SMOOTH_BRICK) B(2,-1,2,SMOOTH_BRICK) B(2,0,-1,SMOOTH_BRICK) B(2,0,0,SMOOTH_BRICK) B(2,0,1,SMOOTH_BRICK) B(2,1,-1,SMOOTH_BRICK) B(2,1,0,SMOOTH_BRICK) B(2,1,1,SMOOTH_BRICK) B(2,2,-1,SMOOTH_BRICK) B(2,2,0,SMOOTH_BRICK) B(2,2,1,SMOOTH_BRICK) B(2,5,-2,SMOOTH_STAIRS:6) B(2,5,-1,SMOOTH_STAIRS:5) B(2,5,0,SMOOTH_STAIRS:5) B(2,5,1,SMOOTH_STAIRS:5) B(2,5,2,SMOOTH_STAIRS:5) B(2,6,-3,SMOOTH_BRICK) 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,SMOOTH_BRICK) B(2,7,-3,SMOOTH_BRICK) B(2,7,-2,AIR) B(2,7,0,AIR) B(2,7,3,SMOOTH_BRICK) B(2,8,-4,AIR) B(2,8,-3,AIR) B(2,8,0,AIR) B(2,8,3,AIR) B(2,8,4,AIR) B(2,9,-2,AIR) B(2,9,-1,AIR) B(2,9,0,AIR) B(2,9,1,AIR) B(2,9,2,AIR) B(3,-3,-1,SMOOTH_BRICK) B(3,-3,0,SMOOTH_BRICK) B(3,-3,1,SMOOTH_BRICK) B(3,-2,-1,SMOOTH_BRICK) B(3,-2,0,SMOOTH_BRICK) B(3,-2,1,SMOOTH_BRICK) B(3,-1,-1,SMOOTH_BRICK) B(3,-1,0,SMOOTH_BRICK) B(3,-1,1,SMOOTH_BRICK) B(3,6,-2,SMOOTH_BRICK) B(3,6,-1,SMOOTH_BRICK) B(3,6,0,SMOOTH_BRICK) B(3,6,1,SMOOTH_BRICK) B(3,6,2,SMOOTH_BRICK) B(3,7,-2,SMOOTH_BRICK) B(3,7,-1,SMOOTH_BRICK) B(3,7,0,SMOOTH_BRICK) B(3,7,1,SMOOTH_BRICK) B(3,7,2,SMOOTH_BRICK) B(3,8,-2,AIR) B(3,8,-1,SMOOTH_BRICK) B(3,8,0,SMOOTH_BRICK) B(3,8,1,SMOOTH_BRICK) B(3,8,2,AIR) B(3,9,-1,AIR) B(3,9,0,AIR) B(3,9,1,AIR) B(4,8,-2,AIR) B(4,8,-1,AIR) B(4,8,0,AIR) B(4,8,1,AIR) B(4,8,2,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,biomesoplenty:grass:0,biomesoplenty:grass:1,biomesoplenty:grass:2,biomesoplenty:grass:3,biomesoplenty:grass:4,biomesoplenty:grass:5,biomesoplenty:grass:6,biomesoplenty:grass:7,biomesoplenty:dirt:0,biomesoplenty:dirt:1,biomesoplenty:dirt:2,biomesoplenty:dirt:3,biomesoplenty:dirt:4,biomesoplenty:dirt:5,biomesoplenty:dirt:6,biomesoplenty:dirt:7,biomesoplenty:dirt:8,biomesoplenty:dirt:9,biomesoplenty:dirt:10,biomesoplenty:dried_sand:0,biomesoplenty:hard_ice:0,biomesoplenty:white_sand:0,biomesoplenty:white_sandstone:0,biomesoplenty:mud:0,biomesoplenty:ash_block:0) 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,0,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 BlockCheckNot(0,0,0,STATIONARY_WATER) ####################################################################### # +-----------------------------------------------------------------+ # # | 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 Branch(0,-1,0,PathPatch,NORTH,100) WBR(6,0,4,RuinsBasementBrickWallBush5x6,NORTH,25,RuinsBasementBrickfloor4x5,NORTH,25,RuinsBasementGravelBush3x3,NORTH,25,WitchHutCauldronOutdoor,NORTH,25,100)