Add Oh The Trees You'll Grow partner generator

This commit is contained in:
Misode
2024-01-18 07:53:05 +01:00
parent f855c7d938
commit f3b852025d
7 changed files with 201 additions and 50 deletions

View File

@@ -317,7 +317,7 @@ export function SchemaGenerator({ gen, allowedVersions }: Props) {
<main class={`generator${previewShown ? ' has-preview' : ''}${projectShown ? ' has-project' : ''}`}>
{!gen.tags?.includes('partners') && <Ad id="data-pack-generator" type="text" />}
<div class="controls generator-controls">
{gen.wiki && <a class="btn btn-link tooltipped tip-se" aria-label={locale('learn_on_the_wiki')} href={`https://minecraft.wiki/w/${gen.wiki}`} target="_blank">
{gen.wiki && <a class="btn btn-link tooltipped tip-se" aria-label={locale('learn_on_the_wiki')} href={gen.wiki} target="_blank">
{Octicon.mortar_board}
<span>{locale('wiki')}</span>
</a>}

View File

@@ -0,0 +1,114 @@
import type { CollectionRegistry, SchemaRegistry } from '@mcschema/core'
import { Case, ListNode, Mod, NumberNode, ObjectNode, Opt, Reference as RawReference, StringNode as RawStringNode, Switch } from '@mcschema/core'
export function initOhTheTreesYoullGrow(schemas: SchemaRegistry, collections: CollectionRegistry) {
const Reference = RawReference.bind(undefined, schemas)
const StringNode = RawStringNode.bind(undefined, collections)
collections.register('ohthetreesyoullgrow:feature', [
'ohthetreesyoullgrow:tree_from_nbt_v1',
])
const BlockSet = ListNode(
StringNode({ validator: 'resource', params: { pool: 'block' } })
)
schemas.register('ohthetreesyoullgrow:configured_feature', Mod(ObjectNode({
type: StringNode({ validator: 'resource', params: { pool: 'ohthetreesyoullgrow:feature' as any } }),
config: ObjectNode({
[Switch]: ['pop', { push: 'type' }],
[Case]: {
'ohthetreesyoullgrow:tree_from_nbt_v1': {
base_location: StringNode({ validator: 'resource', params: { pool: '$structure' } }),
canopy_location: StringNode({ validator: 'resource', params: { pool: '$structure' } }),
can_grow_on_filter: Reference('block_predicate_worldgen'),
can_leaves_place_filter: Reference('block_predicate_worldgen'),
decorators: Opt(ListNode(
ObjectNode({
type: StringNode({ validator: 'resource', params: { pool: 'worldgen/tree_decorator_type' } }),
[Switch]: [{ push: 'type' }],
[Case]: {
'minecraft:alter_ground': {
provider: Reference('block_state_provider'),
},
'minecraft:attached_to_leaves': {
probability: NumberNode({ min: 0, max: 1 }),
exclusion_radius_xz: NumberNode({ integer: true, min: 0, max: 16 }),
exclusion_radius_y: NumberNode({ integer: true, min: 0, max: 16 }),
required_empty_blocks: NumberNode({ integer: true, min: 1, max: 16 }),
block_provider: Reference('block_state_provider'),
directions: ListNode(
StringNode({ enum: 'direction' })
),
},
'minecraft:beehive': {
probability: NumberNode({ min: 0, max: 1 }),
},
'minecraft:cocoa': {
probability: NumberNode({ min: 0, max: 1 }),
},
'minecraft:leave_vine': {
probability: NumberNode({ min: 0, max: 1 }),
},
},
}, { context: 'tree_decorator' })
)),
height: Reference('int_provider'),
leaves_provider: Reference('block_state_provider'),
leaves_target: BlockSet,
log_provider: Reference('block_state_provider'),
log_target: BlockSet,
max_log_depth: Opt(NumberNode({ integer: true })),
place_from_nbt: BlockSet,
},
},
}, { disableSwitchContext: true }),
}, { context: 'ohthetreesyoullgrow.configured_feature' }), {
default: () => ({
type: 'ohthetreesyoullgrow:tree_from_nbt_v1',
config: {
can_grow_on_filter: {
type: 'minecraft:matching_block_tag',
tag: 'minecraft:dirt',
},
can_leaves_place_filter: {
type: 'minecraft:replaceable',
},
height: {
type: 'minecraft:uniform',
value: {
min_inclusive: 5,
max_inclusive: 10,
},
},
leaves_provider: {
type: 'minecraft:simple_state_provider',
state: {
Name: 'minecraft:acacia_leaves',
Properties: {
distance: '7',
persistent: 'false',
waterlogged: 'false',
},
},
},
leaves_target: [
'minecraft:oak_leaves',
],
log_provider: {
type: 'minecraft:simple_state_provider',
state: {
Name: 'minecraft:acacia_log',
Properties: {
axis: 'y',
},
},
},
log_target: [
'minecraft:oak_log',
],
place_from_nbt: [],
},
}),
}))
}

View File

@@ -2,6 +2,7 @@ import type { CollectionRegistry, SchemaRegistry } from '@mcschema/core'
import { initImmersiveWeathering } from './ImmersiveWeathering.js'
import { initLithostitched } from './Lithostitched.js'
import { initObsidian } from './Obsidian.js'
import { initOhTheTreesYoullGrow } from './OhTheTreesYoullGrow.js'
export * from './ImmersiveWeathering.js'
export * from './Lithostitched.js'
@@ -10,4 +11,5 @@ export function initPartners(schemas: SchemaRegistry, collections: CollectionReg
initImmersiveWeathering(schemas, collections)
initLithostitched(schemas, collections)
initObsidian(schemas, collections)
initOhTheTreesYoullGrow(schemas, collections)
}

View File

@@ -133,6 +133,29 @@
"obsidian:block.display.block_model": "Block Model",
"obsidian:block.display.lore": "Lore",
"rule_test.blocks": "Blocks",
"rule_test.fluid": "Fluid"
"ohthetreesyoullgrow:feature.ohthetreesyoullgrow:tree_from_nbt_v1": "Tree from NBT v1",
"ohthetreesyoullgrow.configured_feature.type": "Type",
"ohthetreesyoullgrow.configured_feature.config": "Config",
"ohthetreesyoullgrow.configured_feature.config.base_location": "Base location",
"ohthetreesyoullgrow.configured_feature.config.base_location.help": "The path to the trunk structure piece.",
"ohthetreesyoullgrow.configured_feature.config.canopy_location": "Canopy location",
"ohthetreesyoullgrow.configured_feature.config.canopy_location.help": "The path to the canopy structure piece.",
"ohthetreesyoullgrow.configured_feature.config.can_grow_on_filter": "Can grow on filter",
"ohthetreesyoullgrow.configured_feature.config.can_grow_on_filter.help": "Block filter for which this tree is allowed to grow on. Checks all of the red wool positions defined by the trunk.",
"ohthetreesyoullgrow.configured_feature.config.can_leaves_place_filter": "Can leaves place filter",
"ohthetreesyoullgrow.configured_feature.config.can_leaves_place_filter.help": "Block filter for which this tree's leaves are allowed to place.",
"ohthetreesyoullgrow.configured_feature.config.decorators": "Decorators",
"ohthetreesyoullgrow.configured_feature.config.decorators.entry": "Decorator",
"ohthetreesyoullgrow.configured_feature.config.height": "Height",
"ohthetreesyoullgrow.configured_feature.config.height.help": "Int provider defining the height of the tree.",
"ohthetreesyoullgrow.configured_feature.config.leaves_provider": "Leaves provider",
"ohthetreesyoullgrow.configured_feature.config.leaves_target": "Leaves target",
"ohthetreesyoullgrow.configured_feature.config.leaves_target.entry": "Block",
"ohthetreesyoullgrow.configured_feature.config.log_provider": "Log provider",
"ohthetreesyoullgrow.configured_feature.config.log_target": "Log target",
"ohthetreesyoullgrow.configured_feature.config.log_target.entry": "Block",
"ohthetreesyoullgrow.configured_feature.config.max_log_depth": "Max log depth",
"ohthetreesyoullgrow.configured_feature.config.place_from_nbt": "Place from NBT",
"ohthetreesyoullgrow.configured_feature.config.place_from_nbt.help": "Additional blocks from the structure pieces that should be placed in the world.",
"ohthetreesyoullgrow.configured_feature.config.place_from_nbt.entry": "Block"
}

View File

@@ -15,7 +15,7 @@ import type { BlockStateRegistry, VersionId } from '../services/index.js'
import { CachedDecorator, CachedFeature } from '../services/index.js'
import { ModelWrapper } from './ModelWrapper.js'
const selectRegistries = ['loot_table.type', 'loot_entry.type', 'function.function', 'condition.condition', 'criterion.trigger', 'recipe.type', 'dimension.generator.type', 'dimension.generator.biome_source.type', 'dimension.generator.biome_source.preset', 'carver.type', 'feature.type', 'decorator.type', 'feature.tree.minimum_size.type', 'block_state_provider.type', 'trunk_placer.type', 'foliage_placer.type', 'tree_decorator.type', 'int_provider.type', 'float_provider.type', 'height_provider.type', 'structure_feature.type', 'surface_builder.type', 'processor.processor_type', 'rule_test.predicate_type', 'pos_rule_test.predicate_type', 'template_element.element_type', 'block_placer.type', 'block_predicate.type', 'material_rule.type', 'material_condition.type', 'structure_placement.type', 'density_function.type', 'root_placer.type', 'entity.type_specific.cat.variant', 'entity.type_specific.frog.variant', 'rule_block_entity_modifier.type', 'pool_alias_binding.type', 'lithostitched.worldgen_modifier.type', 'lithostitched.modifier_predicate.type']
const selectRegistries = ['loot_table.type', 'loot_entry.type', 'function.function', 'condition.condition', 'criterion.trigger', 'recipe.type', 'dimension.generator.type', 'dimension.generator.biome_source.type', 'dimension.generator.biome_source.preset', 'carver.type', 'feature.type', 'decorator.type', 'feature.tree.minimum_size.type', 'block_state_provider.type', 'trunk_placer.type', 'foliage_placer.type', 'tree_decorator.type', 'int_provider.type', 'float_provider.type', 'height_provider.type', 'structure_feature.type', 'surface_builder.type', 'processor.processor_type', 'rule_test.predicate_type', 'pos_rule_test.predicate_type', 'template_element.element_type', 'block_placer.type', 'block_predicate.type', 'material_rule.type', 'material_condition.type', 'structure_placement.type', 'density_function.type', 'root_placer.type', 'entity.type_specific.cat.variant', 'entity.type_specific.frog.variant', 'rule_block_entity_modifier.type', 'pool_alias_binding.type', 'lithostitched.worldgen_modifier.type', 'lithostitched.modifier_predicate.type', 'ohthetreesyoullgrow.configured_feature.type']
const hiddenFields = ['number_provider.type', 'score_provider.type', 'nbt_provider.type', 'int_provider.type', 'float_provider.type', 'height_provider.type']
const flattenedFields = ['feature.config', 'decorator.config', 'int_provider.value', 'float_provider.value', 'block_state_provider.simple_state_provider.state', 'block_state_provider.rotated_block_provider.state', 'block_state_provider.weighted_state_provider.entries.entry.data', 'rule_test.block_state', 'structure_feature.config', 'surface_builder.config', 'template_pool.elements.entry.element', 'decorator.block_survives_filter.state', 'material_rule.block.result_state']
const inlineFields = ['loot_entry.type', 'function.function', 'condition.condition', 'criterion.trigger', 'dimension.generator.type', 'dimension.generator.biome_source.type', 'feature.type', 'decorator.type', 'block_state_provider.type', 'feature.tree.minimum_size.type', 'trunk_placer.type', 'foliage_placer.type', 'tree_decorator.type', 'block_placer.type', 'rule_test.predicate_type', 'processor.processor_type', 'template_element.element_type', 'nbt_operation.op', 'number_provider.value', 'score_provider.name', 'score_provider.target', 'nbt_provider.source', 'nbt_provider.target', 'generator_biome.biome', 'block_predicate.type', 'material_rule.type', 'material_condition.type', 'density_function.type', 'root_placer.type', 'entity.type_specific.type', 'glyph_provider.type', 'sprite_source.type', 'rule_block_entity_modifier.type', 'immersive_weathering.area_condition.type', 'immersive_weathering.block_growth.growth_for_face.entry.direction', 'immersive_weathering.position_test.predicate_type', 'pool_alias_binding.type']

View File

@@ -140,14 +140,14 @@
"url": "loot-table",
"path": "loot_tables",
"schema": "loot_table",
"wiki": "Loot_table"
"wiki": "https://minecraft.wiki/w/Loot_table"
},
{
"id": "predicate",
"url": "predicate",
"path": "predicates",
"schema": "predicate",
"wiki": "Predicate"
"wiki": "https://minecraft.wiki/w/Predicate"
},
{
"id": "item_modifier",
@@ -155,35 +155,35 @@
"path": "item_modifiers",
"schema": "item_modifier",
"minVersion": "1.17",
"wiki": "Item modifier"
"wiki": "https://minecraft.wiki/w/Item modifier"
},
{
"id": "advancement",
"url": "advancement",
"path": "advancements",
"schema": "advancement",
"wiki": "Advancement/JSON_format"
"wiki": "https://minecraft.wiki/w/Advancement/JSON_format"
},
{
"id": "recipe",
"url": "recipe",
"path": "recipes",
"schema": "recipe",
"wiki": "Recipe#JSON_format"
"wiki": "https://minecraft.wiki/w/Recipe#JSON_format"
},
{
"id": "text_component",
"url": "text-component",
"schema": "text_component",
"noPath": true,
"wiki": "Raw_JSON_text_format#Java_Edition"
"wiki": "https://minecraft.wiki/w/Raw_JSON_text_format#Java_Edition"
},
{
"id": "damage_type",
"url": "damage-type",
"schema": "damage_type",
"minVersion": "1.19.4",
"wiki": "Damage_type"
"wiki": "https://minecraft.wiki/w/Damage_type"
},
{
"id": "chat_type",
@@ -207,7 +207,7 @@
"id": "pack_mcmeta",
"url": "pack-mcmeta",
"schema": "pack_mcmeta",
"wiki": "Data_pack#pack.mcmeta"
"wiki": "https://minecraft.wiki/w/Data_pack#pack.mcmeta"
},
{
"id": "dimension",
@@ -215,7 +215,7 @@
"schema": "dimension",
"tags": ["worldgen"],
"minVersion": "1.16",
"wiki": "Custom_dimension"
"wiki": "https://minecraft.wiki/w/Custom_dimension"
},
{
"id": "dimension_type",
@@ -223,7 +223,7 @@
"schema": "dimension_type",
"tags": ["worldgen"],
"minVersion": "1.16",
"wiki": "Dimension_type"
"wiki": "https://minecraft.wiki/w/Dimension_type"
},
{
"id": "worldgen/biome",
@@ -231,7 +231,7 @@
"tags": ["worldgen"],
"schema": "biome",
"minVersion": "1.16",
"wiki": "Custom_biome"
"wiki": "https://minecraft.wiki/w/Custom_biome"
},
{
"id": "worldgen/configured_carver",
@@ -239,7 +239,7 @@
"tags": ["worldgen"],
"schema": "configured_carver",
"minVersion": "1.16",
"wiki": "Custom_carver"
"wiki": "https://minecraft.wiki/w/Custom_carver"
},
{
"id": "worldgen/configured_feature",
@@ -247,7 +247,7 @@
"tags": ["worldgen"],
"schema": "configured_feature",
"minVersion": "1.16",
"wiki": "Configured_feature"
"wiki": "https://minecraft.wiki/w/Configured_feature"
},
{
"id": "worldgen/placed_feature",
@@ -255,7 +255,7 @@
"tags": ["worldgen"],
"schema": "placed_feature",
"minVersion": "1.18",
"wiki": "Placed_feature"
"wiki": "https://minecraft.wiki/w/Placed_feature"
},
{
"id": "worldgen/density_function",
@@ -263,7 +263,7 @@
"tags": ["worldgen"],
"schema": "density_function",
"minVersion": "1.18.2",
"wiki": "Density_function"
"wiki": "https://minecraft.wiki/w/Density_function"
},
{
"id": "worldgen/noise",
@@ -271,7 +271,7 @@
"tags": ["worldgen"],
"schema": "noise_parameters",
"minVersion": "1.18",
"wiki": "Noise"
"wiki": "https://minecraft.wiki/w/Noise"
},
{
"id": "worldgen/noise_settings",
@@ -279,7 +279,7 @@
"tags": ["worldgen"],
"schema": "noise_settings",
"minVersion": "1.16",
"wiki": "Custom_noise_settings"
"wiki": "https://minecraft.wiki/w/Custom_noise_settings"
},
{
"id": "worldgen/configured_structure_feature",
@@ -295,7 +295,7 @@
"tags": ["worldgen"],
"schema": "structure",
"minVersion": "1.19",
"wiki": "Structure/JSON_format"
"wiki": "https://minecraft.wiki/w/Structure/JSON_format"
},
{
"id": "worldgen/structure_set",
@@ -303,7 +303,7 @@
"tags": ["worldgen"],
"schema": "structure_set",
"minVersion": "1.18.2",
"wiki": "Structure_set"
"wiki": "https://minecraft.wiki/w/Structure_set"
},
{
"id": "worldgen/configured_surface_builder",
@@ -312,7 +312,7 @@
"schema": "configured_surface_builder",
"minVersion": "1.16",
"maxVersion": "1.17",
"wiki": "Configured_surface_builder"
"wiki": "https://minecraft.wiki/w/Configured_surface_builder"
},
{
"id": "worldgen/processor_list",
@@ -320,7 +320,7 @@
"tags": ["worldgen"],
"schema": "processor_list",
"minVersion": "1.16",
"wiki": "Processor_list"
"wiki": "https://minecraft.wiki/w/Processor_list"
},
{
"id": "worldgen/template_pool",
@@ -328,7 +328,7 @@
"tags": ["worldgen"],
"schema": "template_pool",
"minVersion": "1.16",
"wiki": "Template_pool"
"wiki": "https://minecraft.wiki/w/Template_pool"
},
{
"id": "worldgen/world_preset",
@@ -336,7 +336,7 @@
"tags": ["worldgen"],
"schema": "world_preset",
"minVersion": "1.19",
"wiki": "Custom_world_preset"
"wiki": "https://minecraft.wiki/w/Custom_world_preset"
},
{
"id": "worldgen/flat_level_generator_preset",
@@ -344,7 +344,7 @@
"tags": ["worldgen"],
"schema": "flat_level_generator_preset",
"minVersion": "1.19",
"wiki": "Custom_world_preset#Superflat_Level_Generation_Preset"
"wiki": "https://minecraft.wiki/w/Custom_world_preset#Superflat_Level_Generation_Preset"
},
{
"id": "world",
@@ -354,7 +354,7 @@
"tags": ["worldgen"],
"minVersion": "1.16",
"maxVersion": "1.19.3",
"wiki": "Custom"
"wiki": "https://minecraft.wiki/w/Custom"
},
{
"id": "tag/block",
@@ -362,7 +362,7 @@
"tags": ["tags"],
"path": "tags/blocks",
"schema": "block_tag",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/entity_type",
@@ -370,7 +370,7 @@
"tags": ["tags"],
"path": "tags/entity_types",
"schema": "entity_type_tag",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/fluid",
@@ -378,7 +378,7 @@
"tags": ["tags"],
"path": "tags/fluids",
"schema": "fluid_tag",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/game_event",
@@ -387,7 +387,7 @@
"path": "tags/game_events",
"schema": "game_event_tag",
"minVersion": "1.17",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/item",
@@ -395,7 +395,7 @@
"tags": ["tags"],
"path": "tags/items",
"schema": "item_tag",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/damage_type",
@@ -404,7 +404,7 @@
"path": "tags/damage_type",
"schema": "damage_type_tag",
"minVersion": "1.19.4",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/worldgen/biome",
@@ -413,7 +413,7 @@
"path": "tags/worldgen/biome",
"schema": "biome_tag",
"minVersion": "1.18.2",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/worldgen/structure",
@@ -422,7 +422,7 @@
"path": "tags/worldgen/structure",
"schema": "structure_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/worldgen/structure_set",
@@ -431,7 +431,7 @@
"path": "tags/worldgen/structure_set",
"schema": "structure_set_tag",
"minVersion": "1.18.2",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/worldgen/flat_level_generator_preset",
@@ -440,7 +440,7 @@
"path": "tags/worldgen/flat_level_generator_preset",
"schema": "flat_level_generator_preset_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/worldgen/world_preset",
@@ -449,7 +449,7 @@
"path": "tags/worldgen/world_preset",
"schema": "world_preset_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/banner_pattern",
@@ -458,7 +458,7 @@
"path": "tags/banner_pattern",
"schema": "banner_pattern_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/cat_variant",
@@ -467,7 +467,7 @@
"path": "tags/cat_variant",
"schema": "cat_variant_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/instrument",
@@ -476,7 +476,7 @@
"path": "tags/instrument",
"schema": "instrument_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/painting_variant",
@@ -485,7 +485,7 @@
"path": "tags/painting_variant",
"schema": "painting_variant_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "tag/point_of_interest_type",
@@ -494,7 +494,7 @@
"path": "tags/point_of_interest_type",
"schema": "point_of_interest_type_tag",
"minVersion": "1.19",
"wiki": "Tag#Java_Edition"
"wiki": "https://minecraft.wiki/w/Tag#Java_Edition"
},
{
"id": "block_definition",
@@ -502,7 +502,7 @@
"path": "blockstates",
"tags": ["assets"],
"schema": "block_definition",
"wiki": "Tutorials/Models#Block_states"
"wiki": "https://minecraft.wiki/w/Tutorials/Models#Block_states"
},
{
"id": "model",
@@ -510,7 +510,7 @@
"path": "models",
"tags": ["assets"],
"schema": "model",
"wiki": "Tutorials/Models"
"wiki": "https://minecraft.wiki/w/Tutorials/Models"
},
{
"id": "font",
@@ -519,7 +519,7 @@
"tags": ["assets"],
"schema": "font",
"minVersion": "1.16",
"wiki": "Resource_pack#Fonts"
"wiki": "https://minecraft.wiki/w/Resource_pack#Fonts"
},
{
"id": "atlas",
@@ -528,7 +528,7 @@
"tags": ["assets"],
"schema": "atlas",
"minVersion": "1.19.3",
"wiki": "Resource_pack#Atlases"
"wiki": "https://minecraft.wiki/w/Resource_pack#Atlases"
},
{
"id": "immersive_weathering.block_growth",
@@ -544,7 +544,8 @@
"path": "lithostitched/worldgen_modifier",
"tags": ["partners"],
"schema": "lithostitched:worldgen_modifier",
"minVersion": "1.20.2"
"minVersion": "1.20.2",
"wiki": "https://github.com/Apollounknowndev/lithostitched/wiki/Worldgen-Modifiers"
},
{
"id": "obsidian.item",
@@ -559,6 +560,15 @@
"path": "obsidian_block",
"tags": ["partners"],
"schema": "obsidian:block"
},
{
"id": "ohthetreesyoullgrow.configured_feature",
"url": "ohthetreesyoullgrow/feature",
"path": "configured_feature",
"tags": ["partners"],
"schema": "ohthetreesyoullgrow:configured_feature",
"minVersion": "1.20.3",
"wiki": "https://github.com/CorgiTaco/Oh-The-Trees-Youll-Grow/wiki/Generating-Your-Tree-With-Data-Packs!"
}
],
"legacyGuides": [

View File

@@ -177,6 +177,8 @@
"generator.obsidian.block": "Obsidian Block",
"partner.lithostitched": "Lithostitched",
"generator.lithostitched.worldgen_modifier": "Worldgen Modifier",
"partner.ohthetreesyoullgrow": "Oh The Trees You'll Grow",
"generator.ohthetreesyoullgrow.configured_feature": "OTTYG Feature",
"presets": "Presets",
"preview": "Visualize",
"preview.auto_scroll": "Auto scroll",