How Do I Know Battles on Lootbox.com Are Fair?
At Lootbox.com, our Battles feature also uses a Provably Fair system to ensure that every outcome is fair, random, and completely transparent. Like the Boxes system, it operates on a similar framework, with a few key differences to accommodate multiplayer dynamics.
How It Works
For each round of a Battle, the outcomes are determined by generating a random ticket number for each player. This ticket number is calculated using a combination of four elements:
- Server Seed: A secure, random string generated by us for every Battle. This seed is hashed and displayed as the Hashed Server Seed before gameplay begins. Once the Battle concludes, the actual Server Seed is revealed so players can verify the results.
- EOS Block Hash: Instead of a traditional Client Seed, Battles use the EOS Block Hash as the Client Seed. The EOS Block Hash is a publicly available, verifiable value obtained from an EOS block mined after all players joined. Each Battle references an EOS block number, which players can easily look up on EOS block explorers such as eosflare.io. By searching for the block number, you can retrieve the corresponding EOS Block Hash, which adds an external, decentralized source of randomness to the calculation. This ensures complete transparency, as the block hash cannot be controlled or manipulated by Lootbox.com or any participant.
- Round Number: Each round of the Battle acts as the Nonce, starts at 0 and increments by 1 with every new round. This ensures that every round produces a distinct random outcome.
- Participant ID: Each player in the Battle is assigned a Participant ID, starting from 0. This ID is used to determine which ticket range applies to each participant during the randomization process.
This system uses the same Seed Pair mechanism explained in detail in the Overview section. Visit that section for a more comprehensive explanation of how seeds and nonces work together to ensure Provably Fair gameplay.
How Products Are Assigned
For each round, the system combines the Server Seed, EOS Block Hash, Round Number, and Participant ID to generate a unique seed for that round. This seed is used to produce a random ticket number. The ticket number is matched to predefined ticket ranges for the products in the box of that round, determining the unboxed product of that player in that round.
Tie-Breaker Rounds
In the event of a tie, the winner is determined through a tie-breaker round using a transparent and fair methodology. Here's how the process works:
- Ticket Range Allocation: For the tie-breaker round, all tied participants are evenly distributed within a fixed ticket range of
100,000,000
. Each participant receives an equal share of the tickets, ensuring fairness. - Provably Fair Inputs (PF): The outcome of the tie-breaker round is determined using the PvP game client seed, the regular server seed, and the round number of the tie-breaker. For example, if the initial game involves three rounds, the tie-breaker would use round number 4 as its input.
Participant IDs
Participant IDs are determined based on their position on the user interface and follow a zero-indexed format. This means the IDs are assigned from left to right as they appear on the screen:
- 3v3 Games: Participants are numbered
0
to5
(with5
being the highest ID). - 2v2 Games or 4-Player Royale: Participants are numbered from
0
to4
.
This system ensures that participant IDs are consistently assigned and easy to verify.
By combining evenly distributed tickets, transparent inputs, and a clear participant ID structure, the tie-breaker mechanism guarantees a fair and verifiable outcome for all users.
Verifying the Results
Once the Battle ends, you can verify its fairness by using the CodePen tool below. Simply input the Hashed Server Seed, Server Seed, EOS Block Hash, Round Number, and the Participant ID values to confirm that the outcome of a player in a round was calculated randomly and fairly.