Replies: 2 comments
-
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Beta Was this translation helpful? Give feedback.
0 replies
-
This will be much more feasible after the Registry Modification API is merged from #8920 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Is your feature request related to a problem?
World generators currently have no way of interacting with Vanilla's "Configured Features", an essential part of world generation which defines "features" to generate in the world, based on "configurations."
Examples of things generated by features include:
World generators must currently re-implement all these on their own. There should be API to use the Vanilla features, and, ideally, to create and register custom features.
Describe the solution you'd like.
I will be using the Yarn names for the following Spigot-named classes:
WorldGenFeatureConfigured
->ConfiguredFeature
WorldGenFeatureConfiguration
->FeatureConfig
WorldGenerator
->Feature
Add interfaces which delegate to
Feature
,FeatureConfig
, andConfiguredFeature
. Add a registry which is populated with the default configured features, with the option for plugins to register their own.On its own, this API is only useful to "clean up" and standardize custom world generators. With just this API, plugins would still have to manually place their features.
This would be very powerful when paired with a custom biome API, however, since with a custom BiomeSource using custom biomes, plugins could simply register their features to their biomes to have them generated.
Ideally, there would also initially be API to add features to Vanilla biomes. This would make gross
BlockPopulator
hacks to add things to Vanilla worlds obsolete.Describe alternatives you've considered.
Plugins currently must implement all features manually, with no standardized API to work from.
Agreements
Other
No response
Beta Was this translation helpful? Give feedback.
All reactions