A dice game where each roll consists of 3 transactions: 1. Dice roll: The server generates a secret seed and signs messages which is then committed on chain therefore making the outcome of dice roll immutable and unpredictable to the user. 2. Place bet: this step is totally based on user selections 3. Reveal: At this step the server reveals the secret, which is then verified by smart contract before revealing the number.