Sueta

GimmeOres

1.0.1

Ore distribution control

·Plugin

This plugin was made to allow servers to reuse public maps without worrying about players downloading the map themselves and locating all of the valuable ores.

The plugin is intentionally made very generic, so a lot of other features automatically come with it. The config allows you to do many things to control block generation (not just ores) in your worlds, and everything works for both new and already existing worlds.

Out of the box:
Diamond and emerald ores will be redistributed.

IMPORTANT:
Make a backup of your world before using this plugin because it will be affected. Keep in mind that, while the config can do many things and accepts many different kinds of inputs, the result might not always be what you first expect. Test it out on a throwaway world first.

INSTRUCTIONS

To configure the world, open up the config.yml that appears in the plugin folder after running the server once. The config contains a list of "populators" that each populates the world with a set of blocks. Simply replace the existing populators with whatever kind of custom populator you want (scroll down for inspiration).

A populator has a number of settings that affect the generation:

Settings
# The type of block to generate, or "all" for all blocks (only for replacing).  
 # (can also be a list)  
 # (default: all)   
material   :  <block  > 
  # The populator/generation type: VEIN for clusters, SINGLE for solo blocks.  
 # (default: VEIN)   
type   :   [  VEIN/SINGLE  ]  
 # The size of the veins to generate.  
 # (does not represent an exact number of blocks for veins)  
 # (should be left at 1 for SINGLE populators)  
 # (default: 1)   
size   :  <vein size  > 
  # The number of generation attempts per chunk.  
 # (1.4 would mean 1 guaranteed + 40% chance of one extra per chunk)  
 # (default: 0.0)   
tries   :  <generation tries per chunk  > 
  # The min y-height to generate at.  
 # (default: 0)   
min-height   :  <min generation height  > 
  # The max y-height to generate at.  
 # (default: 255)   
max-height   :  <max generation height  > 
  # The type of block to replace previous instances of the specified material with,  
 # or "none" for no removal of previous blocks.  
 # (default: none)   
replace-with   :  <block  > 
  # Type of block to replace all other blocks (not covered by the specified material) with,  
 # or "none" for no removal of other blocks.  
 # (default: none)   
replace-rest-with   :  <block  > 
  # The type of blocks that can be replaced in the generation, or "all" for all.  
 # (default: stone, andesite, diorite, granite)   
can-replace   : 
  - <block  > 
  # The worlds to generate in.  
 # (default: "world")   
worlds   : 
  - <world name  > 
  # The biomes to generate in, or "all" for all biomes.  
 # (available: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/block/Biome.html )  
 # (default: all)   
biomes   :   (   all   )  
  - <BIOME>

Useful populator examples:

Examples

Generate ore veins:

- material   :  iron_block  
  size   :  17  
  tries   :  0.5  
  max-height   :  10
Explanation

50% chance per chunk to spawn a vein of iron blocks with size 17 at y-level 10 or below.

Regenerate ores:

- material   :  diamond_ore  
  size   :  8  
  tries   :  1  
  max-height   :  15  
  replace-with   :  stone
Explanation

First, replace all already existing diamond ores with stone, then regenerate new veins like in the previous snippet.

Remove all blocks:

- replace-with   :  air
Explanation

Replace all blocks with air.

If the "material" setting is left out, all materials are targeted by default.

Strip the world of specific blocks:

- material   : 
     - oak_log 
    - oak_leaves  
  replace-with   :  air
Explanation

Target all blocks of type oak log or oak leaves and replace them with air.

This would remove all oak trees.

Strip the world of everything but specific blocks:

- material   : 
     - sand 
    - bedrock  
  replace-rest-with   :  air
Explanation

Target all blocks of type sand or bedrock and replace every block that is not of any of those types with air.

This would remove everything in the world except sand and bedrock.

Generate a layer of blocks:

- replace-with   :  bedrock  
  min-height   :  5  
  max-height   :  10
Explanation

Target all blocks between y-levels 5 and 10 and replace them with bedrock.

This would generate a 6 block deep layer of bedrock covering y-levels: 5, 6, 7, 8, 9 and 10.

Generate things in the air:

- material   :  diamond_ore  
  type   :  SINGLE  
  tries   :  2  
  min-height   :  100  
  max-height   :  100  
  can-replace   : 
     - air
Explanation

Generate a single block of diamond ore, twice per chunk, at y-level 100.

It is important to specify that the populator can replace air as that is what most of y-level 100 is made up of.

FEATURES

Redistribute ores in any world

This is a vanilla world stripped of everything but the ores:
_javaw_KY0YbsOUe1.jpg

Config
- material   : 
     - diamond_ore 
    - gold_ore 
    - iron_ore 
    - coal_ore 
    - emerald_ore 
    - redstone_ore 
    - lapis_ore 
    - bedrock  
  replace-rest-with   :  air

This is the same world but with redistributed ores:
_javaw_pvKxNEVSE4.jpg

Config
- material   :  coal_ore  
  size   :  17  
  tries   :  20  
  max-height   :  127  
  replace-with   :  stone 
 
- material   :  iron_ore  
  size   :  9  
  tries   :  20  
  max-height   :  63  
  replace-with   :  stone 
 
- material   :  redstone_ore  
  size   :  8  
  tries   :  8  
  max-height   :  15  
  replace-with   :  stone 
 
- material   :  lapis_ore  
  size   :  7  
  tries   :  1  
  max-height   :  30  
  replace-with   :  stone 
 
- material   :  gold_ore  
  max-height   :  31  
  replace-with   :  stone  
- material   :  gold_ore  
  size   :  9  
  tries   :  20  
  min-height   :  32  
  max-height   :  79  
  replace-with   :  stone  
  biomes   : 
    - BADLANDS 
    - BADLANDS_PLATEAU 
    - ERODED_BADLANDS 
    - MODIFIED_BADLANDS_PLATEAU 
    - MODIFIED_WOODED_BADLANDS_PLATEAU 
    - WOODED_BADLANDS_PLATEAU  
- material   :  gold_ore  
  size   :  9  
  tries   :  2  
  max-height   :  31 
 
- material   :  emerald_ore  
  type   :  SINGLE  
  tries   :  4  
  min-height   :  4  
  max-height   :  31  
  replace-with   :  stone  
  biomes   : 
    - GRAVELLY_MOUNTAINS 
    - MODIFIED_GRAVELLY_MOUNTAINS 
    - MOUNTAINS 
    - MOUNTAIN_EDGE 
    - WOODED_MOUNTAINS 
 
- material   :  diamond_ore  
  size   :  8  
  tries   :  1  
  max-height   :  15  
  replace-with   :  stone

Increase ore frequency
_javaw_erxdb9yqTQ.jpg

Config
- material   :  diamond_ore  
  size   :  8  
  tries   :  10  
  max-height   :  15  
  replace-with   :  stone

Custom ore generation
_javaw_lqmRuqFvGq.jpg

Config
- material   :  gold_block  
  size   :  7  
  tries   :  4  
  max-height   :  20 
 
- material   :  emerald_block  
  type   :  SINGLE  
  tries   :  2  
  max-height   :  40 
 
- material   :  diamond_block  
  type   :  SINGLE  
  tries   :  2.5  
  max-height   :  8

Custom underground biomes
_javaw_7blm1Zhbay.jpg

Config
- material   :  stone  
  max-height   :  62  
  replace-with   :  packed_ice  
  biomes   : 
     - COLD_OCEAN 
    - DEEP_COLD_OCEAN 
 
- material   :  stone  
  type   :  SINGLE  
  tries   :  10000  
  max-height   :  62  
  can-replace   : 
     - packed_ice  
  biomes   : 
     - COLD_OCEAN 
    - DEEP_COLD_OCEAN 
 
- material   :  blue_ice  
  type   :  SINGLE  
  tries   :  5000  
  max-height   :  30  
  biomes   : 
     - COLD_OCEAN 
    - DEEP_COLD_OCEAN

Create challenging worlds
_javaw_fEKSxc7ays.jpg

Config
- replace-with   :  air 
 
- material   : 
     - dirt 
    - stone 
    - oak_log 
    - coal_ore 
    - iron_ore 
    - gold_ore 
    - diamond_ore 
    - gravel 
    - sand  
  type   :  SINGLE  
  tries   :  2000  
  max-height   :  100  
  can-replace   :   all

Generate layers
__javaw_72KcBw9HH2.jpg

Config
- replace-with   :  air  
- replace-with   :  bedrock  
  max-height   :  0  
- replace-with   :  diamond_ore  
  min-height   :  1  
  max-height   :  5  
- replace-with   :  gold_ore  
  min-height   :  6  
  max-height   :  10  
- replace-with   :  iron_ore  
  min-height   :  11  
  max-height   :  15  
- replace-with   :  coal_ore  
  min-height   :  16  
  max-height   :  20  
- replace-with   :  stone  
  min-height   :  21  
  max-height   :  25  
- replace-with   :  oak_log  
  min-height   :  26  
  max-height   :  30  
- replace-with   :  dirt  
  min-height   :  31  
  max-height   :  34  
- replace-with   :  grass_block  
  min-height   :  35  
  max-height   :  35

Generate weird structures in the air
_javaw_WERuohubcE.jpg

Config
- material   :  redstone_block  
  type   :  SINGLE  
  tries   :  1000  
  min-height   :  100  
  max-height   :  200  
  can-replace   : 
     - air

Similar projects

Plugin →