A newer version of Max is available. Click here to access the latest version of the documentation

random Reference

Generate a random number

random

Description

Outputs random numbers within the range between 0 and 1 less than the argument specified.

Examples

Generate random events, or make decisions based on probability

Arguments

range [int/float]

Optional

Sets an initial limit to the random output. If an int, the output will always be between 0 and one less than this maximum limit. If a float, the output will be between 0 and the maximum limit. If there is no argument, the limit is initially set to 1, which causes random to output 0 whenever it receives a bang.

seed [int]

Optional

A second argument is used to set a "seed" value for the random generator. If no argument is specified, the time value will be used to initialize the seed.

Attributes

classic [int] (default: 0)

Enable/disable classic mode, which uses the bad old random number generator. Default is 0 (disabled).

floatoutput [int] (default: 0)

Enable/disable float output using the current range.

range [2 atoms] (default: 0 1)

The range can be any two numerical values, including negative values. If the range contains a floating-point value, floatoutput will be enabled, and the object will generate floating-point output.

seed [atom_long]

The seed is now an attribute, permitting users to acquire automatically-awarded seed values via an object such as getattr.

Common Box Attributes

annotation [symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

background [int] (default: 0)

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 removes it. Objects in the background layer are shown behind all objects in the default foreground layer.

color [4 floats]

Sets the color for the object box outline.

fontface [int]

Sets the type style used by the object. The options are:

plain
bold
italic
bold italic Possible values:

0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'

fontname [symbol]

Sets the object's font.

fontsize [float]

Sets the object's font size (in points). Possible values:

'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'

hidden [int] (default: 0)

Toggles whether an object is hidden when the patcher is locked.

hint [symbol]

Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.

ignoreclick [int] (default: 0)

Toggles whether an object ignores mouse clicks in a locked patcher.

jspainterfile [symbol]

JS Painter File

patching_rect [4 floats] (default: 0. 0. 100. 0.)

Sets the position and size of the object in the patcher window.

position [2 floats]

g/s(set)

Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.

presentation [int] (default: 0)

Sets whether an object belongs to the patcher's presentation.

presentation_rect [4 floats] (default: 0. 0. 0. 0.)

Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.

rect [4 floats]

g/s(set)

Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).

size [2 floats]

g/s(set)

Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.

textcolor [4 floats]

Sets the color for the object's text in RGBA format.

textjustification [int]

Sets the justification for the object's text. Possible values:

0 = 'left'
1 = 'center'
2 = 'right'

varname [symbol]

Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.

Messages

bang

In left inlet: Sends out a randomly generated number between 0 and one less than its maximum limit.

int

Arguments

maximum [int]
In right inlet: The number is stored as the maximum limit for the random output. The output will always be between 0 and one less than this maximum limit.

float

Arguments

maximum [float]
In right inlet: The number is stored as the maximum limit for the random output. Additionally floatoutput will be enabled and the object will generate floating-point output

list

Arguments

minimum [atom]
maximum [atom]
In right inlet: The numbers are used to set the range of the object. The range can be any two numerical values, including negative values. If the range contains a floating-point value, floatoutput will be enabled, and the object will generate floating-point output.

Output

int

When a bang is received in the left inlet, random generates a random number between 0 and one less than its maximum limit.

See Also

Name Description
decide Choose randomly between 1 and 0
drunk Output random numbers within a step range
urn Generate random numbers without duplicates
Max Basic Tutorial 10: Random Drawing Max Basic Tutorial 10: Random Drawing