Feature generation/1.19.3-0.3

From Voluminous Energy
Revision as of 22:07, 30 January 2023 by Eelt (talk | contribs) (→‎Biome modifiers)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Technical background

Starting in 1.19.3 dynamic registries are no longer conventionally done in code and must be done in JSON files (ignoring datagen). This means that mods shouldn't really have ConfiguredFeature<?,?> or PlacedFeature objects anymore as a part of their codebase as it should be done data-driven in JSON files.

Voluminous Energy has moved all it's configured features to JSON files under /worldgen/configured_feature. While placed features should similarly go under their respective folder in worldgen, Voluminous Energy exclusively relies on its VEAndedMultiBiomeModifier to dynamically generate PlacedFeature objects at runtime. Though, this may be considered bad practice since these placement objects aren't registered. Despite this, they still work when injected into biomes when Forge runs Biome Modifiers.

Ore blob features

Biome modifiers

JSON entry Whitelisted Biome tag Blacklisted Biome tag Triangular placement Count Bottom Anchor Top Anchor Rarity
bauxite_ore_beach minecraft:is_beach None Yes 8 62 92 0
bauxite_ore_mountain_high minecraft:is_mountain forge:is_snowy Yes 9 208 256 0
bauxite_ore_mountain_medium minecraft:is_mountain forge:is_snowy Yes 6 144 196 0
bauxite_ore_mountain_low minecraft:is_mountain forge:is_snowy Yes 10 96 140 0
bauxite_ore_overworld minecraft:is_overworld None No 10 10 60 0
cinnabar_ore_beach minecraft:is_beach None Yes 2 62 92 1
cinnabar_ore_mountains minecraft:is_mountain None Yes 7 102 292 0
cinnabar_ore_overworld minecraft:is_overworld None No 9 -64 320 0
eighzo_ore_end minecraft:is_end None No 3 10 36 0
galena_ore_overworld minecraft:is_overworld None No 3 -48 12 0
rutile_ore_overworld minecraft:is_overworld None No 3 -64 -32 0
saltpeter_ore_badlands minecraft:is_badlands minecraft:is_beach
forge:is_water
Yes 1 55 77 10
saltpeter_ore_hot_sandy forge:is_hot
forge:is_sandy
minecraft:is_beach
forge:is_water
No 4 55 320 0

Feature configuration

As mentioned in the technical background, configured features are now defined in JSON files.

Ore blob configuration data
JSON entry Targets Size Discard
saltpeter_ore_blob forge:ore_bearing_ground/sand/colorless_sand
forge:ore_bearing_ground/sand/red_sand
33 0
bauxite_ore_blob minecraft:stone_ore_replaceables
minecraft:deepslate_ore_replaceables
8
cinnabar_ore_blob 6
galena_ore_blob
rutile_ore_blob 4 0.75
eighzo_ore_blob forge:ore_bearing_ground/end_stone 0.5