Interface NoiseRouter

All Superinterfaces:
Wrapper

@NullMarked @AsOf("2.4.0") public interface NoiseRouter extends Wrapper
The noise router is a collection of density functions. Density functions compute a value for each block position. They are used for terrain generation, biome layout, aquifers, ore veins, and more. A noise router is a part of a dimension's noise settings.
Since:
2.4.0
See Also:
  • Method Details

    • barrier

      @AsOf("2.4.0") DensityFunction barrier()
      Affects whether aquifers and open cave areas are separated; larger values make separation more likely.
      Returns:
      the barrier density function
      Since:
      2.4.0
    • fluidLevelFloodedness

      @AsOf("2.4.0") DensityFunction fluidLevelFloodedness()
      Affects the probability of an aquifer generating liquid in a cave; larger values make liquid more likely. The value is clamped to the range [-1.0, 1.0].
      Returns:
      the fluid level floodedness density function
      Since:
      2.4.0
    • fluidLevelSpread

      @AsOf("2.4.0") DensityFunction fluidLevelSpread()
      Affects the height of an aquifer's liquid surface at a horizontal position; smaller values favor lower heights.
      Returns:
      the fluid level spread density function
      Since:
      2.4.0
    • lava

      @AsOf("2.4.0") DensityFunction lava()
      Affects whether an aquifer uses lava instead of water; the threshold is 0.3.
      Returns:
      the lava density function
      Since:
      2.4.0
    • temperature

      @AsOf("2.4.0") DensityFunction temperature()
      The temperature values, used for biome placement only. Like the other climate slots, this does not affect terrain shape.
      Returns:
      the temperature density function
      Since:
      2.4.0
    • vegetation

      @AsOf("2.4.0") DensityFunction vegetation()
      The humidity values, used for biome placement only.
      Returns:
      the vegetation density function
      Since:
      2.4.0
    • continents

      @AsOf("2.4.0") DensityFunction continents()
      The continentalness values, used for biome placement only.
      Returns:
      the continents density function
      Since:
      2.4.0
    • erosion

      @AsOf("2.4.0") DensityFunction erosion()
      The erosion values, used for biome placement and aquifer generation.
      Returns:
      the erosion density function
      Since:
      2.4.0
    • depth

      @AsOf("2.4.0") DensityFunction depth()
      The depth values, used for biome placement and aquifer generation.
      Returns:
      the depth density function
      Since:
      2.4.0
    • ridges

      @AsOf("2.4.0") DensityFunction ridges()
      The weirdness values, used for biome placement only.
      Returns:
      the ridges density function
      Since:
      2.4.0
    • preliminarySurfaceLevel

      @AsOf("2.4.0") DensityFunction preliminarySurfaceLevel()
      A 2D density function (sampled at Y=0) giving the Y-level of the preliminary surface, generally below the actual terrain height. Used by aquifer generation and surface rules.
      Returns:
      the preliminary surface level density function
      Since:
      2.4.0
    • finalDensity

      @AsOf("2.4.0") DensityFunction finalDensity()
      The main density function deciding whether each position is solid or air. Where positive, the default block is placed (later replaceable by surface rules); otherwise air or fluid is placed by the aquifer logic.
      Returns:
      the final density density function
      Since:
      2.4.0
    • veinToggle

      @AsOf("2.4.0") DensityFunction veinToggle()
      Affects ore vein type, vertical range and richness, selecting between copper and iron veins by Y-level and noise value.
      Returns:
      the vein toggle density function
      Since:
      2.4.0
    • veinRidged

      @AsOf("2.4.0") DensityFunction veinRidged()
      Controls which blocks belong to a vein. At or above 0.0 the block is not part of a vein; below 0.0 it has a 30% chance to be replaced by the vein's filler or an ore block.
      Returns:
      the vein ridged density function
      Since:
      2.4.0
    • veinGap

      @AsOf("2.4.0") DensityFunction veinGap()
      Affects which blocks in a vein become ore blocks rather than the vein's stone block.
      Returns:
      the vein gap density function
      Since:
      2.4.0
    • toBuilder

      @AsOf("3.3.0") default NoiseRouter.Builder toBuilder()
      Converts this noise router back to a builder.
      Returns:
      a new builder with these values
      Since:
      3.3.0
    • of

      @AsOf("2.4.0") static NoiseRouter of(DensityFunction barrier, DensityFunction fluidLevelFloodedness, DensityFunction fluidLevelSpread, DensityFunction lava, DensityFunction temperature, DensityFunction vegetation, DensityFunction continents, DensityFunction erosion, DensityFunction depth, DensityFunction ridges, DensityFunction preliminarySurfaceLevel, DensityFunction finalDensity, DensityFunction veinToggle, DensityFunction veinRidged, DensityFunction veinGap)
      Creates a new noise router from its density function slots.
      Parameters:
      barrier - the barrier density function
      fluidLevelFloodedness - the fluid level floodedness density function
      fluidLevelSpread - the fluid level spread density function
      lava - the lava density function
      temperature - the temperature density function
      vegetation - the vegetation density function
      continents - the continents density function
      erosion - the erosion density function
      depth - the depth density function
      ridges - the ridges density function
      preliminarySurfaceLevel - the preliminary surface level density function
      finalDensity - the final density density function
      veinToggle - the vein toggle density function
      veinRidged - the vein ridged density function
      veinGap - the vein gap density function
      Returns:
      a new noise router
      Since:
      2.4.0
    • decode

      @AsOf("3.3.0") static NoiseRouter decode(Object minecraftRouter)
      Reads a Minecraft noise router.
      Parameters:
      minecraftRouter - the noise router to read
      Returns:
      the decoded noise router
      Since:
      3.3.0
    • builder

      @AsOf("2.4.0") static NoiseRouter.Builder builder()
      Creates a builder for a noise router.
      Returns:
      a new builder
      Since:
      2.4.0