HTML5 JS Updated PRNG (pseudo-random number generator)
Pre-release note for people using the HTML5 engine, for people to prepare for.
TL;DR: A future HTML5 engine release will respect the randomSeed attribute. If you don't care about that, set randomSeed to -1 and it will behave like before.
Random functions on computers are not "truly" random and instead are pseudo-random number generators (prng's). A math function returns a new number every time that's close enough to random to be usable. AFAIK, all random number algorithms need what is called a "seed" to kick off the random number sequence.
In the native engine, you can adjust the seed by setting the game level randomSeed attribute. If you didn't care about the seed and wanted different randomness every time, you would just set the randomSeed attribute to something related to device.time or set it to -1 which seeds with default "random" value (which usually includes stuff like the current time, data from some random memory location, etc).
As we started building out our blockchain games, we realized that we needed to make it possible to replay a game session that uses random numbers to check for cheating.
So future versions of the GameSalad HTML5 engine will work as follows:
We'll likely deploy it sometime this week, and we'll let everyone know here when we do. But for now, I just wanted to prepare any HTML5 developers of what's about to happen, so they can adjust their games accordingly.