1use crate :: structure_set :: { StructureSetData , StructureEntryData , PlacementData , SpreadTypeData , FrequencyMethodData , ExclusionZoneData , } ; use steel_utils :: Identifier ; use glam :: IVec3 ; # [doc = r" Returns all vanilla structure sets parsed from the datapack."] pub fn vanilla_structure_sets () -> Vec < StructureSetData > { vec ! [StructureSetData { key : Identifier :: new ("minecraft" , "ancient_cities") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "ancient_city") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 24i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 20083232i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "buried_treasures") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "buried_treasure") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 1i32 , separation : 0i32 , spread_type : SpreadTypeData :: Linear , salt : 0i32 , frequency : 0.01f32 , frequency_reduction_method : FrequencyMethodData :: LegacyType2 , exclusion_zone : None , locate_offset : IVec3 :: new (9i32 , 0i32 , 9i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "desert_pyramids") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "desert_pyramid") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 32i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 14357617i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "end_cities") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "end_city") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 20i32 , separation : 11i32 , spread_type : SpreadTypeData :: Triangular , salt : 10387313i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "igloos") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "igloo") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 32i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 14357618i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "jungle_temples") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "jungle_pyramid") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 32i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 14357619i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "mineshafts") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "mineshaft") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "mineshaft_mesa") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 1i32 , separation : 0i32 , spread_type : SpreadTypeData :: Linear , salt : 0i32 , frequency : 0.004f32 , frequency_reduction_method : FrequencyMethodData :: LegacyType3 , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "nether_complexes") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "fortress") , weight : 2i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "bastion_remnant") , weight : 3i32 , }] , placement : PlacementData :: RandomSpread { spacing : 27i32 , separation : 4i32 , spread_type : SpreadTypeData :: Linear , salt : 30084232i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "nether_fossils") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "nether_fossil") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 2i32 , separation : 1i32 , spread_type : SpreadTypeData :: Linear , salt : 14357921i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "ocean_monuments") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "monument") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 32i32 , separation : 5i32 , spread_type : SpreadTypeData :: Triangular , salt : 10387313i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "ocean_ruins") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "ocean_ruin_cold") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ocean_ruin_warm") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 20i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 14357621i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "pillager_outposts") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "pillager_outpost") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 32i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 165745296i32 , frequency : 0.2f32 , frequency_reduction_method : FrequencyMethodData :: LegacyType1 , exclusion_zone : Some (ExclusionZoneData { other_set : Identifier :: new ("minecraft" , "villages") , chunk_count : 10i32 , }) , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "ruined_portals") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal_desert") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal_jungle") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal_swamp") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal_mountain") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal_ocean") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "ruined_portal_nether") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 40i32 , separation : 15i32 , spread_type : SpreadTypeData :: Linear , salt : 34222645i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "shipwrecks") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "shipwreck") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "shipwreck_beached") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 24i32 , separation : 4i32 , spread_type : SpreadTypeData :: Linear , salt : 165745295i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "strongholds") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "stronghold") , weight : 1i32 , }] , placement : PlacementData :: ConcentricRings { distance : 32i32 , spread : 3i32 , count : 128i32 , preferred_biomes : vec ! [Identifier :: new ("minecraft" , "badlands") , Identifier :: new ("minecraft" , "bamboo_jungle") , Identifier :: new ("minecraft" , "birch_forest") , Identifier :: new ("minecraft" , "cherry_grove") , Identifier :: new ("minecraft" , "dark_forest") , Identifier :: new ("minecraft" , "desert") , Identifier :: new ("minecraft" , "dripstone_caves") , Identifier :: new ("minecraft" , "eroded_badlands") , Identifier :: new ("minecraft" , "flower_forest") , Identifier :: new ("minecraft" , "forest") , Identifier :: new ("minecraft" , "frozen_peaks") , Identifier :: new ("minecraft" , "grove") , Identifier :: new ("minecraft" , "ice_spikes") , Identifier :: new ("minecraft" , "jagged_peaks") , Identifier :: new ("minecraft" , "jungle") , Identifier :: new ("minecraft" , "lush_caves") , Identifier :: new ("minecraft" , "meadow") , Identifier :: new ("minecraft" , "mushroom_fields") , Identifier :: new ("minecraft" , "old_growth_birch_forest") , Identifier :: new ("minecraft" , "old_growth_pine_taiga") , Identifier :: new ("minecraft" , "old_growth_spruce_taiga") , Identifier :: new ("minecraft" , "pale_garden") , Identifier :: new ("minecraft" , "plains") , Identifier :: new ("minecraft" , "savanna") , Identifier :: new ("minecraft" , "savanna_plateau") , Identifier :: new ("minecraft" , "snowy_plains") , Identifier :: new ("minecraft" , "snowy_slopes") , Identifier :: new ("minecraft" , "snowy_taiga") , Identifier :: new ("minecraft" , "sparse_jungle") , Identifier :: new ("minecraft" , "stony_peaks") , Identifier :: new ("minecraft" , "sulfur_caves") , Identifier :: new ("minecraft" , "sunflower_plains") , Identifier :: new ("minecraft" , "taiga") , Identifier :: new ("minecraft" , "windswept_forest") , Identifier :: new ("minecraft" , "windswept_gravelly_hills") , Identifier :: new ("minecraft" , "windswept_hills") , Identifier :: new ("minecraft" , "windswept_savanna") , Identifier :: new ("minecraft" , "wooded_badlands")] , salt : 0i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "swamp_huts") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "swamp_hut") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 32i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 14357620i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "trail_ruins") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "trail_ruins") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 34i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 83469867i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "trial_chambers") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "trial_chambers") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 34i32 , separation : 12i32 , spread_type : SpreadTypeData :: Linear , salt : 94251327i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "villages") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "village_plains") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "village_desert") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "village_savanna") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "village_snowy") , weight : 1i32 , } , StructureEntryData { structure : Identifier :: new ("minecraft" , "village_taiga") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 34i32 , separation : 8i32 , spread_type : SpreadTypeData :: Linear , salt : 10387312i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } , StructureSetData { key : Identifier :: new ("minecraft" , "woodland_mansions") , structures : vec ! [StructureEntryData { structure : Identifier :: new ("minecraft" , "mansion") , weight : 1i32 , }] , placement : PlacementData :: RandomSpread { spacing : 80i32 , separation : 20i32 , spread_type : SpreadTypeData :: Triangular , salt : 10387319i32 , frequency : 1f32 , frequency_reduction_method : FrequencyMethodData :: Default , exclusion_zone : None , locate_offset : IVec3 :: new (0i32 , 0i32 , 0i32) , } , } ,] }