Nocturn PlayNOCTURN PLAY
Home › Guides › How we test slot maths

How we test a slot before it goes live

A slot that pays the wrong amount even once in a million spins is a broken slot. Here is the routine every Nocturn Play game goes through before an operator can put real money on it.

Updated 13 October 2026

1. The maths is written first, and on its own

The part of a game that decides outcomes (reel strips, symbol weights, paytable, feature rules) is a standalone module with no graphics in it. The art comes later and only displays what the maths decided. That separation is what makes everything below possible: we can test the rules of the game without a single animation getting in the way, and the graphics can never quietly change a result.

2. Recorded rounds, replayed exactly

For each game the maths author records a set of rounds: the exact random numbers consumed and the exact outcome they produced, including bonus rounds and free-spin steps. When the game is installed on our server, we replay every recorded round and compare the result field by field: the win, the final grid, the coins, the multipliers, the state carried into the next free spin. Depending on the game, that is between 76 and 104 recorded rounds.

For our four launch slots that came to 356 recorded rounds, and all 356 came back identical. If even one differed, the game would not ship, because it would mean the server is not running the game that was designed. Every later release, from the cascades of The Cinder Clockmaker to the growing grid of Black Jaguar Temple, goes through the same replay before it reaches a lobby.

3. Millions of simulated rounds before release

Then we simulate. Each game is played through millions of rounds, base game and bonus features alike, using the same code path the live server uses and a cryptographic random generator. This is where we check that the game behaves the way it was designed: that bonuses trigger as planned, that multipliers stack the way the rules describe, that a retrigger cannot loop forever, and that nothing in the paytable produces a result nobody expected.

The simulation also checks the ceiling. Every game has a maximum win, and when a round reaches it, the win must be paid at exactly that value, never a cent more and never a cent less. On games where the cap can be hit mid-bonus, the round stops cleanly at the cap.

4. The browser never decides anything

In live play, the player's device sends the bet and receives the result. It never runs the maths and never touches the balance. The balance lives in the casino's wallet: we debit the stake first and only play the round if the debit succeeds; then we credit the win. If the credit fails because of a network problem, it is retried until it lands, so a win is never lost.

The same rule holds for the games without reels. In Altitude Zero the crash point is fixed by the server before take-off, in Firefly Sweets the result is set when you bet, whatever swap you make, and in Fox Festival the ball only shows a prize that was already decided.

5. One round at a time

A session can only have one round in progress. Double clicks, two open tabs or a flaky connection can't create two debits for one spin. If a bonus is interrupted, the server still holds its state, which is why some of our games simply resume it when you reopen them.

This is the boring part of making slots, and it's the part we're proudest of. Partners who integrate our games get the recorded rounds behind this routine, so they can run the same checks on their side.

Related: about the studio · what a game aggregator does.

Frequently asked questions

How is a slot tested before launch?

At Nocturn Play: recorded rounds are replayed on the live server and must match exactly (356 out of 356 for the launch slots), then the game is simulated over millions of rounds before release.

Can a slot result be changed in the browser?

Not on our games. Outcomes are decided on our server; the browser only displays them and never holds the balance.

What happens if my connection drops after a win?

The win is credited by the server to the casino wallet, and a failed credit is retried until it lands.