Add More Ores, update categories, rename ore tweak mod

This commit is contained in:
Skivling 2024-03-10 15:53:49 +13:00
parent 931a96d3d4
commit d0b118a8c6
50 changed files with 1157 additions and 10 deletions

View File

@ -0,0 +1,2 @@
title = MOLEUS
description = All the Moleus-specific things in the game, including ore generation tweaks.

View File

@ -1,10 +1,11 @@
-- Moleus Ore Tweaks
-- Adds extra ore registrations for higher up in the world
-- Includes tweaks for More Ores Mithril and Silver
-- Scatter ores
-- Coal
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
@ -34,7 +35,6 @@
-- Copper
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
@ -50,7 +50,6 @@
-- Iron
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
@ -65,7 +64,6 @@
-- Gold
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
@ -77,10 +75,9 @@
y_min = -511,
})
-- Mese crystal
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
@ -95,7 +92,6 @@
-- Diamond
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
@ -121,4 +117,30 @@
y_min = -4095,
})
-- Silver (More Ores)
minetest.register_ore({
ore_type = "scatter",
ore = "moreores:mineral_silver",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 3,
clust_size = 3,
y_max = -32,
y_min = -63,
})
-- Mithril (More Ores)
minetest.register_ore({
ore_type = "scatter",
ore = "moreores:mineral_silver",
wherein = "default:stone",
clust_scarcity = 21 * 21 * 21,
clust_num_ores = 2,
clust_size = 3,
y_max = -256,
y_min = -2047,
})

View File

@ -0,0 +1,3 @@
name = moleus_ore_tweaks
title = Moleus Ore Tweaks
depends = default, moreores

View File

@ -0,0 +1,86 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Changed
- [Tweaked ore generation to better fit Minetest's new defaults.](https://github.com/minetest-mods/moreores/pull/45)
- Three layers (two underground and one high air/space) are now used instead of just one layer.
- Chunk size is no longer used as clust size anymore. Clust sizes are usually
just 3 nodes and not the whole area ("chunk"), where the ores are generated.
- Adjusted several default values.
- Mithril is now generated *below* diamond. Note that there was a change
in Minetest 5.0.0 where most ore generation was shifted to much lower
altitude (shifting diamond generation altitude below mithril generation altitude).
- The mithril ores are now also grouped together and not just found as a
single node in one chunk.
- The same overall ore density is retained in the deep layer.
- Switch to GitHub Actions.
- Benefits include faster responses, easier management, and more.
## [2.1.0] - 2021-06-28
### Added
- More Ores tools now have [`toolranks`](https://github.com/lisacvuk/minetest-toolranks) support.
- Hungarian translation.
### Changed
- Migrated translations to the
[Minetest translation file format](https://rubenwardy.com/minetest_modding_book/lua_api.html#translation-file-format).
## [2.0.0] - 2019-11-25
### Added
- More Ores nodes/items/tools can now be placed in item frames
from the [`frame`](https://github.com/minetest-mods/frame) mod.
- Polish translation.
### Changed
- The minimum supported Minetest version is now 5.0.0.
- Copper rails are now registered using functions from the `carts` mod,
making them interoperate seamlessly with default rails.
- Copper rails can no longer be placed in the air.
## [1.1.0] - 2019-03-23
### Added
- Brazilian and Dutch translations.
### Changed
- Ores are now slower to mine and cannot be mined using wooden tools anymore.
- Updated intllib support to avoid using deprecated functions.
### Deprecated
- Deprecated hoes to follow Minetest Game's deprecation of hoes
made of "rare" materials.
- Hoes are still available in existing worlds, but they
cannot be crafted anymore.
### Fixed
- Hoes now use the `farming` mod's handling function and can no longer
turn desert sand into dirt.
- Handle tin which is now included in [Minetest Game](https://github.com/minetest/minetest_game).
If it is detected, then the tin nodes and items from More Ores won't be registered.
## 1.0.0 - 2017-02-19
- Initial versioned release.
[Unreleased]: https://github.com/minetest-mods/moreores/compare/v2.1.0...HEAD
[2.1.0]: https://github.com/minetest-mods/moreores/compare/v2.0.0...v2.1.0
[2.0.0]: https://github.com/minetest-mods/moreores/compare/v1.1.0...v2.0.0
[1.1.0]: https://github.com/minetest-mods/moreores/compare/v1.0.0...v1.1.0

View File

@ -0,0 +1,10 @@
# Contributing to More Ores
Thank you for your interest in More Ores! Before contributing,
be sure to know about these few guidelines:
- Contributions have to be licensed under the zlib license (or compatible)
for code, and CC BY-SA 3.0 (or compatible) for assets.
- Make sure to update the changelog, keeping the
[changelog format](http://keepachangelog.com/en/1.0.0/) we use.
- Don't bump the version yourself. Maintainers will do this when necessary.

View File

@ -0,0 +1,13 @@
# zlib license
Copyright © 2011-2020 Hugo Locurcio and contributors
**This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.**
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.

View File

@ -0,0 +1,72 @@
# More Ores
More Ores for [Minetest](https://www.minetest.net/), a free and open source infinite
world block sandbox game.
[**Forum topic**](https://forum.minetest.net/viewtopic.php?f=11&t=549)
## Installation
### Download the mod
To install More Ores, clone this Git repository into your Minetest's `mods/`
directory:
```bash
git clone https://github.com/minetest-mods/moreores.git
```
You can also
[download a ZIP archive](https://github.com/minetest-mods/moreores/archive/master.zip)
of More Ores.
### Enable the mod
Once you have installed More Ores, you need to enable it in Minetest.
The procedure is as follows:
#### Using the client's main menu
This is the easiest way to enable More Ores when playing in singleplayer
(or on a server hosted from a client).
1. Start Minetest and switch to the **Local Game** tab.
2. Select the world you want to enable More Ores in.
3. Click **Configure**, then enable `moreores` by double-clicking it
(or ticking the **Enabled** checkbox).
4. Save the changes, then start a game on the world you enabled More Ores on.
5. More Ores should now be running on your world.
#### Using a text editor
This is the recommended way to enable the mod on a server without using a GUI.
1. Make sure Minetest is not currently running (otherwise, it will overwrite
the changes when exiting).
2. Open the world's `world.mt` file using a text editor.
3. Add the following line at the end of the file:
```text
load_mod_moreores = true
```
If the line is already present in the file, then replace `false` with `true`
on that line.
4. Save the file, then start a game on the world you enabled More Ores on.
5. More Ores should now be running on your world.
## Version compatibility
More Ores is currently primarily tested with Minetest 5.1.0.
It may or may not work with newer or older versions. Issues arising in older
versions than 5.0.0 will generally not be fixed.
## License
Copyright © 2011-2020 Hugo Locurcio and contributors
- More Ores code is licensed under the zlib license, see
[`LICENSE.md`](LICENSE.md) for details.
- Unless otherwise specified, More Ores textures are licensed under
[CC BY-SA 3.0 Unported](https://creativecommons.org/licenses/by-sa/3.0/).

View File

@ -0,0 +1,102 @@
------------------------------------------------------------------------------
------------------------------ CONFIGURATION ---------------------------------
------------------------------------------------------------------------------
------------------------------------------------------------------------------
-------- Change settings by changing the values after the "=". ---------------
------------------------------------------------------------------------------
-- The higher ore generation by Moleus Ore Tweaks are not affected by these values
-- Chunk sizes for ore generation (bigger = ore deposits are more scattered around)
-- Tin
moreores.tin_chunk_size_high = 10
moreores.tin_chunk_size = 13
moreores.tin_chunk_size_deep = 10
-- Silver
moreores.silver_chunk_size_high = 11
moreores.silver_chunk_size = 13
moreores.silver_chunk_size_deep = 11
-- Mithril
moreores.mithril_chunk_size_high = 19
moreores.mithril_chunk_size = 21
moreores.mithril_chunk_size_deep = 19
-- Amount of ore per chunk (higher = bigger ore deposits)
-- Tin
moreores.tin_ore_per_chunk_high = 5
moreores.tin_ore_per_chunk = 4
moreores.tin_ore_per_chunk_deep = 5
-- Silver
moreores.silver_ore_per_chunk_high = 4
moreores.silver_ore_per_chunk = 2
moreores.silver_ore_per_chunk_deep = 4
-- Mithril
moreores.mithril_ore_per_chunk_high = 3
moreores.mithril_ore_per_chunk = 2
moreores.mithril_ore_per_chunk_deep = 4
-- Clust sizes for ore generation (bigger = ores in ore deposits are less bound together)
-- Tin
moreores.tin_clust_size_high = 3
moreores.tin_clust_size = 3
moreores.tin_clust_size_deep = 3
-- Silver
moreores.silver_clust_size_high = 3
moreores.silver_clust_size = 3
moreores.silver_clust_size_deep = 3
-- Mithril
moreores.mithril_clust_size_high = 3
moreores.mithril_clust_size = 3
moreores.mithril_clust_size_deep = 3
if minetest.get_modpath("mcl_core") then
-- Example adjustments for MineClone2
moreores.tin_max_depth_high = 0
moreores.tin_min_depth_high = -10
moreores.tin_max_depth = -11
moreores.tin_min_depth = -57
-- Similar adjustments for silver and mithril
moreores.silver_max_depth_high = 0
moreores.silver_min_depth_high = -10
moreores.silver_max_depth = -11
moreores.silver_min_depth = -57
moreores.mithril_max_depth_high = 0
moreores.mithril_min_depth_high = -20
moreores.mithril_max_depth = -21
moreores.mithril_min_depth = -57
else
-- Maximal and minimal depths of ore generation (Y coordinate, 0 being sea level by default)
-- Tin
moreores.tin_max_depth_high = 31000
moreores.tin_min_depth_high = 1025
moreores.tin_max_depth = -64 -- For v6 mapgen, -32 fits better
moreores.tin_min_depth = -127
moreores.tin_max_depth_deep = -128
moreores.tin_min_depth_deep = -31000
-- Silver
moreores.silver_max_depth_high = 31000
moreores.silver_min_depth_high = 1025
moreores.silver_max_depth = -64 -- For v6 mapgen, -32 fits better
moreores.silver_min_depth = -127 -- For v6 mapgen, -63 fits better
moreores.silver_max_depth_deep = -128 -- For v6 mapgen, -64 fits better
moreores.silver_min_depth_deep = -31000
-- Mithril
moreores.mithril_max_depth_high = 31000
moreores.mithril_min_depth_high = 2049
moreores.mithril_max_depth = -2048 -- For v6 mapgen, -256 fits better
moreores.mithril_min_depth = -4095 -- For v6 mapgen, -511 fits better
moreores.mithril_max_depth_deep = -4096 -- For v6 mapgen, -512 fits better
moreores.mithril_min_depth_deep = -31000
end

View File

@ -0,0 +1,575 @@
--[[
=====================================================================
** More Ores **
By Calinou, with the help of Nore.
Copyright © 2011-2020 Hugo Locurcio and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
=====================================================================
--]]
moreores = {}
local modpath = minetest.get_modpath("moreores")
local S = minetest.get_translator("moreores")
moreores.S = S
dofile(modpath .. "/_config.txt")
-- `mg` mapgen support
if minetest.get_modpath("mg") then
dofile(modpath .. "/mg.lua")
end
-- `frame` support
local use_frame = minetest.get_modpath("frame")
local is_mcl_core_present = minetest.get_modpath("mcl_core") ~= nil
local is_mcl_sounds_present = minetest.get_modpath("mcl_sounds") ~= nil
local is_mcl_copper_present = minetest.registered_items["mcl_copper:copper_ingot"] ~= nil
local stone_ingredient = is_mcl_core_present and "mcl_core:stone" or "default:stone"
local copper_ingredient =
is_mcl_core_present and "mcl_copper:copper_ingot" or 'default:copper_ingot'
if is_mcl_sounds_present then
local default_stone_sounds = mcl_sounds.node_sound_stone_defaults()
local default_metal_sounds = mcl_sounds.node_sound_metal_defaults()
else
local default_stone_sounds = default.node_sound_stone_defaults()
local default_metal_sounds = default.node_sound_metal_defaults()
end
-- Returns the crafting recipe table for a given material and item.
local function get_recipe(material, item)
if is_mcl_core_present then
material = material:gsub("default:", "mcl_core:")
end
if item == "sword" then
return {
{material},
{material},
{"group:stick"},
}
end
if item == "shovel" then
return {
{material},
{"group:stick"},
{"group:stick"},
}
end
if item == "axe" then
return {
{material, material},
{material, "group:stick"},
{"", "group:stick"},
}
end
if item == "pick" then
return {
{material, material, material},
{"", "group:stick", ""},
{"", "group:stick", ""},
}
end
if item == "block" then
return {
{material, material, material},
{material, material, material},
{material, material, material},
}
end
if item == "lockedchest" then
return {
{"group:wood", "group:wood", "group:wood"},
{"group:wood", material, "group:wood"},
{"group:wood", "group:wood", "group:wood"},
}
end
end
local function add_ore(modname, description, mineral_name, oredef, extra_node_def)
if mineral_name == "copper" and is_mcl_copper_present then
return
end
local img_base = modname .. "_" .. mineral_name
local toolimg_base = modname .. "_tool_"..mineral_name
local tool_base = modname .. ":"
local tool_post = "_" .. mineral_name
local item_base = tool_base .. mineral_name
local ingot = item_base .. "_ingot"
local lump_item = item_base .. "_lump"
local function merge_tables(t1, t2)
for k, v in pairs(t2) do
if type(v) == "table" and type(t1[k]) == "table" then
-- If both t1[k] and v are tables, merge them recursively
merge_tables(t1[k], v)
else
-- Otherwise, simply set the value
t1[k] = v
end
end
return t1
end
if oredef.makes.ore then
local node_def_tbl = {
description = S("@1 Ore", S(description)),
tiles = {"default_stone.png^" .. modname .. "_mineral_" .. mineral_name ..
".png"},
groups = {cracky = 2},
sounds = default_stone_sounds,
drop = lump_item,
}
if extra_node_def then
node_def_tbl = merge_tables(node_def_tbl, extra_node_def)
end
minetest.register_node(modname .. ":mineral_" .. mineral_name, node_def_tbl)
if use_frame then
frame.register(modname .. ":mineral_" .. mineral_name)
end
end
if oredef.makes.block then
local block_item = item_base .. "_block"
minetest.register_node(block_item, {
description = S("@1 Block", S(description)),
tiles = {img_base .. "_block.png"},
groups = {snappy = 1, bendy = 2, cracky = 1, melty = 2, level = 2},
is_ground_content = false,
sounds = default_metal_sounds,
})
minetest.register_alias(mineral_name.."_block", block_item)
if oredef.makes.ingot then
minetest.register_craft( {
output = block_item,
recipe = get_recipe(ingot, "block")
})
minetest.register_craft( {
output = ingot .. " 9",
recipe = {
{block_item},
}
})
end
if use_frame then
frame.register(block_item)
end
end
if oredef.makes.lump then
minetest.register_craftitem(lump_item, {
description = S("@1 Lump", S(description)),
inventory_image = img_base .. "_lump.png",
})
minetest.register_alias(mineral_name .. "_lump", lump_item)
if oredef.makes.ingot then
minetest.register_craft({
type = "cooking",
output = ingot,
recipe = lump_item,
})
end
if use_frame then
frame.register(lump_item)
end
end
if oredef.makes.ingot then
minetest.register_craftitem(ingot, {
description = S("@1 Ingot", S(description)),
inventory_image = img_base .. "_ingot.png",
})
minetest.register_alias(mineral_name .. "_ingot", ingot)
if use_frame then
frame.register(ingot)
end
end
if oredef.makes.chest then
if not is_mcl_core_present then
minetest.register_craft( {
output = "default:chest_locked",
recipe = {
{ingot},
{"default:chest"},
}
})
minetest.register_craft( {
output = "default:chest_locked",
recipe = get_recipe(ingot, "lockedchest")
})
end
end
oredef.oredef_high.ore_type = "scatter"
oredef.oredef_high.ore = modname .. ":mineral_" .. mineral_name
oredef.oredef_high.wherein = stone_ingredient
oredef.oredef.ore_type = "scatter"
oredef.oredef.ore = modname .. ":mineral_" .. mineral_name
oredef.oredef.wherein = stone_ingredient
oredef.oredef_deep.ore_type = "scatter"
oredef.oredef_deep.ore = modname .. ":mineral_" .. mineral_name
oredef.oredef_deep.wherein = stone_ingredient
minetest.register_ore(oredef.oredef_high)
minetest.register_ore(oredef.oredef)
minetest.register_ore(oredef.oredef_deep)
for tool_name, tooldef in pairs(oredef.tools) do
local tdef = {
description = "",
inventory_image = toolimg_base .. tool_name .. ".png",
tool_capabilities = {
max_drop_level = 3,
groupcaps = tooldef.groupcaps,
damage_groups = tooldef.damage_groups,
full_punch_interval = oredef.full_punch_interval,
},
sound = {breaks = "default_tool_breaks"},
_repair_material = ingot,
_mcl_toollike_wield = true,
mcl_diggroups = tooldef._mcl_diggroups,
groups = tooldef.groups,
}
if tool_name == "sword" then
tdef.description = S("@1 Sword", S(description))
if tdef.groups then
tdef.groups = merge_tables(tdef.groups, {sword = 1})
else
tdef.groups = {sword = 1}
end
end
if tool_name == "pick" then
tdef.description = S("@1 Pickaxe", S(description))
if tdef.groups then
tdef.groups = merge_tables(tdef.groups, {pickaxe = 1, tool=1})
else
tdef.groups = {pickaxe = 1, tool=1}
end
end
if tool_name == "axe" then
tdef.description = S("@1 Axe", S(description))
if tdef.groups then
tdef.groups = merge_tables(tdef.groups, {axe = 1, tool=1})
else
tdef.groups = {axe = 1, tool=1}
end
end
if tool_name == "shovel" then
tdef.description = S("@1 Shovel", S(description))
if tdef.groups then
tdef.groups = merge_tables(tdef.groups, {shovel = 1, tool=1})
else
tdef.groups = {shovel = 1, tool=1}
end
tdef.wield_image = toolimg_base .. tool_name .. ".png^[transformR90"
end
local fulltool_name = tool_base .. tool_name .. tool_post
if tool_name == "hoe" and minetest.get_modpath("farming") then
tdef.max_uses = tooldef.max_uses
tdef.material = ingot
tdef.description = S("@1 Hoe", S(description))
farming.register_hoe(fulltool_name, tdef)
end
-- Hoe registration is handled above.
-- There are no crafting recipes for hoes, as they have been
-- deprecated from Minetest Game:
-- https://github.com/minetest/minetest_game/commit/9c459e77a
if tool_name ~= "hoe" then
minetest.register_tool(fulltool_name, tdef)
if oredef.makes.ingot then
minetest.register_craft({
output = fulltool_name,
recipe = get_recipe(ingot, tool_name)
})
end
end
-- Toolranks support
if minetest.get_modpath("toolranks") then
minetest.override_item(fulltool_name, {
original_description = tdef.description,
description = toolranks.create_description(tdef.description, 0, 1),
after_use = toolranks.new_afteruse})
end
minetest.register_alias(tool_name .. tool_post, fulltool_name)
if use_frame then
frame.register(fulltool_name)
end
end
end
local oredefs = {
silver = {
description = "Silver",
makes = {ore = true, block = true, lump = true, ingot = true, chest = true},
oredef_high= {
clust_scarcity = moreores.silver_chunk_size_high ^ 3,
clust_num_ores = moreores.silver_ore_per_chunk_high,
clust_size = moreores.silver_clust_size_high,
y_min = moreores.silver_min_depth_high,
y_max = moreores.silver_max_depth_high,
},
oredef = {
clust_scarcity = moreores.silver_chunk_size ^ 3,
clust_num_ores = moreores.silver_ore_per_chunk,
clust_size = moreores.silver_clust_size,
y_min = moreores.silver_min_depth,
y_max = moreores.silver_max_depth,
},
oredef_deep = {
clust_scarcity = moreores.silver_chunk_size_deep ^ 3,
clust_num_ores = moreores.silver_ore_per_chunk_deep,
clust_size = moreores.silver_clust_size_deep,
y_min = moreores.silver_min_depth_deep,
y_max = moreores.silver_max_depth_deep,
},
tools = {
pick = {
groupcaps = {
cracky = {times = {[1] = 2.60, [2] = 1.00, [3] = 0.60}, uses = 100, maxlevel = 1},
},
damage_groups = {fleshy = 4},
groups = {dig_speed_class=4, enchantability=14},
_mcl_diggroups = {
pickaxey = { speed = 6, level = 4, uses = 126 }
},
},
hoe = {
max_uses = 150,
},
shovel = {
groupcaps = {
crumbly = {times = {[1] = 1.10, [2] = 0.40, [3] = 0.25}, uses = 100, maxlevel = 1},
},
damage_groups = {fleshy = 3},
groups = {dig_speed_class=4, enchantability=14},
_mcl_diggroups = {
shovely = { speed = 6, level = 4, uses = 126 }
},
},
axe = {
groupcaps = {
choppy = {times = {[1] = 2.50, [2] = 0.80, [3] = 0.50}, uses = 100, maxlevel = 1},
fleshy = {times = {[2] = 1.10, [3] = 0.60}, uses = 100, maxlevel = 1},
},
damage_groups = {fleshy = 5},
groups = {dig_speed_class=4, enchantability=14},
_mcl_diggroups = {
axey = { speed = 6, level = 4, uses = 126 }
},
},
sword = {
groupcaps = {
fleshy = {times = {[2] = 0.70, [3] = 0.30}, uses = 100, maxlevel = 1},
snappy = {times = {[1] = 1.70, [2] = 0.70, [3] = 0.30}, uses = 100, maxlevel = 1},
choppy = {times = {[3] = 0.80}, uses = 100, maxlevel = 0},
},
damage_groups = {fleshy = 6},
_mcl_diggroups = {
swordy = { speed = 6, level = 4, uses = 126 },
swordy_cobweb = { speed = 6, level = 4, uses = 126 }
},
},
},
full_punch_interval = 1.0,
extra_node_def = {
_mcl_blast_resistance = 3,
_mcl_hardness = 4,
_mcl_silk_touch_drop = true,
groups = {pickaxey = 4}
}
},
mithril = {
description = "Mithril",
makes = {ore = true, block = true, lump = true, ingot = true, chest = false},
oredef_high = {
clust_scarcity = moreores.mithril_chunk_size_high ^ 3,
clust_num_ores = moreores.mithril_ore_per_chunk_high,
clust_size = moreores.mithril_clust_size_high,
y_min = moreores.mithril_min_depth_high,
y_max = moreores.mithril_max_depth_high,
},
oredef = {
clust_scarcity = moreores.mithril_chunk_size ^ 3,
clust_num_ores = moreores.mithril_ore_per_chunk,
clust_size = moreores.mithril_clust_size,
y_min = moreores.mithril_min_depth,
y_max = moreores.mithril_max_depth,
},
oredef_deep = {
clust_scarcity = moreores.mithril_chunk_size_deep ^ 3,
clust_num_ores = moreores.mithril_ore_per_chunk_deep,
clust_size = moreores.mithril_clust_size_deep,
y_min = moreores.mithril_min_depth_deep,
y_max = moreores.mithril_max_depth_deep,
},
tools = {
pick = {
groupcaps = {
cracky = {times = {[1] = 2.60, [2] = 1.00, [3] = 0.60}, uses = 3126, maxlevel = 3},
},
damage_groups = {fleshy = 6},
groups = {dig_speed_class=5, enchantability=10},
_mcl_diggroups = {
pickaxey = { speed = 8, level = 5, uses = 3126 }
},
},
hoe = {
max_uses = 2000,
},
shovel = {
groupcaps = {
crumbly = {times = {[1] = 1.10, [2] = 0.40, [3] = 0.25}, uses = 3126, maxlevel = 3},
},
damage_groups = {fleshy = 6},
groups = {dig_speed_class=5, enchantability=10},
_mcl_diggroups = {
shovely = { speed = 8, level = 5, uses = 3126 }
},
},
axe = {
groupcaps = {
choppy = {times = {[1] = 2.50, [2] = 0.80, [3] = 0.50}, uses = 3126, maxlevel = 3},
fleshy = {times = {[2] = 1.10, [3] = 0.60}, uses = 3126, maxlevel = 3},
},
damage_groups = {fleshy = 10},
groups = {dig_speed_class=5, enchantability=10},
_mcl_diggroups = {
axey = { speed = 8, level = 5, uses = 3126 }
},
},
sword = {
groupcaps = {
fleshy = {times = {[2] = 0.70, [3] = 0.30}, uses = 3126, maxlevel = 3},
snappy = {times = {[1] = 1.70, [2] = 0.70, [3] = 0.30}, uses = 3126, maxlevel = 3},
choppy = {times = {[3] = 0.80}, uses = 3126, maxlevel = 0},
},
damage_groups = {fleshy = 7},
_mcl_diggroups = {
swordy = { speed = 8, level = 5, uses = 3126 },
swordy_cobweb = { speed = 8, level = 5, uses = 3126 }
},
},
},
full_punch_interval = 0.45,
extra_node_def = {
_mcl_blast_resistance = 3,
_mcl_hardness = 5,
_mcl_silk_touch_drop = true,
groups = {pickaxey = 5}
},
}
}
-- If tin is available in the `default` mod, don't register More Ores' variant of tin
local default_tin
if minetest.registered_items["default:tin_ingot"] then
default_tin = true
else
default_tin = false
end
if default_tin then
minetest.register_alias("moreores:mineral_tin", "default:stone_with_tin")
minetest.register_alias("moreores:tin_lump", "default:tin_lump")
minetest.register_alias("moreores:tin_ingot", "default:tin_ingot")
minetest.register_alias("moreores:tin_block", "default:tinblock")
else
oredefs.tin = {
description = "Tin",
makes = {ore = true, block = true, lump = true, ingot = true, chest = false},
oredef_high = {
clust_scarcity = moreores.tin_chunk_size_high ^ 3,
clust_num_ores = moreores.tin_ore_per_chunk_high,
clust_size = moreores.tin_clust_size_high,
y_min = moreores.tin_min_depth_high,
y_max = moreores.tin_max_depth_high,
},
oredef = {
clust_scarcity = moreores.tin_chunk_size ^ 3,
clust_num_ores = moreores.tin_ore_per_chunk,
clust_size = moreores.tin_clust_size,
y_min = moreores.tin_min_depth,
y_max = moreores.tin_max_depth,
},
oredef_deep = {
clust_scarcity = moreores.tin_chunk_size_deep ^ 3,
clust_num_ores = moreores.tin_ore_per_chunk_deep,
clust_size = moreores.tin_clust_size_deep,
y_min = moreores.tin_min_depth_deep,
y_max = moreores.tin_max_depth_deep,
},
tools = {},
extra_node_def = {
_mcl_blast_resistance = 3,
_mcl_hardness = 3,
_mcl_silk_touch_drop = true,
groups = {pickaxey = 3}
},
}
-- Bronze has some special cases, because it is made from copper and tin
minetest.register_craft({
type = "shapeless",
output = "default:bronze_ingot 3",
recipe = {
"moreores:tin_ingot",
copper_ingredient,
copper_ingredient,
},
})
end
-- Copper rail (unique node)
if minetest.get_modpath("carts") then
carts:register_rail("moreores:copper_rail", {
description = S("Copper Rail"),
tiles = {
"moreores_copper_rail.png",
"moreores_copper_rail_curved.png",
"moreores_copper_rail_t_junction.png",
"moreores_copper_rail_crossing.png",
},
inventory_image = "moreores_copper_rail.png",
wield_image = "moreores_copper_rail.png",
groups = carts:get_rail_groups(),
}, {})
end
minetest.register_craft({
output = "moreores:copper_rail 24",
recipe = {
{copper_ingredient, "", copper_ingredient},
{copper_ingredient, "group:stick", copper_ingredient},
{copper_ingredient, "", copper_ingredient},
},
})
for orename, def in pairs(oredefs) do
-- Register everything
add_ore("moreores", def.description, orename, def, def.extra_node_def)
end

View File

@ -0,0 +1,20 @@
# textdomain: moreores
# Translation by Xanthin
@1 Ore=@1erz
@1 Lump=@1klumpen
@1 Ingot=@1barren
@1 Block=@1block
@1 Pickaxe=@1spitzhacke
@1 Shovel=@1schaufel
@1 Axe=@1axt
@1 Sword=@1schwert
Copper=Kupfer
Tin=Zinn
Bronze=Bronze
Silver=Silber
Gold=Gold
Mithril=Mithril
Copper Rail=Kupferschiene

View File

@ -0,0 +1,20 @@
# textdomain: moreores
# Translation by kaeza
@1 Ore=Mineral de @1
@1 Lump=Pepita de @1
@1 Ingot=Lingote de @1
@1 Block=Bloque de @1
@1 Pickaxe=Pico de @1
@1 Shovel=Pala de @1
@1 Axe=Hacha de @1
@1 Sword=Espada de @1
Copper=Cobre
Tin=Estaño
Bronze=Bronce
Silver=Plata
Gold=Oro
Mithril=Mitrilo
Copper Rail=Riel de Cobre

View File

@ -0,0 +1,21 @@
# textdomain: moreores
# Translation by Calinou
@1 Ore=Minerai en @1
@1 Lump=Roche en @1
@1 Ingot=Lingot en @1
@1 Block=Bloc en @1
@1 Pickaxe=Pioche en @1
@1 Shovel=Pelle en @1
@1 Axe=Hache en @1
@1 Sword=Épée en @1
@1 Hoe=Houe en @1
Copper=cuivre
Tin=étain
Bronze=bronze
Silver=argent
Gold=or
Mithril=mithril
Copper Rail=Rail en cuivre

View File

@ -0,0 +1,20 @@
# textdomain: moreores
# Translation by An0n3m0us
@1 Ore=@1 érc
@1 Lump=@1 rög
@1 Ingot=@1 öntvény
@1 Block=@1 blokk
@1 Pickaxe=@1 csákány
@1 Shovel=@1 ásó
@1 Axe=@1 fejsze
@1 Sword=@1 kard
Copper=Réz
Tin=Ón
Bronze=Bronz
Silver=Ezüst
Gold=Arany
Mithril=Mithril
Copper Rail=Réz sín

View File

@ -0,0 +1,20 @@
# textdomain: moreores
# Translation by Pagliaccio
@1 Ore=Minerale di @1
@1 Lump=@1 grezzo
@1 Ingot=Lingotto di @1
@1 Block=Blocco di @1
@1 Pickaxe=Piccone di @1
@1 Shovel=Badile di @1
@1 Axe=Ascia di @1
@1 Sword=Spada di @1
Copper=Rame
Tin=Stagno
Bronze=Bronzo
Silver=Argento
Gold=Oro
Mithril=Mithril
Copper Rail=Binario di rame

View File

@ -0,0 +1,17 @@
# textdomain: moreores
@1 Ore=@1 Erts
@1 Lump=@1 Klomp
@1 Ingot=@1 Staaf
@1 Block=@1 Blok
@1 Pickaxe=@1 Pikhouweel
@1 Shovel=@1 Schep
@1 Axe=@1 Bijl
@1 Sword=@1 Zwaard
Copper=Koper
Tin=Tin
Bronze=Brons
Silver=Silver
Gold=Goud
Mithril=Mithril

View File

@ -0,0 +1,20 @@
# textdomain: moreores
# Translation by mat9117
@1 Ore=@1 Ruda
@1 Lump=@1 Bryłka
@1 Ingot=@1 Sztabka
@1 Block=@1 Blok
@1 Pickaxe=@1 Kilof
@1 Shovel=@1 Łopatka
@1 Axe=@1 Siekiera
@1 Sword=@1 Miecz
Copper=Miedź
Tin=Cyna
Bronze=Brąz
Silver=Srebro
Gold=Złoto
Mithril=Mithril
Copper Rail=Miedziany tor

View File

@ -0,0 +1,21 @@
# textdomain: moreores
# Translation by github.com/caiorrs
@1 Ore=Minério de @1
@1 Lump=Pepita de @1
@1 Ingot=Lingote de @1
@1 Block=Bloco de @1
@1 Pickaxe=Picareta de @1
@1 Shovel=Pá de @1
@1 Axe=Machado de @1
@1 Sword=Espada de @1
Copper=Cobre
Tin=Estanho
Bronze=Bronze
Silver=Prata
Gold=Ouro
Mithril=Mitrilo
Copper Rail=Trilho de Cobre

View File

@ -0,0 +1,26 @@
# textdomain: moreores
# Translation by Mahmutelmas06
# mahmutelmas06@hotmail.com
# Türkçe Çeviri
# Turkish translation
# Language 2 letter iso code is "tr"
@1 Ore=@1 madeni
@1 Lump=@1 yığını
@1 Ingot=@1 külçesi
@1 Block=@1 blok
@1 Pickaxe=@1 kazma
@1 Shovel=@1 kürek
@1 Axe=@1 balta
@1 Sword=@1 kılıç
Copper=Bakır
Tin=Kalay
Bronze=Bronz
Silver=Gümüş
Gold=Altın
Mithril=Mithril
Copper Rail=Bakır ray

View File

@ -0,0 +1,18 @@
# textdomain: moreores
@1 Ore=
@1 Lump=
@1 Ingot=
@1 Block=
@1 Pickaxe=
@1 Shovel=
@1 Axe=
@1 Sword=
Copper=
Tin=
Bronze=
Silver=
Gold=
Mithril=
Copper Rail=

View File

@ -0,0 +1,55 @@
--[[
More Ores: `mg` mod support
Copyright © 2011-2020 Hugo Locurcio and contributors.
Licensed under the zlib license. See LICENSE.md for more information.
--]]
if not minetest.registered_items["default:tin_ingot"] then
mg.register_ore({
name = "moreores:mineral_tin",
wherein = "default:stone",
seeddiff = 8,
maxvdistance = 10.5,
maxheight = 8,
seglenghtn = 15,
seglenghtdev = 6,
segincln = 0,
segincldev = 0.6,
turnangle = 57,
forkturnangle = 57,
numperblock = 2
})
end
mg.register_ore({
name = "moreores:mineral_silver",
wherein = "default:stone",
seeddiff = 9,
maxvdistance = 10.5,
maxheight = -2,
seglenghtn = 15,
seglenghtdev = 6,
sizen = 60,
sizedev = 30,
segincln = 0,
segincldev = 0.6,
turnangle = 57,
forkturnangle = 57,
numperblock = 2
})
mg.register_ore({
name = "moreores:mineral_mithril",
wherein = "default:stone",
seeddiff = 10,
maxvdistance = 10.5,
maxheight = -512,
seglenghtn = 2,
seglenghtdev = 4,
sizen = 12,
sizedev = 5,
segincln = 0,
segincldev = 0.6,
turnangle = 57,
})

View File

@ -0,0 +1,6 @@
name = moreores
title = Silver + Mithril (moreores)
description = Adds Silver and Mithril, and their tool sets. Armor sets are added in 3d_armor.
optional_depends = carts,farming,frame,mg,toolranks,mcl_core,mcl_sounds
min_minetest_version = 5.0.0
supported_games = mineclone2,mineclonia,minetest_game

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 B

View File

@ -1,2 +0,0 @@
name = orefix
depends = default