← Back to /wager

Wager Terms

Plain-language terms for wager races. Read the first section.

0. BETA — Read this first

Wager races are experimental. The wager code path is unaudited and may contain bugs. Real Bitcoin is at risk: you may lose your entire stake due to software defects, key loss, browser crashes, settlement failures, or operator outages. Do not wager more than you can afford to lose. By using the wager feature, you accept full responsibility for any loss of funds.

If any of this is not acceptable to you, stop now. The rest of RyRacer (single races, race packs, leaderboard) is unaffected by this feature and stays available.

1. What this is

Wager races are skill-based contests. Two players each stake bitcoin into an Ark escrow contract, race the same car on the same randomized track seed, and the higher score wins the pot minus a 1% platform fee. If both players post identical scores it's a tie — both stakes are returned. Wager races are not gambling: the conditions are mirrored and the winner is determined by skill on the track.

2. How the money moves

  • Each player sends stakesats to a 3-path Ark escrow address. That address is derived deterministically from both players' public keys plus a platform arbiter key. The pot is 2 × stake.
  • On a clean settlement, the winner receives pot − fee. The fee is floor(pot / 100) (1%, rounded down).
  • On a tie, both players receive their stake back. No fee.
  • On a forfeit (your opponent no-shows, disconnects, or fails plausibility), you win the pot. The 1% fee still applies.
  • On a mutual no-show (nobody funds), the match expires and nothing moves — nothing was escrowed in the first place.

3. You hold your own keys

The browser wallet stores a 32-byte private key in localStoragein plaintext (v1). You are responsible for backing it up via the widget's "Back up key" flow.

If you lose your browser data without a backup, the funds in your wallet are gone. Ops cannot recover them. If you share your key, anyone with it can drain your wallet. Treat the backup like a bearer bond.

4. The 24-hour refund path

Every escrow has a CLTV absolute timelock at fundedAt + 24h. After that window, you and your opponent can cooperatively sign a refund transaction that returns both stakes to their original payout addresses. This is a user-triggered safety net for the rare case when the platform arbiter cannot settle (e.g. a catastrophic ops outage).

v1 does not ship a cooperative-refund UI. You would need an Ark-aware tool to assemble and sign the refund spend yourself. Ops is available to help if you get stuck. Practically: funds cannot be lost due to platform failure alone — only delayed by up to 24 hours plus the time it takes to co-sign the refund.

5. Score validation and cheating

All scores go through the same plausibility checks as paid races — minimum duration, maximum score rate, combo consistency. A score that fails plausibility is rejected, which counts as a forfeit for that player.

Attempts to tamper with the game client, replay scores, or sign for another player's slot are protocol violations and may result in account bans and forfeits.

6. Determinism caveat (v1)

The game loop uses wall-clock frame timing. Two players on different hardware see the same randomized event sequence, but the exact frame at which each event fires may differ by a few milliseconds. Mirror-match fairness in v1 is therefore perceptual, not bit-identical.

A future release will migrate to fixed-timestep physics for bit-identical cross-machine determinism. Practically, internal testing has not produced score differences greater than 1% from this effect, but it's a real property you should know about.

Disputed races based on wall-clock timing differences are not resolvable via replay in v1. The 24-hour refund path is the escape hatch.

7. Jurisdiction, age, and eligibility

  • You must be 18 years old, or the age of majority in your jurisdiction, whichever is higher.
  • Wager races may be unlawful in your jurisdiction. You are responsible for knowing and complying with your local law. RyRacer does not make a legal determination on whether skill-based contests for money are permitted where you live.
  • If you know your jurisdiction prohibits skill-based contests for money, do not participate.

8. Fees and settlement timing

  • Platform fee: 1% of the pot, floored at the satoshi — minimum floor(2 × stake / 100). Applied to non-tie, non- refund outcomes only.
  • Settlement target: under 2 minutes after both players submit. The server's timeout sweep runs every 2 minutes.
  • If the operator is congested, settlement may take longer. The platform retries automatically up to 5 times. If all retries fail, the match is marked failed and ops is notified. Your funds remain in escrow and can be recovered via the 24-hour refund path.

9. Dispute policy

v1 has no dispute process. Scores are validated by the same code for both players. Both players signed the same BIP322 challenge-response to enter the match. Both players see the same event sequence. If you think the outcome is wrong, your only recourse in v1 is the 24-hour refund path (which requires cooperative signing with your opponent) or waiting for a future release that adds replay verification.

Post-MVP, the wager contract describes future dispute mechanisms (replay verification, third-party arbiters). These are not part of v1.

10. Contact

Ops contact: coming soon. For now, open a GitHub issue at github.com/Chepenik/ryracer/issues.

← Back to /wagerHome