CASESTORM.PRO Logo

Settings

Language

English
Polish
German
Francuski
Spanish
Czech
Ukrainian
Turkish
Chinese

Currency

$
USD
EUR
PLN
CASESTORM.PRO Logo

Log in with Steam

Before logging in with Steam, you must accept the terms of service and confirm that you are at least 18 years old.

Powered by Steam. Not affiliated with Valve Corp.
Shield

Provably Fair

Our provably fair system ensures that all case openings, user loot boxes, and battles are completely fair and transparent. You can verify any opening to ensure that the results were not manipulated.

How It Works

1

Seed Generation

For each opening, we generate a unique server seed (32 characters) and client seed (16 characters). These seeds together determine the outcome.

2

Server Hash

The server seed is hashed and stored. This hash serves as proof that the server seed wasn't changed after the opening.

3

Roll Calculation

The seeds are combined and hashed using SHA-256. The first 8 characters of the hash are converted to a number between 0.000 and 100.000.

4

Item Selection

The generated number determines which item will be selected based on the probability ranges of each item in the case.

Verify an Opening

Enter the opening ID to verify the fairness of any case, user loot box, or battle opening. You can find the opening ID in your profile history or in the verification link provided after each opening.

Technical Details

Roll Calculation Algorithm

// 1. Generate unique server seed (32 characters) and client seed (16 characters)
serverSeed = Str::random(32)
clientSeed = Str::random(16)

// 2. Hash the server seed for verification
serverHash = Hash::make(serverSeed)

// 3. Combine the seeds
combinedSeed = clientSeed + serverSeed

// 4. Generate SHA-256 hash
hash = hash('sha256', combinedSeed)

// 5. Take first 8 characters of the hash and convert to decimal
decimal = hexdec(substr(hash, 0, 8))

// 6. Scale to a number between 0 and 100,000 (for 3 decimal places)
roll = (decimal % 100000) / 1000
                        

Item Selection

Items are selected based on their probability ranges:

// Example with 3 items
Item A: 50% chance (0.000 to 50.000)
Item B: 30% chance (50.001 to 80.000)
Item C: 20% chance (80.001 to 100.000)

// If roll = 75.123
// Item B would be selected (as 50.001 ≤ 75.123 ≤ 80.000)