AdvancedWorldCreatorAPI icon

AdvancedWorldCreatorAPI -----

Full-API for generating new Biomes, Features and more




Changes the BiomeCarvers-Class to allow custom (DataPack)
Carvers
----------, Nov 8, 2024

- Removed "BiomeFeatureType": Carvers no longer need Classification to Liquid/Air-Carvers
Changed some Methods to match changes

- Removed the AdvancedBiomeProvider (which was used to add Custom Biomes)
Methods in the AdvancedWorldCreator are now removed and you now need to use the Bukkit-WorldCreator-Methods
Changed some Methods / Classes to match changes
- Changed BiomeProviderCheckerBoard, BiomeProviderDefault, BiomeProviderLines, BiomeProviderMultiNoise, BiomeProviderSingle, BiomeProviderSquares
Biomes created with this API now have the .getBukkitBiome() Method in the CustomBiome-Class and can be added to the Bukkit-BiomeProvider
Biomes added with DataPacks can be added with the Bukkit-BiomeProvider too [to get a DataPack-Biome just use following Registry: org.Bukkit.Registry.BIOME.get(##NamespacedKey##)]
Removed internal "AdvancedCustomWorldChunkManager" which is no longer needed
----------, Nov 8, 2024

Update to 1.21.3
- Some small internal changes but all in all everything should work again
----------, Oct 27, 2024

Probably works, but not everything is tested 100%.
Please report any Bugs/Crashes.
----------, Oct 20, 2024

Fixed an Issue with Paper (Paper removed needed parts from the generation)
----------, Jan 10, 2024

Initial Update (firsts tests are fine)
----------, Dec 29, 2023

Fixed a Bug: Paper removed a Constructor of a CraftBukkit-Class
----------, Jul 12, 2023

Added "StructurePlacementOverride"
- Allows changing structure placement rate (Villages, Ships, Igloo...)

For example:
Code (Text):
StructurePlacementOverride override = new StructurePlacementOverride();
override.setStructurePlacement(StructurePlacementOverride.StructurePlacementType.IGLOO, 4, 2);
advancedworldcreator.setStructurePlacementOverride(override);
----------, Jul 9, 2023

Updated to 1.20.1 but expecting Bugs.
Please contact me if you encounter any bugs (+ detailed information on what your doing).
[​IMG]
----------, Jul 6, 2023

Probably fixed an issue from Paper where certain Methods and Classes changed and caused errors.
----------, Mar 3, 2023

Fixes a small bug where restarting the server won't load the world correctly.
----------, Mar 1, 2023

-EnvironmentBuilder now has the option to set the Monster-Spawn-Light-Test and Monster-Spawn-Block-Light-Limit option to modify Monsterspawning

-Fixed a bug where the "/locate biome" command did not work probably
----------, Jan 5, 2023

Using custom biomes will now work with Custom-BiomeProvider
(Default Custom-BiomeProvider: BiomeProviderCheckerBoard, BiomeProviderDefault, BiomeProviderLines, BiomeProviderMultiNoise, BiomeProviderSingle, BiomeProviderSquares)

Biomes now have the BiomeDecorationPopulator which can be added with:
#addCustomDecorationPopulator(BiomeDecorationType , BiomeDecorationPopulator)
It allows to place small things like Ores but does not allow do do much stuff since it needs to be out of sync with Bukkit.

Custom Environments and GeneratorConfigurations will now work better and have more features to change stuff
----------, Jan 4, 2023

Updated to 1.19.3
- Please report all Bugs if you find some
- Some Features changed or are missing (write me if you miss something)
- Have fun!
----------, Jan 2, 2023

This update should bring back most of the features to 1.18.2.
Some of them are not 100% tested - make sure to report bugs (discord || spigot-page)

Currently the main feature that allows to define custom StructureConfiguration has been disabled/removed since it won't work anymore without editing the API itself.
----------, Mar 19, 2022

Added the BiomeProviderMultiNoise (setting Biomes based on terrain and other values)

Added the BiomeProviderDefault (a way to set biomes like Overworld/Nether but you can replace the Biomes that would generate with other Biomes too)


------------------------------------------------
Fixed Warnings about missing Keys.
----------, Jan 6, 2022

Added "BiomeProviderSingle" to create simple Worlds with just one Biome.

(Also added a method to add custom created stuff in biomes that will get used later =) )
----------, Jan 4, 2022

This update finally updates to 1.18.1 and fixed some smaller bugs/typos.
Also redundant code was removed.

JavaDocs:
https://javadocs.duckdns.org/AdvancedWorldCreatorAPI/
----------, Dec 10, 2021

This Update allows you to use the API in Minecraft 1.18.
Sadly too many stuff changed and there will be no support for older Versions anymore.

This Update also revamps the complete API:
- new Method-Names
- default WorldCreator-Settings-Support
- some Methods/Functions got removed since they are not available/replaced by the Bukkit-API

It will take some time to write down the new API, but here you can take a look on how to use it:


Code (Java):
BiomeCreator biomeCreator = new BiomeCreator ( "firstname", "secondname" ) ;
            biomeCreator. setWaterColor ( new java. awt. Color ( 76, 255, 255 ) ) ;
            biomeCreator. setGrassColor ( new java. awt. Color ( 136, 0, 0 ) ) ;
            biomeCreator. setSkyColor ( new java. awt. Color ( 1, 73, 51 ) ) ;
            biomeCreator. setWaterFogColor ( new java. awt. Color ( 255, 255, 255 ) ) ;

BiomeCreator. CustomBiome customBiome = biomeCreator. createBiome ( true ) ;


AdvancedWorldCreator creator = new AdvancedWorldCreator ( "testnewcreator" ) ;
            boolean hasSkylight = false ;
            boolean hasCeiling = true ;
            boolean ultraWarm = true ;
            boolean natural = false ;
            boolean createDragonFight = true ;
            boolean piglinSafe = false ;
            boolean bedWorks = true ;
            boolean respawnAnchorWorks = true ;
            boolean hasRaids = true ;
            creator. setEnvironmentBuilder ( new EnvironmentBuilder ( null, hasSkylight, hasCeiling, ultraWarm, natural,
                    1.0, createDragonFight, piglinSafe, bedWorks, respawnAnchorWorks, hasRaids, - 128, 1024, 1024, Tag. INFINIBURN_OVERWORLD. getKey ( ), NamespacedKey. minecraft ( "overworld" ), 1.0f ) ) ;

GeneratorConfiguration generatorConfig = new GeneratorConfiguration ( ) ;
            generatorConfig. setDefaultBlock (Material. DIAMOND_BLOCK ) ;
            generatorConfig. getNoiseGeneration ( ). setMinY ( - 128 ) ;
            generatorConfig. getNoiseGeneration ( ). setHeight ( 1024 ) ;
            creator. setGeneratorConfiguration (generatorConfig ) ;
creator. setAdvancedBiomeProvider ( new BiomeProviderLines. Builder ( 3, true )
        . addBiome (customBiome )
        . addBiome (org. bukkit. block. Biome. OCEAN ). create ( ) ) ;

creator. createWorld ( ) ;

 
----------, Dec 8, 2021

You can now place a RegisteredCustomBiome into the World!

Methods are available in the RegisteredCustomBiome-Object:
1.) boolean insertBiome(World world, int x, int z)
-> Will place the Biome from lowest Y up to max Y of the World
2.) boolean insertBiome(World world, int x, int y, int z)
-> Will place the Biome at exact this X/Y/Z-Position in the World
3.) boolean insertBiome(Block b, boolean fullHeight)
-> Will place the Biome at the Blocks-Position, or at the the full Height of the World if fullHeight = true
----------, Oct 20, 2021

You can now use all BiomeGenerators without using the NMS-Class 'Biomes'.

Just use the bukkit version, for example:

biomegenerator.addBiome(Biome.PLAINS);

(Usage of NMS is still supported.)
----------, Oct 6, 2021

Some changes made Spigot-Version buggy.

They are maybe fixed now.
----------, Sep 19, 2021

Paper remapped some classes from "fastutil" so they are not available if you use Paper.

I made some changes and hope most of the features will now work with Paper too.
----------, Sep 19, 2021

In the last Version there was no new Download-File
----------, Sep 19, 2021

This Version allows you to add your own Custom ChunkGenerator to the AdvancedCreator and also to disable the normal World-Generation at all.
----------, Sep 19, 2021

Changes:

You can now use this Method with the enum "WorldDecoration" instead of NMS-Values:

advancedcreator.setDecorationBlacklisted(WorldDecoration.RAW_GENERATION, false);

The Methode "setCustomWorldSetting" from the AdvancedCreator-Object now uses the Bukkit "BlockData" instead of the NMS-Value "IBlockData":
You can create your own BlockData with 'Bukkit.createBlockData(Material)'
While creating the CustomDimensionSettings, you have to specify a Bukkit-Tag as Tag for Infinity-Burning-Blocks instead of a MinecraftKey(NMS) and also for the WorldEffects you now have to choose one of the WorldEffects-Enum instead of a MinecraftKey(NMS)



Bug-Fixes:
CustomDimensionSettings had switched variables -> doBedWorks and respawnAnchorWorks were switched


Creating a Custom 1.17.1 Overworld with a total Height of 1280 Blocks here:
https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI/blob/main/Giant 1.17.1 World.md
----------, Sep 9, 2021

You can now use the Vanilla-Methods to create Ores & Trees with Custom Sizes & Materials:

Structures:
Useable with AdvancedCreator:
  • CustomOreStructure
Useable only with CustomForest:
  • CustomAcaciaTreeStructure
  • CustomBirchTreeStructure
  • CustomDarkOakTreeStructure
  • CustomFancyOakTreeStructure
  • CustomMegaJungleTreeStructure
  • CustomMegaPineTreeStructure
  • CustomMegaSpruceTreeStructure
  • CustomOakTreeStructure
  • CustomPineTreeStructure
  • CustomSmallJungleTreeStructure
  • CustomSpruceTreeStructure
----------, Jun 30, 2021

This Update of the API provides many Features to create fully custom Worlds.

Notice:
Some Features (Custom Forests & Ores) will not work with this Version.


You can always download the last 1.16.5 Version of this API here:
https://timcloud.ddns.net/github/AdvancedWorldCreatorAPI 1.16.5.jar
----------, Jun 21, 2021

- Disable specific Decoration-Types
For example: Vegetal, Underground, Lakes...

- Disable Caves (Air/Liquid)

- Disable the Surface Generation

Check out how to use them:

https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI/blob/main/Methods/AdvancedCreator.md

No Vegetal Decoration:
[​IMG]
----------, Apr 7, 2021

Check out how to use the new Features here:

List of all Vanilla Biomes: (1 new Method in AdvancedWorldCreatorAPI)
https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI/tree/main/Methods

Overwriting / Cloning: (2 new Methods in CustomBiome)
https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI/blob/main/Methods/CustomBiome.md
----------, Apr 6, 2021

This Bug is related to https://bugs.mojang.com/browse/MC-197616
After creating a World with a CustomBiome you need to relog (to recive the CustomBiome Data)
Or else the Client don't know about this Biome and will spam 'Received invalid biome id: 222' (id may be different) in the Client-Log (this will cause huge Lags and Game-Crashes)

Also the "replace=true" while registering a CustomBiome may now work better.
----------, Apr 5, 2021

Specific classes got changed/removed by Paper. This is the fix for it.
----------, Apr 2, 2021

Paper will have some issues with some Classes. This update is not a full fix for this. But some Features will now work also with Paper.

Also added a new BiomeGenerator to generate a World with just one Biome.
-> SingleBiomeGenerator
----------, Apr 2, 2021

Fixed some Bugs with the Generation of Custom Worlds with newer implemented Settings.
----------, Mar 6, 2021

I made some changes to some Method-Names and also renamed the WorldChunkManagers to BiomeGenerators.
Example:
DummyWorldChunkManagerOverworld will now called OverworldBiomeGenerator.

I hope this will help to understand this API a little bit.
----------, Mar 5, 2021

CustomBiome:
- You can now add Mobs to the CustomBiome (addMobToBiome)
- You can set a custom Surface (setCustomSurfaceBuilder)

Datapacks:
- You can now add StructureFeatures to your CustomBiome from Datapacks(getDatapackStructureFeature)
- You can now list the Datapack-Features

More Information here:
github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI
----------, Mar 3, 2021


In this update you can create a Custom World Generator (How Terrain will be generated)

Check out GitHub:
https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI/blob/main/Methods/CustomWorldGeneration.md

[​IMG] [​IMG]
----------, Feb 23, 2021

In this update you can use 2 new WorldChunkManagers (Lines, Squares).
Another Feature is CustomTrees, create your own Trees with the base of a vanilla Tree (Jungle, Oak...)
Check out Github for more Information:
https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI
Direct to CustomTrees:
https://github.com/FreeSoccerHDX/Ad.../main/Methods/CustomStructures/CustomTrees.md

WorldChunkManagerLines
[​IMG]
WorldChunkManagerSquares [​IMG]
----------, Feb 22, 2021

With CustomStructures you can modify or create special Structures,
for example:
Trees with Diamond-Block-Leaves or
Diamond-Block Ores

(Custom Trees coming soon as they take more time then ores)
[​IMG]
More Information Check out: https://github.com/FreeSoccerH DX/AdvancedWorldCreatorAPI/tree/main/Methods/CustomStructures
----------, Feb 20, 2021

There is now a "new" Method called

"registerCustomBiome(CustomBiome, replace)"
If replace is true you can change the CustomBiome-Settings and just run the registerCustomBiome again.
----------, Feb 19, 2021

With this update you can set the Prekey for Custom Biomes to almost everything you want. (default: 'awc', chars to use: a-z, 0-9)

More Features for the AdvancedCreator:
- setAllowMonsters
- setAllowAnimals
- setGameMode
- setDifficulty

Read more about the new Methods here:
https://github.com/FreeSoccerHDX/AdvancedWorldCreatorAPI
----------, Feb 18, 2021

Also updated GitHub for a better Documentation


- More Custom Biomes/Worlds examples planned.
----------, Feb 17, 2021

Resource Information
Author:
----------
Total Downloads: 13,086
First Release: Feb 16, 2021
Last Update: Nov 8, 2024
Category: ---------------
All-Time Rating:
10 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings