# Controled RNG technology

A **random number generator (RNG)** is an algorithm that generates a sequence of numbers or symbols that cannot be reasonably predicted better than by a random chance.

**Controlled RNG** is an algorithm that works in pre-set boundaries. For example, it generates a random number in the set range from 0 to 10 or from 20 to 60.

RNG is a defining factor in many modern games. Randomness is what keeps things from becoming monotonous. It’s what leads to curiosity and risk, and it’s one of the best tools to keep a game fresh. The zkRace **Controlled RNG** algorithm is used for **breeding** and **racing**.

In horse breeding, **GA generates the third NFT horse** combining genes from parent horses, with +- 5% deviation (RNG factor is applied). That means that even if both parents had the property of speed 20 - their child's speed can be in norms from 19 to 21.

In racing, the **RNG algorithm will choose a winner** out of all participating horses **of the race**. Horses with higher speed, stamina or reaction time have a higher chance of winning. But since it's an RNG-based game even the slowest horse has a small chance to win.
