Dann's World Generator - Oasis Desert Demo [1.14.x - 1.15.x] (Uses an organic tree generator) icon

Dann's World Generator - Oasis Desert Demo [1.14.x - 1.15.x] (Uses an organic tree generator) -----

Epic overgrown jungles surrounded by desert!




This version was tested on Spigot 1.16.
----------, Jan 16, 2021

This update fixes the bug that prevents ender pearls from showing accurate directions in non-DWG worlds.
----------, Apr 26, 2020

The default configuration file doesn't generate diamonds. This fixes the default config file, but will not fix an existing config file.

The ores-per-chunk value of the diamond ore is smaller than the average per chunk (min + variation/2).

IMPORTANT: To fix this on your server set the values for the vanilla-diamond exactly like below. The important change here is the ores-per-chunk value changed from 2 to 3.

Code (YAML):
 vanilla-diamond:
    element-type
: 'DIAMOND_ORE'
    ores-per-chunk
: 3
    vertical-region
:
      max-y
: 16
      min-y
: 0
    ores-per-vein
:
      min
: 2
      variation
: 3
    replaces
: ['STONE' ]
----------, Mar 26, 2020

This update adds a permission node for the /dwg regen command for use on public servers.

dwg_oasisdesert.command.regen
----------, Mar 26, 2020

This update fixes a problem with the configuration file. The bug causes ores not to spawn the first time a server is started using DWG. This update also evens the long cave distribution out a little bit.
----------, Mar 25, 2020

Click on GIFs for HD video
[​IMG]

We've all been waiting for e a cave upgrade for a year now, here it is ;). This is a massive upgrade to the underground and to some aspects of the above-ground terrain.

This update required upgrading entire parts of my custom engine framework. Modularizing prop generators and terrain scanners was extremely important and took a lot of work to get right, but I finally feel confident with the results.

River Tunnels
[​IMG]
[​IMG]

The humidity inside the river tunnels allows for giant mushrooms and vines to thrive. The walls are populated with shelf mushrooms and the river beds spore different types of giant red and brown mushrooms. Vines link the ceiling to the river.

There are no trees deep inside those tunnels because of the darkness.

Stalactite Mushroom Cave
[​IMG]

This cave is themed around moss and humidity. It's occupied by different types of mushrooms and is sometimes bed to lakes. Realistic stalactite and stalagmite formations link the floor and ceiling surrounded by vines and sometimes cobweb.

It's not too rare, but most players will not spawn on top of one, so they'll have to look for it. A system can be up to 500 blocks wide. The long caves can only pierce the sides of this cave and not the lake parts holding water, although this might happen on rare occasions.

Lava Caves
[​IMG]

Even deeper underground lava lakes of varying sizes formed multi-layered cavities by melting the ceiling above them. These cavities are very hot and dry, no plant life can survive them. It is possible to settle mining shelters along the upper levels of those caves because the air is colder there :).

The long vanilla-like caves can only pierce the top part of these caves.

Performance
Considering the amount of features this update brings one would expect performance to take a significant hit. Well it turns out with some extensive optimization chunk generation time is now 50% faster than 1.0.0.8!

The Regen Command
This update adds the ability to select an area and regenerate it using the regen command. I intended to allow regeneration of very large areas (1000+ chunks) without impacting TPS too much.

To use this feature:
/dwg a - selects chunk A
/dwg b - selects chunk B
/dwg regen - starts the regeneration task

Bedrock Configuration
Bedrock can be set to be smooth in config.yml.

Modular Prop Generator
In the release versions of the plugin the only props that were generated are the long vanilla-like caves and the trees. The code generating them is composed of monolithic functions that receive many variables and output the generated prop. This worked for a small number of props, but I quickly realized that a better modular solution is possible and could speed up the development time and/or increase the complexity of the props.

The modular system works as follows. A prop is made up of parts. As each part generates it calls other parts that are branching off of it. So for example in a basic tree you have the main branch, that would start children branches, and leaves at certain points. Another example is a cave system populated by a village: the main cavern generates and then starts the village room and props generator at different parts of it depending on the allocation algorithm.

The system allows for reuse of generic part generators in combination with custom parts for each prop. For example the branch generator can be used for trees but also for the long vanilla-like caverns (it actually is the same algorithm).

Terrain Pattern Scanner
T
o place props on walls and cavern ceilings I added another part to the core. This new part allows each prop to define the pattern it needs in order to spawn in a location. You can think of a pattern as a regex statement, it works in a similar way.

This also allows for each prop to report the exact blocks it needs to scan, which improved performance in my tests by about 50% in prop heavy forest areas like the forest.

The JAR
+ lava caves from levels 0 to 30
+ new pattern matching system
+ modular system for some props (no visual difference)
+ regeneration feature
+ bedrock configuration
+ Stalactite Mushroom cave
+ mushroom prop
+ vine prop
+ cobweb prop
+ performance improvements
+ change in version numbering from 1.0.1.0 to 1.1.0 by omitting the second digit
+ river tunnels improved decor
+ vines on oases walls
----------, Mar 25, 2020

Tree Distribution
The forests are now significantly more diverse with regions of smaller trees in between dense jungle. The general shape of the different regions is more organic.

New Tree Type
There is a new tree type added. It is about 80 blocks tall. It doesn't typically appear in dense jungles, but rather in regions with smaller or no trees.
[​IMG]
[​IMG]

Performance
Each chunk now generates from 25% to 40% faster than pervious version on multicore servers.
----------, Jan 25, 2020

This update significantly improves the tree distribution. The forests now look more natural and organic, and tree branches and shapes are more defined.
This update also brings better performance.

The terrain is not different from past builds, only the forest is. The configuration file is also the same as 1.0.0.6.
----------, Jan 18, 2020

Important:
If you have an older config.yml version you likely suffer from the no diamonds problem, to fix this simply change the value of vanilla-diamonds.ores-pre-chunk in config.yml from 2 to 3.

Changes:
- lava lighting now correct at first load
- caves are now easier to find
- default ore configuration for diamonds now actually generates diamonds (if you have an older version of this plugin installed -> read under 'important' to fix the no diamonds problem)
----------, Jan 13, 2020

This is the largest update yet for this plugin:
- fully configurable ores (in config.yml)
- small custom trees now spawn from saplings instead of default (when available, right now works only for jungle)
- a way to print out to the console statistics about chunk generation time (can be enabled in config.yml)

There still shouldn't be any changes to the seeds, but you should test that before deploying if it's important that the world looks the same.

Important: If you're updating from a previous version of the plugin, please use the new plugin name " DWG_OasisDesert" in Multiverse and/or bukkit.yml otherwise your world will load default chunks. Also before running your server with this plugin for the first time, please make sure to remove the old config.yml from the plugin's folder.
----------, Jan 9, 2020

I optimized some math that wasn't optimized in the last version.
----------, Jan 7, 2020

I fixed a type in the description. This is not worth an update but I'm not sure how else to fix it.
----------, Jan 7, 2020

Tiny under the hood fix, should not change results from seeds used with previous versions.
----------, Jan 6, 2020

There shouldn't be any difference between worlds generated with this version compared to 1.0.0.0.
This version simply adds a /dwg command for information.
----------, Jan 6, 2020

Resource Information
Author:
----------
Total Downloads: 10,946
First Release: Jan 6, 2020
Last Update: Jan 16, 2021
Category: ---------------
All-Time Rating:
41 ratings
Find more info at dann.studio...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings