diff --git a/a.txt b/a.txt index 3d7e935..e23f4c1 100644 --- a/a.txt +++ b/a.txt @@ -16,6 +16,13 @@ Features * git clone git://repo.or.cz/rocks.git ([show](http://repo.or.cz/rocks.git/)) * (old) Git clone: [https](https://gitorious.org/mt/rocks.git) +This mod nor minetest_game/default do not define meaningful biomes. +So if you do not want unlimited grassland I suggest installing the +[Paramat's biomesdev mod](https://github.com/paramat/biomesdev) and adding +"rocks?" to depends.txt file inside the biomesdev folder. This is needed, +becouse "rock" overrides the standard biome registration callback to patch +in it's own sedimentary rocks. + Screenshots ----------- @@ -42,13 +49,6 @@ Is implemented by modifiing MGv7 biomes to use rocks's sedimentary rocks. This means that you need mapgen v7 enabled. I also suggest enabling caves and dungeons, as they are cool. -This mod nor minetest_game/default however do not define meaningful biomes. -So if you do not want unlimited grassland I suggest installing the -[Paramat's biomesdev mod](https://github.com/paramat/biomesdev) and adding -"rocks?" to depends.txt file inside the biomesdev folder. This is needed, -becouse "rock" overrides the standard biome registration callback to patch -in it's own sedimentary rocks. - Soil is normlly 50-70 cm deep in real life, so I made soil (dirt) only 1 block thick. Under this thin layer of dirt an sedimentary layer is located. In RL, there is clay and other stuff. @@ -66,3 +66,33 @@ there. Spawn simillary to coal, but not as large. +The Igenous layer +-------------- + +Default stone is aliased to basalt, but for some reason the alias is not +working so please treat stone as basalt until I find way to fix it. + +Everything below sedimentary and (unimp) metamorphic layer is of igneous origin. Primary rock is basalt. But about half of basalt is replaced by granite. Some smaller fraction (like 20%) is then replaced by diorite and gabbro. +These are the primary rocks, and more should come. + +### Mineral distribution + +Mineral ore is placed only in nodes of correct rock and only if the region +for the ore is right. These "mineral biomes" can and do overlap and change +every like 100 nodes. Following regions are defined: + +| Region | minerals +|---------|---------- +| Copper | Chalcopyrite, Malachyte +| Pb/Zn | Sphalerite, Galena +| Iron | Magnetite + +### Skarn deposits + +Are larg-ish (15-20m) blobs of skarn stone. They spawn only in granite and +limestone. Copper, Lead, Zinc and Iron ores often enrich the skarn stone. +Some deposits may (unimp) contain considerable amounts of Molybenium, +Uranium and Wolfram ores. + +Concentration of the minerals is quite high, as to regard the player for +finding a not-so-common skarn vein. diff --git a/mineral/depends.txt b/mineral/depends.txt new file mode 100644 index 0000000..f37e4a9 --- /dev/null +++ b/mineral/depends.txt @@ -0,0 +1,2 @@ +rocks +default diff --git a/mineral/init.lua b/mineral/init.lua new file mode 100644 index 0000000..84d8f0b --- /dev/null +++ b/mineral/init.lua @@ -0,0 +1,26 @@ +-- +-- The minerals mod. +-- + +minetest.log("info","/mineral mod initializing") + +-- Load translation library if intllib is installed + +if (minetest.get_modpath("intllib")) then + dofile(minetest.get_modpath("intllib").."/intllib.lua") + S = intllib.Getter(minetest.get_current_modname()) + else + S = function ( s ) return s end +end + +mineral={} +mineral.noise={} + +local print=function(text) + minetest.log("info","/mineral "..text) +end + +local modpath=minetest.get_modpath(minetest.get_current_modname()) + +dofile(modpath.."/skarn.lua") + diff --git a/skarn.lua b/mineral/skarn.lua similarity index 59% rename from skarn.lua rename to mineral/skarn.lua index 874a4e7..1feacd6 100644 --- a/skarn.lua +++ b/mineral/skarn.lua @@ -2,25 +2,6 @@ -- Skarn deposit -- -local CommonRarity=40 --too high... should be like 76 -local CommonRadius=10 -local CommonWherein={ "rocks:granite", "rocks:limestone" } - -minetest.register_node( "rocks:skarn", { - description = S("Skarn"), - tiles = { "rocks_Skarn.png" }, - groups = {cracky=3, stone=1}, - is_ground_content = true, sounds = default.node_sound_stone_defaults(), -}) - --- skarn deposit -rocks.register_vein("rocks:skarn",{ - wherein=CommonWherein, - miny=-320, maxy=300, - radius={ average=CommonRadius, amplitude=0.16, frequency=8 }, - density=80, rarity=CommonRarity, - }) - local function GetNoiseParams() return { scale=1, offset=0, seed=rocksl.GetNextSeed(), octaves=1, persist=1, @@ -29,80 +10,74 @@ end -- ores have to be redefined for skarn background - -- Todo: - -- There is also a chance of isolated lapis crystals, Gold - -- Molybdenite with Cu - -- wollastonite with Fe - -- enrichments: scheelite and wollastonite - -- Chalcopyrite -minetest.register_node( "rocks:skarn_chalcopyrite", { +minetest.register_node( "mineral:skarn_chalcopyrite", { description = S("Chalcopyrite"), - tiles = { "rocks_Skarn.png^rocks_Chalcopyrite.png" }, + tiles = { "rocks_Skarn.png^mineral_Chalcopyrite.png" }, groups = {cracky=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) -- Malachyte -minetest.register_node( "rocks:skarn_malachyte", { +minetest.register_node( "mineral:skarn_malachyte", { description = S("Malachyte"), - tiles = { "rocks_Skarn.png^rocks_Chalcopyrite.png" }, + tiles = { "rocks_Skarn.png^mineral_Chalcopyrite.png" }, groups = {cracky=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) -- Chalcopyrite/Malachyte skarn mix -rocksl.CopperNoise=GetNoiseParams() +mineral.noise.Copper=GetNoiseParams() minetest.register_ore({ wherein="rocks:skarn", - ore="rocks:skarn_chalcopyrite", + ore="mineral:skarn_chalcopyrite", clust_size=3, clust_num_ores=12, clust_scarcity=4^3, noise_treshold=0.333, - noise_params=rocksl.CopperNoise + noise_params=mineral.noise.Copper }) minetest.register_ore({ wherein="rocks:skarn", - ore="rocks:skarn_malachyte", + ore="mineral:skarn_malachyte", clust_size=3, clust_num_ores=11, clust_scarcity=4^3, noise_treshold=0.333, - noise_params=rocksl.CopperNoise + noise_params=mineral.noise.Copper }) -- Sphalerite -minetest.register_node( "rocks:skarn_sphalerite", { +minetest.register_node( "mineral:skarn_sphalerite", { description = S("Sphalerite"), - tiles = { "rocks_Skarn.png^rocks_sphalerite.png" }, + tiles = { "rocks_Skarn.png^mineral_sphalerite.png" }, groups = {cracky=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) -- Galena -minetest.register_node( "rocks:skarn_galena", { +minetest.register_node( "mineral:skarn_galena", { description = S("Galena"), - tiles = { "rocks_Skarn.png^rocks_galena.png" }, + tiles = { "rocks_Skarn.png^mineral_galena.png" }, groups = {cracky=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) -- Pb Zn skarn mix -rocksl.PbZnNoise=GetNoiseParams() +mineral.noise.PbZn=GetNoiseParams() minetest.register_ore({ wherein="rocks:skarn", - ore="rocks:skarn_sphalerite", + ore="mineral:skarn_sphalerite", clust_size=3, clust_num_ores=9, clust_scarcity=4^3, noise_treshold=0.38, - noise_params=rocksl.PbZnNoise + noise_params=mineral.noise.PbZn }) minetest.register_ore({ wherein="rocks:skarn", - ore="rocks:skarn_galena", + ore="mineral:skarn_galena", clust_size=3, clust_num_ores=10, clust_scarcity=4^3, noise_treshold=0.38, - noise_params=rocksl.PbZnNoise + noise_params=mineral.noise.PbZn }) -- marble and hornfels, as well as unchanged limestone. -- { ore="rocks:marble", percent=10 }, @@ -111,22 +86,22 @@ minetest.register_ore({ -- { ore="rocks:skarn_sphalerite", percent=25 }, -- Magnetite -minetest.register_node( "rocks:skarn_magnetite", { +minetest.register_node( "mineral:skarn_magnetite", { description = S("Magnetite"), - tiles = { "rocks_Skarn.png^rocks_Magnetite.png" }, + tiles = { "rocks_Skarn.png^mineral_Magnetite.png" }, groups = {cracky=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) -- Fe skarn mix -rocksl.IronNoise=GetNoiseParams() +mineral.noise.Iron=GetNoiseParams() minetest.register_ore({ wherein="rocks:skarn", - ore="rocks:skarn_magnetite", + ore="mineral:skarn_magnetite", clust_size=3, clust_num_ores=13, clust_scarcity=4^3, noise_treshold=0.3, - noise_params=rocksl.IronNoise + noise_params=mineral.noise.Iron }) -- marble and hornfels, as well as unchanged limestone. -- { ore="rocks:marble", percent=10 }, @@ -134,16 +109,16 @@ minetest.register_ore({ -- { ore="rocks:skarn_magnetite", percent=40 }, -- Magnesite -minetest.register_node( "rocks:skarn_magnesite", { +minetest.register_node( "mineral:skarn_magnesite", { description = S("Magnesite"), - tiles = { "rocks_Skarn.png^rocks_Magnesite.png" }, + tiles = { "rocks_Skarn.png^mineral_Magnesite.png" }, groups = {cracky=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) -- Vermiculite (fixme: move to CommonRocks) -minetest.register_node( "rocks:vermiculite", { +minetest.register_node( "mineral:vermiculite", { description = S("Vermiculite"), - tiles = { "rocks_Vermiculite.png" }, + tiles = { "mineral_Vermiculite.png" }, groups = {crumbly=3}, is_ground_content = true, sounds = default.node_sound_stone_defaults(), }) diff --git a/textures/rocks_Chalcopyrite.png b/mineral/textures/mineral_Chalcopyrite.png similarity index 100% rename from textures/rocks_Chalcopyrite.png rename to mineral/textures/mineral_Chalcopyrite.png diff --git a/textures/rocks_Magnesite.png b/mineral/textures/mineral_Magnesite.png similarity index 100% rename from textures/rocks_Magnesite.png rename to mineral/textures/mineral_Magnesite.png diff --git a/textures/rocks_Magnetite.png b/mineral/textures/mineral_Magnetite.png similarity index 100% rename from textures/rocks_Magnetite.png rename to mineral/textures/mineral_Magnetite.png diff --git a/textures/rocks_Vermiculite.png b/mineral/textures/mineral_Vermiculite.png similarity index 100% rename from textures/rocks_Vermiculite.png rename to mineral/textures/mineral_Vermiculite.png diff --git a/textures/rocks_galena.png b/mineral/textures/mineral_galena.png similarity index 100% rename from textures/rocks_galena.png rename to mineral/textures/mineral_galena.png diff --git a/textures/rocks_sphalerite.png b/mineral/textures/mineral_sphalerite.png similarity index 100% rename from textures/rocks_sphalerite.png rename to mineral/textures/mineral_sphalerite.png diff --git a/modpack.txt b/modpack.txt new file mode 100644 index 0000000..57fe34f --- /dev/null +++ b/modpack.txt @@ -0,0 +1 @@ +# This is now a modpack, for you to ask why :) diff --git a/depends.txt b/rocks/depends.txt similarity index 100% rename from depends.txt rename to rocks/depends.txt diff --git a/ign.lua b/rocks/ign.lua similarity index 96% rename from ign.lua rename to rocks/ign.lua index a3c221c..2324c6f 100644 --- a/ign.lua +++ b/rocks/ign.lua @@ -37,13 +37,13 @@ minetest.register_node( "rocks:gabbro", { local reg=function(name,param) minetest.register_ore({ ore = name, - wherein= { "mapgen_stone" }, + wherein= { "mapgen_stone", "default:stone", "rocks:basalt" }, ore_type = "scatter", clust_scarcity = 10^3, clust_num_ores = 20^3, clust_size = 20, height_min = -31000, - height_max = -5, + height_max = 28, noise_treshhold=param.treshold, noise_params={ offset = 0, scale = 1, octaves = 3, persist = 0.5, diff --git a/init.lua b/rocks/init.lua similarity index 100% rename from init.lua rename to rocks/init.lua diff --git a/sed.lua b/rocks/sed.lua similarity index 100% rename from sed.lua rename to rocks/sed.lua diff --git a/rocks/skarn.lua b/rocks/skarn.lua new file mode 100644 index 0000000..f79684d --- /dev/null +++ b/rocks/skarn.lua @@ -0,0 +1,30 @@ +-- +-- Skarn deposit +-- + +local CommonRarity=40 --too high... should be like 76 +local CommonRadius=10 +local CommonWherein={ "rocks:granite", "rocks:limestone", "air" } + +minetest.register_node( "rocks:skarn", { + description = S("Skarn"), + tiles = { "rocks_Skarn.png" }, + groups = {cracky=3, stone=1}, + is_ground_content = true, sounds = default.node_sound_stone_defaults(), +}) + +-- skarn deposit +rocks.register_vein("rocks:skarn",{ + wherein=CommonWherein, + miny=-320, maxy=300, + radius={ average=CommonRadius, amplitude=0.16, frequency=8 }, + density=80, rarity=CommonRarity, + }) + + -- Todo: + -- There is also a chance of isolated lapis crystals, Gold + -- Molybdenite with Cu + -- wollastonite with Fe + -- enrichments: scheelite and wollastonite + +-- ~ Tomas Brod \ No newline at end of file diff --git a/textures/decoblocks.txt b/rocks/textures/decoblocks.txt similarity index 100% rename from textures/decoblocks.txt rename to rocks/textures/decoblocks.txt diff --git a/textures/geologica.txt b/rocks/textures/geologica.txt similarity index 100% rename from textures/geologica.txt rename to rocks/textures/geologica.txt diff --git a/textures/rocks_Andesite.png b/rocks/textures/rocks_Andesite.png similarity index 100% rename from textures/rocks_Andesite.png rename to rocks/textures/rocks_Andesite.png diff --git a/textures/rocks_Basalt.png b/rocks/textures/rocks_Basalt.png similarity index 100% rename from textures/rocks_Basalt.png rename to rocks/textures/rocks_Basalt.png diff --git a/textures/rocks_Diorite.png b/rocks/textures/rocks_Diorite.png similarity index 100% rename from textures/rocks_Diorite.png rename to rocks/textures/rocks_Diorite.png diff --git a/textures/rocks_Dolomite.png b/rocks/textures/rocks_Dolomite.png similarity index 100% rename from textures/rocks_Dolomite.png rename to rocks/textures/rocks_Dolomite.png diff --git a/textures/rocks_Gabbro.png b/rocks/textures/rocks_Gabbro.png similarity index 100% rename from textures/rocks_Gabbro.png rename to rocks/textures/rocks_Gabbro.png diff --git a/textures/rocks_Gneiss.png b/rocks/textures/rocks_Gneiss.png similarity index 100% rename from textures/rocks_Gneiss.png rename to rocks/textures/rocks_Gneiss.png diff --git a/textures/rocks_Granite.png b/rocks/textures/rocks_Granite.png similarity index 100% rename from textures/rocks_Granite.png rename to rocks/textures/rocks_Granite.png diff --git a/textures/rocks_Limestone.png b/rocks/textures/rocks_Limestone.png similarity index 100% rename from textures/rocks_Limestone.png rename to rocks/textures/rocks_Limestone.png diff --git a/textures/rocks_Mudstone.png b/rocks/textures/rocks_Mudstone.png similarity index 100% rename from textures/rocks_Mudstone.png rename to rocks/textures/rocks_Mudstone.png diff --git a/textures/rocks_Peridotite.png b/rocks/textures/rocks_Peridotite.png similarity index 100% rename from textures/rocks_Peridotite.png rename to rocks/textures/rocks_Peridotite.png diff --git a/textures/rocks_Rhyolite.png b/rocks/textures/rocks_Rhyolite.png similarity index 100% rename from textures/rocks_Rhyolite.png rename to rocks/textures/rocks_Rhyolite.png diff --git a/textures/rocks_Schist.png b/rocks/textures/rocks_Schist.png similarity index 100% rename from textures/rocks_Schist.png rename to rocks/textures/rocks_Schist.png diff --git a/textures/rocks_Skarn.png b/rocks/textures/rocks_Skarn.png similarity index 100% rename from textures/rocks_Skarn.png rename to rocks/textures/rocks_Skarn.png diff --git a/textures/rocks_Slate.png b/rocks/textures/rocks_Slate.png similarity index 100% rename from textures/rocks_Slate.png rename to rocks/textures/rocks_Slate.png diff --git a/textures/rocks_bb.png b/rocks/textures/rocks_bb.png similarity index 100% rename from textures/rocks_bb.png rename to rocks/textures/rocks_bb.png diff --git a/textures/rocks_blkgr.png b/rocks/textures/rocks_blkgr.png similarity index 100% rename from textures/rocks_blkgr.png rename to rocks/textures/rocks_blkgr.png diff --git a/textures/rocks_brgr.png b/rocks/textures/rocks_brgr.png similarity index 100% rename from textures/rocks_brgr.png rename to rocks/textures/rocks_brgr.png diff --git a/textures/rocks_gls.png b/rocks/textures/rocks_gls.png similarity index 100% rename from textures/rocks_gls.png rename to rocks/textures/rocks_gls.png diff --git a/textures/rocks_mrbrownstone.png b/rocks/textures/rocks_mrbrownstone.png similarity index 100% rename from textures/rocks_mrbrownstone.png rename to rocks/textures/rocks_mrbrownstone.png diff --git a/textures/rocks_obs.png b/rocks/textures/rocks_obs.png similarity index 100% rename from textures/rocks_obs.png rename to rocks/textures/rocks_obs.png diff --git a/textures/rocks_pgr.png b/rocks/textures/rocks_pgr.png similarity index 100% rename from textures/rocks_pgr.png rename to rocks/textures/rocks_pgr.png diff --git a/textures/rocks_rss.png b/rocks/textures/rocks_rss.png similarity index 100% rename from textures/rocks_rss.png rename to rocks/textures/rocks_rss.png diff --git a/textures/rocks_serp.png b/rocks/textures/rocks_serp.png similarity index 100% rename from textures/rocks_serp.png rename to rocks/textures/rocks_serp.png diff --git a/textures/rocks_sod.png b/rocks/textures/rocks_sod.png similarity index 100% rename from textures/rocks_sod.png rename to rocks/textures/rocks_sod.png diff --git a/textures/rocks_trav.png b/rocks/textures/rocks_trav.png similarity index 100% rename from textures/rocks_trav.png rename to rocks/textures/rocks_trav.png diff --git a/textures/rocks_wgr.png b/rocks/textures/rocks_wgr.png similarity index 100% rename from textures/rocks_wgr.png rename to rocks/textures/rocks_wgr.png diff --git a/textures/rocks_wm.png b/rocks/textures/rocks_wm.png similarity index 100% rename from textures/rocks_wm.png rename to rocks/textures/rocks_wm.png diff --git a/textures/rocks_yss.png b/rocks/textures/rocks_yss.png similarity index 100% rename from textures/rocks_yss.png rename to rocks/textures/rocks_yss.png