What is this mod about?
-
Create your world gen features easily with this library. It allow you to generate simple shapes that combined together can create some beautiful features.
-
This mod also support multi-chunk features.
-
You can also manipulate structure and placing them in the world
-
One other functionnality that is not implemented for the moment is the support for custom particles shape
What Shapes can you create?
you can for the moment create :
- Circles
- Spheres
- Cylinders
- 2d and 3d ellipsoid
- Lines between 2 points
- Spirals and some variations
- Tores
Other features?
Yes there are a performance maths class as well as some utility world gen class that provide useful methods and a Class for perlin noise
Setup
if you are developping a mod and you want to use this library, you can put this in your build.gradle
:
repositories {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
content {
includeGroup "maven.modrinth"
}
}
}
dependencies {
modImplementation "maven.modrinth:ewc:<version>"
}
you can find the version in the version tab (ex: 2.1.2-1.20.4)
Info
Wiki
I highly recommend you go to check the wiki to understand everything that is possible : Mod-Wiki
Performance
this mod use is own maths that you can use For example calculating 1 000 000 cosinus :
gives an avarage calculating time of 476 ms when using Math.cos()
, using the custom maths, you get an average time of 7ms when using FatsMaths.getFastCos()
and an average of 14ms when using FastMaths.getPreciseCos()
Using the library
the methods comes with common parameter :
StructureWorldAccess world
that is used to put the structure in the world. StructureWorldAccess
allow you to use the feature either during world gen or not
BlockPos pos
the position of the center of the structure
List<BlockLayer> layers
a list of BlockLayer, see the wiki for more info : Mod-Wiki
The different size required for the shape to place
Future?
I continue to develop actively this mod to support more and more possible things. You have any idea, suggestion on how to improve the mod? Let me know on the github.