GILT SPIRE

GOLDODD STUDIO
Virtual credits onlyPrototype — not certified

SUMMIT LADDER

๐Ÿชฒ Brass the clockwork beetle climbs beside you. One more floor?
Set your bet, hit CLIMB, and pick a tile on each floor. Cash out before a gargoyle wakes.
BALANCE
10,000.00
BET
25.00
CASHED OUT
0.00

GILT SPIRE — How to play

Hit CLIMB to enter the spire. Each of the 8 floors hides gargoyle traps among 5 tiles — pick one tile per floor. A safe tile climbs you higher and raises your cash-out value; a gargoyle ends the climb and the bet is lost. Hit CASH OUT after any safe pick to bank your current value. Reach the summit (clear floor 8) for the maximum 42.72x.

Floor table

FloorTrapsCash-out
11 of 51.21x
21 of 51.48x
31 of 51.81x
42 of 52.90x
52 of 54.64x
62 of 57.42x
73 of 517.80x
8 (summit)3 of 542.72x

Math brief (design target, not certified)

Target RTP 96.5% for typical play — a design target, not certified. Each floor's multiplier is priced near 96% of its fair value, so cashing out early returns close to the target; climbing deeper compounds the edge, so the full-summit run returns less per bet. Your actual return depends on your cash-out strategy. Volatility: High. Max win: 42.72x bet. Trap positions are random every climb.
Virtual credits only — no real money. All art, characters, names and sounds are original creations of Goldodd studio.
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(); }); } })();