promotional bannermobile promotional banner

World Depth Optimisation

Optimises for large worldheight worldgen mods by moving bedrock layer up with topology. Does nothing in vanilla worldgen.
java_AYliyex4mE.png

java_AYliyex4mE.png

zen_xXY8CJ5IeP.png

zen_xXY8CJ5IeP.png

Description

This was created using Claude. I just wanted to have a mod that does this.

  • Floating floor: in a world taller than 384 blocks, bedrock follows a smoothed version of the surface, a set depth below it, once the surface is high enough to lift it.
  • Structures: buried structures are raised to sit just above the lowest bedrock under them, and bedrock wins where it passes through one. Strongholds clear the highest bedrock under them instead, to keep the portal room whole.

The floor is approximate: because it is smoothed, rock under a sharp peak can run deeper than the setting.

Default depth maximum is 352, can be modified. Lowered values may create structure generation errors and higher values obviously may reduce the benefits of optimisation.

IMPORTANT NOTE: To keep the footprint small, this mod does not change anything about ore generation, and many worldgen mods have effects on ore generation themselves. It can be assumed that you will, for one example, have a hard time finding diamonds in mountainous areas where the bedrock is raised significantly. This has not been tested. Curiously, ancient cities, trial chambers, et cetera continue to generate normally.

Please raise any other potential issues with this change in the comments for me to look at.

Tested in superflat as well as tectonic + terralith worlds.

Main jar should not have any meaningful effect on vanilla worldgen since the scale is too small. Please let me know if it does. Benchmark jar has tools inside for testing in your own worldgen parameters, and sets the max height to 2048 for the tests.

- `/fbench run [label]` starts a benchmark. The label is optional and names the run in the results. If you leave it out, the world name is used.
- `/fbench stop` cancels the run and discards its results.

The tests load, idle, fly, settle, revisit, and edit (removing and placing blocks), taking about 3-5 minutes each. They measure frames, server ticks, memory, chunk generation, network update packet size estimations, save to disk time, block update time and lighting time, and a check of the terrain to verify bedrock depth.


World Depth Optimisation Team

profile avatar
Owner
  • 1
    Projects
  • 14
    Downloads