# Configuration file

general {
    # Automatically enables Better Caves in every possible dimension, except for the End.
    #     If this is enabled, the Whitelisted Dimension IDs option is ignored.
    # Default: false
    B:"Enable Global Whitelist"=false

    # List of ID's of dimensions that will have Better Caves. Ignored if Global Whitelisting is enabled.
    I:"Whitelisted Dimension IDs" <
        0
     >

    ##########################################################################################################
    # underground generation
    #--------------------------------------------------------------------------------------------------------#
    # Configure settings related to caves, caverns, ravines and more.
    ##########################################################################################################

    "underground generation" {

        ##########################################################################################################
        # caves
        #--------------------------------------------------------------------------------------------------------#
        # Settings used in the generation of caves.
        ##########################################################################################################

        caves {
            # Determines how large cave regions are.
            #     Controls how long a cave system of a certain cave type extends before intersecting with a cave system of another type.
            #     Larger = more cave interconnectivity for a given area, but less variation.
            # Default: Small (recommended).
            # Valid values:
            # Small
            # Medium
            # Large
            # ExtraLarge
            # Custom
            S:"Cave Region Size"=Small

            # Custom value for cave region size. Smaller value = larger regions. This value is very sensitive to change.
            #     ONLY WORKS IF Cave Region Size IS Custom.
            #     Provided values:
            #         Small: 0.008
            #         Medium: 0.005
            #         Large: 0.0032
            #         ExtraLarge: 0.001
            # Default: 0.008
            # Min: 0.0
            # Max: 0.05
            D:"Cave Region Size Custom Value"=0.00800000037997961

            # Percent chance of caves spawning in a given region.
            # Default: caves spawn in 100% of regions.
            # Min: 0.0
            # Max: 100.0
            D:"Cave Spawn Chance"=100.0

            ##########################################################################################################
            # type 1 caves
            #--------------------------------------------------------------------------------------------------------#
            # Settings used in the generation of type 1 caves, which are more worm-like.
            ##########################################################################################################

            "type 1 caves" {
                # Stretches caves horizontally. Lower value = wider caves.
                # Default: 1.6 (recommended)
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Horizontal"=1.600000023841858

                # Stretches caves vertically. Lower value = taller caves with steeper drops.
                # Default: 5.0 (recommended)
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Vertical"=5.0

                # The maximum y-coordinate at which type 1 caves can generate.
                # Default: 80
                # Min: 0
                # Max: 255
                I:"Type 1 Cave Maximum Altitude"=80

                # The minimum y-coordinate at which type 1 caves can generate.
                # Default: 1
                # Min: 0
                # Max: 255
                I:"Type 1 Cave Minimum Altitude"=1

                # Determines how frequently Type 1 Caves spawn. 0 = will not spawn at all.
                # Default: 10
                # Min: 0
                # Max: 10
                I:"Type 1 Cave Priority"=0

                # The depth from a given point on the surface at which type 1 caves start to close off.
                #     Will use the Max Cave Altitude instead of surface height if it is lower.
                #     Will use the Max Cave Altitude no matter what if Override Surface Detection is enabled.
                # Default: 15 (recommended)
                # Min: 0
                # Max: 255
                I:"Type 1 Cave Surface Cutoff Depth"=15
            }

            ##########################################################################################################
            # type 2 caves
            #--------------------------------------------------------------------------------------------------------#
            # Settings used in the generation of type 2 caves, which tend to be more open and spacious.
            ##########################################################################################################

            "type 2 caves" {
                # Stretches caves horizontally. Lower value = wider caves.
                # Default: 0.9 (recommended)
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Horizontal"=0.8999999761581421

                # Stretches caves vertically. Lower value = taller caves with steeper drops.
                # Default: 2.2 (recommended)
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Vertical"=2.200000047683716

                # The maximum y-coordinate at which type 2 caves can generate.
                # Default: 80
                # Min: 0
                # Max: 255
                I:"Type 2 Cave Maximum Altitude"=80

                # The minimum y-coordinate at which type 2 caves can generate.
                # Default: 1
                # Min: 0
                # Max: 255
                I:"Type 2 Cave Minimum Altitude"=1

                # Determines how frequently Type 2 Caves spawn. 0 = will not spawn at all.
                # Default: 5
                # Min: 0
                # Max: 10
                I:"Type 2 Cave Priority"=0

                # The depth from a given point on the surface at which type 2 caves start to close off.
                #     Will use the Max Cave Altitude instead of surface height if it is lower.
                #     Will use the Max Cave Altitude no matter what if Override Surface Detection is enabled.
                # Default: 15 (recommended)
                # Min: 0
                # Max: 255
                I:"Type 2 Cave Surface Cutoff Depth"=15
            }

            ##########################################################################################################
            # surface caves
            #--------------------------------------------------------------------------------------------------------#
            # Settings used in the generation of vanilla-like caves near the surface.
            ##########################################################################################################

            "surface caves" {
                # Set to true to enable vanilla-like caves which provide nice, natural-looking openings at the surface.
                # Default: true
                B:"Enable Surface Caves"=true

                # The density of surface caves. Higher = more caves, closer together. 
                # Default: 17
                # Min: 0
                # Max: 100
                I:"Surface Cave Density"=8

                # The maximum y-coordinate at which surface caves can generate.
                # Default: 128
                # Min: 0
                # Max: 255
                I:"Surface Cave Maximum Altitude"=128

                # The minimum y-coordinate at which surface caves can generate.
                # Default: 40
                # Min: 0
                # Max: 255
                I:"Surface Cave Minimum Altitude"=40
            }

            ##########################################################################################################
            # vanilla caves
            #--------------------------------------------------------------------------------------------------------#
            # Settings controlling vanilla Minecraft cave generation.
            ##########################################################################################################

            "vanilla caves" {
                # The density of vanilla caves. Higher = more caves, closer together. 
                # Default: 14 (value used in vanilla)
                # Min: 0
                # Max: 100
                I:"Vanilla Cave Density"=25

                # The maximum y-coordinate at which vanilla caves can generate.
                # Default: 128
                # Min: 0
                # Max: 255
                I:"Vanilla Cave Maximum Altitude"=60

                # The minimum y-coordinate at which vanilla caves can generate.
                # Default: 8
                # Min: 0
                # Max: 255
                I:"Vanilla Cave Minimum Altitude"=8

                # Determines how frequently vanilla caves spawn. 0 = will not spawn at all.
                # Default: 0
                # Min: 0
                # Max: 10
                I:"Vanilla Cave Priority"=1
            }

        }

        ##########################################################################################################
        # caverns
        #--------------------------------------------------------------------------------------------------------#
        # Settings used in the generation of caverns. Caverns are spacious caves at low altitudes.
        ##########################################################################################################

        caverns {
            # Determines how large cavern regions are. This controls the average size of caverns.
            # Default: Small
            # Valid values:
            # Small
            # Medium
            # Large
            # ExtraLarge
            # Custom
            S:"Cavern Region Size"=Small

            # Custom value for cavern region size. Only works if Cavern Region Size is set to Custom.     Smaller value = larger regions. This value is very sensitive to change.
            #     Provided values:
            #         Small: 0.01
            #         Medium: 0.007
            #         Large: 0.005
            #         ExtraLarge: 0.001
            # Default: 0.01
            # Min: 0.0
            # Max: 0.05
            D:"Cavern Region Size Custom Value"=0.009999999776482582

            # Percent chance of caverns spawning in a given region.
            # Default: caverns spawn in 25% of regions.
            # Min: 0.0
            # Max: 100.0
            D:"Cavern Spawn Chance"=15.0

            ##########################################################################################################
            # liquid caverns
            #--------------------------------------------------------------------------------------------------------#
            # Settings used in the generation of Liquid Caverns found at low altitudes.
            #     These are caverns where the floor is predominantly water or lava.
            ##########################################################################################################

            "liquid caverns" {
                # Stretches caverns horizontally. Lower value = more open caverns with larger features.
                # Default: 0.7
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Horizontal"=0.699999988079071

                # Stretches caverns vertically. Lower value = more open caverns with larger features.
                # Default: 1.3
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Vertical"=1.2999999523162842

                # The maximum y-coordinate at which Liquid Caverns can generate.
                #     Caverns will attempt to close off anyway if this value is greater than the surface's altitude.
                # Default: 35
                # Min: 0
                # Max: 255
                I:"Liquid Cavern Maximum Altitude"=35

                # The minimum y-coordinate at which Liquid Caverns can generate.
                # Default: 1
                # Min: 0
                # Max: 255
                I:"Liquid Cavern Minimum Altitude"=1

                # Determines how frequently Liquid Caverns spawn. 0 = will not spawn at all.
                # Default: 10
                # Min: 0
                # Max: 10
                I:"Liquid Cavern Priority"=10
            }

            ##########################################################################################################
            # floored caverns
            #--------------------------------------------------------------------------------------------------------#
            # Parameters used in the generation of Floored Caverns.
            #     These have much more ground to walk on than Liquid Caverns.
            ##########################################################################################################

            "floored caverns" {
                # Stretches caverns horizontally. Lower value = more open caverns with larger features.
                # Default: 0.7
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Horizontal"=0.699999988079071

                # Stretches caverns vertically. Lower value = more open caverns with larger features.
                # Default: 1.3
                # Min: 0.0
                # Max: 100.0
                D:"Compression - Vertical"=1.2999999523162842

                # The maximum y-coordinate at which Floored Caverns can generate.
                #     Caverns will attempt to close off anyway if this value is greater than the surface's altitude.
                # Default: 35
                # Min: 0
                # Max: 255
                I:"Floored Cavern Maximum Altitude"=35

                # The minimum y-coordinate at which Floored Caverns can generate.
                # Default: 1
                # Min: 0
                # Max: 255
                I:"Floored Cavern Minimum Altitude"=1

                # Determines how frequently Floored Caverns spawn. 0 = will not spawn at all.
                # Default: 10
                # Min: 0
                # Max: 10
                I:"Floored Cavern Priority"=10
            }

        }

        ##########################################################################################################
        # water regions
        #--------------------------------------------------------------------------------------------------------#
        # Settings used in the generation of water regions.
        ##########################################################################################################

        "water regions" {
            # Determines how large water regions are.
            # Default: Medium (recommended).
            # Valid values:
            # Small
            # Medium
            # Large
            # ExtraLarge
            # Custom
            S:"Water Region Size"=Medium

            # Custom value for water region size. Smaller value = larger regions. This value is very sensitive to change.
            #     ONLY WORKS IF Water Region Size IS Custom.
            #     Provided values:
            #         Small: 0.008
            #         Medium: 0.004
            #         Large: 0.0028
            #         ExtraLarge: 0.001
            # Default: 0.004
            # Min: 0.0
            # Max: 0.05
            D:"Water Region Size Custom Value"=0.004000000189989805

            # Percent chance of a region having water instead of lava at low altitudes.
            # Default: 40%
            # Min: 0.0
            # Max: 100.0
            D:"Water Region Spawn Chance"=40.0
        }

        ##########################################################################################################
        # ravines
        #--------------------------------------------------------------------------------------------------------#
        # Settings used for ravine generation.
        ##########################################################################################################

        ravines {
            # Set to true to enable flooded ravines in ocean biomes.
            # Default: true
            B:"Enable Flooded Ravines"=true

            # Set to true to enable ravine generation.
            # Default: true
            B:"Enable Ravines"=true
        }

        ##########################################################################################################
        # miscellaneous
        #--------------------------------------------------------------------------------------------------------#
        # Miscellaneous settings used in cave and cavern generation.
        ##########################################################################################################

        miscellaneous {
            # Set to true to enable flooded underground in ocean biomes.
            # Default: true
            B:"Enable Flooded Underground"=true

            # The block used for lava generation at and below the Liquid Altitude.
            #     Defaults to regular lava if an invalid block is given.
            # Default: minecraft:lava
            S:"Lava Block"=minecraft:lava

            # Lava (or water in water regions) spawns at and below this y-coordinate.
            # Default: 10
            # Min: 0
            # Max: 255
            I:"Liquid Altitude"=10

            # Ignores surface detection for closing off caves and caverns, forcing them to spawn
            #     up until their max height. Useful for Nether-like dimensions with no real "surface".
            # Default: false
            B:"Override Surface Detection"=false

            # Replace naturally generated floating gravel on the ocean floor with andesite.
            #     Can prevent lag due to cascading gravel falling into caverns under the ocean.
            # Default: true
            B:"Prevent Cascading Gravel"=true

            # The block used for water generation in water caves/caverns at and below the Liquid Altitude.
            #     Defaults to regular water if an invalid block is given.
            # Default: minecraft:water
            S:"Water Block"=minecraft:water
        }

    }

    ##########################################################################################################
    # bedrock generation
    #--------------------------------------------------------------------------------------------------------#
    # Configure how bedrock generates in the overworld and nether.
    ##########################################################################################################

    "bedrock generation" {
        # The width of the bedrock layer. Only works if Flatten Bedrock is true.
        # Min: 0
        # Max: 256
        I:"Bedrock Layer Width"=1

        # Replaces the usual bedrock generation pattern with flat layers.
        #     Activates in all whitelisted dimension, where applicable. The End is unaffected.
        B:"Flatten Bedrock"=true
    }

    ##########################################################################################################
    # debug settings
    #--------------------------------------------------------------------------------------------------------#
    # Don't mess with these settings for normal gameplay.
    ##########################################################################################################

    "debug settings" {
        # The visualizer creates worlds where there are no blocks except those indicating where caves
        #     and caverns would be carved out in a regular world. This is useful for visualizing the kinds of
        #     caves and caverns your current config options will create.
        #     Type 1 Cave: Wooden Planks
        #     Type 2 Cave: Cobblestone
        #     Lava Cavern: Redstone Block
        #     Floored Cavern: Gold Block
        #     Surface Cave: Emerald Block
        #     Vanilla Cave: Bricks
        # Default: false
        B:"Enable DEBUG Visualizer"=false
    }

}

