Mineral Vein
Mineral Vein changes the way ores are generated. Instead of lots of small, randomly placed deposits, several huge veins will be generated.
Source
MC 1.2.3 - As of MV 1.4.1, config.yml is used instead of veins.yml. The format renames the same, only name changes
Technically, Mineral Vein adds new BlockPopulator that removes all previously placed ores and generates new ones. This ensures compatibility with any other world generators, including the default one.
Veins
Veins are vast, rare areas, that are rich on particular resource. These veins are multiple chunks wide and long, their respective resources don't exist outside them. Veins aren't made completely of given material, it's just very common there, and often multiple veins of different materials overlap. This ore distribution changes mining for resources completely - you have to scout wide areas for a vein, and when you finally find one, it can supply you for quite a long time. In general, the average density of resources/chunk is simillar, but the distribution is changed completely.
Converting old worlds
By default, the plugin works as world generator and only affects newly generated chunks. However, you can force it manually to apply the algorithm to any chunks that are already present.
The command \mineralvein apply <worldname> [x] [z] [width] [height] will apply this to the selected world. Run this command just once after installing MineralVein, then you don't have to run it at all. By default the command is accessible from console and/or anyone with "MineralVein.apply" permission. (since you need to run this command exactly once, you propably won't need the permission at all.
The numbers default to 0,0 (center) and 200x200 chunks around it. If your map is bigger, use appropriate setting (widht corresponds to X coordinate, the value is in chunks).
Configuration
All variables used in ore placement can be set in config file.
worlds: default: - block: GOLD_ORE seed: 35434 density: 3 thickness: 4 densityBonus: 0 heightAvg: 20 heightVar: 20 heightLength: 80 densLength: 80 exclusive: false #biomes: [forest,swampland] #exclude_biomes: [desert] mode: replace heightRel: false
Each item of the list represents one "layer" that is generated. By default, there is one layer for each ore type, but there can be more.
seed is a unique number for each layer. If you want to create a layer with two different ores, that always uses same space, just use the same seed.
density is a chance multiplier. Higher density means more ore
thickness is vertical size (actually it's distance from the center of the vein, in which the ore can spawn, so it's one-half of the actual thickness)
densityBonus -the density in an area is determined using a random generator, that gives values between -1 and 1, where 0 and less represent no chance of ore spawning in given location. Giving a densityBonus of 1 will represent in this layer to be filled with resource everywhere on the map.
heighAvg is the average height in which this layer can be found
heightVar is the random portion of heigh, the actual heigh goes from avg - var to avg + var (in the example, setting of 20/20 would result in layer beeing between 0-40)
heightLength is distance in blocks between height definition points changes (higher values -> less frequent height changes)
densLength is distance in blocks between density definition points changes (higher values -> bigger, rarer veins)
exclusive parameter makes sure no other veins appear if this one is present (technically, it descreases their chance by the density of this ore here)
biomes is a list of biomes this vein can appear in. If this parameter is NOT present, it appears everywhere.
exclude_biomes is a list of biomes to be excluded from the list (logically this should be used when biomes option is defaulted to all)
mode allows to turn off replacement (by setting mode to "add") - this vein will just add more blocks, without removing the old ones
heightRel changes the behavior of heightAvg and heightVar. If set to true, those two will be treated as fractions of maxHeight at current position (heightAvg+-heightRel will result in a number between 0 and 1, which will be then multiplied by actual height of terrain on that position)
Changelog:
Version 1.3.7:
- Now supports ANY id, even non-existing ones. Useful for MCForge-added blocks (e.g. Industrialcraft)
- Version 1.3.4:
- Version 1.3.4:
- Two new config options - mode and exclude_biomes
- Fixed bug with using same noise generator for height and density
- Fixed apply command
Version 1.3.3:
- Fixed crash for config files that don't have "default" world setting
Version 1.3.2:
- The "Apply" command is now executed in separate thread, and worlds can be referenced by their index (failed command will display list of worlds and indexes)
- Huge changes in default config file, hopefully for the best
Version 1.3.1:
- The "Apply" command now works much better and safer
Version 1.3:
- Added exclusive and biomes parameters to config
- It is now possible to populate already existing worlds
Version 1.2:
- Added heightLenght and densLength parameters to conf file
Version 1.1:
- Fixed bugs, switched to in-built Noise generators for better results
Version 1.0:
- First release
I did a quick test of this plugin to see if it was still working in 1.3 and it seems to be working fine. I added netherrack, emerald ore, and air generation without any issues. You can view the methods I used below.
I used a fresh 1.3 server and bukkit 1.3.1 R1.0 with no other plugins. I started the server and the config and world generated fine with no errors. I deleted the world and changed the config changing lapis ore to gen at any world height with greater thickness. I repeated changing the config and regenerating the world for each new item I added, using the same parameters with a different seed for each item. I added netherrack, emerarld ore, and air (adding mode: add for air.) Each time the world generated fine and with the intended results. I can't speak as to whether replace is working properly (I don't have an xray pack installed) but it seemed to be from what I saw.
@BBFChaser
Yes please. If this worked in 1.3, it would be the perfect way to refresh ore in preexisting worlds.
Made a guide on using MineralVein with Tekkit ore's: HERE !
Will you be updating this for 1.3.1
So could I possibly use this to tell Tekkit to generate its ores in new biomes generated by another mod, lets say ExtrabiomesXL?
Interested in using this... is it still working with the latest version of CB?
Can be put the name of the biomes "custom" that come with the plugin "Terrain Control"?. Or only works with default biomes minecraft vanilla?.
Regards and great plugin.
Well, unless M0rt1mer posts soon or updates the mod, this mod is going to die any time now.
That is a shame :(
Edit:
Found that he is still keeping the mod running on the bukkit forums.
any chance for an update?
This plugin causes a massive memory leak after I generated a new world with Multiverse and flew around to generate the chunks.
After flying a few hundred meters, I saw my RAM usage skyrocket from 25% to 90%
(12GB total)
You need to fix this.
What about making it a world generator that you can use with Multi Verse?
Needs World Selection. I would like this to only effect one world and not all worlds. Any plans for this?
Mmmhmmm.
@convictedsaint:.
Yes you can, You must leave "Default: section" in peace, & at the end of the file, Create your own section with your WorldName.
Tips: Copy/paste DefaultSection under,and rename the word Defaut to your world. ;)
It's a little confusing for me the way MinVein select the chunks. In the exemple, 200 by 200 chunks, it's a circle around the origin X/Y points or a square?
I'm looking to apply it to my Xrange=-3000->3000 / Yrange=-3000->3000 world. So there's 375chunks, rignt (6000 blocks / 16 block per chunks= 375 chunks)?
I must fill the comand like this?
\mineralvein apply <worldname> 0 0 375 375
Another problem, almost 10 hours than MineralVein is computing, and it 's turning always at 25,6%. Is it a normal behavior?
2012-05-04 21:48:40 [INFO] Application on 2: 5MB, 25.520833333333336%
...
2012-05-05 07:40:56 [INFO] Application on 2: 0MB, 25.520833333333336%
@tankfox:
Trying this out on my test server... seems to me that the config coding is bad.
firstly, my config is generated like this:
default: <---------- first line
- block: GOLD_ORE
seed: 35434
...and so on...
It does not specify 'worlds:' on the first line like you say it should.
In fact, when I change the name from default to my world name and reload the server, it would push the new world that i changed from default and all of its configs i saved for it underneath a newly generated default world.
So apparently there is no way to segregate these configs between worlds, can you fix this?
my server dies when a new chunk is being generated with this enabled in 1.2.5
@Quezax
Check out RedPower 2, it automatically includes veins of lovely marble, and volcanoes too!
@MSTABarrie
You can only run the command on the console of your server. Not in game. If you don't have console access, it's not your server.
@vulpineblaze
worlds: default:
Take a look at the config file. Starts with 'worlds' and then there's 'default'. Change or remove default and replace it with your world name, away you go!
What I would be more interested in is two abilities, the ability to select which blocks can be overwritten so I can populate ores into my nether, and the ability to select what META DATA of the block to use. I need 140:4 in my world, but all I can get is 140!
I would really like to use this, but restrict it to only one world on my server. Please add Multiworld/Multiverse/MyWorlds support!!