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
|
2023-06-08 09:20:03 +02:00
|
|
|
index 1080e1f67afe5574baca0df50cdb1d029a7a586a..a2f71a6d1a9e98133dff6cd0f625da9435a8af14 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
|
2023-03-28 04:58:46 +02:00
|
|
|
@@ -288,7 +288,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
|
2023-06-08 21:35:20 +02:00
|
|
|
index b975cca39e18fd274702543066971fcf0cc24186..a2abdcd161bae048f1c7fd40b3a93d909ebbd0b4 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
|
2023-02-28 17:36:01 +01:00
|
|
|
@@ -431,7 +431,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);
|