promotional bannermobile promotional banner

Cave Generator

A powerful and customizable replacement for Mojang's cave generator.

File Details

CaveGenerator-0.18.jar

  • B
  • Jan 19, 2021
  • 306.37 KB
  • 22.1K
  • 1.12.2+2

File Name

CaveGenerator-0.18.jar

Supported Versions

  • 1.12.2
  • 1.12.1
  • 1.12

Cave Generator 0.18

 

This is a major release.

All of your existing presets will be automatically updated to accomodate new field names and standards, but preset authors still need to be aware that many features are now deprecated.

 

New Features

 

Cave Generator Wiki

 

This isn't a feature of Cave Generator per se, but is specifically relevant to this changelog.

Cave Generator now has an official wiki! You should consult this guide for understanding all of the changes that took place in this update.

Don't forget to head over to the Discord server for feedback and more information.

 

Variables

 

Cave Generator now supports variable declarations. This system is intended to facilitate future changes which will enable many presets to be combined into one single file.

Here's a quick overview of what they can do:

  • Declare reusable JSON values.
  • copy values into fields and arrays.
  • merge values at the current level. And,
  • import values from other files.

These changes will enable you to:

  • (Eventually) create master files that display a hierarchy of many presets.
  • Create parent files.
  • Clarify arbitrary values.
  • Decrease changes when editing common values.
  • Shorten longer objects. And,
  • Hopefully improve readability.

Here's a quick demo of a file which uses an imported variable:


Regular Imports

Hierarchy File

 

These changes can be fairly complicated. Understand that they are completely optional. You can consult this page in the guide for more info on using them.

 

Improved Clusters

 

The original stoneClusters generator has gained some new features and optimizations and accordingly has been renamed to just clusters.

Clusters now support noise-based generation. Here's a demo of what that enables:

Euclid's Tunnels
Blobs

Shared Noise Generation

 

Noise blocks now contain a new field, seed. This applies to all noise blocks. You can use this feature to have multiple noise generators produce the same noise and thus align or generate in layers.

 

Other Noise Features

 

  • jitterX, jitterY, and jitterZ for controlling cellular jitter diferentially on each axis.
  • offset, to raise or lower the entire output by X blocks.

 

Commands

 

Cave Generator now ships with the following new commands:

  • /cave jump
  • /cave expand
  • /cave compress

See this page for more information.

 

Syntax Helper

 

Implemented SyntaxHelper, which will detect a variety of common syntax errors and report them to you more clearly.

This includes:

  • Commas inside of unquoted strings
  • Comments inside of unquoted strings
  • Semicolons inside of strings.

 

Config File

 

Cave Generator 0.18 adds a couple of new config file options. Here's a look at what they do:

forceEnableCavernBiomes

Forcibly enable biome restrictions on caverns. Expect flat walls.

heightMapDims

A list of dimensions in which to run HeightMapLocator Disable this in any dimension that doesn't have regular oceans and rivers.

 

Renamed Fields

 

Several fields have been renamed. Here's an exaustive list:

  • angleXZ -> yaw
  • angleY -> pitch
  • twistXZ -> dYaw or delta yaw.
  • twistY -> dPitch or detla pitch.
  • stoneClusters -> clusters

blankSlate: false has been removed. Replace it with this statement to generate the equivalent properties:

$VANILLA: ALL

These values will be copied out of imports/defaults.cave. You can edit this file to update any preset that uses this statement.

 

Fixes

  • Fixed giantPillars not supporting biome restrictions.
  • Fixed clusters producing artifacts when used with biome restrictions.
  • Fixed a few single element arrays requiring braces when others don't.

 

Miscellaneous

 

  • Preset diagnostics should be easier to read.
  • There is a new tutorial file, TUTORIAL.cave and TUTORIAL_STRIPPED.cave. vanilla.cave is just a regular preset now.

 

Help Wanted

 

I am currently looking for feedback on many of the new and upcoming features in this mod. I am also hoping to port this mod over to newer MC versions, but this will take an extremely long time.
Please head over to the Discord server if you'd like to help out and improve this mod.

If you're enjoying this mod and want to support it, please give us a star on Github. Thanks for your help!