Infinite Noise TRNG online

Dice you can trust with fate.

A lightweight roller for tabletop role-playing games. Every result comes from conditioned physical noise delivered by our entropy server.

no browser PRNG no modulo bias no server-side roll history
01

Quick rolls

One click configures the builder and immediately rolls the dice.

Single die

Popular pools

Result
ready to roll

Choose dice or use a quick roll. Entropy will only be requested after you click.

02

Build a pool

Combine different dice and add a modifier.

Choose dice
Choose dice
Custom die d
Your roll d20
Advanced rollfor example 2d20kh1+5, 10d12cs>8 or 3d6!max
Success threshold Each die that meets the condition counts as one success; the rest count as zero.

The rule applies to every die in the first group. Preview: 2d20kh1cs>=8+5

Exploding die Rolling the maximum or minimum adds another roll with the same die.

Explosions may form a chain. The rule applies to the first group. Preview: 2d20!maxkh1+5

Advanced expression guidePools, explosions, modifiers, kh/kl and cs success counting

The expression describes the number of dice, their sides and how the result is counted. The letter d stands for die.

Expression structure

[count]dsides[!max|!min][(kh|kl)how many][cs operator threshold][±modifier]

Elements in square brackets are optional — do not type the brackets themselves.

count
How many dice to roll. An omitted count means one die: d20 is the same as 1d20.
sides
How many sides each die has, for example d6, d20 or a custom d30.
!max
Explode on the maximum result. For d6, every 6 adds another d6 roll.
!min
Explode on the minimum result. Every 1 adds another roll with the same die.
kh
Keep highest — retain the specified number of highest results.
kl
Keep lowest — retain the specified number of lowest results.
cs
Count successes — each die that meets the condition counts as one success, otherwise zero. The pip sum includes successful dice only.
> ≥ < ≤
Success condition. Use >, >=, < or <= in the expression.
+ / −
Add or subtract a fixed modifier. Use + to join different dice groups as well.

Ready-to-use examples

Click an example to copy it into the manual expression field.

Important: when rules are combined, all explosions are resolved first, then kh/kl, and finally cs. Extra rolls join the same pool and are added or evaluated like the other dice. Letter case and whitespace do not matter. You may use up to 8 groups, 100 initial dice, 1000 actual rolls after explosions, 2–1000 sides and a modifier from −9999 to +9999.

03

Your session

Rolls
0
Dice
0
Successes
0
Failures
0
Natural 20s
0
Natural 1s
0

This browser has no roll history yet.

History and statistics remain only in this browser's localStorage. The server does not store rolls.

Randomness source

Infinite Noise TRNG, not a pseudorandom generator

The server reads a Keccak-1600-conditioned stream from an Infinite Noise TRNG and serves each portion only once. For any number of sides we use rejection sampling: values that would create an uneven distribution are discarded. Every side therefore has exactly the same probability.