JILITTT on Perya RNG: How Online Draws Are Generated and Audited
At a fiesta the dice are in front of you and you can watch the tumbler. Online there is nothing to watch, because the animation on your screen is drawn after the result has already been decided somewhere else. This page explains where that result comes from, how a random number becomes a coloured die face, who tests the process, which statistical tests they run, and what a certificate does and does not promise you.
Where the result actually comes from
In a licensed online colour game the outcome is produced on the operator's or studio's server, not on your phone. The sequence is short and always the same. Bets close, the server requests three values from its random number generator, it maps those values to colours, it settles every open bet against the paytable, and only then does it send the result to your device. The tumbler shaking on screen is a video played to an answer that already exists.
- The generator is normally a cryptographically secure pseudo-random number generator seeded from the operating system entropy pool, not the simple generator built into a scripting language.
- It is reseeded continuously, and it carries no state that a player can observe, which is why nothing you do or bet can influence the next draw.
- The client holds no copy of the outcome before it is displayed, so decompiling the app or watching network traffic reveals nothing about the next round.
- Bet size, account age, balance, win history and time of day are not inputs to the draw. If they were, the game would fail certification immediately.
That last point is worth stating plainly because it is the single most common suspicion players hold. Certification tests explicitly check that the outcome distribution does not change with stake or with a player's recent results, and a game that behaved otherwise would not hold a licence anywhere.
From a random number to a coloured face
Turning a large random integer into a number from 1 to 6 sounds trivial and is the most common place real bias creeps in. A 32-bit generator produces values from a pool of 4,294,967,296. That pool is not divisible by six: dividing gives 715,827,882 with a remainder of 4. If you simply take the remainder after dividing by six, four of the six colours receive one extra chance each.
| Step | What happens | What a test lab checks |
|---|---|---|
| Seeding | Entropy drawn from the OS pool | Seed is unpredictable and never reused |
| Generation | A raw integer is produced per die | Output passes recognised randomness suites |
| Scaling | The integer is mapped to 1 to 6 | Rejection sampling, so no modulo bias |
| Independence | Three separate draws per round | No correlation between dice or rounds |
| Settlement | Paytable applied to open bets | Payouts match the published ladder exactly |
| Logging | Round written to an audit trail | Logs are tamper evident and reproducible |
The bias in that naive mapping is about one part in 715 million, far too small for any player to exploit and far too small to notice in a lifetime of play. Labs still insist it is removed, using rejection sampling: values falling in the uneven tail of the range are discarded and redrawn, so the six colours end up exactly equally likely. It is a good illustration of the standard being applied, which is mathematical correctness rather than good enough.
Live-dealer perya: real dice on camera
Some online colour game tables use no generator at all. A dealer in a studio shakes physical dice in front of cameras, and the result is read either by an operator or by optical recognition, then pushed to the game server for settlement. The audit problem is completely different here, and it moves from software to procedure.
- Betting closes before the shake, and the interface timestamps the close, so late bets are impossible rather than merely discouraged.
- Dice are inspected and rotated on a schedule, because a physical die is the one component that can develop a genuine bias through wear.
- A roll that leaves the bowl, lands cocked or is obscured is voided under written rules rather than judged by the dealer's preference.
- Multiple camera angles and the recognition system have to agree before a result is published, and the video is retained for dispute review.
- The dealer settles nothing; the server applies the paytable, so there is no human discretion over your payout.
For a player the practical difference is speed and evidence. A live table runs roughly forty rounds an hour against 150 or more for an instant version, which makes it cheaper per hour at the same stake, and a disputed round has recorded video behind it. What does not change is the paytable, and therefore the 7.87% house edge on the standard ladder is identical on both.
Commit and reveal, where an operator offers it
A minority of studios publish results under a commit-and-reveal scheme, often marketed as provably fair. The server generates a seed for your session, hashes it with SHA-256 and shows you the hash before you bet. Your own client seed is mixed in, and a counter increments each round. When the session ends the server reveals the original seed, and you can re-hash it yourself and confirm it matches the hash you were given hours earlier.
What that proves is narrow and genuinely useful: the server could not have changed the outcome after seeing your bet, because the seed was committed beforehand and any change would break the hash. What it does not prove is anything about the paytable. A commit-and-reveal colour game paying 1:1 / 2:1 / 3:1 still returns 92.13%, exactly like one that is not. Verifiability and value are separate questions, and confusing them is a common mistake.
Who tests it, and against what
PAGCOR requires licensed operators to have their gaming systems and random number generators certified by an accredited independent testing laboratory, and to re-certify after material changes. The laboratories commonly used in this market include Gaming Laboratories International, BMM Testlabs, iTech Labs and eCOGRA. They do not invent their own tests; they apply published standards and public statistical suites.
| Standard or suite | Question it answers |
|---|---|
| GLI-11 and GLI-19 | Does the game and its server behave as specified? |
| NIST SP 800-22 | Does the bit stream look random by fifteen formal tests? |
| Dieharder / TestU01 | Does the generator survive heavy batteries of structure tests? |
| Chi-square goodness of fit | Do the six colours appear equally often? |
| Serial correlation and runs tests | Does one result predict the next? |
| RTP simulation | Does the game return its published figure over millions of rounds? |
A certificate names the software build it applies to. That is why an unlicensed clone of a certified game, or a downloaded offline copy, carries none of this: the certificate covers a specific binary running on a specific certified platform, not a name or an icon.
The statistics, with the arithmetic shown
The colour test is a chi-square goodness of fit across the six colours. Take 60,000 observed die faces, so 10,000 expected per colour, and sum the squared differences divided by the expected count. With six categories there are five degrees of freedom, and the critical values are 11.07 at the 5% level and 15.09 at the 1% level.
| Colour | Observed | Expected | Difference | Contribution |
|---|---|---|---|---|
| Red | 10,102 | 10,000 | +102 | 1.040 |
| White | 9,948 | 10,000 | -52 | 0.270 |
| Yellow | 10,031 | 10,000 | +31 | 0.096 |
| Green | 9,877 | 10,000 | -123 | 1.513 |
| Blue | 10,065 | 10,000 | +65 | 0.423 |
| Pink | 9,977 | 10,000 | -23 | 0.053 |
Those contributions sum to 3.395, comfortably under 11.07, so the sample gives no reason to reject fairness. Notice that green ran 123 faces short of expectation and the test still passes: deviations of that size in 60,000 observations are ordinary, which is the same reason a player's hot and cold colours over a couple of hundred rolls carry no information at all.
The return figure is verified separately by simulation. A single one-unit colour bet has a standard deviation of about 1.113 units, so the standard error of the mean over ten million simulated rounds is 1.113 divided by the square root of ten million, which is 0.00035. Three standard errors is 0.11 percentage points, so a correct implementation should report a measured return between roughly 92.02% and 92.24% against a theoretical 92.13%. A build landing outside that band has a bug, not bad luck.
What certification promises, and what it does not
| Certification does confirm | Certification does not confirm |
|---|---|
| Outcomes are unpredictable and uniform | That you can win over time |
| Results ignore stake, balance and history | That short sessions behave like the average |
| Payouts match the published paytable | That the paytable is generous |
| The game returns its stated figure long run | Anything about an unlicensed copy of it |
| The tested build on the tested platform | An offline APK or a mirror site |
This is the point where the four pages of this guide meet. Auditing settles whether the draw is honest. It does not touch the 7.87% built into the ladder, it does not create a pattern for a predictor to find, and it does not slow down an instant game that is charging that edge 200 times an hour. An audited colour game and a fairground mat cost the same per peso staked; the audit only tells you the loss was arrived at fairly.
- Open the game information panel and read the paytable and the stated return before your first bet.
- Check the operator names its licence in the footer and confirm it against the regulator's published list of licensees.
- Use your bet history. Every licensed game keeps one, and it is the only record that settles a dispute.
- Treat a missing paytable, a missing return figure or a missing licence reference as three separate reasons to close the tab.
JILITTT publishes information only, holds no gaming licence of its own and distributes no software; the operators described here hold PAGCOR licences. The legal minimum age to play in the Philippines is 21, and the National Center for Mental Health runs a free, confidential 24/7 hotline on 1553.
Frequently Asked Questions
How is an online colour game result generated?
On the server, before you see anything. A cryptographically secure random number generator produces three values, they are mapped to colours using rejection sampling so all six are exactly equally likely, bets are settled against the paytable, and only then is the animation sent to your device.
Can an online colour game know how much I bet?
The settlement knows, but the draw does not. Certification explicitly tests that the outcome distribution is unaffected by stake, balance, account age or recent results, and a game failing that test would not be licensed. The 7.87% edge does all the work without needing any such adjustment.
What does provably fair actually prove?
That the server committed to its seed before your bet, because it published a SHA-256 hash of that seed in advance and reveals the seed afterwards for you to re-hash. It proves the result was not altered after the fact. It says nothing about the paytable, which still returns 92.13% on the standard ladder.
Who certifies casino games for the Philippine market?
PAGCOR requires licensed operators to use accredited independent testing laboratories. Those commonly seen in this market include Gaming Laboratories International, BMM Testlabs, iTech Labs and eCOGRA, testing against standards such as GLI-11 and GLI-19 and statistical suites such as NIST SP 800-22 and TestU01.
Does an audit mean the game is beatable?
No. An audit confirms the draw is honest and that the game returns its published figure over the long run. On the standard colour game ladder that published figure is 92.13%, so a perfectly audited game still costs 7.87% of everything staked.
Are offline colour game apps audited?
No. A certificate covers a specific software build running on a specific certified platform, so an offline download or an unlicensed clone carries none of it. Whoever wrote the app chose its generator and its payout logic, and nobody tested either.