0






Coins Rain
7h
ago

0.00
Chat is paused due to scroll.

0/200
Chat Rules


How It Works
hidden mines
roulette
case battles
case opening
upgrader
cluckin airways

roulette fairness
roulette is using a EOS block hash system to ensure fairness.

How the EOS system works
As soon as the game is created, we generate a unique key and salt. This key and salt are stored in the database and are used to generate the SHA-256 hash. This hash is then displayed to the player & can be verified by the player once the game is finished.
Once the game is no longer open, there's a small delay while an eos block number is being chosen. The block number chosen is in the near future, which can be verified using the timestamp displayed of when we picked the block.
We then wait for the EOS block to be mined, and once it is, we use this together with the key and salt to generate the SHA-256 hash. This hash is then used to seed a random number generator. This ensures the game outcome is completely deterministic and verifiable, while being impossible to predict before the block hash is known.
outcome verifier
code example
Use this code to verify mines outcomes yourself:
// Verify Mines Game
import seedrandom from 'seedrandom';
async function sha256(string) {
const encoder = new TextEncoder();
const data = encoder.encode(string);
const hashBuffer = await crypto.subtle.digest('SHA-256', data);
const hashArray = Array.from(new Uint8Array(hashBuffer));
return hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
}
function verifyMines(seedr, mineCount) {
const positions = Array.from({ length: 25 }, (_, i) => i + 1);
const minePositions = [];
while (minePositions.length < mineCount) {
const j = positions.splice(Math.floor(seedr() * positions.length), 1)[0];
minePositions.push(j);
}
return minePositions;
}
// Example usage:
const clientSeed = "your-client-seed";
const serverSeed = "revealed-server-seed";
const nonce = 1234;
const mineCount = 5;
const hash = await sha256(`${clientSeed}:${serverSeed}:${nonce}`);
const random = seedrandom(hash);
const minePositions = verifyMines(random, mineCount);
console.log('Mine Positions:', minePositions);

Verify
Input a GameID to receive information necessary for third party verification
Fairness ID
gamemode
type
roll
hash
Key
Salt
EOS Block Hash
eos block number
block pick time