Skip to content

PRNG

Generic typessource

PRNG (short for Pseudo-Random-Number-Generator) holds 10 128bit wide buffers of memory that are mutated on every generation of a random number. The game uses specific buffers for specific scenarios, for example the third buffer is used every time particles are spawned to determine a random velocity. The used buffer is determined by PRNG_CLASS. If you want to make a mod that does not affect level generation but still uses the prng then you want to stay away from specific buffers. If you don't care what part of the game you affect just use prng.random.

Methods

get_pair

function PRNG:get_pair(type: PRNG_CLASS): integer, integer
type: PRNG_CLASS

Returns integer, integer

source

random

function PRNG:random(): number

Returns number

function PRNG:random(i: integer): integer?
i: integer

Returns integer? (may be nil)

function PRNG:random(min: integer, max: integer): integer
min: integer
max: integer

Returns integer

source

random_chance

function PRNG:random_chance(inverse_chance: integer, type: PRNG_CLASS): boolean
inverse_chance: integer
type: PRNG_CLASS

Returns boolean

source

random_float

function PRNG:random_float(type: PRNG_CLASS): number
type: PRNG_CLASS

Returns number

source

random_index

function PRNG:random_index(i: integer, type: PRNG_CLASS): integer?
i: integer
type: PRNG_CLASS

Returns integer? (may be nil)

source

random_int

function PRNG:random_int(min: integer, max: integer, type: PRNG_CLASS): integer
min: integer
max: integer
type: PRNG_CLASS

Returns integer

source

seed

function PRNG:seed(seed: integer)
seed: integer
source

set_pair

function PRNG:set_pair(type: PRNG_CLASS, first: integer, second: integer)
type: PRNG_CLASS
first: integer
second: integer
source