roll: Difference between revisions
Jump to navigation
Jump to search
Verisimilar (talk | contribs) m (Removed stub.) |
No edit summary |
||
(10 intermediate revisions by 5 users not shown) | |||
Line 5: | Line 5: | ||
|usage= | |usage= | ||
< | <syntaxhighlight lang="mtmacro" line> | ||
roll(times, sides) | roll(times, sides) | ||
</ | </syntaxhighlight> | ||
< | <syntaxhighlight lang="mtmacro" line> | ||
dice(times, sides) | dice(times, sides) | ||
</ | </syntaxhighlight> | ||
< | <syntaxhighlight lang="mtmacro" line> | ||
d(times, sides) | d(times, sides) | ||
</ | </syntaxhighlight> | ||
'''Parameters''' | '''Parameters''' | ||
{{param|times|The number of times to roll the dice.}} | {{param|times|The number of times to roll the dice.}} | ||
{{param|sides|The number of sides the dice possess.}} | {{param|sides|The number of sides the dice possess.}} | ||
'''Note:''' | |||
The roll function does not keep track of the individual dice rolled. In other words their results are lost, just the total is kept. How to roll dice when individual dice matter is shown in the examples. | |||
|examples= | |examples= | ||
Roll a twenty-sided dice | |||
< | '''Roll a twenty-sided dice''' | ||
<syntaxhighlight lang="mtmacro" line> | |||
[t: roll(1, 20)] | [t: roll(1, 20)] | ||
</ | </syntaxhighlight> | ||
Returns a number that is between {{code|1}} and {{code|20}}. | Returns a number that is between {{code|1}} and {{code|20}}. | ||
Roll five ten-sided dice, using variables | |||
< | '''Roll five ten-sided dice, using variables''' | ||
<syntaxhighlight lang="mtmacro" line> | |||
[h: DiceTimes = 5] | [h: DiceTimes = 5] | ||
[h: DiceSides = 10] | [h: DiceSides = 10] | ||
[t: roll(DiceTimes, DiceSides)] | [t: roll(DiceTimes, DiceSides)] | ||
</ | </syntaxhighlight> | ||
Returns a number than is between {{code|5}} and {{code|50}}. | Returns a number than is between {{code|5}} and {{code|50}}. | ||
'''Throw multiple dice''' | |||
...and sort and sum the result. Note that roll() doesnt help with this. You have to roll individual dice and keep track yourself. Gladly MapTool does help with loops and listkeeping functions. | |||
<syntaxhighlight lang="mtmacro"> | |||
[h: diceTimes = 5] | |||
[h: diceSides = 6] | |||
[h: listOfRolls = ""] | |||
[h: sum = 0] | |||
[h, count(diceTimes), code: { | |||
[h: r = roll(1, diceSides)] | |||
[h: sum = sum+r] | |||
[h: listOfRolls = listAppend(listOfRolls, r)] | |||
}] | |||
You rolled [r: listSort(listOfRolls, "N-")] = [r: sum]. | |||
</syntaxhighlight> | |||
Rolls 5 times a d6 and returns these as sorted list as well as the total. | |||
: '''See also''' {{roll|count}}, {{func|listAppend}} and {{func|listSort}}. | |||
| |||
|also= | |also= | ||
Line 37: | Line 68: | ||
}} | }} | ||
[[Category:Dice Function]] |
Latest revision as of 23:59, 14 March 2023
roll() Function
Generates random numbers to emulate dice rolls. You may also think of this function as a method of generating a random number between
times
and times*sides
.Usage
roll(times, sides)
dice(times, sides)
d(times, sides)
Parameters
times
- The number of times to roll the dice.sides
- The number of sides the dice possess.
Note:
The roll function does not keep track of the individual dice rolled. In other words their results are lost, just the total is kept. How to roll dice when individual dice matter is shown in the examples.
Examples
Roll a twenty-sided dice
[t: roll(1, 20)]
Returns a number that is between 1
and 20
.
Roll five ten-sided dice, using variables
[h: DiceTimes = 5]
[h: DiceSides = 10]
[t: roll(DiceTimes, DiceSides)]
Returns a number than is between 5
and 50
.
Throw multiple dice
...and sort and sum the result. Note that roll() doesnt help with this. You have to roll individual dice and keep track yourself. Gladly MapTool does help with loops and listkeeping functions.
[h: diceTimes = 5]
[h: diceSides = 6]
[h: listOfRolls = ""]
[h: sum = 0]
[h, count(diceTimes), code: {
[h: r = roll(1, diceSides)]
[h: sum = sum+r]
[h: listOfRolls = listAppend(listOfRolls, r)]
}]
You rolled [r: listSort(listOfRolls, "N-")] = [r: sum].
Rolls 5 times a d6 and returns these as sorted list as well as the total.
- See also [count():], listAppend() and listSort().
See Also
For another method of rolling dice, see Dice Expressions.