rutgerkok / WorldGeneratorApi

Minecraft Spigot plugin that enables other plugins to customize world generation
MIT License
96 stars 9 forks source link

[Suggestion] Allow for deeper customization outside of block generation #3

Closed Uziskull closed 6 years ago

Uziskull commented 6 years ago

Right now, if I want to edit the part of the generation that has to do with underground lakes (those belong to the ChunkStatus.LIQUID_CARVED status of chunk creation), I have to use reflection to access those classes. Or, even if I want to edit something a bit less tricky, like lower bedrock generation (which belongs to ChunkStatus.BASE, like block generation does), I have to edit your InjectedChunkGenerator class (specifically, the createChunk method).

Ideally, it would be great if these were able to be customized by simply using your API. Some of these might be tricky to provide customization for, but at least an option to be able to generate flat bedrock would be easily doable and would provide a higher level of customization.

rutgerkok commented 6 years ago

Yeah, this is definitely something that is needed in the API. Right now, I'm working on making it compatible with Paper's async chunk generation feature, but after that I'll implement this.

rutgerkok commented 6 years ago

Ok, both issues have now been addressed. The WorldDecorator interface now contains methods to control both. I introduced "base decorations", which operate on a single chunk, instead of a 2x2 chunk area like most other decorations do.