mirror of
https://github.com/FaceDeer/dfcaverns.git
synced 2024-11-05 01:50:43 +01:00
Place new ground covers. Also, had to change namegen's name to avoid a collision on ContentDB
This commit is contained in:
parent
dab827bf8f
commit
fc2bc52203
|
@ -1,4 +1,4 @@
|
|||
name = df_caverns
|
||||
description = Adds vast underground caverns in the style of Dwarf Fortress, complete with underground flora in diverse biomes. Also adds stalactite/stalagmite decorations in the smaller tunnels.
|
||||
depends = default, subterrane, df_trees, df_mapitems
|
||||
optional_depends = df_farming, ice_sprites, oil, df_underworld_items, magma_conduits, bones_loot, named_waypoints, namegen, fireflies
|
||||
optional_depends = df_farming, ice_sprites, oil, df_underworld_items, magma_conduits, bones_loot, named_waypoints, name_generator, fireflies
|
|
@ -42,8 +42,11 @@ df_caverns.node_id.mese_crystal = minetest.get_content_id("df_mapitems:mese_crys
|
|||
df_caverns.node_id.mese_crystal_block = minetest.get_content_id("df_mapitems:glow_mese")
|
||||
df_caverns.node_id.pearls = minetest.get_content_id("df_mapitems:cave_pearls")
|
||||
df_caverns.node_id.pebble_fungus = minetest.get_content_id("df_mapitems:dirt_with_pebble_fungus")
|
||||
df_caverns.node_id.rock_rot = minetest.get_content_id("df_mapitems:rock_rot")
|
||||
df_caverns.node_id.spongestone = minetest.get_content_id("df_mapitems:spongestone")
|
||||
df_caverns.node_id.salt_crystal = minetest.get_content_id("df_mapitems:salt_crystal")
|
||||
df_caverns.node_id.salty_cobble = minetest.get_content_id("df_mapitems:salty_cobble")
|
||||
df_caverns.node_id.sand_scum = minetest.get_content_id("df_mapitems:sand_scum")
|
||||
df_caverns.node_id.stillworm = minetest.get_content_id("df_mapitems:dirt_with_stillworm")
|
||||
df_caverns.node_id.veinstone = minetest.get_content_id("df_mapitems:veinstone")
|
||||
df_caverns.node_id.wet_flowstone = minetest.get_content_id("df_mapitems:wet_flowstone")
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[Cavern dimensions]
|
||||
|
||||
#Note that this doesn't guarantee caverns of this setting's size. This setting
|
||||
#affects the scale of features in the perlin noise that is used to build caverns.
|
||||
#Most caverns will be smaller than this (and a few might be larger)
|
||||
|
@ -17,6 +18,7 @@ dfcaverns_sunless_sea_threshold (Cavern threshold for sunless sea) float 0.4 0.0
|
|||
dfcaverns_tunnel_flooding_threshold (Tunnel flooding threshold) float 0.25 0.0 1.0
|
||||
|
||||
[Cavern depth borders]
|
||||
|
||||
#maximum boundary for cavern depths are most efficient when they fit the formula (x*80-32-1)
|
||||
#where x is an integer. That way you don't get map blocks that straddle two cavern layers.
|
||||
dfcaverns_ymax (Upper limit of level 1) int -193
|
||||
|
@ -28,6 +30,7 @@ dfcaverns_level3_min (Upper limit of the sunless sea) int -2112
|
|||
dfcaverns_sunless_sea_min (Lower limit of the sunless sea) int -2512
|
||||
|
||||
[Lower Levels]
|
||||
|
||||
dfcaverns_enable_oil_sea (Generate oil sea) bool true
|
||||
dfcaverns_oil_sea_level (Oil sea level) int -2700
|
||||
|
||||
|
@ -47,7 +50,6 @@ dfcaverns_underworld_hud_requires_item (Require an item to view waypoints) bool
|
|||
#specify "group:groupname" here. Leave it blank to default to map:mapping_kit.
|
||||
dfcaverns_underworld_hud_item_required (Specify the item or group required) string map:mapping_kit
|
||||
|
||||
|
||||
dfcaverns_show_pits_in_hud (Show pit locations in HUD) bool true
|
||||
dfcaverns_pit_discovery_range (Pit discovery range) int 60
|
||||
dfcaverns_pit_visibility_range (Pit visibility range) int 500
|
||||
|
@ -61,6 +63,7 @@ dfcaverns_ruin_discovery_range (Ruin discovery range) int 40
|
|||
dfcaverns_ruin_visibility_range (Ruin visibility range) int 250
|
||||
|
||||
[Primordial]
|
||||
|
||||
dfcaverns_enable_primordial (Generate primordial caverns) bool true
|
||||
dfcaverns_primordial_max (Upper limit of primordial caverns) int -3393
|
||||
dfcaverns_primordial_min (Lower limit of primordial caverns) int -4032
|
||||
|
@ -70,4 +73,4 @@ dfcaverns_primordial_min (Lower limit of primordial caverns) int -4032
|
|||
# over this many seconds. If you're experiencing lag spikes
|
||||
# during mapgen of Primordial cavern layer mushroom caverns
|
||||
# then increasing this number may help.
|
||||
dcaverns_giant_mycelium_timer_spread (Giant Mycelium mapgen timer spread) int 10
|
||||
dcaverns_giant_mycelium_timer_spread (Giant Mycelium mapgen timer spread) int 10
|
||||
|
|
|
@ -13,6 +13,9 @@ local c_glowstone = df_caverns.node_id.glowstone
|
|||
local c_ice = df_caverns.node_id.ice
|
||||
local c_mossycobble = df_caverns.node_id.mossycobble
|
||||
local c_oil = df_caverns.node_id.oil
|
||||
local c_sand_scum = df_caverns.node_id.sand_scum
|
||||
local c_spongestone = df_caverns.node_id.spongestone
|
||||
local c_rock_rot = df_caverns.node_id.rock_rot
|
||||
local c_water = df_caverns.node_id.water
|
||||
local c_wet_flowstone = df_caverns.node_id.wet_flowstone
|
||||
|
||||
|
@ -64,7 +67,7 @@ df_caverns.flooded_cavern_floor = function(abs_cracks, vert_rand, vi, area, data
|
|||
if abs_cracks < 0.25 then
|
||||
data[vi] = c_mossycobble
|
||||
elseif data[vi-ystride] ~= c_water then
|
||||
data[vi] = c_dirt
|
||||
data[vi] = c_sand_scum
|
||||
end
|
||||
|
||||
-- put in only the large stalagmites that won't get in the way of the water
|
||||
|
@ -95,8 +98,10 @@ df_caverns.wet_cavern_floor = function(abs_cracks, vert_rand, vi, area, data, da
|
|||
df_caverns.stalagmites(abs_cracks, vert_rand, vi, area, data, data_param2, true)
|
||||
elseif abs_cracks < 0.6 then
|
||||
data[vi] = c_cobble
|
||||
elseif abs_cracks < 0.8 then
|
||||
data[vi] = c_rock_rot
|
||||
else
|
||||
data[vi] = c_mossycobble
|
||||
data[vi] = c_spongestone
|
||||
if c_dead_fungus and math.random() < 0.05 then
|
||||
data[vi+area.ystride] = c_dead_fungus
|
||||
end
|
||||
|
|
|
@ -7,7 +7,7 @@ local S = minetest.get_translator(modname)
|
|||
|
||||
local bones_loot_path = minetest.get_modpath("bones_loot")
|
||||
local named_waypoints_path = minetest.get_modpath("named_waypoints")
|
||||
local namegen_path = minetest.get_modpath("namegen")
|
||||
local name_generator_path = minetest.get_modpath("name_generator")
|
||||
|
||||
local hunters_enabled = minetest.get_modpath("hunter_statue") and df_underworld_items.config.underworld_hunter_statues
|
||||
|
||||
|
@ -51,14 +51,14 @@ if named_waypoints_path then
|
|||
end
|
||||
named_waypoints.register_named_waypoints("puzzle_seals", seal_waypoint_def)
|
||||
|
||||
if namegen_path then
|
||||
namegen.parse_lines(io.lines(modpath.."/underworld_names.cfg"))
|
||||
if name_generator_path then
|
||||
name_generator.parse_lines(io.lines(modpath.."/underworld_names.cfg"))
|
||||
|
||||
name_pit = function()
|
||||
return namegen.generate("glowing_pits")
|
||||
return name_generator.generate("glowing_pits")
|
||||
end
|
||||
name_ruin = function()
|
||||
return namegen.generate("underworld_ruins")
|
||||
return name_generator.generate("underworld_ruins")
|
||||
end
|
||||
|
||||
local underworld_ruin_def = {
|
||||
|
@ -467,7 +467,7 @@ minetest.register_on_generated(function(minp, maxp, seed)
|
|||
mapgen_helper.place_schematic_on_data(data, data_param2, area, building.pos, small_building_schematic, building.rotation)
|
||||
elseif building.building_type == "medium building" then
|
||||
mapgen_helper.place_schematic_on_data(data, data_param2, area, building.pos, medium_building_schematic, building.rotation)
|
||||
if named_waypoints_path and namegen_path then
|
||||
if named_waypoints_path and name_generator_path then
|
||||
if not next(named_waypoints.get_waypoints_in_area("underworld_ruins", vector.subtract(building.pos, 250), vector.add(building.pos, 250))) then
|
||||
named_waypoints.add_waypoint("underworld_ruins", {x=building.pos.x, y=floor_height+1, z=building.pos.z}, {name=name_ruin()})
|
||||
end
|
||||
|
|
|
@ -9,6 +9,10 @@ df_farming.node_names.dirt = "default:dirt"
|
|||
df_farming.node_names.dirt_moss = "df_farming:dirt_with_cave_moss"
|
||||
df_farming.node_names.floor_fungus = "df_farming:cobble_with_floor_fungus"
|
||||
df_farming.node_names.dirt_wet = "farming:soil_wet"
|
||||
df_farming.node_names.mortar_pestle = "farming:mortar_pestle"
|
||||
df_farming.node_names.bucket = "bucket:bucket_empty"
|
||||
df_farming.node_names.wool_white = "wool:white"
|
||||
|
||||
|
||||
-- these are only for initialization
|
||||
minetest.after(0, function()
|
||||
|
|
|
@ -97,7 +97,7 @@ minetest.register_craftitem("df_farming:pig_tail_thread", {
|
|||
|
||||
if minetest.get_modpath("wool") then
|
||||
minetest.register_craft({
|
||||
output = "wool:white",
|
||||
output = df_farming.node_names.wool_white,
|
||||
recipe = {
|
||||
{"group:thread", "group:thread"},
|
||||
{"group:thread", "group:thread"},
|
||||
|
|
|
@ -114,14 +114,14 @@ if minetest.get_modpath("cottages") then
|
|||
recipe_registered = true
|
||||
end
|
||||
|
||||
if minetest.registered_items["farming:mortar_pestle"] ~= nil then
|
||||
if minetest.registered_items[df_farming.node_names.mortar_pestle] ~= nil then
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "df_farming:sugar",
|
||||
recipe = {
|
||||
"df_farming:sweet_pods", "farming:mortar_pestle"
|
||||
"df_farming:sweet_pods", df_farming.node_names.mortar_pestle
|
||||
},
|
||||
replacements = {{"group:food_mortar_pestle", "farming:mortar_pestle"}},
|
||||
replacements = {{"group:food_mortar_pestle", df_farming.node_names.mortar_pestle}},
|
||||
})
|
||||
recipe_registered = true
|
||||
end
|
||||
|
@ -247,7 +247,7 @@ if minetest.get_modpath("bucket") then
|
|||
if minetest.get_modpath("crafting") then
|
||||
simplecrafting_lib.register("furnace", {
|
||||
input = {
|
||||
["bucket:bucket_empty"] = 1,
|
||||
[df_farming.node_names.bucket] = 1,
|
||||
["df_farming:sugar"] = 3,
|
||||
["simplecrafting_lib:heat"] = 5,
|
||||
},
|
||||
|
@ -257,7 +257,7 @@ if minetest.get_modpath("bucket") then
|
|||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "df_farming:dwarven_syrup_bucket",
|
||||
recipe = {"bucket:bucket_empty", "df_farming:sugar", "df_farming:sugar", "df_farming:sugar"},
|
||||
recipe = {df_farming.node_names.bucket, "df_farming:sugar", "df_farming:sugar", "df_farming:sugar"},
|
||||
})
|
||||
end
|
||||
|
||||
|
|
|
@ -33,6 +33,9 @@ df_mapitems.node_name.dirt = "default:dirt"
|
|||
df_mapitems.node_name.stone = "default:stone"
|
||||
df_mapitems.node_name.ice = "default:ice"
|
||||
|
||||
df_mapitems.node_name.farming_soil = "farming:soil"
|
||||
df_mapitems.node_name.farming_soil_wet = "farming:soil_wet"
|
||||
|
||||
-- This stuff should only be used during initialization
|
||||
minetest.after(0, function()
|
||||
df_mapitems.node_name = nil
|
||||
|
|
|
@ -18,6 +18,8 @@ local function soil_type_spread(label, node_to_spread, target_node)
|
|||
}
|
||||
end
|
||||
|
||||
local farming_soil = df_mapitems.node_name.farming_soil
|
||||
local farming_soil_wet = df_mapitems.node_name.farming_soil_wet
|
||||
|
||||
--------------------------------------------------
|
||||
-- Cave moss
|
||||
|
@ -47,8 +49,8 @@ minetest.register_node("df_mapitems:dirt_with_cave_moss", {
|
|||
sounds = df_mapitems.sounds.dirt_mossy,
|
||||
soil = {
|
||||
base = "df_mapitems:dirt_with_cave_moss",
|
||||
dry = "farming:soil",
|
||||
wet = "farming:soil_wet"
|
||||
dry = farming_soil,
|
||||
wet = farming_soil_wet
|
||||
},
|
||||
_dfcaverns_dead_node = dirt_node,
|
||||
})
|
||||
|
@ -94,8 +96,8 @@ minetest.register_node("df_mapitems:dirt_with_pebble_fungus", {
|
|||
sounds = df_mapitems.sounds.dirt,
|
||||
soil = {
|
||||
base = "df_mapitems:dirt_with_pebble_fungus",
|
||||
dry = "farming:soil",
|
||||
wet = "farming:soil_wet"
|
||||
dry = farming_soil,
|
||||
wet = farming_soil_wet
|
||||
},
|
||||
_dfcaverns_dead_node = dirt_node,
|
||||
})
|
||||
|
@ -120,8 +122,8 @@ minetest.register_node("df_mapitems:dirt_with_stillworm", {
|
|||
sounds = df_mapitems.sounds.dirt_mossy,
|
||||
soil = {
|
||||
base = "df_mapitems:dirt_with_stillworm",
|
||||
dry = "farming:soil",
|
||||
wet = "farming:soil_wet"
|
||||
dry = farming_soil,
|
||||
wet = farming_soil_wet
|
||||
},
|
||||
_dfcaverns_dead_node = dirt_node,
|
||||
})
|
||||
|
@ -142,8 +144,8 @@ minetest.register_node("df_mapitems:spongestone", {
|
|||
sounds = df_mapitems.sounds.dirt,
|
||||
soil = {
|
||||
base = "df_mapitems:spongestone",
|
||||
dry = "farming:soil",
|
||||
wet = "farming:soil_wet"
|
||||
dry = farming_soil,
|
||||
wet = farming_soil_wet
|
||||
},
|
||||
_dfcaverns_dead_node = dirt_node,
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue
Block a user