2022-06-09 10:51:45 +02:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
2022-08-01 16:01:20 +02:00
|
|
|
From: Nassim Jahnke <nassim@njahnke.dev>
|
2022-06-09 10:51:45 +02:00
|
|
|
Date: Tue, 31 Aug 2021 17:05:27 +0200
|
|
|
|
Subject: [PATCH] Configurable feature seeds
|
|
|
|
|
|
|
|
Co-authored-by: Thonk <30448663+ExcessiveAmountsOfZombies@users.noreply.github.com>
|
|
|
|
|
|
|
|
diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java
|
2022-09-26 10:02:51 +02:00
|
|
|
index 98171f6c8e23f6ef89b897e4b80e3afb2a1950a0..06bff37e4c1fddd3be6343049a66787c63fb420c 100644
|
2022-06-09 10:51:45 +02:00
|
|
|
--- a/src/main/java/co/aikar/timings/TimingsExport.java
|
|
|
|
+++ b/src/main/java/co/aikar/timings/TimingsExport.java
|
2022-09-26 10:02:51 +02:00
|
|
|
@@ -287,7 +287,7 @@ public class TimingsExport extends Thread {
|
2022-06-09 10:51:45 +02:00
|
|
|
JSONObject object = new JSONObject();
|
|
|
|
for (String key : config.getKeys(false)) {
|
|
|
|
String fullKey = (parentKey != null ? parentKey + "." + key : key);
|
|
|
|
- if (fullKey.equals("database") || fullKey.equals("settings.bungeecord-addresses") || TimingsManager.hiddenConfigs.contains(fullKey) || key.startsWith("seed-") || key.equals("worldeditregentempworld")) {
|
|
|
|
+ if (fullKey.equals("database") || fullKey.equals("settings.bungeecord-addresses") || TimingsManager.hiddenConfigs.contains(fullKey) || key.startsWith("seed-") || key.equals("worldeditregentempworld") || key.equals("feature-seeds")) {
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
final Object val = config.get(key);
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
|
2022-12-07 22:05:01 +01:00
|
|
|
index d916159abb9c817b57897e6ec8b65a2079bf8e18..e0638949774215d4c2524761ffebf378206cd2d0 100644
|
2022-06-09 10:51:45 +02:00
|
|
|
--- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
|
2022-12-07 22:05:01 +01:00
|
|
|
@@ -434,7 +434,14 @@ public abstract class ChunkGenerator {
|
2022-06-09 10:51:45 +02:00
|
|
|
return (String) optional.orElseGet(placedfeature::toString);
|
|
|
|
};
|
|
|
|
|
|
|
|
- seededrandom.setFeatureSeed(i, l1, l);
|
|
|
|
+ // Paper start - change populationSeed used in random
|
|
|
|
+ long featurePopulationSeed = i;
|
2022-06-09 13:16:00 +02:00
|
|
|
+ final long configFeatureSeed = generatoraccessseed.getMinecraftWorld().paperConfig().featureSeeds.features.getLong(placedfeature.feature());
|
2022-06-09 10:51:45 +02:00
|
|
|
+ if (configFeatureSeed != -1) {
|
|
|
|
+ featurePopulationSeed = seededrandom.setDecorationSeed(configFeatureSeed, blockposition.getX(), blockposition.getZ()); // See seededrandom.setDecorationSeed from above
|
|
|
|
+ }
|
|
|
|
+ seededrandom.setFeatureSeed(featurePopulationSeed, l1, l);
|
|
|
|
+ // Paper end
|
|
|
|
|
|
|
|
try {
|
|
|
|
generatoraccessseed.setCurrentlyGenerating(supplier1);
|