diff --git a/server/public/parseArgs.js b/server/public/parseArgs.js old mode 100644 new mode 100755 diff --git a/xorshift32.js b/xorshift32.js new file mode 100755 index 0000000..f4b4f38 --- /dev/null +++ b/xorshift32.js @@ -0,0 +1,14 @@ + const [XSgetSeed, XSgetNext, XSrand] = (() => { + const m = 2 ** 32; + const XSgetSeed = () => Math.floor(Math.random() * (m - 1)) + 1; + const s = Uint32Array.of(XSgetSeed()); + return [XSgetSeed, XSgetNext, (seed) => XSgetNext(seed) / m]; +} + + function XSgetNext(seed) { + if (seed !== undefined) s[0] = seed; + s[0] ^= s[0] << 13; + s[0] ^= s[0] >>> 17; + s[0] ^= s[0] << 5; + return s[0]; + }