How Case Battle Results Are Generated
On Cases.gg, we use a Provably Fair system. This means you, the player, can easily verify game results were truly random and were not tampered with to favor the website or another player. For Player vs Player games, such as Battles, our system leverages the decentralized EOS blockchain. This means that we are not able to change game outcomes, and do not know the outcome results before it starts.
The system works as follows:
- First, the server generates a random seed. This seed is then hashed using SHA256 and displayed to the player. The server seed is one part of the game seed.
- We pick a yet-to-be-mined block number from the EOS blockchain and display the ID to the player.
- We wait a few seconds for the block to mine. Once it is mined, we retrieve the block hash. This block hash is the second part of the game seed.
- We reveal the server seed. A random string consisting of the server seed and block hash is generated. This is the game seed that is fed to a random number generator.
How Ties Are Resolved
In case of a tie, a "coinflip" ticket is generated to determine the winning team. It is a float value between 0 and 1. Every winning team gets an equal share.
Example: In a 1v1v1v1 game there are 3 players with the exact same item value - spot 1, 3 and 4. Player 1 is assigned a range
Example: In a 1v1v1v1 game there are 3 players with the exact same item value - spot 1, 3 and 4. Player 1 is assigned a range
0 - 1/3
, player 3 - 1/3 - 2/3
, player 4 - 2/3 - 1
. The coinflip ticket is 0.45612148050081647
- this means that player 3 wins the battle.To verify a game, a few steps must be performed:
- First, the player must verify the server seed hash matches the one displayed before the game starts.
- The player must verify the EOS block was mined after the game started, and that the block hash matches the one displayed.
- The player must verify random outcomes were generated using the game seed.
To simplify the process, we provide a special tool that allows you to verify game results. If you enter the game details correctly, it will verify the game for you. If anything is changed, the verification will fail.