How Solitaire Seeds Work

Understanding the Math behind the Randomness

Have you ever wondered why some deals feel lucky while others seem impossible? Or how you can play the exact same "Daily Challenge" as a friend across the world? The secret lies in a single number called the Seed.

What is a "Seed"?

In most computer games, "random" isn't truly random. It is a complex mathematical calculation that starts with a single number. We call this number the Seed.

If you know the Seed, you can recreate the entire shuffle sequence exactly. This is what allows you to "Replay Deal" or send a challenge to a friend.

Is it Fair?

Yes. We use an algorithm called Mulberry32. It is a high-quality Pseudorandom Number Generator (PRNG) that ensures:

  • Uniform Distribution: Every card has an equal chance of appearing.
  • Unpredictability: You cannot guess the next card without knowing the seed.
  • Consistency: Seed #8492 will always deal the same cards, on any computer, anywhere in the world.

The Daily Challenge

For our Daily Solitaire Challenge, we use the current date (e.g., 20240204) as the seed. This ensures that everyone playing on that day gets the exact same deal, allowing us to compare scores and times fairly.

Technical Details

Algorithm: Mulberry32
State Size: 32-bit Integer
Cycle Length: ~4 Billion Deals

References:
Mulberry32 Implementation (opens in new window)
MDN: Random Number Generation (opens in new window)

Learning Center