Cave Tweaks

The Cave Tweaks mod brings some improvements to cave generation, making cave entrances look nicer, with lots more variation, and making aquifers larger, along with some other improvements.

Released on January 13th of 2022, it’s available for Fabric and Forge, and is compatible with essentially every Worldgen mod out there, besides those that completely rewrite the terrain generation system.

You can also customize most aspects of Cave Tweaks ' cave modifications: giant caverns, better aquifers, and nicer 3D biomes, as well as modifying every type of vanilla noise cave. This is great for mod developers, or people who just want to mess around.

Configuration
The following is a detailled list of all of ' options.

Do note that you will have to restart your game or leave and rejoin your world and go load new chunks for the changes to apply and be visible. You can also leave your world and manually delete your region files for the chunks to reset entirely.

To disable or reduce some features, set them to a negative value.

Global toggles
Fairly self-explanatory. They enable or disable that particular type of cave.
 * Spaghetti2D: Simple tunnels that gradually slope up and down.
 * Spaghetti3D: Complex tunnels that form varied shapes.
 * Cheese caves: Large open caverns
 * Big cave entrances: What do you expect

Cave Modifiers
These control the vanilla cave 'magic numbers' and affect things like their size and basic shape.
 * Cheese limiter: This is the number added to the cheese noise and controls how much of the world's volume is taken up by cheese caves. Lower means more caverns.
 * Cheese scale: A multiplier applied to {x, y, z} of the cave. Bigger scale means larger caverns, but rarer.
 * Cheese Y stretch: A multiplier applied to y on top of Cheese Scale. Usually recommended keeping it at 1. Lower means flatter pancake-like caverns, higher means they'll often be a bit more tall and grand.
 * Entrance limiter: This is the number added to the entrance and controls how much of the world's volume is taken up by cave entrances. Lower means more cave entrances. Don't lower this that much, or the terrain surface will look like Swiss cheese.
 * Spaghetti 3D min/max thickness: These control the minimum and maximum thickness of spaghetti caves. If you increase Spaghetti 3D Scale, make sure to decrease this value (and vice versa) to maintain the same tunnel thickness.
 * Spaghetti 3D scale: A multiplier applied to {x, y, z} of spaghetti tunnels. Lowering this will make spaghetti caves more common but thinner. Increasing it will make them less common but thicker. Make sure to change the thickness to compensate.

Aquifers

 * Bias: A value added to the aquifer noise. Higher = more aquifers. Lower = less aquifers.
 * Aquifer XZ scale: A multiplier applied to {x, z} of aquifers. Larger means larger aquifers. Note that increasing this too much can cause some strange behavior.
 * Aquifer Y scale: A multiplier applied to {y} of aquifers. It doesn't have that much of an effect, but a lower value means aquifers will usually have more vertical variation. Too low leads to strange behavior.
 * Aquifer type1 min/max: Not well understood. Likely controls aquifer behavior in relation to sea level.
 * Aquifer type2 min/max: Not well understood. Likely controls independent aquifer behavior. When Type2 Min is low and Type2 Min is high, aquifers have a tendency to form cave lakes rather than completely flooding caves. In vanilla, Type2 Min is high and Type2 Max is low.

Cave Biomes

 * Min depth: The depth below the preliminary surface level at which Cave Tweaks' cave biome changes begin to take effect.
 * Height variation factor: The amount that Temperature and Humidity change according to the Y-level. 1.0 means they treat Y the same as X and Z. 2.0 means Y changes twice as fast. 0 means height variation is disabled.
 * Temperature/Humidity:
 * Height variation factor: The amount that this particular noise parameter will change according to the Y-level. 1.0 means they treat Y the same as X and Z. 2.0 means Y changes twice as fast.
 * Bias: The amount that the overall distribution is biased (towards positive or negative.) For Humidity, positive bias means more lush caves.
 * Bias compensator: A value to compensate for the bias, so that caves on the opposite side are still able to generate. This should be higher with a higher overall bias. Should always be positive.
 * Bias end depth: The depth below the "Min depth" at which maximum bias is reached.

Cave entrances
Cave Tweaks makes some changes to cave entrances. Specifically, they can be 'layered' or 'rounded'. This section controls that.
 * Bonus factor: A value subtracted from 'layered' cave entrances' noise to give them more of a chance to generate.
 * Noise factor: The amount to multiply the 'layeredness/roundness bias noise' by. Probably best not to change this.
 * Layer factor: The amount to multiply the base 'layer' noise by. Probably best not to change this.
 * Layer power: Exponent for the layer noise (x^n). Probably best not to change this.
 * Enable pillar reduction: Cave Tweaks is capable of reducing pillars in cave entrances, to make them feel overall less cluttered. This toggles that functionality.
 * Pillar threshold: How close to cave entrances pillars start being reduced. 0.0 is at the cave entrance border; higher numbers are just outside it, lower numbers are inside the cave entrance.
 * Pillar reduction factor: How strong the reduction in pillar frequency is. Higher numbers indicate a more dramatic reduction.
 * Max pillar reduction: Pillars have a rarity range of [0,2] where 2 is 'no pillars'. This represents the maximum possible increase to pillar rarity.

Spaghetti Surface Behavior
Cave Tweaks alters Spaghetti caves so that they behave in various ways when meeting the surface - namely, they can be cut off, behave as usual, or expand into large entrances. This config governs that behavior.
 * Expansion factor: How much caves on the 'expanding' side of the formula will expand. Should be negative. This is usually a small negative number; making it large will result in spaghetti caves eating the terrain often.
 * Contraction factor: How much caves on the 'cut off' side of the formula will be cut off. This is regularly a relatively high positive number, which causes them to frequently be pushed towards the maximum cutoff value of 1. Should always be positive.
 * Primary and Secondary clamp bias: The equation for surface behavior follows a quadratic formula. Primary Bias is applied before the x^2. Secondary Bias is applied after. Both of them bias spaghetti caves towards being cut off when positive, and bias them towards opening into large entrances when negative. Set both to 2 to make caves always cut off near the surface.
 * Per block factor: The amount of 'raw noise value' added to the cave per block under the surface. Basically; the amount that the "Spaghetti 3D Thickness" is decreased pre block at the maximum possible expansion or contraction.
 * Start depth: How deep under the surface, in blocks, that the altered surface behavior starts.

Spaghetti Twist
apply a 'twisting' transform to some Spaghetti3D caves in order to give them more variation in shape. Normally, Spaghetti3D works based on 'Noise 1 and 2 are both close to 0'. The twisting transformation makes it closer, to, for example, 'Noise 1 is close to 0.3 and Noise 2 is close to -0.1'.
 * Vanilla bias: How likely caves are to be twisted. -1 means almost all caves will be vanilla; 1 means almost all caves will be twisted to some degree.
 * Bias power: The "twist bias" noise is raised to this exponent (x^n). Best not to change this usually.
 * Modulator scale: Cave twisting follows a complex algorithm; essentially it samples the raw twist noise at ({xyz}/n), ({xyz}) and ({xyz}*n) scales. Often best not to change this.
 * Limiter: The raw twist noise is multiplied by this value (to keep the distortion from being too large.) Increasing it may make spaghetti caves more rare.
 * Bonus factor: This value boosts the cave thickness when twisting is strong, to compensate from distortion effects making the spaghetti caves thinner.