From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: HaHaWTH <102713261+HaHaWTH@users.noreply.github.com> Date: Tue, 9 Nov 2077 00:00:00 +0800 Subject: [PATCH] Fast BiomeManager seed obfuscation Pretty tiny optimization, but better than nothing diff --git a/net/minecraft/world/level/biome/BiomeManager.java b/net/minecraft/world/level/biome/BiomeManager.java index b8a0fa20101fa3831e34494fd56690343ff8d57e..74cfd72d756c0b877adc27ad5b2d83e5240d3e75 100644 --- a/net/minecraft/world/level/biome/BiomeManager.java +++ b/net/minecraft/world/level/biome/BiomeManager.java @@ -34,9 +34,18 @@ public class BiomeManager { // Leaf end - cache getBiome } + // Leaf start - Replace SHA-256 with XXHash + private static final net.jpountz.xxhash.XXHash64 XXHASH = net.jpountz.xxhash.XXHashFactory.fastestInstance().hash64(); public static long obfuscateSeed(long seed) { - return Hashing.sha256().hashLong(seed).asLong(); + if (org.dreeam.leaf.config.modules.opt.FastBiomeManagerSeedObfuscation.enabled) { + java.nio.ByteBuffer buf = java.nio.ByteBuffer.allocate(8); + buf.putLong(0, seed); + return XXHASH.hash(buf, org.dreeam.leaf.config.modules.opt.FastBiomeManagerSeedObfuscation.seedObfuscationKey); + } else { + return Hashing.sha256().hashLong(seed).asLong(); + } } + // Leaf end - Replace SHA-256 with XXHash public BiomeManager withDifferentSource(BiomeManager.NoiseBiomeSource newSource) { return new BiomeManager(newSource, this.biomeZoomSeed);