Preserve cave and skylands terrain with Overworld environments
Build / build (push) Canceled after 0s

This commit is contained in:
dnorberg committed 2026-09-22 06:15:04 -04:00
1 parent 0182684231
commit 4f9b769815
3 files changed
+17 -10

No files matched your search

+3 -3
View File
@@ -248,9 +248,9 @@ honor the server's loaded data packs. Automated coverage also verifies that a
live Age's seed equals its immutable saved definition; Dynamic Dimensions
derives both from the Overworld seed and the Age dimension identifier.
Version 0.2.16.11 moves Cave and Island/Skylands Ages onto the standard
Overworld biome, terrain, surface, structure, and feature pipeline. They no
longer inherit Nether or End generation and dimension behavior.
Version 0.2.16.12 gives Cave and Island/Skylands Ages Overworld biomes, sky,
weather, lighting, and day/night behavior while retaining their distinct
terrain density: enclosed Nether-shaped caves and End-shaped floating islands.
Version 0.2.14.0 restores the legacy Linking and Descriptive Book artwork for
inventory items and gives each book its matching open-book texture when placed
+1 -1
View File
@@ -35,7 +35,7 @@ mod_name=Rivencraft
# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default.
mod_license=LGPL-3.0-or-later
# The mod version. Rivencraft uses the x.y.z.b policy documented in README.md.
mod_version=0.2.16.11
mod_version=0.2.16.12
immersive_portals_version=6.0.7
# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository.
# This should match the base package used for the mod sources.
@@ -210,12 +210,19 @@ public final class AgeDimensionService {
var biomeParameters = server.registryAccess()
.lookupOrThrow(Registries.MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST);
var noiseSettings = server.registryAccess().lookupOrThrow(Registries.NOISE_SETTINGS);
ResourceKey<NoiseGeneratorSettings> settingsKey = profile.equals(AgeGenerationProfiles.AMPLIFIED)
? NoiseGeneratorSettings.AMPLIFIED
: NoiseGeneratorSettings.OVERWORLD;
// Cave and Island/Skylands currently describe an Age's theme. Their
// terrain, biomes, surfaces, structures, and features use the standard
// Overworld pipeline until their dedicated terrain modifiers land.
ResourceKey<NoiseGeneratorSettings> settingsKey;
if (profile.equals(AgeGenerationProfiles.CAVE)) {
settingsKey = NoiseGeneratorSettings.NETHER;
} else if (profile.equals(AgeGenerationProfiles.ISLAND)) {
settingsKey = NoiseGeneratorSettings.END;
} else if (profile.equals(AgeGenerationProfiles.AMPLIFIED)) {
settingsKey = NoiseGeneratorSettings.AMPLIFIED;
} else {
settingsKey = NoiseGeneratorSettings.OVERWORLD;
}
// Cave retains enclosed Nether-shaped density and Island/Skylands
// retains floating End-shaped density. All profiles use Overworld
// biomes and the Overworld dimension type for sky and time behavior.
// random_vanilla is retained as a migration alias for existing Ages.
return new NoiseBasedChunkGenerator(
MultiNoiseBiomeSource.createFromPreset(