diff --git a/.vscode/settings.json b/.vscode/settings.json index 9eadc07c8f..0da3b25cae 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,7 +1,7 @@ { - "datapack.env.cmdVersion": "1.20", + "datapack.env.cmdVersion": "1.20.3", "datapack.env.jsonVersion": "1.20", - "datapack.env.dataVersion": "1.20", + "datapack.env.dataVersion": "1.20.3", "datapack.lint.stringQuote": ["hint", true], "datapack.lint.nbtStringQuoteType": ["hint", "prefer double"] } diff --git a/gm4_sky_dimension/beet.yaml b/gm4_sky_dimension/beet.yaml new file mode 100644 index 0000000000..1893d0a4b3 --- /dev/null +++ b/gm4_sky_dimension/beet.yaml @@ -0,0 +1,23 @@ +id: gm4_sky_dimension +name: Sky Dimension +version: 1.0.X + +data_pack: + load: . + +pipeline: + - gm4.plugins.extend.module + +meta: + gm4: + versioning: + schedule_loops: [] + website: + description: Soar high to reach and explore the Sky Dimension, Celesterra! + recommended: [] + notes: [] + video: null + wiki: https://wiki.gm4.co/wiki/Sky_Dimension + credits: + Creator: + - BluePsychoRanger diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/dimension/celesterra.json b/gm4_sky_dimension/data/gm4_sky_dimension/dimension/celesterra.json new file mode 100644 index 0000000000..de87e84c63 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/dimension/celesterra.json @@ -0,0 +1,756 @@ +{ + "type": "gm4_sky_dimension:celesterra", + "generator": { + "type": "minecraft:noise", + "settings": "gm4_sky_dimension:celesterra", + "biome_source": { + "type": "minecraft:multi_noise", + "biomes": [ + { + "biome": "minecraft:mushroom_fields", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + -0.485, + 0.05 + ], + "erosion": [ + 0.7, + 1 + ], + "weirdness": [ + -1, + 0.5 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:badlands", + "parameters": { + "temperature": [ + 0.25, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + 0.2, + 1 + ], + "erosion": [ + -1, + -0.5 + ], + "weirdness": [ + -1, + 0.25 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:dripstone_caves", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + 0.2, + 1 + ], + "erosion": [ + -1, + -0.5 + ], + "weirdness": [ + 0.25, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:snowy_slopes", + "parameters": { + "temperature": [ + -1, + 0.25 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + 0.2, + 1 + ], + "erosion": [ + -1, + -0.5 + ], + "weirdness": [ + -1, + 0.25 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "gm4_sky_dimension:desolate_void", + "parameters": { + "temperature": 0, + "humidity": 0, + "continentalness": 0, + "erosion": 0, + "weirdness": [ + -1, + 1 + ], + "depth": -2, + "offset": 0 + } + }, + { + "biome": "gm4_sky_dimension:floating_falls", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + -0.485, + 0.2 + ], + "erosion": [ + -1, + -0.5 + ], + "weirdness": [ + 0, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:sparse_jungle", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + 0.05, + 1 + ], + "erosion": [ + 0.7, + 1 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:bamboo_jungle", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + -0.485, + 0.2 + ], + "erosion": [ + -1, + -0.5 + ], + "weirdness": [ + -1, + 0 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:beach", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + -0.485, + 0.05 + ], + "erosion": [ + 0.7, + 1 + ], + "weirdness": [ + 0.5, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:ocean", + "parameters": { + "temperature": [ + -1, + 1 + ], + "humidity": [ + -1, + 1 + ], + "continentalness": [ + -1, + -0.485 + ], + "erosion": [ + -1, + 1 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:ice_spikes", + "parameters": { + "temperature": [ + -1, + -0.6 + ], + "humidity": [ + -1, + -0.25 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:snowy_plains", + "parameters": { + "temperature": [ + -1, + -0.6 + ], + "humidity": [ + -0.25, + 0.5 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:snowy_taiga", + "parameters": { + "temperature": [ + -1, + -0.6 + ], + "humidity": [ + 0.5, + 1 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:windswept_forest", + "parameters": { + "temperature": [ + -0.6, + -0.3 + ], + "humidity": [ + -1, + -0.25 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:taiga", + "parameters": { + "temperature": [ + -0.6, + -0.3 + ], + "humidity": [ + -0.25, + 0.5 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:taiga", + "parameters": { + "temperature": [ + -0.6, + -0.3 + ], + "humidity": [ + 0.5, + 1 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:plains", + "parameters": { + "temperature": [ + -0.3, + 0 + ], + "humidity": [ + -1, + -0.25 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:birch_forest", + "parameters": { + "temperature": [ + -0.3, + 0 + ], + "humidity": [ + -0.25, + 0.5 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:dark_forest", + "parameters": { + "temperature": [ + -0.3, + 0 + ], + "humidity": [ + 0.5, + 1 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:meadow", + "parameters": { + "temperature": [ + 0, + 0.3 + ], + "humidity": [ + -1, + -0.25 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:cherry_grove", + "parameters": { + "temperature": [ + 0, + 0.3 + ], + "humidity": [ + -0.25, + 0.5 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:forest", + "parameters": { + "temperature": [ + 0, + 0.3 + ], + "humidity": [ + 0.5, + 1 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:flower_forest", + "parameters": { + "temperature": [ + 0.3, + 0.6 + ], + "humidity": [ + -1, + -0.25 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:swamp", + "parameters": { + "temperature": [ + 0.3, + 0.6 + ], + "humidity": [ + -0.25, + 0.5 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:mangrove_swamp", + "parameters": { + "temperature": [ + 0.3, + 0.6 + ], + "humidity": [ + 0.5, + 1 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:desert", + "parameters": { + "temperature": [ + 0.6, + 1 + ], + "humidity": [ + -1, + -0.25 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:savanna", + "parameters": { + "temperature": [ + 0.6, + 1 + ], + "humidity": [ + -0.25, + 0.5 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + }, + { + "biome": "minecraft:jungle", + "parameters": { + "temperature": [ + 0.6, + 1 + ], + "humidity": [ + 0.5, + 1 + ], + "continentalness": [ + -0.485, + 1 + ], + "erosion": [ + -0.5, + 0.7 + ], + "weirdness": [ + -1, + 1 + ], + "depth": 0, + "offset": 0 + } + } + ] + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/dimension_type/celesterra.json b/gm4_sky_dimension/data/gm4_sky_dimension/dimension_type/celesterra.json new file mode 100644 index 0000000000..dc14ec9530 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/dimension_type/celesterra.json @@ -0,0 +1,25 @@ +{ + "ultrawarm": false, + "natural": true, + "piglin_safe": true, + "respawn_anchor_works": true, + "bed_works": true, + "has_raids": false, + "has_skylight": true, + "has_ceiling": false, + "coordinate_scale": 1, + "ambient_light": 0.08, + "logical_height": 384, + "effects": "minecraft:overworld", + "infiniburn": "#minecraft:infiniburn_overworld", + "min_y": 0, + "height": 384, + "monster_spawn_light_level": { + "type": "minecraft:uniform", + "value": { + "min_inclusive": 0, + "max_inclusive": 7 + } + }, + "monster_spawn_block_light_limit": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/biome/desolate_void.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/biome/desolate_void.json new file mode 100644 index 0000000000..0e4f1e88d3 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/biome/desolate_void.json @@ -0,0 +1,41 @@ +{ + "temperature": 0.5, + "downfall": 0.5, + "has_precipitation": false, + "effects": { + "sky_color": 8103167, + "fog_color": 12638463, + "water_color": 4159204, + "water_fog_color": 329011, + "mood_sound": { + "sound": "minecraft:ambient.cave", + "tick_delay": 6000, + "block_search_extent": 8, + "offset": 2 + } + }, + "spawners": { + "ambient": [], + "axolotls": [], + "creature": [], + "misc": [], + "monster": [], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": {}, + "features": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/biome/floating_falls.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/biome/floating_falls.json new file mode 100644 index 0000000000..783ac34736 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/biome/floating_falls.json @@ -0,0 +1,167 @@ +{ + "temperature": 1, + "downfall": 1, + "has_precipitation": true, + "temperature_modifier": "none", + "effects": { + "sky_color": 7907327, + "fog_color": 12638463, + "water_color": 4159204, + "water_fog_color": 329011, + "mood_sound": { + "sound": "minecraft:ambient.cave", + "tick_delay": 6000, + "block_search_extent": 8, + "offset": 2 + } + }, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "weight": 10, + "minCount": 8, + "maxCount": 8 + } + ], + "axolotls": [], + "creature": [ + { + "type": "minecraft:turtle", + "weight": 5, + "minCount": 2, + "maxCount": 5 + } + ], + "misc": [], + "monster": [ + { + "type": "minecraft:spider", + "weight": 100, + "minCount": 4, + "maxCount": 4 + }, + { + "type": "minecraft:zombie", + "weight": 95, + "minCount": 4, + "maxCount": 4 + }, + { + "type": "minecraft:zombie_villager", + "weight": 5, + "minCount": 1, + "maxCount": 1 + }, + { + "type": "minecraft:skeleton", + "weight": 100, + "minCount": 4, + "maxCount": 4 + }, + { + "type": "minecraft:creeper", + "weight": 100, + "minCount": 4, + "maxCount": 4 + }, + { + "type": "minecraft:slime", + "weight": 100, + "minCount": 4, + "maxCount": 4 + }, + { + "type": "minecraft:enderman", + "weight": 10, + "minCount": 1, + "maxCount": 4 + }, + { + "type": "minecraft:witch", + "weight": 5, + "minCount": 1, + "maxCount": 1 + } + ], + "underground_water_creature": [ + { + "type": "minecraft:glow_squid", + "weight": 10, + "minCount": 4, + "maxCount": 6 + } + ], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": { + "air": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ] + }, + "features": [ + [], + [ + "gm4_sky_dimension:floating_falls_lakes", + "gm4_sky_dimension:floating_falls_springs" + ], + [ + "minecraft:amethyst_geode" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_dirt", + "minecraft:ore_granite_upper", + "minecraft:ore_granite_lower", + "minecraft:ore_diorite_upper", + "minecraft:ore_diorite_lower", + "minecraft:ore_andesite_upper", + "minecraft:ore_andesite_lower", + "minecraft:ore_tuff", + "minecraft:ore_coal_upper", + "minecraft:ore_coal_lower", + "minecraft:ore_iron_upper", + "minecraft:ore_iron_middle", + "minecraft:ore_iron_small", + "minecraft:ore_gold", + "minecraft:ore_gold_lower", + "minecraft:ore_redstone", + "minecraft:ore_redstone_lower", + "minecraft:ore_diamond", + "minecraft:ore_diamond_medium", + "minecraft:ore_diamond_large", + "minecraft:ore_diamond_buried", + "minecraft:ore_lapis", + "minecraft:ore_lapis_buried", + "minecraft:ore_copper", + "minecraft:underwater_magma" + ], + [ + "gm4_sky_dimension:floating_falls_shore" + ], + [ + "minecraft:spring_water" + ], + [ + "minecraft:glow_lichen", + "minecraft:flower_default", + "minecraft:patch_grass_badlands", + "minecraft:brown_mushroom_normal", + "minecraft:red_mushroom_normal", + "minecraft:patch_sugar_cane", + "minecraft:patch_pumpkin" + ], + [ + "minecraft:freeze_top_layer" + ] + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/configured_feature/floating_falls_lake_water.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/configured_feature/floating_falls_lake_water.json new file mode 100644 index 0000000000..c44e7ea5b3 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/configured_feature/floating_falls_lake_water.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:lake", + "config": { + "fluid": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:water", + "Properties": { + "level": "0" + } + } + }, + "barrier": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:ice" + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/configured_feature/floating_falls_shore.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/configured_feature/floating_falls_shore.json new file mode 100644 index 0000000000..986a60075f --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/configured_feature/floating_falls_shore.json @@ -0,0 +1,185 @@ +{ + "type": "minecraft:disk", + "config": { + "state_provider": { + "fallback": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:mud" + } + }, + "rules": [ + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + -1, + -1, + -1 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + -1, + -1, + 0 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + -1, + -1, + 1 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + 0, + -1, + -1 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + 0, + -1, + 0 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + 0, + -1, + 1 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + 1, + -1, + -1 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + 1, + -1, + 0 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + }, + { + "if_true": { + "type": "minecraft:matching_blocks", + "offset": [ + 1, + -1, + 1 + ], + "blocks": "minecraft:water" + }, + "then": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:air" + } + } + } + ] + }, + "target": { + "type": "minecraft:matching_blocks", + "offset": [ + 0, + 0, + 0 + ], + "blocks": "minecraft:mud" + }, + "radius": { + "type": "minecraft:uniform", + "value": { + "min_inclusive": 1, + "max_inclusive": 3 + } + }, + "half_height": 1 + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/continents/sea_level.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/continents/sea_level.json new file mode 100644 index 0000000000..8a098307d7 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/continents/sea_level.json @@ -0,0 +1,43 @@ +{ + "type": "minecraft:min", + "argument1": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 16, + "max_exclusive": 192, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 170, + "to_y": 16, + "from_value": 0, + "to_value": -0.2 + }, + "when_out_of_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 16, + "to_y": 0, + "from_value": -0.2, + "to_value": -2 + } + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 192, + "max_exclusive": 380, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 512, + "to_y": 192, + "from_value": -0.5, + "to_value": 0 + }, + "when_out_of_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": 192, + "from_value": -1, + "to_value": 0 + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/continents/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/continents/total.json new file mode 100644 index 0000000000..1b46189205 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/continents/total.json @@ -0,0 +1,111 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:continents/sea_level", + "argument2": { + "type": "minecraft:add", + "argument1": 0.35, + "argument2": { + "type": "minecraft:quarter_negative", + "argument": "gm4_sky_dimension:routers/continents" + } + } + }, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": -0.8, + "derivative": 0, + "value": -2 + }, + { + "location": -0.5, + "derivative": 0, + "value": -0.7 + }, + { + "location": -0.43, + "derivative": 0, + "value": 0 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 0, + "max_exclusive": 192, + "when_in_range": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 192, + "to_y": 48, + "from_value": 0.8, + "to_value": -0.4 + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -0.3, + "argument2": { + "type": "minecraft:add", + "argument1": -0.7, + "argument2": { + "type": "minecraft:noise", + "noise": "gm4_sky_dimension:continentalness", + "xz_scale": 5, + "y_scale": 0 + } + } + }, + "argument2": { + "type": "minecraft:quarter_negative", + "argument": "gm4_sky_dimension:routers/continents" + } + } + }, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": -0.8, + "derivative": 0, + "value": -2 + }, + { + "location": -0.5, + "derivative": 0, + "value": -1.5 + }, + { + "location": -0.43, + "derivative": 0, + "value": 0 + } + ] + } + } + } + }, + "when_out_of_range": 0 + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/gradient_topside.json new file mode 100644 index 0000000000..ce6fb1605f --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 346, + "to_y": 220, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/gradient_underside.json new file mode 100644 index 0000000000..647fd7adbe --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 296, + "to_y": 120, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/terrain_topside.json new file mode 100644 index 0000000000..aba10f2b9b --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/center/gradient_topside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/terrain_underside.json new file mode 100644 index 0000000000..33f9b6c6a4 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/center/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.4, + "argument2": { + "type": "minecraft:add", + "argument1": 1.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 2, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/bowl/center/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/total.json new file mode 100644 index 0000000000..fbb8fe7dad --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/center/total.json @@ -0,0 +1,65 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/bowl/center/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": "gm4_sky_dimension:island_types/bowl/center/terrain_underside", + "when_out_of_range": -1 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/temperature" + } + }, + "points": [ + { + "location": 0, + "derivative": 0, + "value": -1.5 + }, + { + "location": 0.07, + "derivative": 0, + "value": 0 + }, + { + "location": 0.2, + "derivative": 0, + "value": 0 + }, + { + "location": 0.3, + "derivative": 0, + "value": -1.5 + }, + { + "location": 0.35, + "derivative": 0, + "value": 0 + }, + { + "location": 0.5, + "derivative": 0, + "value": 0 + }, + { + "location": 0.575, + "derivative": 0, + "value": -1.5 + }, + { + "location": 0.65, + "derivative": 0, + "value": 0 + } + ] + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/gradient_topside.json new file mode 100644 index 0000000000..726afbe4a0 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/gradient_topside.json @@ -0,0 +1,28 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 800, + "to_y": 280, + "from_value": -2, + "to_value": 0 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0, + "derivative": 0, + "value": 0.5 + }, + { + "location": 2, + "derivative": 0, + "value": -3 + } + ] + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/gradient_underside.json new file mode 100644 index 0000000000..fb09cf34ca --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 296, + "to_y": 0, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/terrain_topside.json new file mode 100644 index 0000000000..40d31431d2 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/edge/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/terrain_underside.json new file mode 100644 index 0000000000..cdd183207e --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/edge/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.4, + "argument2": { + "type": "minecraft:add", + "argument1": 1.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 2, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/bowl/edge/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/total.json new file mode 100644 index 0000000000..1afcd366e4 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/edge/total.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/bowl/edge/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": "gm4_sky_dimension:island_types/bowl/edge/terrain_underside", + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/total.json new file mode 100644 index 0000000000..7632661eab --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/bowl/total.json @@ -0,0 +1,53 @@ +{ + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/edge/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.7, + "derivative": 0, + "value": 0 + }, + { + "location": 0.83, + "derivative": 0, + "value": -1.5 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/center/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.72, + "derivative": 0, + "value": -1.5 + }, + { + "location": 0.82, + "derivative": 0, + "value": 0 + } + ] + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_hills.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_hills.json new file mode 100644 index 0000000000..9959e354ac --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_hills.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 290, + "to_y": 210, + "from_value": -3, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_topside.json new file mode 100644 index 0000000000..e177db1d89 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 480, + "to_y": 200, + "from_value": -5, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_underside.json new file mode 100644 index 0000000000..fd3fa2ba0f --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 300, + "to_y": 0, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/initial.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/initial.json new file mode 100644 index 0000000000..b3c6c7600c --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/initial.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/caves/terrain_hills", + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/caves/terrain_topside", + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": -1, + "when_out_of_range": 2 + }, + "when_out_of_range": { + "type": "minecraft:mul", + "argument1": 3, + "argument2": "gm4_sky_dimension:island_types/caves/terrain_underside" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_hills.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_hills.json new file mode 100644 index 0000000000..bbaf2c8ee8 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_hills.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/caves/gradient_hills", + "argument2": { + "type": "minecraft:mul", + "argument1": 1.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 1, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.04, + "argument2": { + "type": "minecraft:abs", + "argument": "minecraft:overworld/base_3d_noise" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_topside.json new file mode 100644 index 0000000000..42e0ca1e50 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_topside.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:mul", + "argument1": 0.1, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 10, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/caves/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 3, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 1, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.2, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:jagged", + "xz_scale": 1500, + "y_scale": 0 + } + } + } + } + }, + "argument2": "minecraft:overworld/base_3d_noise" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_underside.json new file mode 100644 index 0000000000..e56a81933a --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/caves/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.4, + "argument2": { + "type": "minecraft:add", + "argument1": 1, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 5.5, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/caves/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/total.json new file mode 100644 index 0000000000..6ee1ee915d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/caves/total.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/caves/terrain_hills", + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/caves/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 0.2, + "when_in_range": 0.1, + "when_out_of_range": -1 + }, + "when_out_of_range": { + "type": "minecraft:mul", + "argument1": 0.5, + "argument2": "gm4_sky_dimension:island_types/caves/terrain_underside" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/gradient_topside.json new file mode 100644 index 0000000000..e9584322bd --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 346, + "to_y": 106, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/gradient_underside.json new file mode 100644 index 0000000000..d59dc145f3 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 256, + "to_y": 0, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/terrain_topside.json new file mode 100644 index 0000000000..a23dba2d0d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/floating_falls/lake/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/terrain_underside.json new file mode 100644 index 0000000000..98328744e5 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/floating_falls/lake/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.4, + "argument2": { + "type": "minecraft:add", + "argument1": 0.6, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 2, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/floating_falls/lake/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/total.json new file mode 100644 index 0000000000..fc27f6fe7d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/lake/total.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/floating_falls/lake/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": "gm4_sky_dimension:island_types/floating_falls/lake/terrain_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/islands.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/islands.json new file mode 100644 index 0000000000..c4d3e671b2 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/islands.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.7, + "argument2": "gm4_sky_dimension:island_types/floating_falls/small_islands/wavy_sawtooth" + }, + "argument2": { + "type": "minecraft:add", + "argument1": 0.2, + "argument2": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/top", + "xz_scale": 5, + "y_scale": 5, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/sawtooth.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/sawtooth.json new file mode 100644 index 0000000000..bf5a7ed225 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/sawtooth.json @@ -0,0 +1,133 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 336, + "max_exclusive": 384, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": 336, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 288, + "max_exclusive": 336, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 336, + "to_y": 288, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 240, + "max_exclusive": 288, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 288, + "to_y": 240, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 192, + "max_exclusive": 240, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 240, + "to_y": 192, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 144, + "max_exclusive": 192, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 192, + "to_y": 144, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 96, + "max_exclusive": 144, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 144, + "to_y": 96, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 48, + "max_exclusive": 96, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 96, + "to_y": 48, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 0, + "max_exclusive": 48, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 48, + "to_y": 0, + "from_value": -0.3, + "to_value": -1 + }, + "when_out_of_range": 0 + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/total.json new file mode 100644 index 0000000000..a2a130c7f5 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/total.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 192, + "max_exclusive": 340, + "when_in_range": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 230, + "to_y": 180, + "from_value": 0, + "to_value": -1 + }, + "argument2": { + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:mul", + "argument1": 1.5, + "argument2": "gm4_sky_dimension:island_types/floating_falls/small_islands/islands" + } + } + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/wavy_sawtooth.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/wavy_sawtooth.json new file mode 100644 index 0000000000..f2ebfcb79d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/small_islands/wavy_sawtooth.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/floating_falls/small_islands/sawtooth", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.2, + "argument2": { + "type": "minecraft:noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 3, + "y_scale": 8 + } + } + }, + "min_inclusive": -10, + "max_exclusive": -0.3, + "when_in_range": "gm4_sky_dimension:island_types/floating_falls/small_islands/sawtooth", + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/total.json new file mode 100644 index 0000000000..10d81dd629 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/floating_falls/total.json @@ -0,0 +1,5 @@ +{ + "type": "minecraft:max", + "argument1": "gm4_sky_dimension:island_types/floating_falls/lake/total", + "argument2": "gm4_sky_dimension:island_types/floating_falls/small_islands/total" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/gradient.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/gradient.json new file mode 100644 index 0000000000..453644a6ab --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/gradient.json @@ -0,0 +1,43 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 32, + "max_exclusive": 192, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 128, + "to_y": 32, + "from_value": 0, + "to_value": -0.5 + }, + "when_out_of_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 32, + "to_y": 0, + "from_value": -0.5, + "to_value": -1.5 + } + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 192, + "max_exclusive": 368, + "when_in_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 368, + "to_y": 256, + "from_value": -0.5, + "to_value": 0 + }, + "when_out_of_range": { + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": 368, + "from_value": -1, + "to_value": -0.5 + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/noise.json new file mode 100644 index 0000000000..831b1b0769 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/noise.json @@ -0,0 +1,42 @@ +{ + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 0, + "max_exclusive": 384, + "when_in_range": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 1.7, + "argument2": { + "type": "minecraft:add", + "argument1": -0.3, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:vegetation", + "xz_scale": 5, + "y_scale": 5, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": 0.1, + "argument2": { + "type": "minecraft:mul", + "argument1": -0.3, + "argument2": { + "type": "minecraft:abs", + "argument": "gm4_sky_dimension:routers/erosion" + } + } + } + }, + "when_out_of_range": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/total.json new file mode 100644 index 0000000000..ebacd9797a --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/full_blobs/total.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:min", + "argument1": "gm4_sky_dimension:island_types/island_groups", + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/full_blobs/noise", + "argument2": "gm4_sky_dimension:island_types/full_blobs/gradient" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/gradient_topside.json new file mode 100644 index 0000000000..b570b9ae86 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 446, + "to_y": 106, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/gradient_underside.json new file mode 100644 index 0000000000..fb09cf34ca --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 296, + "to_y": 0, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/terrain_topside.json new file mode 100644 index 0000000000..d96b22bad1 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/huge_islands/main/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/terrain_underside.json new file mode 100644 index 0000000000..a486100cd8 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/huge_islands/main/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.4, + "argument2": { + "type": "minecraft:add", + "argument1": 1.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 2, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/huge_islands/main/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/total.json new file mode 100644 index 0000000000..db193b8095 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/main/total.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/huge_islands/main/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": "gm4_sky_dimension:island_types/huge_islands/main/terrain_underside", + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/total.json new file mode 100644 index 0000000000..5907292d13 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/huge_islands/total.json @@ -0,0 +1,5 @@ +{ + "type": "minecraft:min", + "argument1": "gm4_sky_dimension:island_types/island_groups", + "argument2": "gm4_sky_dimension:island_types/huge_islands/main/total" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/initial.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/initial.json new file mode 100644 index 0000000000..752d688a44 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/initial.json @@ -0,0 +1,456 @@ +{ + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/huge_islands/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.52, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.1, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": -0.05, + "derivative": 0, + "value": 0 + }, + { + "location": 0.05, + "derivative": 0, + "value": -1.5 + } + ] + } + }, + { + "location": 0.25, + "derivative": 0, + "value": -1.5 + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -1.5 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/floating_falls/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.54, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.1, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0, + "derivative": 0, + "value": -3 + }, + { + "location": 0.1, + "derivative": 0, + "value": 0 + } + ] + } + }, + { + "location": 0.25, + "derivative": 0, + "value": -3 + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -3 + } + ] + } + } + } + } + }, + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.55, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.2, + "derivative": 0, + "value": -2 + }, + { + "location": 0.3, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": -0.1, + "derivative": 0, + "value": 0 + }, + { + "location": 0.25, + "derivative": 0, + "value": -2 + } + ] + } + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -2 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/caves/initial", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.52, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.2, + "derivative": 0, + "value": -2 + }, + { + "location": 0.3, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0.25, + "derivative": 0, + "value": -2 + }, + { + "location": 0.35, + "derivative": 0, + "value": 0 + } + ] + } + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -2 + } + ] + } + } + } + } + } + }, + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.7, + "derivative": 0, + "value": -1.7 + }, + { + "location": 0.75, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.04, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0.4, + "derivative": 0, + "value": 0 + }, + { + "location": 0.6, + "derivative": 0, + "value": -1 + } + ] + } + }, + { + "location": 0.05, + "derivative": 0, + "value": -1 + } + ] + } + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/shattered/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.69, + "derivative": 0, + "value": -1 + }, + { + "location": 0.72, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.04, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0.4, + "derivative": 0, + "value": -2 + }, + { + "location": 0.6, + "derivative": 0, + "value": 0 + } + ] + } + }, + { + "location": 0.05, + "derivative": 0, + "value": -1 + } + ] + } + } + ] + } + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/full_blobs/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.7, + "derivative": 0, + "value": -1 + }, + { + "location": 0.71, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.05, + "derivative": 0, + "value": -1 + }, + { + "location": 0.06, + "derivative": 0, + "value": 0 + } + ] + } + } + ] + } + } + } + } + }, + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.55, + "derivative": 0, + "value": -2 + }, + { + "location": -0.45, + "derivative": 0, + "value": 0 + }, + { + "location": 0.67, + "derivative": 0, + "value": 0 + }, + { + "location": 0.71, + "derivative": 0, + "value": -1 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/stairs/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.55, + "derivative": 0, + "value": -2 + }, + { + "location": -0.48, + "derivative": 0, + "value": -1 + }, + { + "location": -0.45, + "derivative": 0, + "value": 0 + }, + { + "location": 0.67, + "derivative": 0, + "value": 0 + }, + { + "location": 0.71, + "derivative": 0, + "value": -1 + } + ] + } + } + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/island_groups.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/island_groups.json new file mode 100644 index 0000000000..446164616a --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/island_groups.json @@ -0,0 +1,68 @@ +{ + "type": "minecraft:mul", + "argument1": 2, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 500, + "to_y": -64, + "from_value": 0, + "to_value": -0.7 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/temperature" + } + }, + "points": [ + { + "location": 0, + "derivative": 0, + "value": -0.5 + }, + { + "location": 0.05, + "derivative": 0, + "value": 0.6 + }, + { + "location": 0.2, + "derivative": 0, + "value": 0.6 + }, + { + "location": 0.3, + "derivative": 0, + "value": 0 + }, + { + "location": 0.35, + "derivative": 0, + "value": 0.6 + }, + { + "location": 0.5, + "derivative": 0, + "value": 0.6 + }, + { + "location": 0.6, + "derivative": 0, + "value": 0 + }, + { + "location": 0.65, + "derivative": 0, + "value": 0.6 + } + ] + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/carver_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/carver_underside.json new file mode 100644 index 0000000000..a2ec4d774b --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/carver_underside.json @@ -0,0 +1,43 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 1.8, + "argument2": "gm4_sky_dimension:island_types/mountainous/canyons/gradient_carver" + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 2, + "argument2": { + "type": "minecraft:add", + "argument1": 1.4, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": 1.8, + "argument2": "gm4_sky_dimension:island_types/mountainous/canyons/noise_underside" + } + }, + "argument2": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_carver.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_carver.json new file mode 100644 index 0000000000..8ca2332a70 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_carver.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 226, + "to_y": 0, + "from_value": 0, + "to_value": -5 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_hills.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_hills.json new file mode 100644 index 0000000000..74228d7ed8 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_hills.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 330, + "to_y": 220, + "from_value": -3, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_noise.json new file mode 100644 index 0000000000..22d8066a1d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_noise.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 216, + "to_y": 0, + "from_value": 0, + "to_value": -4 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_topside.json new file mode 100644 index 0000000000..6fdc164b3f --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/gradient_topside.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 420, + "to_y": 210, + "from_value": -3, + "to_value": 0 + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 300, + "to_y": 298, + "from_value": -3, + "to_value": 0 + }, + "argument2": { + "type": "minecraft:y_clamped_gradient", + "from_y": 270, + "to_y": 268, + "from_value": -0.5, + "to_value": 0 + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/land_mass.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/land_mass.json new file mode 100644 index 0000000000..3d49ff8bba --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/land_mass.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/mountainous/canyons/terrain_hills", + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:mul", + "argument1": 0.12, + "argument2": "gm4_sky_dimension:island_types/mountainous/canyons/terrain_topside" + }, + "when_out_of_range": { + "type": "minecraft:mul", + "argument1": 0.23, + "argument2": "gm4_sky_dimension:island_types/mountainous/canyons/carver_underside" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/noise_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/noise_underside.json new file mode 100644 index 0000000000..542f8c0843 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/noise_underside.json @@ -0,0 +1,31 @@ +{ + "type": "minecraft:mul", + "argument1": -0.2, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/canyons/gradient_noise", + "argument2": { + "type": "minecraft:mul", + "argument1": 15, + "argument2": { + "type": "minecraft:add", + "argument1": 0.6, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/mid_bottom", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/terrain_hills.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/terrain_hills.json new file mode 100644 index 0000000000..f64b4eb0a6 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/terrain_hills.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/canyons/gradient_hills", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.3, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 1, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/terrain_topside.json new file mode 100644 index 0000000000..70d6197994 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/terrain_topside.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/canyons/gradient_topside", + "argument2": { + "type": "minecraft:mul", + "argument1": 2.5, + "argument2": { + "type": "minecraft:add", + "argument1": 0.3, + "argument2": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/total.json new file mode 100644 index 0000000000..cd20956d8e --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/canyons/total.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:mul", + "argument1": 0.015, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 60, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/canyons/land_mass", + "argument2": { + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:mul", + "argument1": 0.03, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:jagged", + "xz_scale": 1500, + "y_scale": 0 + } + } + } + } + }, + "argument2": "minecraft:overworld/base_3d_noise" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/carver_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/carver_underside.json new file mode 100644 index 0000000000..f27691d08d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/carver_underside.json @@ -0,0 +1,43 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 1.2, + "argument2": "gm4_sky_dimension:island_types/mountainous/normal/gradient_carver" + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 2, + "argument2": { + "type": "minecraft:add", + "argument1": 1.4, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0.8, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": 1.8, + "argument2": "gm4_sky_dimension:island_types/mountainous/normal/noise_underside" + } + }, + "argument2": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_carver.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_carver.json new file mode 100644 index 0000000000..8ca2332a70 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_carver.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 226, + "to_y": 0, + "from_value": 0, + "to_value": -5 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_hills.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_hills.json new file mode 100644 index 0000000000..ad2df58419 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_hills.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 290, + "to_y": 240, + "from_value": -3, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_noise.json new file mode 100644 index 0000000000..22d8066a1d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_noise.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 216, + "to_y": 0, + "from_value": 0, + "to_value": -4 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_topside.json new file mode 100644 index 0000000000..a755d770fa --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 480, + "to_y": 220, + "from_value": -5, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/land_mass.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/land_mass.json new file mode 100644 index 0000000000..f6907343d1 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/land_mass.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/mountainous/normal/terrain_hills", + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:mul", + "argument1": 0.2, + "argument2": "gm4_sky_dimension:island_types/mountainous/normal/terrain_topside" + }, + "when_out_of_range": { + "type": "minecraft:mul", + "argument1": 0.18, + "argument2": "gm4_sky_dimension:island_types/mountainous/normal/carver_underside" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/noise_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/noise_underside.json new file mode 100644 index 0000000000..713b51bca6 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/noise_underside.json @@ -0,0 +1,31 @@ +{ + "type": "minecraft:mul", + "argument1": -0.2, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/normal/gradient_noise", + "argument2": { + "type": "minecraft:mul", + "argument1": 15, + "argument2": { + "type": "minecraft:add", + "argument1": 0.6, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/mid_bottom", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/terrain_hills.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/terrain_hills.json new file mode 100644 index 0000000000..c851f15489 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/terrain_hills.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/normal/gradient_hills", + "argument2": { + "type": "minecraft:mul", + "argument1": 1.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0.8, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.04, + "argument2": { + "type": "minecraft:abs", + "argument": "minecraft:overworld/base_3d_noise" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/terrain_topside.json new file mode 100644 index 0000000000..9ae09f4599 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/normal/gradient_topside", + "argument2": { + "type": "minecraft:mul", + "argument1": 3, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0.8, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/total.json new file mode 100644 index 0000000000..f8f3e3dd67 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/normal/total.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:mul", + "argument1": 0.04, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 40, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/normal/land_mass", + "argument2": { + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:mul", + "argument1": 0.05, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:jagged", + "xz_scale": 1500, + "y_scale": 0 + } + } + } + } + }, + "argument2": "minecraft:overworld/base_3d_noise" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/total.json new file mode 100644 index 0000000000..c1d738db24 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/mountainous/total.json @@ -0,0 +1,53 @@ +{ + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/normal/total", + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/temperature" + }, + "points": [ + { + "location": 0.125, + "derivative": 0, + "value": 0 + }, + { + "location": 0.3, + "derivative": 0, + "value": -1.5 + } + ] + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/canyons/total", + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/temperature" + }, + "points": [ + { + "location": 0.23, + "derivative": 0, + "value": -1.5 + }, + { + "location": 0.3, + "derivative": 0, + "value": 0 + } + ] + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/carver_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/carver_underside.json new file mode 100644 index 0000000000..76b862c98d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/carver_underside.json @@ -0,0 +1,85 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/bottom/gradient_carver", + "argument2": { + "type": "minecraft:mul", + "argument1": -2, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 192, + "to_y": 0, + "from_value": 0, + "to_value": -1.1 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/vegetation" + }, + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.5, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.25, + "derivative": 0, + "value": 0 + }, + { + "location": 0, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.25, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.5, + "derivative": 0, + "value": 0 + }, + { + "location": 0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": 1, + "derivative": 0, + "value": 0.5 + } + ] + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": -1, + "when_out_of_range": "gm4_sky_dimension:island_types/normal/bottom/terrain_underside" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_carver.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_carver.json new file mode 100644 index 0000000000..c1a643465f --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_carver.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 90, + "to_y": -32, + "from_value": -1.5, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_topside.json new file mode 100644 index 0000000000..b686c246fa --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 140, + "to_y": 50, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_underside.json new file mode 100644 index 0000000000..44d2c2cb43 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 100, + "to_y": 16, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/noise.json new file mode 100644 index 0000000000..631bb62b87 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/noise.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/bottom", + "xz_scale": 7, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/shift.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/shift.json new file mode 100644 index 0000000000..e19ebf6d14 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/shift.json @@ -0,0 +1,62 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/vegetation" + }, + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.251, + "derivative": 0, + "value": 0 + }, + { + "location": -0.249, + "derivative": 0, + "value": 0.1 + }, + { + "location": 0.499, + "derivative": 0, + "value": 0.1 + }, + { + "location": 0.501, + "derivative": 0, + "value": 0.05 + }, + { + "location": 1, + "derivative": 0, + "value": 0.05 + } + ] + } + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:island_types/normal/bottom/noise", + "points": [ + { + "location": -0.001, + "derivative": 0, + "value": 0.03 + }, + { + "location": 0, + "derivative": 0, + "value": 0 + } + ] + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/terrain_topside.json new file mode 100644 index 0000000000..bf08fb3ecf --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/terrain_topside.json @@ -0,0 +1,31 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/bottom/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/bottom", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": -4, + "argument2": "gm4_sky_dimension:island_types/normal/bottom/shift" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/terrain_underside.json new file mode 100644 index 0000000000..4aac680128 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/bottom/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.7, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": 0.1, + "argument2": { + "type": "minecraft:mul", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/normal/bottom/shift" + } + }, + "argument2": { + "type": "minecraft:abs", + "argument": "gm4_sky_dimension:island_types/normal/bottom/noise" + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/normal/bottom/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/total.json new file mode 100644 index 0000000000..9e7fea8e3a --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/bottom/total.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/normal/bottom/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": "gm4_sky_dimension:island_types/normal/bottom/carver_underside", + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/carver_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/carver_underside.json new file mode 100644 index 0000000000..40f27709ee --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/carver_underside.json @@ -0,0 +1,85 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/mid_bottom/gradient_carver", + "argument2": { + "type": "minecraft:mul", + "argument1": -2, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": 0, + "from_value": 0, + "to_value": -1.1 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/vegetation" + }, + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.5, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.25, + "derivative": 0, + "value": 0 + }, + { + "location": 0, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.25, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.5, + "derivative": 0, + "value": 0 + }, + { + "location": 0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": 1, + "derivative": 0, + "value": 0.5 + } + ] + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": -1, + "when_out_of_range": "gm4_sky_dimension:island_types/normal/mid_bottom/terrain_underside" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_carver.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_carver.json new file mode 100644 index 0000000000..f3fbf0179d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_carver.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 240, + "to_y": 0, + "from_value": -1.5, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_topside.json new file mode 100644 index 0000000000..2cd7f42839 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 210, + "to_y": 130, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_underside.json new file mode 100644 index 0000000000..4442be2536 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 230, + "to_y": 32, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/noise.json new file mode 100644 index 0000000000..72a297dd7b --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/noise.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/mid_bottom", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/shift.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/shift.json new file mode 100644 index 0000000000..32cf5abee7 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/shift.json @@ -0,0 +1,62 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/vegetation" + }, + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.251, + "derivative": 0, + "value": 0 + }, + { + "location": -0.249, + "derivative": 0, + "value": 0.1 + }, + { + "location": 0.499, + "derivative": 0, + "value": 0.1 + }, + { + "location": 0.501, + "derivative": 0, + "value": 0.05 + }, + { + "location": 1, + "derivative": 0, + "value": 0.05 + } + ] + } + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:island_types/normal/mid_bottom/noise", + "points": [ + { + "location": -0.001, + "derivative": 0, + "value": 0.03 + }, + { + "location": 0, + "derivative": 0, + "value": 0 + } + ] + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/terrain_topside.json new file mode 100644 index 0000000000..ac08e908ec --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/terrain_topside.json @@ -0,0 +1,31 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/mid_bottom/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.8, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/mid_bottom", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": -4, + "argument2": "gm4_sky_dimension:island_types/normal/mid_bottom/shift" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/terrain_underside.json new file mode 100644 index 0000000000..93df8dc290 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/mid_bottom/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.5, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": 0.4, + "argument2": { + "type": "minecraft:mul", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/normal/mid_bottom/shift" + } + }, + "argument2": { + "type": "minecraft:abs", + "argument": "gm4_sky_dimension:island_types/normal/mid_bottom/noise" + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/normal/mid_bottom/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/total.json new file mode 100644 index 0000000000..245e9f9dd2 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/mid_bottom/total.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/normal/mid_bottom/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": "gm4_sky_dimension:island_types/normal/mid_bottom/carver_underside", + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/carver_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/carver_underside.json new file mode 100644 index 0000000000..100179b429 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/carver_underside.json @@ -0,0 +1,85 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/middle/gradient_carver", + "argument2": { + "type": "minecraft:mul", + "argument1": -2, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 450, + "to_y": 0, + "from_value": 0, + "to_value": -1.5 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/vegetation" + }, + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.5, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.25, + "derivative": 0, + "value": 0 + }, + { + "location": 0, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.25, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.5, + "derivative": 0, + "value": 0 + }, + { + "location": 0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": 1, + "derivative": 0, + "value": 0.5 + } + ] + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": -1, + "when_out_of_range": "gm4_sky_dimension:island_types/normal/middle/terrain_underside" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_carver.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_carver.json new file mode 100644 index 0000000000..28794b2ad0 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_carver.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 336, + "to_y": -32, + "from_value": -1.5, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_topside.json new file mode 100644 index 0000000000..14638f7613 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 286, + "to_y": 166, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_underside.json new file mode 100644 index 0000000000..909eeb2d68 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 276, + "to_y": 56, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/noise.json new file mode 100644 index 0000000000..091246177d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/noise.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 4, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/shift.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/shift.json new file mode 100644 index 0000000000..ce506d6c88 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/shift.json @@ -0,0 +1,62 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/vegetation" + }, + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.251, + "derivative": 0, + "value": 0 + }, + { + "location": -0.249, + "derivative": 0, + "value": 0.1 + }, + { + "location": 0.499, + "derivative": 0, + "value": 0.1 + }, + { + "location": 0.501, + "derivative": 0, + "value": 0.05 + }, + { + "location": 1, + "derivative": 0, + "value": 0.05 + } + ] + } + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:island_types/normal/middle/noise", + "points": [ + { + "location": -0.001, + "derivative": 0, + "value": 0.03 + }, + { + "location": 0, + "derivative": 0, + "value": 0 + } + ] + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/terrain_topside.json new file mode 100644 index 0000000000..e1dfe73f2d --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/terrain_topside.json @@ -0,0 +1,73 @@ +{ + "type": "minecraft:squeeze", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/middle/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": -1, + "argument2": "gm4_sky_dimension:island_types/normal/middle/shift" + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:quarter_negative", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 1.3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0, + "derivative": 0, + "value": 0 + }, + { + "location": 0.7, + "derivative": 0, + "value": 0.7 + } + ] + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/terrain_underside.json new file mode 100644 index 0000000000..6e9b745e1c --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/middle/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.3, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": 0.6, + "argument2": { + "type": "minecraft:mul", + "argument1": 3, + "argument2": "gm4_sky_dimension:island_types/normal/middle/shift" + } + }, + "argument2": { + "type": "minecraft:abs", + "argument": "gm4_sky_dimension:island_types/normal/middle/noise" + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/normal/middle/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/total.json new file mode 100644 index 0000000000..aff5275861 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/middle/total.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/normal/middle/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": { + "type": "minecraft:mul", + "argument1": 0.2, + "argument2": "gm4_sky_dimension:island_types/normal/middle/carver_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/carver_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/carver_underside.json new file mode 100644 index 0000000000..4cbbca61f4 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/carver_underside.json @@ -0,0 +1,122 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/top/gradient_carver", + "argument2": { + "type": "minecraft:mul", + "argument1": -2, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": 0, + "from_value": 0, + "to_value": -5.7 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/vegetation", + "points": [ + { + "location": -1, + "derivative": 0, + "value": 0 + }, + { + "location": -0.875, + "derivative": 0, + "value": 0 + }, + { + "location": -0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.625, + "derivative": 0, + "value": 0 + }, + { + "location": -0.5, + "derivative": 0, + "value": 0.5 + }, + { + "location": -0.375, + "derivative": 0, + "value": 0 + }, + { + "location": -0.25, + "derivative": 0, + "value": 0 + }, + { + "location": -0.125, + "derivative": 0, + "value": 0 + }, + { + "location": 0, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.125, + "derivative": 0, + "value": 0 + }, + { + "location": 0.25, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.375, + "derivative": 0, + "value": 0 + }, + { + "location": 0.5, + "derivative": 0, + "value": 0 + }, + { + "location": 0.625, + "derivative": 0, + "value": 0 + }, + { + "location": 0.75, + "derivative": 0, + "value": 0.5 + }, + { + "location": 0.875, + "derivative": 0, + "value": 0 + }, + { + "location": 1, + "derivative": 0, + "value": 0.5 + } + ] + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": -1, + "when_out_of_range": "gm4_sky_dimension:island_types/normal/top/terrain_underside" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_carver.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_carver.json new file mode 100644 index 0000000000..41ef7b4fcd --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_carver.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 386, + "to_y": 216, + "from_value": -1.5, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_topside.json new file mode 100644 index 0000000000..c069f6ee38 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": 276, + "from_value": -2, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_underside.json new file mode 100644 index 0000000000..6a0c863c18 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/gradient_underside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 356, + "to_y": 266, + "from_value": 0, + "to_value": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/terrain_topside.json new file mode 100644 index 0000000000..5eba1d92d7 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/top/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.5, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/top", + "xz_scale": 0, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/terrain_underside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/terrain_underside.json new file mode 100644 index 0000000000..33100ff8f1 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/terrain_underside.json @@ -0,0 +1,39 @@ +{ + "type": "minecraft:range_choice", + "input": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/top/gradient_underside", + "argument2": { + "type": "minecraft:mul", + "argument1": 0.7, + "argument2": { + "type": "minecraft:add", + "argument1": 0.2, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/top", + "xz_scale": 3, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } + }, + "argument2": -1 + }, + "min_inclusive": -1000000, + "max_exclusive": 0, + "when_in_range": { + "type": "minecraft:add", + "argument1": 1, + "argument2": "gm4_sky_dimension:island_types/normal/top/gradient_underside" + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/total.json new file mode 100644 index 0000000000..4a067396a3 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/top/total.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/normal/top/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 1000000, + "when_in_range": "gm4_sky_dimension:island_types/normal/top/carver_underside", + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/total.json new file mode 100644 index 0000000000..db8a1be878 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/normal/total.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:min", + "argument1": "gm4_sky_dimension:island_types/island_groups", + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": "gm4_sky_dimension:island_types/normal/middle/total", + "argument2": "gm4_sky_dimension:island_types/normal/mid_bottom/total" + }, + "argument2": { + "type": "minecraft:max", + "argument1": "gm4_sky_dimension:island_types/normal/top/total", + "argument2": "gm4_sky_dimension:island_types/normal/bottom/total" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/bridges.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/bridges.json new file mode 100644 index 0000000000..4cd7ca7399 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/bridges.json @@ -0,0 +1,79 @@ +{ + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 199, + "max_exclusive": 200, + "when_in_range": { + "type": "minecraft:mul", + "argument1": -4, + "argument2": { + "type": "minecraft:add", + "argument1": -0.1, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/high", + "xz_scale": 7, + "y_scale": 7, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "when_out_of_range": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 191, + "max_exclusive": 192, + "when_in_range": { + "type": "minecraft:mul", + "argument1": -4, + "argument2": { + "type": "minecraft:add", + "argument1": -0.08, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/high", + "xz_scale": 6, + "y_scale": 6, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "when_out_of_range": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 145, + "max_exclusive": 146, + "when_in_range": { + "type": "minecraft:mul", + "argument1": -5, + "argument2": { + "type": "minecraft:add", + "argument1": -0.09, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/high", + "xz_scale": 7, + "y_scale": 7, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "when_out_of_range": -1 + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/full_bridges.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/full_bridges.json new file mode 100644 index 0000000000..ff22698581 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/full_bridges.json @@ -0,0 +1,79 @@ +{ + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 190, + "max_exclusive": 191, + "when_in_range": { + "type": "minecraft:mul", + "argument1": -5, + "argument2": { + "type": "minecraft:add", + "argument1": -0.023, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/high", + "xz_scale": 1.3, + "y_scale": 1.3, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "when_out_of_range": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 196, + "max_exclusive": 197, + "when_in_range": { + "type": "minecraft:mul", + "argument1": -5, + "argument2": { + "type": "minecraft:add", + "argument1": -0.023, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/high", + "xz_scale": 1, + "y_scale": 1, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "when_out_of_range": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 150, + "max_exclusive": 151, + "when_in_range": { + "type": "minecraft:mul", + "argument1": -5, + "argument2": { + "type": "minecraft:add", + "argument1": -0.023, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/high", + "xz_scale": 1, + "y_scale": 1, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "when_out_of_range": -1 + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/noise.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/noise.json new file mode 100644 index 0000000000..ea396ae369 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/noise.json @@ -0,0 +1,42 @@ +{ + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 0, + "max_exclusive": 384, + "when_in_range": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 2, + "argument2": { + "type": "minecraft:add", + "argument1": -0.4, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:vegetation", + "xz_scale": 5, + "y_scale": 2, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": 0.1, + "argument2": { + "type": "minecraft:mul", + "argument1": -0.3, + "argument2": { + "type": "minecraft:abs", + "argument": "gm4_sky_dimension:routers/erosion" + } + } + } + }, + "when_out_of_range": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/total.json new file mode 100644 index 0000000000..e6d332bed0 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/shattered/total.json @@ -0,0 +1,13 @@ +{ + "type": "minecraft:max", + "argument1": { + "type": "minecraft:min", + "argument1": { + "type": "minecraft:max", + "argument1": "gm4_sky_dimension:island_types/shattered/bridges", + "argument2": "gm4_sky_dimension:island_types/shattered/noise" + }, + "argument2": "gm4_sky_dimension:island_types/normal/total" + }, + "argument2": "gm4_sky_dimension:island_types/shattered/full_bridges" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/gradient_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/gradient_topside.json new file mode 100644 index 0000000000..dae42f7a25 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/gradient_topside.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:y_clamped_gradient", + "from_y": 290, + "to_y": 40, + "from_value": -1, + "to_value": 0 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/terrain_topside.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/terrain_topside.json new file mode 100644 index 0000000000..c17fceaa6f --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/terrain_topside.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/stairs/gradient_topside", + "argument2": { + "type": "minecraft:add", + "argument1": 0.05, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:island_types/middle", + "xz_scale": 0.9, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/total.json new file mode 100644 index 0000000000..58eeb8cef9 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/stairs/total.json @@ -0,0 +1,86 @@ +{ + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 0, + "max_exclusive": 271, + "when_in_range": { + "type": "minecraft:min", + "argument1": { + "type": "minecraft:mul", + "argument1": 2, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_y": 384, + "to_y": -64, + "from_value": -0.4, + "to_value": -0.6 + }, + "argument2": { + "type": "minecraft:spline", + "spline": { + "coordinate": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:interpolated", + "argument": "gm4_sky_dimension:routers/temperature" + } + }, + "points": [ + { + "location": 0, + "derivative": 0, + "value": -0.5 + }, + { + "location": 0.05, + "derivative": 0, + "value": 0 + }, + { + "location": 0.22, + "derivative": 0, + "value": 0 + }, + { + "location": 0.3, + "derivative": 0, + "value": 0.6 + }, + { + "location": 0.33, + "derivative": 0, + "value": 0 + }, + { + "location": 0.52, + "derivative": 0, + "value": 0 + }, + { + "location": 0.6, + "derivative": 0, + "value": 0.6 + }, + { + "location": 0.63, + "derivative": 0, + "value": 0 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:range_choice", + "input": "gm4_sky_dimension:island_types/stairs/terrain_topside", + "min_inclusive": 0, + "max_exclusive": 0.03, + "when_in_range": 1, + "when_out_of_range": -1 + } + }, + "when_out_of_range": -1 +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/total.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/total.json new file mode 100644 index 0000000000..adb1ca91ee --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/island_types/total.json @@ -0,0 +1,456 @@ +{ + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/huge_islands/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.52, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.1, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": -0.05, + "derivative": 0, + "value": 0 + }, + { + "location": 0.05, + "derivative": 0, + "value": -1.5 + } + ] + } + }, + { + "location": 0.25, + "derivative": 0, + "value": -1.5 + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -1.5 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/floating_falls/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.54, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.1, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0, + "derivative": 0, + "value": -3 + }, + { + "location": 0.1, + "derivative": 0, + "value": 0 + } + ] + } + }, + { + "location": 0.25, + "derivative": 0, + "value": -3 + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -3 + } + ] + } + } + } + } + }, + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/mountainous/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.55, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.2, + "derivative": 0, + "value": -2 + }, + { + "location": 0.3, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": -0.1, + "derivative": 0, + "value": 0 + }, + { + "location": 0.25, + "derivative": 0, + "value": -2 + } + ] + } + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -2 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/caves/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.52, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.2, + "derivative": 0, + "value": -2 + }, + { + "location": 0.3, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0.25, + "derivative": 0, + "value": -2 + }, + { + "location": 0.35, + "derivative": 0, + "value": 0 + } + ] + } + } + ] + } + }, + { + "location": -0.47, + "derivative": 0, + "value": -2 + } + ] + } + } + } + } + } + }, + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/bowl/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.7, + "derivative": 0, + "value": -1.7 + }, + { + "location": 0.75, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.04, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0.4, + "derivative": 0, + "value": 0 + }, + { + "location": 0.6, + "derivative": 0, + "value": -1 + } + ] + } + }, + { + "location": 0.05, + "derivative": 0, + "value": -1 + } + ] + } + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/shattered/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.69, + "derivative": 0, + "value": -1 + }, + { + "location": 0.72, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.04, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/ridges", + "points": [ + { + "location": 0.4, + "derivative": 0, + "value": -2 + }, + { + "location": 0.6, + "derivative": 0, + "value": 0 + } + ] + } + }, + { + "location": 0.05, + "derivative": 0, + "value": -1 + } + ] + } + } + ] + } + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/full_blobs/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": 0.7, + "derivative": 0, + "value": -1 + }, + { + "location": 0.71, + "derivative": 0, + "value": { + "coordinate": "gm4_sky_dimension:routers/continents", + "points": [ + { + "location": 0.05, + "derivative": 0, + "value": -1 + }, + { + "location": 0.06, + "derivative": 0, + "value": 0 + } + ] + } + } + ] + } + } + } + } + }, + "argument2": { + "type": "minecraft:max", + "argument1": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/normal/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.55, + "derivative": 0, + "value": -2 + }, + { + "location": -0.45, + "derivative": 0, + "value": 0 + }, + { + "location": 0.67, + "derivative": 0, + "value": 0 + }, + { + "location": 0.71, + "derivative": 0, + "value": -1 + } + ] + } + } + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": "gm4_sky_dimension:island_types/stairs/total", + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:spline", + "spline": { + "coordinate": "gm4_sky_dimension:routers/erosion", + "points": [ + { + "location": -0.55, + "derivative": 0, + "value": -2 + }, + { + "location": -0.48, + "derivative": 0, + "value": -1 + }, + { + "location": -0.45, + "derivative": 0, + "value": 0 + }, + { + "location": 0.67, + "derivative": 0, + "value": 0 + }, + { + "location": 0.71, + "derivative": 0, + "value": -1 + } + ] + } + } + } + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/continents.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/continents.json new file mode 100644 index 0000000000..1df765f150 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/continents.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:continentalness", + "xz_scale": 0.07, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/density.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/density.json new file mode 100644 index 0000000000..addc9ba908 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/density.json @@ -0,0 +1,5 @@ +{ + "type": "minecraft:min", + "argument1": "gm4_sky_dimension:island_types/total", + "argument2": "gm4_sky_dimension:continents/total" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/depth.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/depth.json new file mode 100644 index 0000000000..1b6b8986ce --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/depth.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:cache_once", + "argument": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 300, + "max_exclusive": 384, + "when_in_range": 1, + "when_out_of_range": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 100, + "max_exclusive": 320, + "when_in_range": 0, + "when_out_of_range": { + "type": "minecraft:range_choice", + "input": "minecraft:y", + "min_inclusive": 8, + "max_exclusive": 100, + "when_in_range": -1, + "when_out_of_range": -2 + } + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/erosion.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/erosion.json new file mode 100644 index 0000000000..d3158a5eda --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/erosion.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:erosion", + "xz_scale": 0.25, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/initial_density.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/initial_density.json new file mode 100644 index 0000000000..65b446afa5 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/initial_density.json @@ -0,0 +1,5 @@ +{ + "type": "minecraft:min", + "argument1": "gm4_sky_dimension:island_types/initial", + "argument2": "gm4_sky_dimension:continents/total" +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/ridges.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/ridges.json new file mode 100644 index 0000000000..0f277d1b97 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/ridges.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:ridge", + "xz_scale": 0.03, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/temperature.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/temperature.json new file mode 100644 index 0000000000..ae8170d036 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/temperature.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:temperature", + "xz_scale": 0.25, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/vegetation.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/vegetation.json new file mode 100644 index 0000000000..b52f196b47 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/density_function/routers/vegetation.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:cache_2d", + "argument": { + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "gm4_sky_dimension:vegetation", + "xz_scale": 1, + "y_scale": 0, + "shift_x": "minecraft:shift_x", + "shift_y": 0, + "shift_z": "minecraft:shift_z" + } + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/continentalness.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/continentalness.json new file mode 100644 index 0000000000..c95d90efa3 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/continentalness.json @@ -0,0 +1,10 @@ +{ + "firstOctave": -9, + "amplitudes": [ + 1, + 1, + 0, + 1, + 1 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/erosion.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/erosion.json new file mode 100644 index 0000000000..4fff6fe06a --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/erosion.json @@ -0,0 +1,11 @@ +{ + "firstOctave": -10, + "amplitudes": [ + 1.5, + 0, + 1, + 0, + 0, + 0 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/bottom.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/bottom.json new file mode 100644 index 0000000000..24a6ee93dd --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/bottom.json @@ -0,0 +1,9 @@ +{ + "firstOctave": -8, + "amplitudes": [ + 1, + 1, + 1, + 1 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/high.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/high.json new file mode 100644 index 0000000000..c5ba780a71 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/high.json @@ -0,0 +1,11 @@ +{ + "firstOctave": -7, + "amplitudes": [ + 1, + 2, + 1, + 0, + 0, + 0 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/mid_bottom.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/mid_bottom.json new file mode 100644 index 0000000000..24a6ee93dd --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/mid_bottom.json @@ -0,0 +1,9 @@ +{ + "firstOctave": -8, + "amplitudes": [ + 1, + 1, + 1, + 1 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/middle.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/middle.json new file mode 100644 index 0000000000..24a6ee93dd --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/middle.json @@ -0,0 +1,9 @@ +{ + "firstOctave": -8, + "amplitudes": [ + 1, + 1, + 1, + 1 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/top.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/top.json new file mode 100644 index 0000000000..24a6ee93dd --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/island_types/top.json @@ -0,0 +1,9 @@ +{ + "firstOctave": -8, + "amplitudes": [ + 1, + 1, + 1, + 1 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/ridge.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/ridge.json new file mode 100644 index 0000000000..c5ba780a71 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/ridge.json @@ -0,0 +1,11 @@ +{ + "firstOctave": -7, + "amplitudes": [ + 1, + 2, + 1, + 0, + 0, + 0 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/temperature.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/temperature.json new file mode 100644 index 0000000000..b6ee838780 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/temperature.json @@ -0,0 +1,11 @@ +{ + "firstOctave": -8, + "amplitudes": [ + 1, + 1, + 0, + 0, + 0, + 0 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/vegetation.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/vegetation.json new file mode 100644 index 0000000000..c5ba780a71 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise/vegetation.json @@ -0,0 +1,11 @@ +{ + "firstOctave": -7, + "amplitudes": [ + 1, + 2, + 1, + 0, + 0, + 0 + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise_settings/celesterra.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise_settings/celesterra.json new file mode 100644 index 0000000000..37b81b4ece --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/noise_settings/celesterra.json @@ -0,0 +1,452 @@ +{ + "sea_level": -16, + "disable_mob_generation": false, + "aquifers_enabled": false, + "ore_veins_enabled": false, + "legacy_random_source": false, + "default_block": { + "Name": "minecraft:calcite" + }, + "default_fluid": { + "Name": "minecraft:water", + "Properties": { + "level": "0" + } + }, + "noise": { + "min_y": 0, + "height": 384, + "size_horizontal": 1, + "size_vertical": 2 + }, + "noise_router": { + "barrier": 0, + "fluid_level_floodedness": 0, + "fluid_level_spread": 0, + "lava": 0, + "temperature": "gm4_sky_dimension:routers/temperature", + "vegetation": "gm4_sky_dimension:routers/vegetation", + "continents": "gm4_sky_dimension:routers/continents", + "erosion": "gm4_sky_dimension:routers/erosion", + "depth": "gm4_sky_dimension:routers/depth", + "ridges": "gm4_sky_dimension:routers/ridges", + "initial_density_without_jaggedness": "gm4_sky_dimension:routers/initial_density", + "final_density": "gm4_sky_dimension:routers/density", + "vein_toggle": 0, + "vein_ridged": 0, + "vein_gap": 0 + }, + "spawn_target": [], + "surface_rule": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:dripstone_caves" + ] + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:above_preliminary_surface" + }, + "then_run": { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": true, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:packed_mud" + } + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:vertical_gradient", + "random_name": "gm4_sky_dimension:dripstone_underside", + "true_at_and_below": { + "above_bottom": 190 + }, + "false_at_and_above": { + "above_bottom": 200 + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:dripstone_block" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": false, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:calcite" + } + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:smooth_basalt" + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:badlands" + ] + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 230 + }, + "surface_depth_multiplier": 0, + "add_stone_depth": false + }, + "then_run": { + "type": "minecraft:bandlands" + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:terracotta" + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:snowy_slopes" + ] + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 300 + }, + "surface_depth_multiplier": 5, + "add_stone_depth": true + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:snow_block" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 250 + }, + "surface_depth_multiplier": 7, + "add_stone_depth": true + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:stone" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": false, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 115 + }, + "surface_depth_multiplier": 0, + "add_stone_depth": false + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:grass_block", + "Properties": { + "snowy": "false" + } + } + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 7, + "surface_type": "floor", + "add_surface_depth": true, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 115 + }, + "surface_depth_multiplier": 0, + "add_stone_depth": true + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:dirt" + } + } + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:calcite" + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "gm4_sky_dimension:floating_falls" + ] + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 220 + }, + "surface_depth_multiplier": 0, + "add_stone_depth": false + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:steep" + }, + "then_run": { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": false, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:blue_ice" + } + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": true, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:packed_ice" + } + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": false, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:not", + "invert": { + "type": "minecraft:y_above", + "anchor": { + "absolute": 207 + }, + "surface_depth_multiplier": 0, + "add_stone_depth": false + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:water", + "Properties": { + "level": "0" + } + } + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": true, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:mud" + } + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:desert" + ] + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": true, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:sand" + } + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:sandstone" + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": false, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:grass_block" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "offset": 0, + "surface_type": "floor", + "add_surface_depth": true, + "secondary_depth_range": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:dirt" + } + } + } + ] + } +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_lakes.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_lakes.json new file mode 100644 index 0000000000..211f1b8cd6 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_lakes.json @@ -0,0 +1,40 @@ +{ + "feature": "gm4_sky_dimension:floating_falls_lake_water", + "placement": [ + { + "type": "minecraft:count_on_every_layer", + "count": 256 + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "absolute": 220 + }, + "max_inclusive": { + "absolute": 384 + } + } + }, + { + "type": "minecraft:block_predicate_filter", + "predicate": { + "type": "minecraft:matching_blocks", + "blocks": [ + "minecraft:packed_ice", + "minecraft:blue_ice" + ] + } + }, + { + "type": "minecraft:surface_relative_threshold_filter", + "heightmap": "WORLD_SURFACE_WG", + "min_inclusive": -2, + "max_inclusive": 1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_shore.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_shore.json new file mode 100644 index 0000000000..d0adaffa37 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_shore.json @@ -0,0 +1,31 @@ +{ + "feature": "gm4_sky_dimension:floating_falls_shore", + "placement": [ + { + "type": "minecraft:count", + "count": 256 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR_WG" + }, + { + "type": "minecraft:block_predicate_filter", + "predicate": { + "type": "minecraft:matching_blocks", + "offset": [ + 0, + 0, + 0 + ], + "blocks": "minecraft:water" + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_springs.json b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_springs.json new file mode 100644 index 0000000000..30d49470f2 --- /dev/null +++ b/gm4_sky_dimension/data/gm4_sky_dimension/worldgen/placed_feature/floating_falls_springs.json @@ -0,0 +1,31 @@ +{ + "feature": "minecraft:spring_water", + "placement": [ + { + "type": "minecraft:count_on_every_layer", + "count": 200 + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "absolute": 220 + }, + "max_inclusive": { + "absolute": 384 + } + } + }, + { + "type": "minecraft:block_predicate_filter", + "predicate": { + "type": "minecraft:matching_blocks", + "blocks": "minecraft:calcite" + } + }, + { + "type": "minecraft:biome" + } + ] +}