diff --git a/js/random.js b/js/random.js index bc58971af9cd496992a4c67b6620320b4717f0e9..6953189b45a236911f7748be49711ad9db045f43 100644 --- a/js/random.js +++ b/js/random.js @@ -136,7 +136,6 @@ function Xoshiro128Twostar(seed1, seed2, optionalSeed3, optionalSeed4) { */ globalThis.iterateSeed = (seed) => { if (!seed) { seed = jsRandom(0, 10 ** 14); } - // TODO: better solution? return String(seed) + String(jsRandom(0, 9, undefined, String(seed))); }; diff --git a/src/js/utilsSlave.js b/src/js/utilsSlave.js index e3f1c89d6e3ebbee980e67e36364e7fde1b5dd3d..20e3db2e3f9a3c71071a1144dcf513505cb86a42 100644 --- a/src/js/utilsSlave.js +++ b/src/js/utilsSlave.js @@ -773,6 +773,8 @@ globalThis.Intelligence = (function() { const maxMult = Math.max(...config.limitMult); let result = App.Utils.Math.limitedSkewedGaussian(maxMult, minMult, config.skew, config.seed1, config.seed2) * config.spread + config.mean; while (result < Math.min(...config.limitIntelligence) || result > Math.max(...config.limitIntelligence)) { + config.seed1 = iterateSeed(config.seed1); + config.seed2 = iterateSeed(config.seed2); result = App.Utils.Math.limitedSkewedGaussian(maxMult, minMult, config.skew, config.seed1, config.seed2) * config.spread + config.mean; } return Math.ceil(result);