Virtual credits only Prototype — not certified
Credits10,000
Live multiplier1.00×
Next ring1.08×
Wager
25
Tap the sky or press Space to flap. Cash out after clearing a ring.

How the run works

A paper comet falls under gravity. Every tap gives it one sharp burst of lift. Thread the open center of each stone ring, then decide whether to bank the multiplier or risk the next gate.

  1. 1Pick a wager, then tap the flight field to launch. Your stake leaves the credit balance immediately.
  2. 2Use short, deliberate taps. The right-side flight meter shows upward lift and downward momentum in real time.
  3. 3Clear one or more rings, then press Cash out before a collision to bank wager × multiplier.
Math & paytable
Design target96.5% RTP
VolatilityHigh
Maximum win10.00×
Reference hit rate90% / gate

The target uses a reference model with a 90% chance of clearing each ring. The ladder roughly follows 0.965 ÷ 0.90ⁿ, rounded for display. Actual return and hit frequency are player-dependent because timing and skill affect every flight. This prototype has not been certified.

A crash into a ring, ceiling, or ground returns 0×. The run automatically banks at the 24th ring, where the multiplier is capped at 10.00×. Maximum credit win is 2,500 on the 250-credit wager.

on every goldodd.com page. Sends: pageview on load; on /games// pages also game_start, a heartbeat every 30s, and game_end when the tab closes. No cookies, no fingerprinting. Visitors with Do Not Track on send nothing. */ (function(){ "use strict"; if (navigator.doNotTrack === "1" || window.doNotTrack === "1") return; var EP = "https://goldodd.com/api/collect"; var sid = "na"; try { sid = sessionStorage.getItem("go_sid") || ""; if (!sid) { sid = Math.random().toString(36).slice(2) + Date.now().toString(36); sessionStorage.setItem("go_sid", sid); } } catch (e) {} var device = /Mobi|Android|iPhone|iPad/i.test(navigator.userAgent || "") ? "mobile" : "desktop"; function send(type, game) { var d = { type: type, path: location.pathname, ref: document.referrer || "", session: sid, device: device }; if (game) d.game = game; var body = JSON.stringify(d); try { if (navigator.sendBeacon && navigator.sendBeacon(EP, body)) return; } catch (e) {} try { fetch(EP, { method: "POST", headers: { "Content-Type": "application/json" }, body: body, keepalive: true }); } catch (e) {} } var m = location.pathname.match(/^\/games\/([^\/]+)/); var game = m ? m[1] : null; send("pageview"); if (game) { send("game_start", game); var hb = setInterval(function(){ send("heartbeat", game); }, 30000); var done = false; var end = function(){ if (done) return; done = true; clearInterval(hb); send("game_end", game); }; window.addEventListener("pagehide", end); document.addEventListener("visibilitychange", function(){ if (document.visibilityState === "hidden") end(); }); } })();