Learn about our provably fair scratch cards, dice, and Plinko โ all tied to real blockchain data (XRPL and supported tokens)
LuckyHash offers provably fair scratch cards, dice (hash dice), and Plinko using real blockchain dataโprimarily the XRP Ledger (XRPL) and, where supported, Solanaโso outcomes cannot be predicted or manipulated by us or players after you commit.
Scratch cards use symbol grids and pattern rules; dice lets you pick a target (roll under) and stake per bet; Plinko drops a ball through a peg board and pays according to which multiplier bucket it lands in. All of these games support the same kinds of tokens (for example XRP and CSC on XRPL).
Every scratch card uses XRPL blockchain data for provably fair randomness. We wait for the next XRPL ledger to close (typically 3-5 seconds) and combine it with unique data to ensure no one can predict or manipulate the outcome.
How Results Are Generated:
Formula: SHA256(Transaction Hash + Ledger Hash)
Your payment transaction hash is combined with the next XRPL ledger hash. Since your transaction hash didn't exist before you paid, this ensures complete fairness.
Formula: SHA256(Purchase ID + Ledger Hash)
A unique purchase ID is combined with the next XRPL ledger hash. This ensures each gift card redemption gets a unique result, even when multiple cards are played simultaneously.
Formula: SHA256(Purchase TX + Ledger Hash + Bet Index)
Each dice roll waits for its own fresh ledger close. Your session is anchored by the payment or redemption transaction id; each bet adds a bet index so multiple rolls in one session stay unique and verifiable.
The Process (All Card Types):
A7B3C1D9...B7E8F2A1...C9E5D2F8A4B7E1C3...
The derived hash gets converted into symbols for your scratch card grid. Each pair of characters becomes one symbol, ensuring complete transparency and fairness for all card types.
Dice rolls, by contrast, use the first part of a dedicated derived hash to produce a number from 0โ99. You choose a target; you win if the roll is strictly below that target. The win chance and payout multiplier follow from your target (with a small documented house edge). After each bet you can open the in-page verification breakdown to see ledger hash, derived hash, and roll mathโsame transparency mindset as scratch verification.
Win by collecting matching symbols:
Win by collecting matching symbols:
Win with specific patterns:
Find 3+ matching target symbols:
Every pair of characters in the XRPL hash determines one symbol on your scratch card. Each card generates a fresh result by waiting for the next XRPL ledger to close, ensuring true randomness:
Note: The symbols shown above are examples only. Each card has its own unique symbol set that may differ significantly from these examples.
Symbol Distribution by Grid Type:
This transparent system means you can verify every result independently using any XRPL explorer!
Every scratch card, each dice bet, and each Plinko drop can be checked with an on-page verification breakdown: hashes, ledger references, and how the outcome was derived:
After playing any card, click the "Verify Card Result" button in the winning combinations section to open a detailed breakdown of how your result was generated.
View the exact XRPL ledger hash used for your card with a direct link to verify it on any XRPL explorer like XRPScan or Bithomp.
See exactly how each pair of characters from the hash was converted to symbols on your grid, with complete transparency.
View your complete grid with all symbols revealed, showing exactly what determined your win or loss.
For dice, the verifier shows the ledger hash, the derived hash, the roll (0โ99), and how it compares to your target.
For Plinko, you can see the derived hash, the left/right path for each row, the landing bucket, and the multiplier used for that drop.
Some cards offer exclusive XRPL NFTs as additional bonus rewards for exceptional wins. These NFTs are awarded ON TOP of your regular cryptocurrency winnings!
How NFT Rewards Work:
How to Claim Your NFT:
After winning, you'll see a special notification if you've qualified for an NFT reward. Your crypto payout happens automatically.
We create a zero-value NFT offer on the XRPL that only you can accept. Check your wallet or visit any XRPL NFT marketplace to see pending offers.
Use opmarket.ai, bidds.io, xpmarket.com, or any other XRPL NFT-supported service to accept the NFT offer (it's free to accept, you only pay the small XRPL network fee).
Once accepted, the NFT is transferred to your wallet. View it on opmarket.ai, trade it, or keep it as a collectible!
NFT Offer Expiration: NFT offers expire after 48 hours if not accepted. Make sure to claim your NFTs promptly!
Every game result includes a verification link to check the XRPL ledger hash and symbol mapping.
Winning cards trigger automatic payouts to your wallet - no manual claims needed. Note: Wins over 1000 XRP require manual verification and may take up to 24 hours to process.
Four scratch grid types, hash dice, and Plinkoโverify symbols, rolls, or each dropโs path and multiplier.
All transactions happen on-chain using the secure XRPL network.
Win exclusive XRPL NFTs as additional rewards on top of your crypto winnings for exceptional plays!
If your session is interruptedโbrowser closed, connection lost, device switched, or you simply navigate awayโweโve got you covered. This applies to bulk scratch sessions, Dice sessions, and Plinko sessions. Unplayed value is recovered automatically after a grace period; wins you already earned are handled as described below.
What happens:
Plinko and Dice use prepaid sessions (a fixed number of drops or bets). If you stop before finishing, automated session interruption recovery runs after a period of inactivity (same general idea as scratch recoveryโusually about an hour, depending on site settings).
Prizes already won (session-end payout): Any wins already recorded in that session (drops on Plinko, winning rolls on Dice) are added up. We queue one wallet payout for that totalโthe same end-of-session reward path as when you play to the end. You do not have to return to the game screen for that payment to be initiated; recovery handles it when the session is treated as abandoned.
Unplayed rounds:
Gifts you redeemed: If the session started from a dice or Plinko gift link, the same rules apply: winnings from plays you already finished are included in the session total and sent through the normal reward payout flow; anything you did not play is returned as a new gift you can redeem from the dashboard.
Closed the tab or lost connection? Unplayed scratch value becomes a gift; unfinished Dice or Plinko sessions get a payout for wins so far plus a gift for whatโs left.
The system waits before recovering so you can resume if you come back quickly. Timing is typically on the order of an hour (scratch bulk conversion is often described as 1โ2 hours).
Recovered scratch cards and Dice or Plinko continuation gifts are all managed from the Gift Dashboard.
Dice is a separate game from scratch cards: you set how much to stake per roll, pick a target between 1 and 99 (you win when the roll is under that target), and play one or many bets in a session. Lower targets are harder to hit but pay higher multipliers โ up to about 99ร your stake per bet at the riskiest settings.
When you place a bet, the server waits for the next closed ledger, then computes:
Derived hash = SHA256(purchaseTxHash : ledgerHash : betIndex)
Roll = first five hex characters of that hash, interpreted as a number, modulo 100 โ a value from 0 to 99. If the roll is < your target, you win stake ร multiplier; otherwise the stake is lost. The betIndex increments for each bet so back-to-back rolls in one session never reuse the same hash.
Dice gift cards: Someone can pay for a bundle of dice bets and share a redeem link, similar to scratch gifts. After redemption you get a dice session with the advertised number of bets and stake size; you then choose your target and play them on the Dice page.
Plinko is the classic โball drops through pegsโ game. You choose how much to bet per ball, how many drops you want in a round, and how many balls fall on each drop. The ball bounces down through rows of pegs and lands in a multiplier bucket at the bottomโwide buckets usually pay less, edge buckets can pay more, depending on risk level and board size (8 or 16 rows). You can think of it as a fair, on-chain version of that game: the path the ball takes and the bucket it hits determine your payout for that drop.
How your result is chosen (still simple)
We donโt pick the outcome by hand. After you pay, the game waits for a fresh ledger close (same idea as scratch cards and dice: public blockchain data nobody could know in advance). We then build one fixed โfingerprintโ for each ball drop:
Step 2 โ turn that fingerprint into a path:
The animation you see follows that predetermined pathโthe visuals are there to make it fun to watch, not to โdecideโ the result after the fact.
Plinko gifts: Someone can buy Plinko as a gift and share a link; after you redeem, you play your drops on the Plinko page with the same fairness rules.
LuckyHash Points are a seasonal score based on how you finish in live competitions on the site (for example leaderboard contests for scratch cards, dice, or other metrics the team runs). They are separate from your in-game wins: LHP only measure placement on those competition leaderboards for the current season.
When a competition ends, the top 10 wallet addresses on that competitionโs final standings each receive a fixed number of LHP, according to the table below. The same point values apply to every competition type (multiplier, dollar wins, activity, wagered, and so on). Your season total is the sum of all LHP you earned from every competition that ended during that season while you placed in the top 10.
| Place | LHP |
|---|---|
| 1st | 100 |
| 2nd | 80 |
| 3rd | 65 |
| 4th | 50 |
| 5th | 40 |
| 6th | 32 |
| 7th | 25 |
| 8th | 18 |
| 9th | 12 |
| 10th | 7 |
| Total (all 10 places) | 429 |
If fewer than ten players qualify on the final leaderboard, only the places that exist get points (for example five players โ 1st through 5th only).
LHP are organized into seasons with a start and end date set by the team. A competition only counts if its end time falls inside the active season window (inclusive). There is one active season at a time; when the team starts a new season, totals reset for the new period. Points are granted automatically after each competition ends (not when you claim a prize elsewhere).
Tie-breaks on the public LHP leaderboard: if two players have the same season total, the higher rank goes to whoever earned more 1st-place finishes in competitions that season, then more 2nd places, and so on down to 10th. Competition standings themselves still use each contestโs own rules for tied scores (for example activity date).
See the live standings on the Leaderboard page under the LuckyHash Points tab (active season only). When a season includes extra details or announcements, they may appear there alongside the leaderboard.
Scratch cards
Dice
Plinko
Play provably fair scratch cards, dice, or Plinko with supported tokens.
Choose your signup option below