math.randomseed
Shared
Sets the seed for the pseudo-random number generator
Syntax
math.randomseed(
seed,
seed_extra = nil
)Parameters
| Type | Name | Description |
|---|---|---|
int | seed | Primary seed value |
int | seed_extra | Optional secondary seed value for a wider seed range |
Returns
This function does not return any values.
Examples
math.randomseed(42)
engine.print("info", math.random(100)) -- always the same valuemath.randomseed(os.time())
engine.print("info", math.random(100)) -- varies per runmath.randomseed(1234)
local a = math.random(1000)
math.randomseed(1234)
local b = math.random(1000)
engine.print("info", a == b) -- truemath.randomseed(7)
local deck = {}
for i = 1, 10 do deck[i] = i end
for i = #deck, 2, -1 do
local j = math.random(i)
deck[i], deck[j] = deck[j], deck[i]
end
for _, v in ipairs(deck) do
engine.print("info", v)
endmath.randomseed(os.time(), os.clock() * 1e9)
engine.print("info", math.random()) -- 0.74392 (varies)