/OreGeneration

A plugin system for adding randomized ore generation to the world

Primary LanguageJava

Ore Generation

A plugin system for adding randomized ore generation to the world

Pocket Ore Generation

All pocket ore generation variants share the base properties defined in the base pocket ore-generation component BasePocketOreGenComponent. Default values can be found in the component definition.

Density-based generation

Pocket ore generation is small clumps of blocks that occur underground. The pocket density ore gen component PocketDensityOreGenComponent provides additional properties. Default values can be found in the component definition.

// Minimal definition, e.g, in 'CoalOreGen.prefab'
{
    "OreGenDefinition":  {},
    "PocketDensityOreGen": {
        "block": "CoreAssets:CoalOre",  // What block will be placed
        "frequency": 1                  // How often this pocket will happen in 10 vertical blocks in the region
    }
}

Depth-based Generation

This pocket ore gen is contained within a certain range of depth underground. The depth pocket density ore gen component DepthPocketOreGenComponent provides additional properties. Default values can be found in the component definition.

// Minimal definition, e.g, in 'CoalOreGen.prefab'
{
    "OreGenDefinition":  {},
    "DepthPocketOreGen": {
        "block": "CoreAssets:CoalOre", //  What block will be placed
        "frequency": 1,                // How often this pocket will happen in 10 vertical blocks in the region
        "minDepth": 4,                 // The minimum depth that this pocket will occur
        "maxDepth": 80                 // The maximum depth that this pocket will occur
    }
}

Veins Ore Generation

The veins ore generation creates a round central "mother lode" with branches radiating in all directions. Branches may twist and turn, and may fork to create a more tree-like structure. All veins-based or generators share the properties defined in the base veins ore-generation component BaseVeinsOreGenComponent. Default values can be found in the component definition.

Density-based Generation

Restricts the generation of veins based on the density. The density-based veins ore-generation component VeinsDensityOreGenComponent defines additional properties. Default values can be found in the component definition.

// Minimal definition, e.g, in 'IronOreGen.prefab'
{
    "OreGenDefinition":  {},
    "VeinsDensityOreGen": {
        "block": "CoreAssets:IronOre",  //  What block will be placed
        "frequency": 1                  // How often this ore gen will happen in 10 vertical blocks in the region
    }
}

Depth-based Generation

Restrict the generation of veins to a specific range of depth underground. The depth-based veins ore-generation component DepthVeinsOreGenComponent defines additional properties. Default values can be found in the component definition.

// Minimal definition, e.g, in 'IronOreGen.prefab'
{
    "OreGenDefinition":  {},
    "DepthVeinsOreGen": {
        "block": "CoreAssets:IronOre",  //  What block will be placed
        "frequency": 1,                 // How often this ore gen will happen in 10 vertical blocks in the region
        "minDepth": 4,                  // The minimum depth that this pocket will occur
        "maxDepth": 80                  // The maximum depth that this pocket will occur
    }
}