vLotto — How to Play
vLotto is a transparent, on-chain drawing running on the Verus blockchain. Every drawing is verifiable — from ticket generation to winner selection — using publicly auditable blockchain data. The drawing authority manages the process, but all results and ticket data are recorded on-chain in a ledger that anyone can independently verify.
Getting vlotto
To participate in vLotto, you need vlotto currency. You can acquire vlotto by converting VRSC through the vlotto Currency Basket. The conversion rate is determined by the basket's reserves. You can check the current price on the vLotto dashboard or by querying the basket currency on-chain.
./verus sendcurrency "YOUR_R_ADDRESS" '[{"address":"YOUR_R_ADDRESS","amount":10,"currency":"VRSC","convertto":"vlotto"}]' 1./verus sendcurrency "YOUR_R_ADDRESS" '[{"address":"YOUR_R_ADDRESS","amount":5,"currency":"vlotto","convertto":"VRSC"}]' 1How It Works
1. Buy a Ticket
During the marketplace phase, ticket identities are listed for sale on the Verus Marketplace. To buy a ticket, you accept a marketplace offer using the Verus CLI or wallet. Each ticket costs the listed price (e.g., 1 vlotto). When you buy a ticket, ownership of the ticket identity transfers to your R-address.
./verus takeoffer "YOUR_R_ADDRESS" '{"txid":"OFFER_TXID_HERE","deliver":{"currency":"vlotto","amount":1},"accept":{"name":"ticket123","parent":"vlotto","primaryaddresses":["YOUR_R_ADDRESS"],"minimumsignatures":1,"revocationauthority":"TICKET_I_ADDRESS","recoveryauthority":"TICKET_I_ADDRESS"},"changeaddress":"YOUR_R_ADDRESS"}'2. What You Get
Each ticket has a unique 64-character hex playing number that was cryptographically sealed before the drawing block — no one can change it after the fact.
3. The Drawing
At the designated drawing block height, the Verus blockchain produces a block hash. This block hash is used as the drawing number.
4. How Scoring Works
Your ticket's playing number is compared character-by-character against the drawing hash:
- Leading zeros in the drawing hash are skipped (this is typically the case when a block is mined via proof-of-work)
- Each position where your digit matches the hash digit counts as a match
- The score is the sum of the hex values (0–15) of all matching digits
- Tickets are ranked by: most matches first, then highest score, then lowest ticket number as tiebreaker
5. Winning
To win the jackpot, your ticket must:
- Have at least the minimum required matches (set per drawing)
- Be a sold ticket (purchased by a player, not still held by vLotto or discarded)
- Be valid (not tampered with — the system performs cryptographic verification and will detect any tampered tickets)
If the top-ranked ticket meets all conditions, it wins. If the top ticket fails verification, the system moves to the next ranked ticket until a valid winner is found. If no valid, sold ticket meets the minimum matches, there is no winner and the jackpot rolls over to the next drawing.
6. Claiming Your Prize
If your ticket wins, vLotto places a buyback offer on the Verus Marketplace — offering the jackpot amount in exchange for your winning ticket identity. You claim by accepting this offer via CLI. The offer has an expiry block. If unclaimed, the jackpot rolls over.
./verus takeoffer "*" '{"txid":"JACKPOT_OFFER_TXID","deliver":"winningticket.vlotto@","accept":{"address":"YOUR_R_ADDRESS","currency":"vlotto","amount":175.50},"changeaddress":"YOUR_R_ADDRESS"}'7. Discarding a Ticket
Discarding a ticket transfers its primary address to the graveyard address — effectively burning the ticket. Unsold tickets are discarded by the system after the sales period ends, but a player can also voluntarily discard a ticket by updating its identity. A discarded ticket cannot win the jackpot.
./verus updateidentity '{"name":"ticket123","parent":"vlotto","primaryaddresses":["RAXCjm9Z4RJWEmsNgo83B8JevTcJRt6Tj5"],"minimumsignatures":1}'Replace ticket123 with the ticket's identity name (without .vlotto@).
8. Verification
Every winning ticket undergoes 7-step cryptographic verification to prove it was not tampered with:
- Identity exists on-chain
- Registration transaction confirmed
- Ticket self-signature valid
- Ticket hash authentic
- Proofguard acknowledged the ticket
- Proofguard signature valid
- Public audit — historical consistency and playing number integrity
Anyone can independently verify these steps using the Verus blockchain.
Utility IDs
vLotto operates through a set of purpose-built identities on the Verus blockchain, each with a specific role:
The heart of every drawing. Jackpot holds the prize pool and keeps it safe until a winner is determined. At the start of each drawing, funds are deposited into Jackpot's custody. Once a winner is confirmed, Jackpot releases the full prize to the Payout identity for the buyback offer. After the drawing, a portion of ticket revenue flows back into Jackpot to seed the next round — keeping the cycle going.
The delivery specialist. Payout receives the full jackpot once a winner has been verified and handles the buyback offer. Rather than sending funds directly to a winner's wallet, Payout creates a marketplace offer to purchase the winning ticket at the full jackpot value. The winner simply accepts the offer and receives their prize in exchange for their winning ticket.
The register. Every ticket sale flows through Cashier, collecting all revenue from the marketplace. Once the drawing is complete and sales are finalized, Cashier tallies the total and distributes funds according to the configured percentages — splitting revenue between Jackpot, Operations, Reserves, and any custom destinations.
The budget keeper. Operations receives its configured share of ticket revenue after each drawing to cover the costs of running the drawing — transaction fees, infrastructure, and ongoing development. This ensures vLotto remains self-sustaining without relying on external funding.
The safety net. Reserves holds overflow funds and acts as a financial buffer. If the jackpot exceeds its configured ceiling cap, the surplus flows into Reserves. It also catches any remainder after all percentage-based distributions are complete. When the jackpot needs a boost for a future drawing, Reserves can contribute as a secondary funding source.
The public record keeper. Ledger writes a detailed, tamper-proof snapshot to the blockchain after every phase of every drawing. It records financial summaries, ticket counts, drawing results, payout details, and distribution breakdowns — all publicly verifiable by anyone. Ledger never holds or moves funds; its sole purpose is transparency and accountability.
The notary. Proofguard is the cryptographic signing authority that establishes each ticket's chain of custody. During data generation, Proofguard signs every ticket's self-signature, creating a tamper-proof hash that becomes the ticket's playing number. During the drawing, Proofguard's signatures are verified to confirm no ticket has been altered. If a ticket's chain of custody is broken, it cannot win — Proofguard is the integrity guarantee of the entire system.
Key Terms
Tips
- Your odds improve with more matches — but the drawing number is determined by the block hash at the drawing block height
- All ticket data is publicly visible on the blockchain before, during, and after the drawing
- You can verify any ticket's authenticity yourself using the Verus CLI
- The ledger contains all data necessary to reconstruct and audit current and past drawings
- You can cash out vlotto back to VRSC at any time via the currency basket