The number will be in the range: 0 ≤ <number> < limit.
3.2
Return value
Value
Type
Description
Game version
<number>
Number
A random integer between 0 and limit-1.
3.2
<error>
Error
Invalid parameter
3.2
Notes
Using this function you can generate a random number that will be the same on all network peers in the same game frame. This means you can perform pseudo-random actions and not cause a game desynch, so long as all peers run the same code in the same game frame.
If you use the function as the basis for performing some action (eg. adding a feature to the map) in a script that only runs on the game host machine, as would be the case for AIs and scavfact.js, a game desynch would likely occur.
If a desync occurs, the warning will appear and people might get worried that cheating is taking place, however the game will continue to run.
As such, it's recommended to limit use of this function, and the type of actions you would use it for, to scripts such as rules.js or 'extra' scripts that are running on all network peers.
Example
Add randomly placed oil barrel every 20 seconds...
function placeOilDrum() {
var x = syncRandom(mapWidth);
var y = syncRandom(mapHeight);
addFeature("OilDrum", x, y);
}
setTimer("placeOilDrum", 20000); // every 20 seconds