How to create a Structure:
Code (Java):
VanillaStructureAPI.
placeStructure
(StructureConfig
)
;
Every StructureConfig can be found in "StructureConfigs"
This Method will return true if everything is ok (ok means not 100% placement-success) or false if an error occurred.
Configurations:
- Pillager Outpost
- new PillagerOutpost(Location, maxdepth)
Location: Where to place
maxdepth: maximal placement itterations
NOTE: Will always spawn at the Top of the World-Generation
- Mineshaft
- new Mineshaft(Location, MineshaftType, probability, forcedHeight
Location: Where to place
MineshaftType: NORMAL or MESA
probability: 0.0 to 1.0 (probably doesnt change result)
forcedHeight: Whether the Location-Y will be used or vanilla behaviour
NOTE: Mineshafts only generate in solid Blocks, not Air
- Woodland Mansion
- new WoodlandMansion(Location, forcedHeight)
Location: Where to place
forcedHeight: Whether the Location-Y will be used or vanilla behaviour
- Jungle Temple
- new JunglePyramid(Location)
Location: Where to place
NOTE: Will always spawn at the Top of the World-Generation
- Desert Pyramid
- new DesertPyramid(Location)
Location: Where to place
NOTE: Will always spawn at Y=~64
- Igloo
- new Igloo(Location, forceGenerateLaboratory, ladderAdjustment)
Location: Where to place
forceGenerateLaboratory: Whether the Laboratory will spawn 100% or only 50%(like Vanilla)
ladderAdjustment: OptionalLong.empty() will change nothing, OptionalLong.of(high) will increase the Ladder to an Laboratory by high*3
- Ruined Portal
- new
RuinedPortal(Location, RuinedPortalType)
Location: Where to place
RuinedPortalType: STANDARD, DESERT, JUNGLE, SWAMP, MOUNTAIN, OCEAN, NETHER
Extra Methods:
- setMossinessProbability(Float probability)
- null for default Settings or 0.0 to 1.0
- setGiantPortalProbability(Float probability)
- null for default Settings or 0.0 to 1.0
- setAirPocket(Boolean airPocket)
- null for default Settings or true/false
- setOvergrown(Boolean overgrown)
- null for default Settings or true/false
- setReplaceWithBlackstone(Boolean replaceWithBlackstone)
- null for default Settings or true/false
- setVines(Boolean vines)
- null for default Settings or true/false
By default all those settings are null and the Portals will have vanilla behaviour.
- Shipwreck
- new Shipwreck(Location, isBeached)
Location: Where to place
isBeached: Whether the Ship is beached or not
- Swamp Hut
- new SwampHut(Location)
Location: Where to place
- Stronghold
- new Stronghold(Location, forcedHeight)
Location: Where to place
forcedHeight: Whether the Location-Y will be used or vanilla behaviour
- Ocean Monument
- new OceanMonument(Location)
Location: Where to place
NOTE: Generates always at Y=~64
- Ocean Ruin
- new
OceanRuin(Location, OceanRuinType, large_probability, clusterProbability)
Location: Where to place
OceanRuinType: WARM or COLD
large_probability: 0.0 to 1.0 Chance for a big Ruin
clusterProbability: 0.0 to 1.0 Chance for more Ruins
- Nether Fortress
- new NetherFortress(Location, forcedHeight)
Location: Where to place
forcedHeight: Whether the Location-Y will be used or vanilla behaviour
NOTE: Generates Blocks from the paths down to the next solid block
- End City
- new EndCity(Location, forcedHeight)
Location: Where to place
forcedHeight: Whether the Location-Y will be used or vanilla behaviour
- Buried Treasure
- new BuriedTreasure(Location, probability)
Location: Where to place
probability: 0.0 to 1.0 (probably doesnt change result)
- Village
- new Village(Location, VillageType, maxdepth)
Location: Where to place
VillageType: PLAINS, DESERT, SAVANNA, SNOWY, TAIGA
maxdepth: maximal placement itterations
NOTE: Village-Paths conflict with Grass and other Blocks that are also passable -> Paths look weird
- Nether Fossil
- new NetherFossil(Location, bottomDistance, topDistance)
Location: Where to place
bottomDistance: Distance of the Structure from the Bottom of the World
topDistance: Distance of the Structure from the Top of the World
- Bastion Remnant
- new BastionRemnant(Location, maxdepth)
Location: Where to place
maxdepth: maximal placement itterations