MASSIVE node sound rework

This commit is contained in:
Wuzzy 2023-03-01 13:19:07 +01:00
parent fe25238116
commit 8fcdf948d0
204 changed files with 370 additions and 71 deletions

View File

@ -65,6 +65,12 @@ Pixture was inspired by [Kenney](http://kenney.nl).
* All textures/models by Kaadmy, with some additions/changes by Wuzzy (CC BY-SA 4.0) * All textures/models by Kaadmy, with some additions/changes by Wuzzy (CC BY-SA 4.0)
* Exception: Seagrass by jp (CC0) * Exception: Seagrass by jp (CC0)
### Sounds
* Various authors
* See the individual README files in the mods for details
* Note: All sounds are compatible with CC BY-SA 4.0
### Special thanks ### Special thanks
* [Kenney](http://kenney.nl) for the inspiration, most of the aesthetic. * [Kenney](http://kenney.nl) for the inspiration, most of the aesthetic.

View File

@ -13,7 +13,7 @@ minetest.register_node(
tiles ={"mobs_wool.png"}, tiles ={"mobs_wool.png"},
is_ground_content = false, is_ground_content = false,
groups = {snappy = 2, oddly_breakable_by_hand = 3, fall_damage_add_percent = -25, fuzzy = 1, unmagnetic = 1}, groups = {snappy = 2, oddly_breakable_by_hand = 3, fall_damage_add_percent = -25, fuzzy = 1, unmagnetic = 1},
sounds = rp_sounds.node_sound_leaves_defaults(), sounds = rp_sounds.node_sound_fuzzy_defaults(),
}) })
-- Raw meat -- Raw meat

View File

@ -468,7 +468,9 @@ minetest.register_node(
use_texture_alpha = "clip", use_texture_alpha = "clip",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 1, fall_damage_add_percent = -15, creative_decoblock = 1, interactive_node = 1 }, groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 1, fall_damage_add_percent = -15, creative_decoblock = 1, interactive_node = 1 },
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_wood_defaults({
footstep = {name="rp_sounds_footstep_fuzzy", gain=0.7},
}),
node_box = { node_box = {
type = "fixed", type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 2/16, 0.5} fixed = {-0.5, -0.5, -0.5, 0.5, 2/16, 0.5}
@ -640,7 +642,9 @@ minetest.register_node(
tiles = {"bed_head.png", "default_wood.png", "bed_side.png"}, tiles = {"bed_head.png", "default_wood.png", "bed_side.png"},
use_texture_alpha = "clip", use_texture_alpha = "clip",
groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 1, fall_damage_add_percent = -15, not_in_creative_inventory = 1 }, groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 1, fall_damage_add_percent = -15, not_in_creative_inventory = 1 },
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_wood_defaults({
footstep = {name="rp_sounds_footstep_fuzzy", gain=0.7},
}),
node_box = { node_box = {
type = "fixed", type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 2/16, 0.5} fixed = {-0.5, -0.5, -0.5, 0.5, 2/16, 0.5}

View File

@ -10,20 +10,52 @@ See `API.md`
## Licensing ## Licensing
Sound licenses: Note: The "*" character in the file names below is a placeholder
that stands for any sequence of characters.
### Sound licenses
Overall license: CC BY 3.0
File credits and individual file licenses:
* default_shears_cut.ogg: * default_shears_cut.ogg:
* Source: https://freesound.org/people/SmartWentCody/sounds/179015/ * Source: https://freesound.org/people/SmartWentCody/sounds/179015/
* Author: SmartWentCody (CC BY 3.0) * Author: SmartWentCody (CC BY 3.0)
* default_tool_breaks.ogg: * default_tool_breaks.ogg:
* Source: https://freesound.org/people/JustInvoke/sounds/446118/ * Source: https://freesound.org/people/JustInvoke/sounds/446118/
* Author: JustInvoke (CC BY 3.0) * Author: JustInvoke (CC BY 3.0)
* rp_default_footstep_cactus.*.ogg
* rp_default_dig_cactus.*.ogg
* rp_default_footstep_alga.*.ogg
* rp_default_dig_alga.*.ogg
* rp_default_dug_alga.*.ogg
* rp_default_place_alga.*.ogg
* rp_default_footstep_coal.*.ogg
* rp_default_dig_coal.*.ogg
* rp_default_dug_coal.*.ogg
* rp_default_dig_hay.*.ogg
* rp_default_place_hay.*.ogg
* rp_default_footstep_hay.*.ogg
* rp_default_fertilize.*.ogg
* Author: Wuzzy (CC0)
* All other sounds: CC0 * All other sounds: CC0
Texture license: CC BY-SA 4.0
### Texture license
Overall license: CC BY-SA 4.0
File credits:
* rp_default_reed*, rp_default_fertilize_particle*, rp_default_torch_smoke_anim.png: * rp_default_reed*, rp_default_fertilize_particle*, rp_default_torch_smoke_anim.png:
* Author: Wuzzy * Author: Wuzzy
* rp_default_sea_grass*, rp_default_tall_sea_grass*: * rp_default_sea_grass*, rp_default_tall_sea_grass*:
* Author: kilbith (with some modifications by Wuzzy) * Author: kilbith (with some modifications by Wuzzy)
* Everything else * Everything else
* Author: Kaadmy * Author: Kaadmy
Source license: LGPLv2.1
- Fence code based on Minetest Game 5.5.0 ### Source code license
Source code license: LGPLv2.1.
Note: Fence code based on Minetest Game 5.5.0

View File

@ -46,7 +46,7 @@ minetest.register_node(
not_in_craft_guide = 1, not_in_craft_guide = 1,
}, },
drop = "rp_default:dry_dirt", drop = "rp_default:dry_dirt",
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_dry_dirt_defaults(),
}) })
minetest.register_node( minetest.register_node(
@ -69,7 +69,7 @@ minetest.register_node(
not_in_craft_guide = 1, not_in_craft_guide = 1,
}, },
drop = "rp_default:swamp_dirt", drop = "rp_default:swamp_dirt",
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_swamp_dirt_defaults(),
}) })
minetest.register_node( minetest.register_node(

View File

@ -39,5 +39,8 @@ minetest.register_node(
}, },
groups = {snappy = 2, choppy = 2, creative_decoblock = 1, oddly_breakable_by_hand = 3}, groups = {snappy = 2, choppy = 2, creative_decoblock = 1, oddly_breakable_by_hand = 3},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_wood_defaults({
footstep = { name = "rp_sounds_footstep_wood", gain = 0.5, pitch = 1.2 },
dig = { name = "rp_sounds_dig_wood", gain = 0.5, pitch = 1.2 },
}),
}) })

View File

@ -117,7 +117,11 @@ minetest.register_node(
description = S("Coal Block"), description = S("Coal Block"),
tiles = {"default_block_coal.png"}, tiles = {"default_block_coal.png"},
groups = {cracky = 3}, groups = {cracky = 3},
sounds = rp_sounds.node_sound_stone_defaults(), sounds = rp_sounds.node_sound_stone_defaults({
footstep = { name = "rp_default_footstep_coal", gain = 0.15 },
dig = { name = "rp_default_dig_coal", gain = 0.5 },
dug = { name = "rp_default_dug_coal", gain = 0.9 },
}),
}) })
minetest.register_node( minetest.register_node(
@ -200,7 +204,7 @@ minetest.register_node(
tiles = {"default_dry_dirt.png"}, tiles = {"default_dry_dirt.png"},
stack_max = 240, stack_max = 240,
groups = {crumbly = 3, soil = 1, dirt = 1, dry_dirt = 1, plantable_dry = 1, fall_damage_add_percent = -10}, groups = {crumbly = 3, soil = 1, dirt = 1, dry_dirt = 1, plantable_dry = 1, fall_damage_add_percent = -10},
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_dry_dirt_defaults(),
_fertilized_node = "rp_default:fertilized_dry_dirt", _fertilized_node = "rp_default:fertilized_dry_dirt",
}) })
@ -211,7 +215,7 @@ minetest.register_node(
tiles = {"default_swamp_dirt.png"}, tiles = {"default_swamp_dirt.png"},
stack_max = 240, stack_max = 240,
groups = {crumbly = 3, soil = 1, dirt = 1, swamp_dirt = 1, plantable_wet = 1, fall_damage_add_percent = -10}, groups = {crumbly = 3, soil = 1, dirt = 1, swamp_dirt = 1, plantable_wet = 1, fall_damage_add_percent = -10},
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_swamp_dirt_defaults(),
_fertilized_node = "rp_default:fertilized_swamp_dirt", _fertilized_node = "rp_default:fertilized_swamp_dirt",
}) })
@ -235,7 +239,9 @@ minetest.register_node(
{items = {"rp_default:dry_grass 1"}, rarity = 2}, {items = {"rp_default:dry_grass 1"}, rarity = 2},
} }
}, },
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_dirt_defaults({
footstep = { name = "rp_sounds_footstep_grass", gain = 1.0 },
}),
_fertilized_node = "rp_default:fertilized_dirt", _fertilized_node = "rp_default:fertilized_dirt",
}) })
@ -259,7 +265,9 @@ minetest.register_node(
{items = {"rp_default:swamp_grass 2"}, rarity = 3}, {items = {"rp_default:swamp_grass 2"}, rarity = 3},
} }
}, },
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_swamp_dirt_defaults({
footstep = { name = "rp_sounds_footstep_swamp_grass", gain = 1.0 },
}),
_fertilized_node = "rp_default:fertilized_swamp_dirt", _fertilized_node = "rp_default:fertilized_swamp_dirt",
}) })
@ -284,7 +292,9 @@ minetest.register_node(
{items = {"rp_default:grass 1"}, rarity = 3}, {items = {"rp_default:grass 1"}, rarity = 3},
} }
}, },
sounds = rp_sounds.node_sound_dirt_defaults(), sounds = rp_sounds.node_sound_dirt_defaults({
footstep = { name = "rp_sounds_footstep_grass", gain = 1.0 },
}),
_fertilized_node = "rp_default:fertilized_dirt", _fertilized_node = "rp_default:fertilized_dirt",
}) })
@ -443,7 +453,7 @@ minetest.register_node(
tiles = {"default_wood.png"}, tiles = {"default_wood.png"},
groups = {planks = 1, wood = 1, snappy = 3, choppy = 3, oddly_breakable_by_hand = 3}, groups = {planks = 1, wood = 1, snappy = 3, choppy = 3, oddly_breakable_by_hand = 3},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_planks_defaults(),
}) })
minetest.register_node( minetest.register_node(
@ -453,7 +463,7 @@ minetest.register_node(
tiles = {"default_wood_oak.png"}, tiles = {"default_wood_oak.png"},
groups = {planks = 1, wood = 1, snappy = 2, choppy = 2, oddly_breakable_by_hand = 3}, groups = {planks = 1, wood = 1, snappy = 2, choppy = 2, oddly_breakable_by_hand = 3},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_planks_defaults(),
}) })
minetest.register_node( minetest.register_node(
@ -463,7 +473,7 @@ minetest.register_node(
tiles = {"default_wood_birch.png"}, tiles = {"default_wood_birch.png"},
groups = {planks = 1, wood = 1, snappy = 2, choppy = 2, oddly_breakable_by_hand = 2}, groups = {planks = 1, wood = 1, snappy = 2, choppy = 2, oddly_breakable_by_hand = 2},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_planks_defaults(),
}) })
-- Frames -- Frames
@ -475,7 +485,7 @@ minetest.register_node(
tiles = {"default_frame.png"}, tiles = {"default_frame.png"},
groups = {wood = 1, choppy = 2, oddly_breakable_by_hand = 1}, groups = {wood = 1, choppy = 2, oddly_breakable_by_hand = 1},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_planks_defaults(),
}) })
minetest.register_node( minetest.register_node(
@ -485,7 +495,7 @@ minetest.register_node(
tiles = {"default_reinforced_frame.png"}, tiles = {"default_reinforced_frame.png"},
groups = {wood = 1, choppy = 1}, groups = {wood = 1, choppy = 1},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_planks_defaults(),
}) })
-- Reed -- Reed
@ -500,7 +510,7 @@ minetest.register_node(
}, },
groups = {snappy=2, fall_damage_add_percent=-10}, groups = {snappy=2, fall_damage_add_percent=-10},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_leaves_defaults(), sounds = rp_sounds.node_sound_grass_defaults(),
}) })
minetest.register_node( minetest.register_node(
"rp_default:dried_reed_block", "rp_default:dried_reed_block",
@ -513,7 +523,7 @@ minetest.register_node(
}, },
groups = {snappy=2, fall_damage_add_percent=-15}, groups = {snappy=2, fall_damage_add_percent=-15},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_leaves_defaults(), sounds = rp_sounds.node_sound_straw_defaults(),
}) })
-- Hay -- Hay
@ -526,7 +536,12 @@ minetest.register_node(
}, },
groups = {snappy=3, fall_damage_add_percent=-30}, groups = {snappy=3, fall_damage_add_percent=-30},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_grass_defaults(), sounds = rp_sounds.node_sound_grass_defaults({
footstep = { name = "rp_default_footstep_hay", gain = 1.0 },
place = { name = "rp_default_place_hay", gain = 1.0 },
dig = { name = "rp_default_dig_hay", gain = 0.5 },
dug = { name = "rp_default_dig_hay", gain = 1.0, pitch = 0.8 },
}),
}) })
-- Rope -- Rope

View File

@ -29,7 +29,11 @@ minetest.register_node(
tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_sides.png"}, tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_sides.png"},
-- damage_per_second = 1, -- damage_per_second = 1,
groups = {snappy = 2, choppy = 2, fall_damage_add_percent = 20, plant = 1, food = 2}, groups = {snappy = 2, choppy = 2, fall_damage_add_percent = 20, plant = 1, food = 2},
sounds = rp_sounds.node_sound_wood_defaults(), sounds = rp_sounds.node_sound_defaults({
footstep = { name = "rp_default_footstep_cactus", gain = 1.0 },
dig = { name = "rp_default_dig_cactus", gain = 0.5 },
dug = { name = "rp_default_dig_cactus", gain = 0.7, pitch = 0.9 },
}),
after_dig_node = function(pos, node, metadata, digger) after_dig_node = function(pos, node, metadata, digger)
util.dig_up(pos, node, digger) util.dig_up(pos, node, digger)
end, end,
@ -229,7 +233,9 @@ minetest.register_node(
buildable_to = true, buildable_to = true,
floodable = true, floodable = true,
groups = {snappy = 2, dig_immediate = 3, attached_node = 1, grass = 1, swamp_grass = 1, green_grass = 1, plant = 1, spawn_allowed_in = 1}, groups = {snappy = 2, dig_immediate = 3, attached_node = 1, grass = 1, swamp_grass = 1, green_grass = 1, plant = 1, spawn_allowed_in = 1},
sounds = rp_sounds.node_sound_grass_defaults(), sounds = rp_sounds.node_sound_grass_defaults({
footstep = { name = "rp_sounds_footstep_swamp_grass", gain = 1.0 },
}),
}) })
minetest.register_node( minetest.register_node(

View File

@ -125,6 +125,10 @@ minetest.register_node(
on_place = default.place_sapling, on_place = default.place_sapling,
}) })
local snd_tree = rp_sounds.node_sound_wood_defaults({
footstep = { name = "rp_sounds_footstep_wood", gain = 0.7, pitch = 0.8 },
})
-- Trees -- Trees
minetest.register_node( minetest.register_node(
@ -133,7 +137,7 @@ minetest.register_node(
description = S("Tree"), description = S("Tree"),
tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"}, tiles = {"default_tree_top.png", "default_tree_top.png", "default_tree.png"},
groups = {choppy = 2,tree = 1,oddly_breakable_by_hand = 1}, groups = {choppy = 2,tree = 1,oddly_breakable_by_hand = 1},
sounds = rp_sounds.node_sound_wood_defaults(), sounds = snd_tree,
}) })
minetest.register_node( minetest.register_node(
@ -142,7 +146,7 @@ minetest.register_node(
description = S("Oak Tree"), description = S("Oak Tree"),
tiles = {"default_tree_oak_top.png", "default_tree_oak_top.png", "default_tree_oak.png"}, tiles = {"default_tree_oak_top.png", "default_tree_oak_top.png", "default_tree_oak.png"},
groups = {choppy = 2, tree = 1, oddly_breakable_by_hand = 1}, groups = {choppy = 2, tree = 1, oddly_breakable_by_hand = 1},
sounds = rp_sounds.node_sound_wood_defaults(), sounds = snd_tree,
}) })
minetest.register_node( minetest.register_node(
@ -151,7 +155,7 @@ minetest.register_node(
description = S("Birch Tree"), description = S("Birch Tree"),
tiles = {"default_tree_birch_top.png", "default_tree_birch_top.png", "default_tree_birch.png"}, tiles = {"default_tree_birch_top.png", "default_tree_birch_top.png", "default_tree_birch.png"},
groups = {choppy = 2, tree = 1, oddly_breakable_by_hand = 1}, groups = {choppy = 2, tree = 1, oddly_breakable_by_hand = 1},
sounds = rp_sounds.node_sound_wood_defaults(), sounds = snd_tree,
}) })
-- Leaves -- Leaves

View File

@ -356,7 +356,12 @@ minetest.register_node(
tiles = alga_block_tiles, tiles = alga_block_tiles,
groups = {snappy=2, fall_damage_add_percent=-10, slippery=ALGA_BLOCK_SLIPPERY}, groups = {snappy=2, fall_damage_add_percent=-10, slippery=ALGA_BLOCK_SLIPPERY},
is_ground_content = false, is_ground_content = false,
sounds = rp_sounds.node_sound_grass_defaults(), sounds = rp_sounds.node_sound_grass_defaults({
footstep = {name="rp_default_footstep_alga", gain=0.3},
dig = {name="rp_default_dig_alga", gain=0.3},
dug = {name="rp_default_dug_alga", gain=0.3},
place = {name="rp_default_place_alga", gain=0.3},
}),
}) })
minetest.register_node( minetest.register_node(

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -39,6 +39,8 @@ These are the arguments (note that most arguments are required):
* `stage_extra_groups`: Optional. Table indexed by stage numbers. Each of these keys has a table as a value. This table is a * `stage_extra_groups`: Optional. Table indexed by stage numbers. Each of these keys has a table as a value. This table is a
groups table for nodes. These groups will be added to the corresponding nodes. groups table for nodes. These groups will be added to the corresponding nodes.
If the default node definition already defines this group, it will be overwritten. If the default node definition already defines this group, it will be overwritten.
* `sounds_plant`: Optional. Node sound definition for the plant (same as `sounds` of node defintion).
* `sound_seed_place`: Optional. Seed placement sound. A SimpleSoundSpec.
The nodes will be added to the following groups by default: The nodes will be added to the following groups by default:

View File

@ -17,6 +17,8 @@ Media license: CC BY-SA 4.0
* Author for asparagus plant textures: TenPlus (onion textures, modified by Wuzzy) * Author for asparagus plant textures: TenPlus (onion textures, modified by Wuzzy)
* Author for asparagus textures: Wuzzy * Author for asparagus textures: Wuzzy
* Author for all carrot textures: Gambit, modified by Wuzzy * Author for all carrot textures: Gambit, modified by Wuzzy
* Author of `rp_farming_place_seed.*.ogg`: Wuzzy
* Author of `rp_farming_place_nonseed.ogg`: Wuzzy and freenode.org user fleurescence
Source code license: LGPLv2.1 Source code license: LGPLv2.1
* Coders: Kaadmy and Wuzzy * Coders: Kaadmy and Wuzzy

View File

@ -67,6 +67,16 @@ function farming.register_plant_nodes(name, def)
paramtype2 = "meshoptions" paramtype2 = "meshoptions"
place_param2 = def.meshoptions place_param2 = def.meshoptions
end end
local sounds_plant
if not def.sounds_plant then
sounds_plant = rp_sounds.node_sound_grass_defaults()
end
local sounds_seed = table.copy(sounds_plant)
if def.sound_seed_place then
sounds_seed.place = def.sound_seed_place
else
sounds_seed.place = { name = "rp_farming_place_seed", gain = 0.4 }
end
local defs = {} local defs = {}
defs[1] = { defs[1] = {
@ -88,7 +98,7 @@ function farming.register_plant_nodes(name, def)
drop = def.drop_stages[1], drop = def.drop_stages[1],
selection_box = selbox, selection_box = selbox,
groups = {snappy=3, handy=2, attached_node=1, seed=1, plant=1, farming_plant=1, ["plant_"..name]=1}, groups = {snappy=3, handy=2, attached_node=1, seed=1, plant=1, farming_plant=1, ["plant_"..name]=1},
sounds=rp_sounds.node_sound_grass_defaults(), sounds = sounds_seed,
_rp_farming_plant_name = name, _rp_farming_plant_name = name,
} }
@ -111,7 +121,7 @@ function farming.register_plant_nodes(name, def)
drop = def.drop_stages[s], drop = def.drop_stages[s],
selection_box = selbox, selection_box = selbox,
groups = {snappy=3, handy=2, attached_node=1, plant=1, farming_plant=1, ["plant_"..name]=s, not_in_craft_guide = 1, not_in_creative_inventory = 1}, groups = {snappy=3, handy=2, attached_node=1, plant=1, farming_plant=1, ["plant_"..name]=s, not_in_craft_guide = 1, not_in_creative_inventory = 1},
sounds=rp_sounds.node_sound_grass_defaults(), sounds = sounds_plant,
_rp_farming_plant_name = name, _rp_farming_plant_name = name,
} }
end end

View File

@ -86,6 +86,7 @@ farming.register_plant_nodes("rp_farming:potato", {
}, },
}, },
sound_seed_place = { name = "rp_farming_place_nonseed", gain = 0.4 },
}) })
-- Carrot -- Carrot
@ -137,6 +138,7 @@ farming.register_plant_nodes("rp_farming:carrot", {
}, },
}, },
sound_seed_place = { name = "rp_farming_place_nonseed", gain = 0.4 },
}) })
-- Asparagus -- Asparagus
@ -269,7 +271,9 @@ minetest.register_node(
groups = {snappy = 2, oddly_breakable_by_hand = 3, groups = {snappy = 2, oddly_breakable_by_hand = 3,
fall_damage_add_percent = -15, fuzzy = 1, fall_damage_add_percent = -15, fuzzy = 1,
unmagnetic = 1}, unmagnetic = 1},
sounds = rp_sounds.node_sound_grass_defaults(), sounds = rp_sounds.node_sound_fuzzy_defaults({
footstep = { name = "rp_sounds_footstep_fuzzy", gain = 0.7, pitch = 1.3 },
}),
} }
) )
@ -280,6 +284,6 @@ minetest.register_node(
tiles = {"rp_farming_straw.png"}, tiles = {"rp_farming_straw.png"},
is_ground_content = false, is_ground_content = false,
groups = {snappy = 3, fall_damage_add_percent = -15}, groups = {snappy = 3, fall_damage_add_percent = -15},
sounds = rp_sounds.node_sound_grass_defaults(), sounds = rp_sounds.node_sound_straw_defaults(),
} }
) )

View File

@ -24,6 +24,7 @@ farming.register_plant(
grows_on = {"group:plantable_soil", "group:plantable_wet"}, grows_on = {"group:plantable_soil", "group:plantable_wet"},
light_min = 8, light_min = 8,
light_max = 15, light_max = 15,
sound_seed_place = { name = "rp_farming_place_nonseed", gain = 0.4 }
} }
) )
@ -36,6 +37,7 @@ farming.register_plant(
grows_on = {"group:plantable_dry"}, grows_on = {"group:plantable_dry"},
light_min = 12, light_min = 12,
light_max = 15, light_max = 15,
sound_seed_place = { name = "rp_farming_place_nonseed", gain = 0.4 }
} }
) )

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -5,5 +5,29 @@ By Kaadmy and Wuzzy, for Repixture.
Adds a new type of ore: Lumien. Adds a new type of ore: Lumien.
Lumien crystals glow when a player's nearby. Lumien crystals glow when a player's nearby.
Asset license: CC BY-SA 4.0 ## Licensing
Source license: LGPLv2.1
* Media files license: CC BY-SA 4.0
* Source code license: LGPLv2.1
## Credits
### Textures
By KaadmY, with minor changes by Wuzzy.
### Sound effects
(Note: The '*' character below is a placeholder that stands
for any sequence of characters)
* rp_lumien_place.*.ogg:
* Derived from '01 barreau bunker original.wav' by firb
* Source: <https://freesound.org/people/firb/sounds/330653/>
* Licence: CC BY 4.0 <https://creativecommons.org/licenses/by/4.0/>
* rp_lumien_dug.ogg:
* Derived from sound by `kelsey_w`
* Source: <https://freesound.org/people/kelsey_w/sounds/467039/>
* Licence: CC BY 3.0 <https://creativecommons.org/licenses/by/3.0/>

View File

@ -5,11 +5,20 @@
local S = minetest.get_translator("rp_lumien") local S = minetest.get_translator("rp_lumien")
-- How close a player needs to be (in nodes) for a lumien crystal to light up
local LUMIEN_ON_RADIUS = 2 local LUMIEN_ON_RADIUS = 2
-- How far a player needs to be (in nodes) from an active lumien crystal to turn off again
local LUMIEN_OFF_RADIUS = 4 local LUMIEN_OFF_RADIUS = 4
-- Light level of inactive lumien crystal
local LUMIEN_CRYSTAL_LIGHT_MIN = 2 local LUMIEN_CRYSTAL_LIGHT_MIN = 2
-- Light level of active lumien crystal
local LUMIEN_CRYSTAL_LIGHT_MAX = 12 local LUMIEN_CRYSTAL_LIGHT_MAX = 12
-- Light level of lumien block
local LUMIEN_BLOCK_LIGHT = 14 local LUMIEN_BLOCK_LIGHT = 14
-- Sound pitch modifier for lumien crystal (compared to lumien block)
local LUMIEN_CRYSTAL_SOUND_PITCH = 1.2
-- Sound pitch modifier for lumien footstep sound (both block and crystal)
local LUMIEN_SOUND_PITCH_FOOTSTEP = 0.8
local timer_interval = 1 local timer_interval = 1
local timer = 0 local timer = 0
@ -58,6 +67,18 @@ end
minetest.register_globalstep(on_globalstep) minetest.register_globalstep(on_globalstep)
local get_sounds = function(pitch)
if not pitch then
pitch = 1.0
end
return rp_sounds.node_sound_glass_defaults({
footstep = {name="rp_sounds_footstep_glass",gain=1,pitch=LUMIEN_SOUND_PITCH_FOOTSTEP},
place = {name="rp_lumien_place",gain=1,pitch=pitch},
dig = {name="rp_lumien_dug",gain=0.5,pitch=pitch},
dug = {name="rp_lumien_dug",gain=1,pitch=pitch*0.95},
})
end
-- Nodes -- Nodes
minetest.register_node( minetest.register_node(
@ -81,7 +102,7 @@ minetest.register_node(
light_source = LUMIEN_CRYSTAL_LIGHT_MAX, light_source = LUMIEN_CRYSTAL_LIGHT_MAX,
_rp_itemshow_offset = vector.new(-0.2, 0, -0.2), _rp_itemshow_offset = vector.new(-0.2, 0, -0.2),
drop = "rp_lumien:crystal_off", drop = "rp_lumien:crystal_off",
sounds = rp_sounds.node_sound_glass_defaults(), sounds = get_sounds(LUMIEN_CRYSTAL_SOUND_PITCH),
}) })
minetest.register_node( minetest.register_node(
@ -106,7 +127,7 @@ minetest.register_node(
light_source = LUMIEN_CRYSTAL_LIGHT_MIN, light_source = LUMIEN_CRYSTAL_LIGHT_MIN,
_tt_light_source_max = LUMIEN_CRYSTAL_LIGHT_MAX, _tt_light_source_max = LUMIEN_CRYSTAL_LIGHT_MAX,
_rp_itemshow_offset = vector.new(-0.2, 0, -0.2), _rp_itemshow_offset = vector.new(-0.2, 0, -0.2),
sounds = rp_sounds.node_sound_glass_defaults(), sounds = get_sounds(LUMIEN_CRYSTAL_SOUND_PITCH),
}) })
minetest.register_node( minetest.register_node(
@ -117,7 +138,7 @@ minetest.register_node(
tiles = {"lumien_block.png"}, tiles = {"lumien_block.png"},
groups = {cracky = 1}, groups = {cracky = 1},
light_source = LUMIEN_BLOCK_LIGHT, light_source = LUMIEN_BLOCK_LIGHT,
sounds = rp_sounds.node_sound_stone_defaults(), sounds = get_sounds(),
}) })
minetest.register_node( minetest.register_node(
@ -128,7 +149,7 @@ minetest.register_node(
tiles = {"rp_lumien_reinforced_block.png"}, tiles = {"rp_lumien_reinforced_block.png"},
groups = {cracky = 1}, groups = {cracky = 1},
light_source = LUMIEN_BLOCK_LIGHT, light_source = LUMIEN_BLOCK_LIGHT,
sounds = rp_sounds.node_sound_stone_defaults(), sounds = get_sounds(),
}) })
-- Ores -- Ores

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -22,23 +22,30 @@ Returns a sound definition for wooden node sounds.
rp_sounds.node_sound_dirt_defaults({ rp_sounds.node_sound_dirt_defaults({
footstep = {name="default_hard_footstep", gain=0.6} footstep = {name="rp_sounds_footstep_grass", gain=0.6}
}) })
Returns a sound definition with dirt sounds, except the footstep Returns a sound definition with dirt sounds, except the footstep
sound was changed to `default_hard_footstep`. sound was changed to `rp_sounds_footstep_grass`.
### List of functions ### List of functions
These are the available functions: These are the available functions:
* `rp_sounds.node_sound_defaults(table)`: Default/fallback sounds * `rp_sounds.node_sound_defaults(table)`: Default/fallback sounds (use when nothing else fits)
* `rp_sounds.node_sound_stone_defaults(table)`: Stone * `rp_sounds.node_sound_stone_defaults(table)`: Stone
* `rp_sounds.node_sound_dirt_defaults(table)`: Dirt * `rp_sounds.node_sound_dirt_defaults(table)`: Dirt (normal)
* `rp_sounds.node_sound_dry_dirt_defaults(table)`: Dry Dirt
* `rp_sounds.node_sound_swamp_dirt_defaults(table)`: Swamp Dirt
* `rp_sounds.node_sound_sand_defaults(table)`: Sand * `rp_sounds.node_sound_sand_defaults(table)`: Sand
* `rp_sounds.node_sound_wood_defaults(table)`: Wood, tree, etc. * `rp_sounds.node_sound_gravel_defaults(table)`: Gravel
* `rp_sounds.node_sound_wood_defaults(table)`: Wood, generic
* `rp_sounds.node_sound_plank_defaults(table)`: Wood, planks
* `rp_sounds.node_sound_leaves_defaults(table)`: Leaves * `rp_sounds.node_sound_leaves_defaults(table)`: Leaves
* `rp_sounds.node_sound_grass_defaults(table)`: Grass
* `rp_sounds.node_sound_straw_defaults(table)`: Straw
* `rp_sounds.node_sound_glass_defaults(table)`: Glass * `rp_sounds.node_sound_glass_defaults(table)`: Glass
* `rp_sounds.node_sound_fuzzy_defaults(table)`: Fuzzy, soft surface (like wool, cotton, bedsheet)
* `rp_sounds.node_sound_snow_defaults(table)`: Snow * `rp_sounds.node_sound_snow_defaults(table)`: Snow
* `rp_sounds.node_sound_water_defaults(table)`: Water * `rp_sounds.node_sound_water_defaults(table)`: Water

View File

@ -4,11 +4,103 @@ Node sound functions for Repixture.
Developers: See `API.md` for instructions. Developers: See `API.md` for instructions.
Sound licenses: ## Licensing
* Water sounds:
* Voxelands project <http://www.voxelands.com/> (CC BY-SA 3.0) ### Sound licenese
* default_place_node_water.ogg
* default_dug_water.ogg The overall license for the sound effects is CC BY-SA 3.0.
* All other sounds: CC0
Texture license: CC BY-SA 4.0 Individual sounds might have an additional, optional license
Source license: LGPLv2.1 that applies as well (in that case, you can choose between
the file license and the overall license).
Note: The '*' character in file names below is a placeholder that
stands for any sequence of characters.
List of sounds and credits:
* default_place_node_water.ogg
* default_dug_water.ogg
* Author: Voxelands project <http://www.voxelands.com/>
* License: CC BY-SA 3.0
* rp_sounds_place_planks.*.ogg
* License: CC0
* rp_sounds_footstep_glass.*.ogg
* Derivate work of a sound by a deleted freesound.org user
* Source: <https://freesound.org/people/deleted_user_2104797/sounds/325252/>
* License: CC0
* rp_sounds_dug_glass.ogg
* Derivate work of a sound by `kelsey_w`
* Source: <https://freesound.org/people/kelsey_w/sounds/467039/>
* License: CC BY 3.0
* rp_sounds_place_glass.*.ogg
* Derivate work of a sound by kbnevel
* Source: <https://freesound.org/people/kbnevel/sounds/119839/>
* License: CC0
* rp_sounds_place_planks.*.ogg
* License: CC0
* Source: OpenGameArt (100-CC0-wood-metal-SFX)
* rp_sounds_dig_wood.*.ogg
* Derived from 'Hit sounds' by pauiluw
* Source: <https://opengameart.org/content/hit-sounds>
* License: CC0
* rp_sounds_footstep_stone.*.ogg
* Derived from 'Hiking Boot Footsteps on Stone' by Fission9
* Source: <https://freesound.org/people/Fission9/sounds/521590/>
* License: CC0
* rp_sounds_dig_stone.*.ogg
* Derived from 'Stone Strike/Hit' by BrickLover
* Source: <https://freesound.org/people/Bricklover/sounds/560966/>
* License: CC0
* rp_sounds_dug_stone.1.ogg
* Derived from 'stone falls and breaks low pitch.aiff' by SoundCollectah
* Source: https://freesound.org/people/SoundCollectah/sounds/109360/
* License: CC0
* rp_sounds_dug_stone.2.ogg
* Derived from 'rcok falls 02.mp3' by SoundCollectah
* Source: https://freesound.org/people/SoundCollectah/sounds/158465/
* License: CC0
* rp_sounds_dug_stone.3.ogg
* rp_sounds_dug_stone.4.ogg
* rp_sounds_dug_stone.5.ogg
* Derived from 'Foley_Impact_Stones_Strong_Debris_Stereo_DS.wav' by Nox_Sound
* Source: https://freesound.org/people/Nox_Sound/sounds/554148/
* License: CC0
* rp_sounds_dig_sand.*.ogg
* Derived from 'Digging in wet course sand (raw file)' by f3bbbo
* Source: <https://freesound.org/people/f3bbbo/sounds/651294/>
* License: CC0
* rp_sounds_dig_dirt.*.ogg
* Derived from 'Shovel in dirt' by RavenWolfProds
* Source: <https://freesound.org/people/RavenWolfProds/sounds/503672/>
* License: CC0
* rp_sounds_footstep_dirt.*.ogg
* rp_sounds_footstep_dry_dirt.*.ogg
* rp_sounds_footstep_swamp_dirt.*.ogg
* rp_sounds_footstep_grass.*.ogg
* rp_sounds_footstep_swamp_grass.*.ogg:
* rp_sounds_footstep_straw.*.ogg
* rp_sounds_footstep_wood.*.ogg
* rp_sounds_footstep_fuzzy.*.ogg
* rp_sounds_footstep_sand.*.ogg
* rp_sounds_footstep_gravel.*.ogg
* rp_sounds_footstep_stone.*.ogg
* rp_sounds_dig_straw.*.ogg
* rp_sounds_dig_glass.*.ogg
* rp_sounds_dig_gravel.*.ogg
* rp_sounds_dig_glass.*.ogg
* rp_sounds_dug_straw.*.ogg
* rp_sounds_place_straw.*.ogg
* rp_sounds_place_gravel.*.ogg
* rp_sounds_place_failed.ogg
* rp_sounds_fall_sand.*.ogg
* rp_sounds_fall_gravel.*.ogg
* by Wuzzy
* License: CC0
All other sounds not mentioned above are licensed under CC0.
### Source code license
The source code license is LGPLv2.1.

View File

@ -14,6 +14,8 @@ function rp_sounds.node_sound_defaults(table)
{name="default_dug_node", gain=0.1} {name="default_dug_node", gain=0.1}
table.place = table.place or table.place = table.place or
{name="default_place_node_hard", gain=0.8} {name="default_place_node_hard", gain=0.8}
table.place_failed = table.place_failed or
{name="rp_sounds_place_failed", gain=0.5}
return table return table
end end
@ -21,10 +23,10 @@ function rp_sounds.node_sound_stone_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or
{name="rp_sounds_footstep_stone", gain=0.6} {name="rp_sounds_footstep_stone", gain=0.6}
table.dig = table.dig or
{name="rp_sounds_footstep_stone", gain=0.3}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_footstep_stone", gain=1.0} {name="rp_sounds_dug_stone", gain=1.0}
table.dig = table.dig or
{name="rp_sounds_dig_stone", gain=0.5}
rp_sounds.node_sound_defaults(table) rp_sounds.node_sound_defaults(table)
return table return table
end end
@ -34,25 +36,43 @@ function rp_sounds.node_sound_dirt_defaults(table)
table.footstep = table.footstep or table.footstep = table.footstep or
{name="rp_sounds_footstep_dirt", gain=1.0} {name="rp_sounds_footstep_dirt", gain=1.0}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_dig_dirt", gain=1.0} {name="rp_sounds_dig_dirt", gain=1.0, pitch=0.8}
table.dig = table.dig or table.dig = table.dig or
{name="rp_sounds_dig_dirt", gain=0.3} {name="rp_sounds_dig_dirt", gain=0.5}
table.place = table.place or table.place = table.place or
{name="default_place_node_hard", gain=1.0} {name="default_place_node_hard", gain=1.0}
rp_sounds.node_sound_defaults(table) rp_sounds.node_sound_defaults(table)
return table return table
end end
function rp_sounds.node_sound_dry_dirt_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="rp_sounds_footstep_dry_dirt", gain=1.0}
rp_sounds.node_sound_dirt_defaults(table)
return table
end
function rp_sounds.node_sound_swamp_dirt_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="rp_sounds_footstep_swamp_dirt", gain=1.0}
rp_sounds.node_sound_dirt_defaults(table)
return table
end
function rp_sounds.node_sound_sand_defaults(table) function rp_sounds.node_sound_sand_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or
{name="rp_sounds_footstep_dirt", gain=0.2} {name="rp_sounds_footstep_sand", gain=0.45}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_dig_dirt", gain=0.4} {name="rp_sounds_dig_sand", gain=0.8, pitch = 0.9}
table.dig = table.dig or table.dig = table.dig or
{name="rp_sounds_dig_dirt", gain=0.2} {name="rp_sounds_dig_sand", gain=0.4}
table.place = table.place or table.place = table.place or
{name="default_place_node_hard", gain=1.0} {name="default_place_node_hard", gain=1.0}
table.fall = table.fall or
{name="rp_sounds_fall_sand", gain=1.0}
rp_sounds.node_sound_defaults(table) rp_sounds.node_sound_defaults(table)
return table return table
end end
@ -60,13 +80,15 @@ end
function rp_sounds.node_sound_gravel_defaults(table) function rp_sounds.node_sound_gravel_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or
{name="rp_sounds_footstep_gravel", gain=0.2} {name="rp_sounds_footstep_gravel", gain=0.15}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_dig_dirt", gain=0.4} {name="rp_sounds_dig_gravel", gain=0.8, pitch=0.8}
table.dig = table.dig or table.dig = table.dig or
{name="rp_sounds_dig_dirt", gain=0.2} {name="rp_sounds_dig_gravel", gain=0.4}
table.place = table.place or table.place = table.place or
{name="rp_sounds_footstep_gravel", gain=1.0} {name="rp_sounds_place_gravel", gain=0.6}
table.fall = table.fall or
{name="rp_sounds_fall_gravel", gain=0.5}
rp_sounds.node_sound_defaults(table) rp_sounds.node_sound_defaults(table)
return table return table
end end
@ -74,13 +96,25 @@ end
function rp_sounds.node_sound_wood_defaults(table) function rp_sounds.node_sound_wood_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or
{name="rp_sounds_footstep_wood", gain=0.5} {name="rp_sounds_footstep_wood", gain=0.7}
table.dig = table.dig or table.dig = table.dig or
{name="rp_sounds_dig_wood", gain=0.2} {name="rp_sounds_dig_wood", gain=0.2}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_dig_wood", gain=0.7} {name="rp_sounds_dig_wood", gain=0.5}
rp_sounds.node_sound_defaults(table)
return table
end
function rp_sounds.node_sound_planks_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="rp_sounds_footstep_wood", gain=0.7, pitch=1.1}
table.dig = table.dig or
{name="rp_sounds_dig_wood", gain=0.2, pitch=1.3}
table.dug = table.dug or
{name="rp_sounds_dig_wood", gain=0.5, pitch=1.1}
table.place = table.place or table.place = table.place or
{name="rp_sounds_place_wood", gain=1.0} {name="rp_sounds_place_planks", gain=1.0}
rp_sounds.node_sound_defaults(table) rp_sounds.node_sound_defaults(table)
return table return table
end end
@ -102,7 +136,7 @@ end
function rp_sounds.node_sound_grass_defaults(table) function rp_sounds.node_sound_grass_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or
{name="rp_sounds_footstep_leaves", gain=0.95} {name="rp_sounds_footstep_grass", gain=1.0}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_dug_grass", gain=0.7} {name="rp_sounds_dug_grass", gain=0.7}
table.dig = table.dig or table.dig = table.dig or
@ -113,6 +147,20 @@ function rp_sounds.node_sound_grass_defaults(table)
return table return table
end end
function rp_sounds.node_sound_straw_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="rp_sounds_footstep_straw", gain=1.0}
table.dug = table.dug or
{name="rp_sounds_dug_straw", gain=0.7}
table.dig = table.dig or
{name="rp_sounds_dig_straw", gain=0.7}
table.place = table.place or
{name="rp_sounds_place_straw", gain=1.0}
rp_sounds.node_sound_defaults(table)
return table
end
function rp_sounds.node_sound_glass_defaults(table) function rp_sounds.node_sound_glass_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or
@ -120,7 +168,7 @@ function rp_sounds.node_sound_glass_defaults(table)
table.dig = table.dig or table.dig = table.dig or
{name="rp_sounds_dig_glass", gain=0.5} {name="rp_sounds_dig_glass", gain=0.5}
table.dug = table.dug or table.dug = table.dug or
{name="rp_sounds_dig_glass", gain=1.0} {name="rp_sounds_dug_glass", gain=1.0}
table.place = table.place or table.place = table.place or
{name="rp_sounds_place_glass", gain=1.0} {name="rp_sounds_place_glass", gain=1.0}
rp_sounds.node_sound_defaults(table) rp_sounds.node_sound_defaults(table)
@ -139,6 +187,18 @@ function rp_sounds.node_sound_snow_defaults(table)
return table return table
end end
function rp_sounds.node_sound_fuzzy_defaults(table)
table = table or {}
table.footstep = table.footstep or
{name="rp_sounds_footstep_fuzzy", gain=0.7}
table.dig = table.dig or
{name="default_dig_hard", gain=0.15}
table.dug = table.dug or
{name="default_dug_node", gain=0.5}
rp_sounds.node_sound_defaults(table)
return table
end
function rp_sounds.node_sound_water_defaults(table) function rp_sounds.node_sound_water_defaults(table)
table = table or {} table = table or {}
table.footstep = table.footstep or table.footstep = table.footstep or

View File

@ -1,2 +1,2 @@
name = rp_sounds name = rp_sounds
description = Node sound functions for Repixture description = Contains the basic node sounds for Repixture and helper functions to use them

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More