TF2Royal
0.00

X-Roulette History

Provably fair — past batches can be checked after seed rotation

How can I verify X-Roulette?

Before a batch of X-Roulette rounds starts, TF2Royal commits to a hashed server seed. The unhashed server seed stays private until the next batch is generated. Once that rotation happens, the old server seed is revealed here so you can compare it to the old hash and verify every round.

X-Roulette technical details

Every multiplier is derived from three inputs:

1 ― The revealed server seed from this history table.

2 ― The public seed stored with the batch.

3 ― The round ID.

Those three inputs are hashed together and converted into the round's multiplier by the formula below. Run it yourself against any row in the table to confirm the recorded result.

$server_seed = "96f3e04d221ca1b2048cc3b3b844e479f2bd9c80a870628072ee98fd1aa83cd0";
$public_seed = "460670512935";
$round_id = "321";
$round_hash = hash('sha256', $server_seed . "-" . $public_seed . "-" . $round_id);
$roll = hexdec(substr($round_hash, 0, 8)) + 1;
$unit = $roll / 4294967297;
$multiplier = floor(min(10000, max(1, 0.90 / $unit)) * 100) / 100;

echo("Multiplier: $multiplier");

You can execute PHP snippets in your browser with tools such as 3v4l. Copy the snippet above, replace the server seed, public seed, and round ID, and compare the output with the recorded round.

IDHash / Revealed SeedPublic SeedRounds
11379655484c6e5096d9f28b1ca2b9f4ae01fbb07e60936784c43129c15aa15048c6033939696330056-
1129dbb7bf76b4d5d59d67b7fefadc1b0e73ee96af9cbdf23a9a96426bd4c2bac4b2568068067327126-330055
111c032d1d093a8a87c2c01724d6753c91b48c67d99e1c890e3a3b80fa26e4f71954940568288324192-327125
110652de37014cf5b6ef5cfb4512e685d2249481067d9fcbecd6dc23874219a4d036453108620321268-324191
1095fc8b5e0d591d0eb7dec942b6947ff039124c2d84f7d0cdffd89ac77c7bf470b4870948683318340-321267
108bd57ba22cee177cf4e74c1148eae39c02cdb9785deb0a7224f4e98fe3af827fe9610219915315407-318339
107ea2cccfe4df576493049277f19a956b870c2a95ad878891a87b51c1f8f350ef33206601679312474-315406
1061c3c4455ad620089db3bbc1bb3463b295b2b1d5e0a5345048daf89c738fcb23f5869421792309538-312473
105bdead9176a928e86ad7a2ce89b85236e5fc99a59e26a1ba4a2845da40a5629483050146469306600-309537
104f905a55a72663cc5b0de604463f625aee89d74a1252c5f92c4d7354fcc2d48e01612300815303667-306599