{
  "studio": "Baize Studio",
  "build": "2026-10-02",
  "generatedFrom": "games/game-facts.mjs (derived from the game engines)",
  "status": "Demo-credit build. Not certified. Not for real-money play yet.",
  "contact": "jaden@baizestudio.com",
  "portal": "https://baizestudio.com/for-casinos",
  "definitions": {
    "rtp": "Theoretical return to player: expected total return per 1.00 of total stake, stake included.",
    "houseEdge": "1 minus RTP.",
    "hitRate": "Chance a round returns anything (a partial return counts).",
    "netWinRate": "Chance a round returns more than its total stake.",
    "volatility": "Volatility is the standard deviation of one round’s total return per 1.00 of total stake. Low under 1.5, Medium 1.5 to under 5, High 5 to under 15, Very high 15 and over. For scale: an even-money roulette bet is 1.00, a straight-up number 5.84.",
    "maxWin": "Largest total return of one round, as a multiple of its total stake (blackjack: of the opening bet).",
    "ggrPer1000": "Theoretical gross gaming revenue from 1,000 rounds at a total stake of 1.00 each: house edge x 1,000.",
    "roundSeconds": "Typical seconds per round. Originals, quick games and slots: measured in headless Chrome on the 2026-10-02 game-window build with fast decisions. Shared tables and crash games: the server round clock.",
    "referenceMode": "The way of playing used for the headline numbers; every mode is listed under modes."
  },
  "volatilityBands": [
    {
      "label": "Low",
      "sdBelow": 1.5
    },
    {
      "label": "Medium",
      "sdBelow": 5
    },
    {
      "label": "High",
      "sdBelow": 15
    },
    {
      "label": "Very high",
      "sdBelow": null
    }
  ],
  "integration": {
    "launchUrl": "https://baizestudio.com/embed/<game>?lobby=<url>&sound=1",
    "parameters": {
      "lobby": "https URL the home button opens in the top window (hidden when absent)",
      "sound": "0 or 1",
      "embed": "1 on /play/ URLs",
      "rtp": "Slots: 96 (default), 94 or 92. Plinko, Limbo and Dice: 99 (default) or 98. Other games ignore it.",
      "jurisdiction": "uk: the UK profile (no auto play; no bonus buy and no Quick or Instant play where a game has them). Read by Midnight Felt, Mint Mark, Fennimore, Byte Street, Snip, Topple, Crash, Updraft, Mines, Keno, Hi-Lo, Plinko, Limbo and Dice.",
      "autoplay": "0 turns auto play off (Mines)."
    },
    "messagesFromGame": [
      "ready",
      "balance",
      "round",
      "resize",
      "home",
      "error"
    ],
    "messagesToGame": [
      "sound",
      "pause",
      "resume"
    ],
    "sizes": [
      "1920x1080",
      "1280x720",
      "1024x768",
      "800x600",
      "844x390",
      "390x844",
      "360x640"
    ],
    "minimumSize": "320x480",
    "iframeAllow": "autoplay; fullscreen"
  },
  "games": [
    {
      "id": "tower-climb",
      "name": "Tower Climb",
      "group": "Originals",
      "category": "Table games: cash-out ladder of ten classics",
      "launchUrl": "https://baizestudio.com/embed/tower-climb",
      "playUrl": "https://baizestudio.com/play/tower-climb",
      "sheetUrl": "https://baizestudio.com/for-casinos/tower-climb",
      "cover": "https://baizestudio.com/assets/tower-climb-cover.svg",
      "thumbnail": "https://baizestudio.com/assets/thumbs/tower-climb/3x2-400.webp",
      "rtpPercent": 99.6,
      "rtpRangePercent": [
        96.071237,
        99.6
      ],
      "houseEdgePercent": 0.4,
      "hitRatePercent": 85.687399,
      "netWinRatePercent": 85.687399,
      "volatility": {
        "sd": 0.409913,
        "label": "Low",
        "range": "Low to High"
      },
      "maxWinMultiple": 1410226.051152,
      "maxWinNote": "Needs the riskiest choice on every floor, the hardest floor 9 draw and a first-try clear on all ten floors: about 1 in 1,914,418,794 climbs played that way. Default choices pay at most 390.595819x. No separate win cap.",
      "ggrPer1000AtStake1": 4,
      "referenceMode": "Bank after floor 1",
      "stake": {
        "min": 10,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 10 to 100 per climb. Extras stake one more starting stake each."
      },
      "round": {
        "structure": "Multi-step cash-out ladder",
        "description": "One stake, up to ten floors. Bank between floors or carry the run up; losing a floor’s last attempt loses the run.",
        "seconds": 2.9,
        "roundsPerHour": 1241,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Minimum stake (10), Enter the tower (enters floor 1, blackjack); stand on 17+, hit below (no on-screen hint), no doubles/splits; tap Next attempt as soon as offered; bank once floor 1 is cleared (climb ends on bank or floor 1 lost). 15 rounds. Simple view (the default)."
      },
      "does": "The player stakes once, then climbs ten floors where each floor is a short round of blackjack, baccarat, roulette, craps or Hold’em, and can bank the run value between floors.",
      "hook": "The run value grows on screen after every cleared floor, and the bank-or-climb choice comes back each time with the exact payout already shown.",
      "sessionFit": [
        "Long sessions: a climb lasts several minutes",
        "Single player"
      ],
      "placements": [
        "New-games rail",
        "Table games lobby, next to blackjack and roulette",
        "Tournaments on highest banked multiple",
        "Cross-sell for table players who want a longer format"
      ],
      "features": [
        "Bank between floors (cash out)",
        "Priced double and split extras on blackjack floors",
        "Simple and 3D views",
        "Watch mode (larger layout for streams)",
        "Routine steps advance on their own; tap to skip",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. 3D view uses WebGL with a Simple view for low-end devices. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Formula-based: each floor is priced to a single target return (99.6% today). A different target is one constant, but needs new sign-off. Not built as a launch option.",
      "ukProfile": false,
      "modes": [
        {
          "id": "bank-1",
          "name": "Bank after floor 1",
          "rtpPercent": 99.6,
          "hitRatePercent": 85.687399,
          "netWinRatePercent": 85.687399,
          "sd": 0.409913,
          "volatility": "Low",
          "maxWinMultiple": 1.204766,
          "ggrPer1000AtStake1": 4
        },
        {
          "id": "bank-3",
          "name": "Bank after floor 3",
          "rtpPercent": 98.804794,
          "hitRatePercent": 65.195889,
          "netWinRatePercent": 65.195889,
          "sd": 0.728052,
          "volatility": "Low",
          "maxWinMultiple": 19.133335,
          "ggrPer1000AtStake1": 11.952064
        },
        {
          "id": "bank-5",
          "name": "Bank after floor 5",
          "rtpPercent": 98.015936,
          "hitRatePercent": 35.180592,
          "netWinRatePercent": 35.180592,
          "sd": 1.338266,
          "volatility": "Low",
          "maxWinMultiple": 36.654408,
          "ggrPer1000AtStake1": 19.840639
        },
        {
          "id": "bank-10",
          "name": "Full climb to the summit",
          "rtpPercent": 96.071237,
          "hitRatePercent": 0.603358,
          "netWinRatePercent": 0.603358,
          "sd": 12.752878,
          "volatility": "High",
          "maxWinMultiple": 1410226.051152,
          "ggrPer1000AtStake1": 39.287626
        }
      ]
    },
    {
      "id": "mines",
      "name": "Mines",
      "group": "Originals",
      "category": "Instant: mines-style cash-out ladder, premium 3D",
      "launchUrl": "https://baizestudio.com/embed/mines",
      "playUrl": "https://baizestudio.com/play/mines",
      "sheetUrl": "https://baizestudio.com/for-casinos/mines",
      "formerIds": [
        "strongroom"
      ],
      "deprecatedLaunchUrls": [
        "https://baizestudio.com/embed/strongroom"
      ],
      "cover": "https://baizestudio.com/assets/cover-mines.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/mines/3x2-400.webp",
      "rtpPercent": 97.756522,
      "rtpRangePercent": [
        97.166667,
        98
      ],
      "houseEdgePercent": 2.243478,
      "hitRatePercent": 66.956522,
      "netWinRatePercent": 66.956522,
      "volatility": {
        "sd": 0.68674,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 9954.18,
      "ggrPer1000AtStake1": 22.434783,
      "referenceMode": "5x5, 3 dye packs: cash out after 3 gems (default wall and packs)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per round."
      },
      "round": {
        "structure": "Multi-step cash-out ladder",
        "description": "One stake, open boxes one at a time, cash out after any gem.",
        "seconds": 1.02,
        "roundsPerHour": 3529,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: 5x5 wall and 3 dye packs (defaults), Pick for me three times, then cash out (ends early on a dye pack). Stake 10. 40 rounds. Measured on the 2026-10-05 build with the same method: a box shows its gem or dye pack 0.23 s after the tap, and Play pressed during the cash-out moment starts the next round at once."
      },
      "does": "The player picks a wall of 25, 36 or 49 safety-deposit boxes and how many hold a dye pack, then opens boxes one at a time; every gem raises the multiplier until they cash out or open a dye pack.",
      "hook": "Mines in a vault of deposit boxes, in real-time 3D: the gem in each box grows with the multiplier, a gem and a dye pack take exactly as long to show, and every wall is dealt from seeds the player can check.",
      "sessionFit": [
        "Quick or long sessions: a round is seconds to a minute",
        "Single player",
        "Good to watch: built for streams"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Streamer and creator campaigns",
        "Tournaments on highest multiple"
      ],
      "features": [
        "Three walls: 5x5, 6x6 and 7x7",
        "1 to 48 dye packs (1 to 24 on 5x5, 2 or more on the larger walls)",
        "Cash out after any gem",
        "Provably fair: the RGS seed scheme, with one-tap verify of any round inside the game",
        "Auto play with stop rules, on random boxes or boxes the player chooses",
        "Pick for me",
        "Auto bank below a 10,000x table limit",
        "Quick play and keyboard play",
        "Resumes a round after a reload",
        "Six gem cuts that climb with the multiplier (aquamarine cushion to rose heart)",
        "UK profile (?jurisdiction=uk): no auto play and no Quick or Instant play"
      ],
      "devices": "Desktop and phone, portrait and landscape. A WebGL2 scene built in code (no image downloads), with an automatic quality ladder (high, balanced, battery saver; Settings can pin High or Battery saver), recovery from a lost WebGL context and a flat fallback without WebGL2. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Formula-based: every multiplier is 0.98 divided by the survival chance, rounded down. A different target return is one constant, but needs new sign-off. Not built as a launch option.",
      "ukProfile": true,
      "modes": [
        {
          "id": "w5-m3-k3",
          "name": "5x5, 3 dye packs: cash out after 3 gems (default wall and packs)",
          "rtpPercent": 97.756522,
          "hitRatePercent": 66.956522,
          "netWinRatePercent": 66.956522,
          "sd": 0.68674,
          "volatility": "Low",
          "maxWinMultiple": 1.46,
          "ggrPer1000AtStake1": 22.434783
        },
        {
          "id": "w5-m1-k5",
          "name": "5x5, 1 dye pack: cash out after 5 gems",
          "rtpPercent": 97.6,
          "hitRatePercent": 80,
          "netWinRatePercent": 80,
          "sd": 0.488,
          "volatility": "Low",
          "maxWinMultiple": 1.22,
          "ggrPer1000AtStake1": 24
        },
        {
          "id": "w5-m10-k3",
          "name": "5x5, 10 dye packs: cash out after 3 gems",
          "rtpPercent": 97.923913,
          "hitRatePercent": 19.782609,
          "netWinRatePercent": 19.782609,
          "sd": 1.971883,
          "volatility": "Medium",
          "maxWinMultiple": 4.95,
          "ggrPer1000AtStake1": 20.76087
        },
        {
          "id": "w6-m8-k5",
          "name": "6x6, 8 dye packs: cash out after 5 gems",
          "rtpPercent": 97.760695,
          "hitRatePercent": 26.069519,
          "netWinRatePercent": 26.069519,
          "sd": 1.646302,
          "volatility": "Medium",
          "maxWinMultiple": 3.75,
          "ggrPer1000AtStake1": 22.393048
        },
        {
          "id": "w7-m5-k5",
          "name": "7x7, 5 dye packs: cash out after 5 gems",
          "rtpPercent": 97.957388,
          "hitRatePercent": 56.95197,
          "netWinRatePercent": 56.95197,
          "sd": 0.851647,
          "volatility": "Low",
          "maxWinMultiple": 1.72,
          "ggrPer1000AtStake1": 20.426119
        },
        {
          "id": "w7-m48-k1",
          "name": "7x7, 48 dye packs: one box",
          "rtpPercent": 98,
          "hitRatePercent": 2.040816,
          "netWinRatePercent": 2.040816,
          "sd": 6.789639,
          "volatility": "High",
          "maxWinMultiple": 48.02,
          "ggrPer1000AtStake1": 20
        }
      ]
    },
    {
      "id": "tidebound",
      "name": "Tidebound",
      "group": "Originals",
      "category": "Instant: cash-out ladder",
      "launchUrl": "https://baizestudio.com/embed/tidebound",
      "playUrl": "https://baizestudio.com/play/tidebound",
      "sheetUrl": "https://baizestudio.com/for-casinos/tidebound",
      "cover": "https://baizestudio.com/assets/cover-tidebound.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/tidebound/3x2-400.webp",
      "rtpPercent": 96,
      "rtpRangePercent": [
        96,
        96
      ],
      "houseEdgePercent": 4,
      "hitRatePercent": 50,
      "netWinRatePercent": 50,
      "volatility": {
        "sd": 0.96,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 491.52,
      "ggrPer1000AtStake1": 40,
      "referenceMode": "Bank after chamber 1",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per dive."
      },
      "round": {
        "structure": "Multi-step cash-out ladder",
        "description": "One stake, up to nine 50/50 seals, bank whenever a seal has opened.",
        "seconds": 2.91,
        "roundsPerHour": 1237,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Dive once; bank if the seal opened (round ends on bank or flood). Default stake (10). 40 rounds."
      },
      "does": "The player sends a diving bell down through up to nine chambers; each seal is a coin flip that doubles the haul or floods the bell, and the player can bank after any open seal.",
      "hook": "One decision per step with a doubling haul: the player always knows what banking pays and what the next seal risks.",
      "sessionFit": [
        "Quick sessions: a round is seconds to a minute",
        "Single player"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Promo free-play",
        "Cross-sell from the sportsbook between events"
      ],
      "features": [
        "Bank after any open seal (cash out)",
        "Watch mode",
        "3D scene with a flat fallback",
        "Free replay of the last round",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. 3D scene uses WebGL and falls back to a flat scene. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Fixed paytable (96% at every bank depth). No other RTP is built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "bank-1",
          "name": "Bank after chamber 1",
          "rtpPercent": 96,
          "hitRatePercent": 50,
          "netWinRatePercent": 50,
          "sd": 0.96,
          "volatility": "Low",
          "maxWinMultiple": 1.92,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-2",
          "name": "Bank after chamber 2",
          "rtpPercent": 96,
          "hitRatePercent": 25,
          "netWinRatePercent": 25,
          "sd": 1.662769,
          "volatility": "Medium",
          "maxWinMultiple": 3.84,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-3",
          "name": "Bank after chamber 3",
          "rtpPercent": 96,
          "hitRatePercent": 12.5,
          "netWinRatePercent": 12.5,
          "sd": 2.539921,
          "volatility": "Medium",
          "maxWinMultiple": 7.68,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-4",
          "name": "Bank after chamber 4",
          "rtpPercent": 96,
          "hitRatePercent": 6.25,
          "netWinRatePercent": 6.25,
          "sd": 3.718064,
          "volatility": "Medium",
          "maxWinMultiple": 15.36,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-5",
          "name": "Bank after chamber 5",
          "rtpPercent": 96,
          "hitRatePercent": 3.125,
          "netWinRatePercent": 3.125,
          "sd": 5.345054,
          "volatility": "High",
          "maxWinMultiple": 30.72,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-6",
          "name": "Bank after chamber 6",
          "rtpPercent": 96,
          "hitRatePercent": 1.5625,
          "netWinRatePercent": 1.5625,
          "sd": 7.619764,
          "volatility": "High",
          "maxWinMultiple": 61.44,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-7",
          "name": "Bank after chamber 7",
          "rtpPercent": 96,
          "hitRatePercent": 0.78125,
          "netWinRatePercent": 0.78125,
          "sd": 10.818651,
          "volatility": "High",
          "maxWinMultiple": 122.88,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-8",
          "name": "Bank after chamber 8",
          "rtpPercent": 96,
          "hitRatePercent": 0.390625,
          "netWinRatePercent": 0.390625,
          "sd": 15.329971,
          "volatility": "Very high",
          "maxWinMultiple": 245.76,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "bank-9",
          "name": "Dive all nine chambers",
          "rtpPercent": 96,
          "hitRatePercent": 0.195313,
          "netWinRatePercent": 0.195313,
          "sd": 21.701097,
          "volatility": "Very high",
          "maxWinMultiple": 491.52,
          "ggrPer1000AtStake1": 40
        }
      ]
    },
    {
      "id": "glassworks",
      "name": "Glassworks",
      "group": "Originals",
      "category": "Instant: cluster pays",
      "launchUrl": "https://baizestudio.com/embed/glassworks",
      "playUrl": "https://baizestudio.com/play/glassworks",
      "sheetUrl": "https://baizestudio.com/for-casinos/glassworks",
      "cover": "https://baizestudio.com/assets/cover-glassworks.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/glassworks/3x2-400.webp",
      "rtpPercent": 95.615912,
      "rtpRangePercent": [
        95.615912,
        95.615912
      ],
      "houseEdgePercent": 4.384088,
      "hitRatePercent": 82.594117,
      "netWinRatePercent": 22.725194,
      "volatility": {
        "sd": 3.864516,
        "label": "Medium",
        "range": "Medium"
      },
      "maxWinMultiple": 300,
      "ggrPer1000AtStake1": 43.840878,
      "referenceMode": "One cast",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per cast."
      },
      "round": {
        "structure": "Single decision",
        "description": "One press casts the panel; the result is settled at once.",
        "seconds": 3.26,
        "roundsPerHour": 1104,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: One cast per round at the default stake (10). 10 rounds."
      },
      "does": "The player casts a three by three panel of glass in three colours; touching pieces of one colour fuse, and the largest fused group sets the payout.",
      "hook": "A fast single press with a visible near miss: most panels show a group that was one piece away from the next tier.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Instant and slots-style category",
        "New-games rail",
        "Promo free-play"
      ],
      "features": [
        "Watch mode",
        "3D foundry scene with a flat fallback",
        "Free replay of the last round",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. 3D scene uses WebGL and falls back to a flat scene. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Fixed paytable over all 19,683 panels. No other RTP is built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "cast",
          "name": "One cast",
          "rtpPercent": 95.615912,
          "hitRatePercent": 82.594117,
          "netWinRatePercent": 22.725194,
          "sd": 3.864516,
          "volatility": "Medium",
          "maxWinMultiple": 300,
          "ggrPer1000AtStake1": 43.840878
        }
      ]
    },
    {
      "id": "velvet-circuit",
      "name": "Velvet Circuit",
      "group": "Originals",
      "category": "Instant: race",
      "launchUrl": "https://baizestudio.com/embed/velvet-circuit",
      "playUrl": "https://baizestudio.com/play/velvet-circuit",
      "sheetUrl": "https://baizestudio.com/for-casinos/velvet-circuit",
      "cover": "https://baizestudio.com/assets/cover-velvet-circuit.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/velvet-circuit/3x2-400.webp",
      "rtpPercent": 96,
      "rtpRangePercent": [
        96,
        96
      ],
      "houseEdgePercent": 4,
      "hitRatePercent": 25,
      "netWinRatePercent": 25,
      "volatility": {
        "sd": 1.662769,
        "label": "Medium",
        "range": "Medium"
      },
      "maxWinMultiple": 11.52,
      "ggrPer1000AtStake1": 40,
      "referenceMode": "Back one racer to win",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per race."
      },
      "round": {
        "structure": "Single decision",
        "description": "Pick a racer (or an order), then the race runs and settles.",
        "seconds": 4.91,
        "roundsPerHour": 733,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Back one racer to win (default Aurelia, Winner mode), default stake (10). 10 rounds."
      },
      "does": "The player backs one of four wind-up racers with identical odds to win, or calls the first two home in order.",
      "hook": "A short race the player can watch and cheer, with a lead that can change hands right up to the line.",
      "sessionFit": [
        "Quick sessions",
        "Good to watch with others (Watch mode)"
      ],
      "placements": [
        "Instant category",
        "Cross-sell from the sportsbook between events",
        "New-games rail"
      ],
      "features": [
        "Win and forecast bets",
        "Watch mode",
        "3D track with a flat fallback",
        "Free replay of the last round",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. 3D scene uses WebGL and falls back to a flat scene. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Fixed payouts (3.84x win, 11.52x forecast, both 96%). No other RTP is built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "win",
          "name": "Back one racer to win",
          "rtpPercent": 96,
          "hitRatePercent": 25,
          "netWinRatePercent": 25,
          "sd": 1.662769,
          "volatility": "Medium",
          "maxWinMultiple": 3.84,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "forecast",
          "name": "Call the first two in order",
          "rtpPercent": 96,
          "hitRatePercent": 8.333333,
          "netWinRatePercent": 8.333333,
          "sd": 3.18396,
          "volatility": "Medium",
          "maxWinMultiple": 11.52,
          "ggrPer1000AtStake1": 40
        }
      ]
    },
    {
      "id": "dead-drop",
      "name": "Dead Drop",
      "group": "Originals",
      "category": "Instant: pick and draw",
      "launchUrl": "https://baizestudio.com/embed/dead-drop",
      "playUrl": "https://baizestudio.com/play/dead-drop",
      "sheetUrl": "https://baizestudio.com/for-casinos/dead-drop",
      "cover": "https://baizestudio.com/assets/cover-dead-drop.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/dead-drop/3x2-400.webp",
      "rtpPercent": 96,
      "rtpRangePercent": [
        96,
        96
      ],
      "houseEdgePercent": 4,
      "hitRatePercent": 80,
      "netWinRatePercent": 20,
      "volatility": {
        "sd": 0.607157,
        "label": "Low",
        "range": "Low to Medium"
      },
      "maxWinMultiple": 19.2,
      "ggrPer1000AtStake1": 40,
      "referenceMode": "Two one-district routes (default)",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 2,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per courier; a round stakes two couriers."
      },
      "round": {
        "structure": "Single decision",
        "description": "Set two routes and one stake per courier, then the draw settles both.",
        "seconds": 3.71,
        "roundsPerHour": 970,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default preselected routes (two one-district couriers, 10 each), send. 10 rounds."
      },
      "does": "The player sends two couriers on routes of one to three districts across a city of six, then three districts lock down and each courier pays only if its route avoided them.",
      "hook": "The player sets their own risk per courier, and the lockdown reveals one district at a time.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Instant category",
        "New-games rail",
        "Promo free-play"
      ],
      "features": [
        "Two stakes per round (one per courier)",
        "Route length sets risk: 1.92x, 4.80x or 19.20x",
        "Watch mode",
        "Free replay of the last round",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Fixed payouts (96% for every route length). No other RTP is built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "default",
          "name": "Two one-district routes (default)",
          "rtpPercent": 96,
          "hitRatePercent": 80,
          "netWinRatePercent": 20,
          "sd": 0.607157,
          "volatility": "Low",
          "maxWinMultiple": 1.92,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "two-2",
          "name": "Two two-district routes, apart",
          "rtpPercent": 96,
          "hitRatePercent": 40,
          "netWinRatePercent": 40,
          "sd": 1.175755,
          "volatility": "Low",
          "maxWinMultiple": 2.4,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "two-3",
          "name": "Two three-district routes, apart",
          "rtpPercent": 96,
          "hitRatePercent": 10,
          "netWinRatePercent": 10,
          "sd": 2.88,
          "volatility": "Medium",
          "maxWinMultiple": 9.6,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "same-3",
          "name": "Both couriers on the same three districts",
          "rtpPercent": 96,
          "hitRatePercent": 5,
          "netWinRatePercent": 5,
          "sd": 4.184543,
          "volatility": "Medium",
          "maxWinMultiple": 19.2,
          "ggrPer1000AtStake1": 40
        }
      ]
    },
    {
      "id": "last-call",
      "name": "Last Call",
      "group": "Originals",
      "category": "Instant: pick and draw with a bonus",
      "launchUrl": "https://baizestudio.com/embed/last-call",
      "playUrl": "https://baizestudio.com/play/last-call",
      "sheetUrl": "https://baizestudio.com/for-casinos/last-call",
      "cover": "https://baizestudio.com/assets/cover-last-call.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/last-call/3x2-400.webp",
      "rtpPercent": 95.93266,
      "rtpRangePercent": [
        95.89899,
        96
      ],
      "houseEdgePercent": 4.06734,
      "hitRatePercent": 83.838384,
      "netWinRatePercent": 18.181818,
      "volatility": {
        "sd": 0.994221,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 1000,
      "ggrPer1000AtStake1": 40.673401,
      "referenceMode": "Citrus Club, Velvet Hour, House Special (default tray)",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 3,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per recipe; a round stakes three recipes."
      },
      "round": {
        "structure": "Single decision",
        "description": "Choose three recipes and a stake, then one draw settles all three.",
        "seconds": 4.26,
        "roundsPerHour": 845,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default tray (3 recipes, 10 each), serve; Midnight seals open on their own. 10 rounds."
      },
      "does": "The player loads a tray with three cocktail recipes, the machine draws five ingredients from a box of twelve, and every recipe the draw completes pays; the rare Midnight recipe opens a four-seal bonus worth up to 1,000x.",
      "hook": "Three chances on one draw, and a bonus round with seals that open one at a time.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Instant and slots-style category",
        "New-games rail",
        "Promo free-play",
        "Tournaments on biggest single win"
      ],
      "features": [
        "Three stakes per round (one per recipe)",
        "Midnight bonus with four seals",
        "Watch mode",
        "Free replay of the last round",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Fixed recipe payouts. RTP depends on which recipes are on the tray (95.90% to 96.00%). No other RTP is built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "default",
          "name": "Citrus Club, Velvet Hour, House Special (default tray)",
          "rtpPercent": 95.93266,
          "hitRatePercent": 83.838384,
          "netWinRatePercent": 18.181818,
          "sd": 0.994221,
          "volatility": "Low",
          "maxWinMultiple": 3.013333,
          "ggrPer1000AtStake1": 40.673401
        },
        {
          "id": "only-citrus",
          "name": "Citrus Club on all three slots",
          "rtpPercent": 95.89899,
          "hitRatePercent": 51.010101,
          "netWinRatePercent": 51.010101,
          "sd": 0.939808,
          "volatility": "Low",
          "maxWinMultiple": 1.88,
          "ggrPer1000AtStake1": 41.010101
        },
        {
          "id": "only-velvet",
          "name": "Velvet Hour on all three slots",
          "rtpPercent": 95.89899,
          "hitRatePercent": 51.010101,
          "netWinRatePercent": 51.010101,
          "sd": 0.939808,
          "volatility": "Low",
          "maxWinMultiple": 1.88,
          "ggrPer1000AtStake1": 41.010101
        },
        {
          "id": "only-jade",
          "name": "Jade Garden on all three slots",
          "rtpPercent": 95.89899,
          "hitRatePercent": 51.010101,
          "netWinRatePercent": 51.010101,
          "sd": 0.939808,
          "volatility": "Low",
          "maxWinMultiple": 1.88,
          "ggrPer1000AtStake1": 41.010101
        },
        {
          "id": "only-house",
          "name": "House Special on all three slots",
          "rtpPercent": 96,
          "hitRatePercent": 18.181818,
          "netWinRatePercent": 18.181818,
          "sd": 2.036468,
          "volatility": "Medium",
          "maxWinMultiple": 5.28,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "only-reserve",
          "name": "Golden Reserve on all three slots",
          "rtpPercent": 95.949495,
          "hitRatePercent": 11.616162,
          "netWinRatePercent": 11.616162,
          "sd": 2.646658,
          "volatility": "Medium",
          "maxWinMultiple": 8.26,
          "ggrPer1000AtStake1": 40.505051
        },
        {
          "id": "only-midnight",
          "name": "Midnight No. 4 on all three slots",
          "rtpPercent": 96,
          "hitRatePercent": 0.505051,
          "netWinRatePercent": 0.505051,
          "sd": 21.653405,
          "volatility": "Very high",
          "maxWinMultiple": 1000,
          "ggrPer1000AtStake1": 40
        }
      ]
    },
    {
      "id": "orbit-heist",
      "name": "Orbit Heist",
      "group": "Originals",
      "category": "Instant: pick and draw",
      "launchUrl": "https://baizestudio.com/embed/orbit-heist",
      "playUrl": "https://baizestudio.com/play/orbit-heist",
      "sheetUrl": "https://baizestudio.com/for-casinos/orbit-heist",
      "cover": "https://baizestudio.com/assets/cover-orbit-heist.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/orbit-heist/3x2-400.webp",
      "rtpPercent": 96,
      "rtpRangePercent": [
        96,
        96
      ],
      "houseEdgePercent": 4,
      "hitRatePercent": 75,
      "netWinRatePercent": 75,
      "volatility": {
        "sd": 0.554256,
        "label": "Low",
        "range": "Low to Medium"
      },
      "maxWinMultiple": 7.2,
      "ggrPer1000AtStake1": 40,
      "referenceMode": "Drift formation (default)",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per pulse."
      },
      "round": {
        "structure": "Single decision",
        "description": "Choose a formation and rotation, then one pulse settles.",
        "seconds": 2.13,
        "roundsPerHour": 1690,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default formation (Drift) and stake (20), launch the pulse. 10 rounds."
      },
      "does": "The player parks three drones around a twelve-bay reactor ring; one pulse lights three bays in a row and pays by how many drones it catches.",
      "hook": "The player picks the risk by shape: spread drones for steady small returns, bunch them for rare big ones.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Instant category",
        "New-games rail",
        "Promo free-play"
      ],
      "features": [
        "Three formations with different volatility, all 96%",
        "Watch mode",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Fixed formation tables (96% each). No other RTP is built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "drift",
          "name": "Drift formation (default)",
          "rtpPercent": 96,
          "hitRatePercent": 75,
          "netWinRatePercent": 75,
          "sd": 0.554256,
          "volatility": "Low",
          "maxWinMultiple": 1.28,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "split",
          "name": "Split formation",
          "rtpPercent": 96,
          "hitRatePercent": 58.333333,
          "netWinRatePercent": 16.666667,
          "sd": 1.460593,
          "volatility": "Low",
          "maxWinMultiple": 4.16,
          "ggrPer1000AtStake1": 40
        },
        {
          "id": "stack",
          "name": "Stack formation",
          "rtpPercent": 96,
          "hitRatePercent": 41.666667,
          "netWinRatePercent": 25,
          "sd": 1.976664,
          "volatility": "Medium",
          "maxWinMultiple": 7.2,
          "ggrPer1000AtStake1": 40
        }
      ]
    },
    {
      "id": "find-the-lady",
      "name": "Find the Lady",
      "group": "Quick games",
      "category": "Instant: cash-out ladder",
      "launchUrl": "https://baizestudio.com/embed/find-the-lady",
      "playUrl": "https://baizestudio.com/play/find-the-lady",
      "sheetUrl": "https://baizestudio.com/for-casinos/find-the-lady",
      "cover": "https://baizestudio.com/assets/cover-find-the-lady.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/find-the-lady/3x2-400.webp",
      "rtpPercent": 97.777778,
      "rtpRangePercent": [
        97.5,
        98
      ],
      "houseEdgePercent": 2.222222,
      "hitRatePercent": 29.62963,
      "netWinRatePercent": 29.62963,
      "volatility": {
        "sd": 1.506857,
        "label": "Medium",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 250.88,
      "ggrPer1000AtStake1": 22.222222,
      "referenceMode": "Medium: cash out after 3 rows",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per round."
      },
      "round": {
        "structure": "Multi-step cash-out ladder",
        "description": "One stake, up to eight picks, cash out after any safe pick.",
        "seconds": 0.98,
        "roundsPerHour": 3673,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Medium setting, pick a card in rows 1-3, then cash out (ends early on a Joker). Stake 10. 40 rounds."
      },
      "does": "The player picks a card in each of eight rows; a Queen moves them up the ladder, the row’s one Joker ends the round, and they can cash out after any safe row.",
      "hook": "A ladder with the next multiplier always in view, in three difficulty settings.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Crash and instant category",
        "Promo free-play",
        "Cross-sell from the sportsbook between events"
      ],
      "features": [
        "Cash out after any safe row",
        "Easy, Medium and Hard settings",
        "Auto play with stop rules",
        "Pick for me",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Formula-based: every multiplier is 0.98 divided by the survival chance, rounded down. A different target return is one constant, but needs new sign-off. Not built as a launch option.",
      "ukProfile": false,
      "modes": [
        {
          "id": "easy-1",
          "name": "Easy: cash out after 1 row",
          "rtpPercent": 97.5,
          "hitRatePercent": 75,
          "netWinRatePercent": 75,
          "sd": 0.562917,
          "volatility": "Low",
          "maxWinMultiple": 1.3,
          "ggrPer1000AtStake1": 25
        },
        {
          "id": "easy-3",
          "name": "Easy: cash out after 3 rows",
          "rtpPercent": 97.875,
          "hitRatePercent": 42.1875,
          "netWinRatePercent": 42.1875,
          "sd": 1.145752,
          "volatility": "Low",
          "maxWinMultiple": 2.32,
          "ggrPer1000AtStake1": 21.25
        },
        {
          "id": "easy-8",
          "name": "Easy: all eight rows",
          "rtpPercent": 97.910431,
          "hitRatePercent": 10.011292,
          "netWinRatePercent": 10.011292,
          "sd": 2.935472,
          "volatility": "Medium",
          "maxWinMultiple": 9.78,
          "ggrPer1000AtStake1": 20.895691
        },
        {
          "id": "medium-1",
          "name": "Medium: cash out after 1 row",
          "rtpPercent": 98,
          "hitRatePercent": 66.666667,
          "netWinRatePercent": 66.666667,
          "sd": 0.692965,
          "volatility": "Low",
          "maxWinMultiple": 1.47,
          "ggrPer1000AtStake1": 20
        },
        {
          "id": "medium-3",
          "name": "Medium: cash out after 3 rows",
          "rtpPercent": 97.777778,
          "hitRatePercent": 29.62963,
          "netWinRatePercent": 29.62963,
          "sd": 1.506857,
          "volatility": "Medium",
          "maxWinMultiple": 3.3,
          "ggrPer1000AtStake1": 22.222222
        },
        {
          "id": "medium-8",
          "name": "Medium: all eight rows",
          "rtpPercent": 97.975309,
          "hitRatePercent": 3.901844,
          "netWinRatePercent": 3.901844,
          "sd": 4.862271,
          "volatility": "Medium",
          "maxWinMultiple": 25.11,
          "ggrPer1000AtStake1": 20.246914
        },
        {
          "id": "hard-1",
          "name": "Hard: cash out after 1 row",
          "rtpPercent": 98,
          "hitRatePercent": 50,
          "netWinRatePercent": 50,
          "sd": 0.98,
          "volatility": "Low",
          "maxWinMultiple": 1.96,
          "ggrPer1000AtStake1": 20
        },
        {
          "id": "hard-3",
          "name": "Hard: cash out after 3 rows",
          "rtpPercent": 98,
          "hitRatePercent": 12.5,
          "netWinRatePercent": 12.5,
          "sd": 2.592836,
          "volatility": "Medium",
          "maxWinMultiple": 7.84,
          "ggrPer1000AtStake1": 20
        },
        {
          "id": "hard-8",
          "name": "Hard: all eight rows",
          "rtpPercent": 98,
          "hitRatePercent": 0.390625,
          "netWinRatePercent": 0.390625,
          "sd": 15.649345,
          "volatility": "Very high",
          "maxWinMultiple": 250.88,
          "ggrPer1000AtStake1": 20
        }
      ]
    },
    {
      "id": "bracket",
      "name": "Bracket",
      "group": "Quick games",
      "category": "Instant: dice",
      "launchUrl": "https://baizestudio.com/embed/bracket",
      "playUrl": "https://baizestudio.com/play/bracket",
      "sheetUrl": "https://baizestudio.com/for-casinos/bracket",
      "cover": "https://baizestudio.com/assets/cover-bracket.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/bracket/3x2-400.webp",
      "rtpPercent": 97.777778,
      "rtpRangePercent": [
        97.166667,
        98
      ],
      "houseEdgePercent": 2.222222,
      "hitRatePercent": 44.444444,
      "netWinRatePercent": 44.444444,
      "volatility": {
        "sd": 1.093189,
        "label": "Low",
        "range": "Low to High"
      },
      "maxWinMultiple": 35.28,
      "ggrPer1000AtStake1": 22.222222,
      "referenceMode": "6 to 8 (default)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per roll."
      },
      "round": {
        "structure": "Single decision",
        "description": "Set the bracket and stake, one roll settles.",
        "seconds": 0.73,
        "roundsPerHour": 4932,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default bracket (6 to 8, 2.20x), roll. Stake 10. 10 rounds."
      },
      "does": "The player drags over a range of totals for two dice, sees the exact chance and multiplier, and rolls once.",
      "hook": "The player sets their own odds from 1 in 36 to 35 in 36 and sees the payout before every roll.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Crash and instant category",
        "Promo free-play",
        "Cross-sell from the sportsbook between events"
      ],
      "features": [
        "65 brackets from 1.00x to 35.28x",
        "Auto play with stop rules",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Formula-based: every multiplier is 0.98 divided by the chance, rounded down. A different target return is one constant, but needs new sign-off. Not built as a launch option.",
      "ukProfile": false,
      "modes": [
        {
          "id": "middle",
          "name": "6 to 8 (default)",
          "rtpPercent": 97.777778,
          "hitRatePercent": 44.444444,
          "netWinRatePercent": 44.444444,
          "sd": 1.093189,
          "volatility": "Low",
          "maxWinMultiple": 2.2,
          "ggrPer1000AtStake1": 22.222222
        },
        {
          "id": "seven",
          "name": "7 exactly",
          "rtpPercent": 98,
          "hitRatePercent": 16.666667,
          "netWinRatePercent": 16.666667,
          "sd": 2.191347,
          "volatility": "Medium",
          "maxWinMultiple": 5.88,
          "ggrPer1000AtStake1": 20
        },
        {
          "id": "under",
          "name": "Under 7",
          "rtpPercent": 97.916667,
          "hitRatePercent": 41.666667,
          "netWinRatePercent": 41.666667,
          "sd": 1.158566,
          "volatility": "Low",
          "maxWinMultiple": 2.35,
          "ggrPer1000AtStake1": 20.833333
        },
        {
          "id": "over",
          "name": "Over 7",
          "rtpPercent": 97.916667,
          "hitRatePercent": 41.666667,
          "netWinRatePercent": 41.666667,
          "sd": 1.158566,
          "volatility": "Low",
          "maxWinMultiple": 2.35,
          "ggrPer1000AtStake1": 20.833333
        },
        {
          "id": "two",
          "name": "2 exactly",
          "rtpPercent": 98,
          "hitRatePercent": 2.777778,
          "netWinRatePercent": 2.777778,
          "sd": 5.797758,
          "volatility": "High",
          "maxWinMultiple": 35.28,
          "ggrPer1000AtStake1": 20
        },
        {
          "id": "wide",
          "name": "Under 12",
          "rtpPercent": 97.222222,
          "hitRatePercent": 97.222222,
          "netWinRatePercent": 0,
          "sd": 0.164336,
          "volatility": "Low",
          "maxWinMultiple": 1,
          "ggrPer1000AtStake1": 27.777778
        }
      ]
    },
    {
      "id": "mines-classic",
      "name": "Mines Classic",
      "group": "Quick games",
      "category": "Instant: mines-style cash-out ladder",
      "launchUrl": "https://baizestudio.com/embed/mines-classic",
      "playUrl": "https://baizestudio.com/play/mines-classic",
      "sheetUrl": "https://baizestudio.com/for-casinos/mines-classic",
      "formerIds": [
        "clear-the-table"
      ],
      "deprecatedLaunchUrls": [
        "https://baizestudio.com/embed/clear-the-table"
      ],
      "cover": "https://baizestudio.com/assets/cover-mines-classic.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/mines-classic/3x2-400.webp",
      "rtpPercent": 97.756522,
      "rtpRangePercent": [
        97.28,
        98
      ],
      "houseEdgePercent": 2.243478,
      "hitRatePercent": 66.956522,
      "netWinRatePercent": 66.956522,
      "volatility": {
        "sd": 0.68674,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 9100.52,
      "ggrPer1000AtStake1": 22.434783,
      "referenceMode": "3 Jokers: cash out after 3 safe cards (default Jokers)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per round."
      },
      "round": {
        "structure": "Multi-step cash-out ladder",
        "description": "One stake, turn cards one at a time, cash out after any safe card.",
        "seconds": 1.33,
        "roundsPerHour": 2707,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: 3 Jokers (default), turn 3 safe cards then cash out (ends early on a Joker). Stake 10. 40 rounds."
      },
      "does": "The player hides 1 to 24 Jokers among 25 face-down cards and turns cards one at a time; every safe card raises the multiplier until they cash out or hit a Joker.",
      "hook": "The classic flat Mines grid, light and fast, with a choice of risk from 1 to 24 Jokers; rounds bank themselves below a 10,000x table limit. Mines is the premium 3D version.",
      "sessionFit": [
        "Quick sessions",
        "Single player"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Promo free-play",
        "Tournaments on highest multiple"
      ],
      "features": [
        "Cash out after any safe card",
        "1 to 24 Jokers",
        "Auto play with stop rules",
        "Pick for me",
        "Auto bank below a 10,000x table limit",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Formula-based: every multiplier is 0.98 divided by the survival chance, rounded down. A different target return is one constant, but needs new sign-off. Not built as a launch option.",
      "ukProfile": false,
      "modes": [
        {
          "id": "m3-k3",
          "name": "3 Jokers: cash out after 3 safe cards (default Jokers)",
          "rtpPercent": 97.756522,
          "hitRatePercent": 66.956522,
          "netWinRatePercent": 66.956522,
          "sd": 0.68674,
          "volatility": "Low",
          "maxWinMultiple": 1.46,
          "ggrPer1000AtStake1": 22.434783
        },
        {
          "id": "m1-k5",
          "name": "1 Joker: cash out after 5 safe cards",
          "rtpPercent": 97.6,
          "hitRatePercent": 80,
          "netWinRatePercent": 80,
          "sd": 0.488,
          "volatility": "Low",
          "maxWinMultiple": 1.22,
          "ggrPer1000AtStake1": 24
        },
        {
          "id": "m5-k5",
          "name": "5 Jokers: cash out after 5 safe cards",
          "rtpPercent": 97.757199,
          "hitRatePercent": 29.181254,
          "netWinRatePercent": 29.181254,
          "sd": 1.522898,
          "volatility": "Medium",
          "maxWinMultiple": 3.35,
          "ggrPer1000AtStake1": 22.428007
        },
        {
          "id": "m10-k3",
          "name": "10 Jokers: cash out after 3 safe cards",
          "rtpPercent": 97.923913,
          "hitRatePercent": 19.782609,
          "netWinRatePercent": 19.782609,
          "sd": 1.971883,
          "volatility": "Medium",
          "maxWinMultiple": 4.95,
          "ggrPer1000AtStake1": 20.76087
        },
        {
          "id": "m24-k1",
          "name": "24 Jokers: one card",
          "rtpPercent": 98,
          "hitRatePercent": 4,
          "netWinRatePercent": 4,
          "sd": 4.801,
          "volatility": "Medium",
          "maxWinMultiple": 24.5,
          "ggrPer1000AtStake1": 20
        }
      ]
    },
    {
      "id": "keno",
      "name": "Keno",
      "group": "Quick games",
      "category": "Instant: keno, 10 balls from 40",
      "launchUrl": "https://baizestudio.com/embed/keno",
      "playUrl": "https://baizestudio.com/play/keno",
      "sheetUrl": "https://baizestudio.com/for-casinos/keno",
      "cover": "https://baizestudio.com/assets/cover-keno.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/keno/3x2-400.webp",
      "rtpPercent": 97.487417,
      "rtpRangePercent": [
        97.156418,
        97.898225
      ],
      "houseEdgePercent": 2.512583,
      "hitRatePercent": 36.694387,
      "netWinRatePercent": 36.694387,
      "volatility": {
        "sd": 6.07082,
        "label": "High",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 10000,
      "ggrPer1000AtStake1": 25.125834,
      "referenceMode": "Classic risk, 5 numbers marked (default risk)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per draw."
      },
      "round": {
        "structure": "Single decision",
        "description": "Mark 1 to 10 numbers and a risk, then one draw of ten balls settles.",
        "seconds": 2.63,
        "roundsPerHour": 1369,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Pick for me (5 numbers), classic risk (default), Play pressed as soon as it is enabled. Stake 10. 12 rounds. Measured on the 2026-10-06 build in a 1280x720 window; ten balls take 2.3 s at normal pace and about 0.9 s in Quick play."
      },
      "does": "The player marks 1 to 10 of 40 numbers and picks a low, classic or high risk table; 10 balls are drawn and the payout follows the number of hits.",
      "hook": "Keno sized for a phone: 40 numbers that stay full-size tap targets, three risk tables for every count of numbers, and every draw checkable from its seeds inside the game.",
      "sessionFit": [
        "Quick sessions: a draw takes under 3 seconds",
        "Single player",
        "Suits auto play"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Promo free-play",
        "Tournaments on highest multiple"
      ],
      "features": [
        "1 to 10 numbers on a 40-ball board, 10 balls drawn",
        "Low, classic and high risk tables",
        "Max win 10,000x (high risk, 8 to 10 numbers marked, all hit)",
        "Provably fair: the RGS seed scheme, with one-tap verify of any round inside the game",
        "Pick for me",
        "Auto play with stop rules (not in the UK profile)",
        "Quick play and keyboard play",
        "Resumes a draw after a reload"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "30 fixed pay tables (3 risks for 1 to 10 numbers), each with an exact return between 97.16% and 97.90%. A different return is a new set of tables and needs new sign-off. Not built as a launch option.",
      "ukProfile": true,
      "modes": [
        {
          "id": "low-1",
          "name": "Low risk, 1 number marked",
          "rtpPercent": 97.5,
          "hitRatePercent": 100,
          "netWinRatePercent": 25,
          "sd": 0.476314,
          "volatility": "Low",
          "maxWinMultiple": 1.8,
          "ggrPer1000AtStake1": 25
        },
        {
          "id": "low-5",
          "name": "Low risk, 5 numbers marked",
          "rtpPercent": 97.453222,
          "hitRatePercent": 36.694387,
          "netWinRatePercent": 36.694387,
          "sd": 1.993669,
          "volatility": "Medium",
          "maxWinMultiple": 55,
          "ggrPer1000AtStake1": 25.467775
        },
        {
          "id": "low-10",
          "name": "Low risk, 10 numbers marked",
          "rtpPercent": 97.505215,
          "hitRatePercent": 48.505548,
          "netWinRatePercent": 19.685521,
          "sd": 2.199884,
          "volatility": "Medium",
          "maxWinMultiple": 1000,
          "ggrPer1000AtStake1": 24.947845
        },
        {
          "id": "classic-1",
          "name": "Classic risk, 1 number marked",
          "rtpPercent": 97.5,
          "hitRatePercent": 25,
          "netWinRatePercent": 25,
          "sd": 1.68875,
          "volatility": "Medium",
          "maxWinMultiple": 3.9,
          "ggrPer1000AtStake1": 25
        },
        {
          "id": "classic-5",
          "name": "Classic risk, 5 numbers marked (default risk)",
          "rtpPercent": 97.487417,
          "hitRatePercent": 36.694387,
          "netWinRatePercent": 36.694387,
          "sd": 6.07082,
          "volatility": "High",
          "maxWinMultiple": 290,
          "ggrPer1000AtStake1": 25.125834
        },
        {
          "id": "classic-10",
          "name": "Classic risk, 10 numbers marked",
          "rtpPercent": 97.3918,
          "hitRatePercent": 48.505548,
          "netWinRatePercent": 19.685521,
          "sd": 4.941875,
          "volatility": "Medium",
          "maxWinMultiple": 4500,
          "ggrPer1000AtStake1": 26.082003
        },
        {
          "id": "high-5",
          "name": "High risk, 5 numbers marked",
          "rtpPercent": 97.631032,
          "hitRatePercent": 8.928767,
          "netWinRatePercent": 8.928767,
          "sd": 14.260316,
          "volatility": "High",
          "maxWinMultiple": 700,
          "ggrPer1000AtStake1": 23.689682
        },
        {
          "id": "high-8",
          "name": "High risk, 8 numbers marked",
          "rtpPercent": 97.640277,
          "hitRatePercent": 8.937251,
          "netWinRatePercent": 8.937251,
          "sd": 23.53913,
          "volatility": "Very high",
          "maxWinMultiple": 10000,
          "ggrPer1000AtStake1": 23.597229
        },
        {
          "id": "high-10",
          "name": "High risk, 10 numbers marked",
          "rtpPercent": 97.746552,
          "hitRatePercent": 4.975298,
          "netWinRatePercent": 4.975298,
          "sd": 20.952109,
          "volatility": "Very high",
          "maxWinMultiple": 10000,
          "ggrPer1000AtStake1": 22.534481
        }
      ]
    },
    {
      "id": "hi-lo",
      "name": "Hi-Lo",
      "group": "Quick games",
      "category": "Instant: hi-lo cash-out ladder",
      "launchUrl": "https://baizestudio.com/embed/hi-lo",
      "playUrl": "https://baizestudio.com/play/hi-lo",
      "sheetUrl": "https://baizestudio.com/for-casinos/hi-lo",
      "cover": "https://baizestudio.com/assets/cover-hi-lo.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/hi-lo/3x2-400.webp",
      "rtpPercent": 97.83432,
      "rtpRangePercent": [
        97.727811,
        98
      ],
      "houseEdgePercent": 2.16568,
      "hitRatePercent": 48.38416,
      "netWinRatePercent": 48.38416,
      "volatility": {
        "sd": 1.095262,
        "label": "Low",
        "range": "Low to High"
      },
      "maxWinMultiple": 9999.99,
      "ggrPer1000AtStake1": 21.656805,
      "referenceMode": "Likelier call, cash out after 2 right calls (auto play default)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per round."
      },
      "round": {
        "structure": "Multi-step cash-out ladder",
        "description": "One stake, call each next card or skip it, cash out after any right call.",
        "seconds": 1.61,
        "roundsPerHour": 2236,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Deal, then the likelier call (the big button) until 2 right calls, then cash out (ends early on a wrong call). Stake 10. 40 rounds. Measured on the 2026-10-06 build in a 1280x720 window."
      },
      "does": "The player calls whether the next card is higher, lower or the same rank as the one showing, or skips it; every right call raises the multiplier until they cash out or call wrong.",
      "hook": "Hi-lo with an endless shoe, so the odds on every button are exact and card counting is worthless; every call after the first is an even bet on what the player holds, so any way of playing returns 98% before rounding.",
      "sessionFit": [
        "Quick or long sessions: a round is seconds to a minute",
        "Single player"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Promo free-play",
        "Tournaments on highest multiple"
      ],
      "features": [
        "Higher, Lower and Same, with Skip as often as the player likes",
        "Cash out after any right call",
        "The odds and the payout shown on every call",
        "Auto bank below a 10,000x table limit (max win 9,999.99x)",
        "Provably fair: the RGS seed scheme, with one-tap verify of any round inside the game",
        "Auto play with stop rules (not in the UK profile)",
        "Quick play and keyboard play",
        "Resumes a round after a reload"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D with 3D card turns, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Formula-based: the first right call pays 0.98 divided by its chance and every later one multiplies by exactly 1 divided by its chance, rounded down. A different target return is one constant, but needs new sign-off. Not built as a launch option.",
      "ukProfile": true,
      "modes": [
        {
          "id": "likely-1",
          "name": "Likelier call, cash out after 1 right call",
          "rtpPercent": 97.727811,
          "hitRatePercent": 71.005917,
          "netWinRatePercent": 71.005917,
          "sd": 0.672747,
          "volatility": "Low",
          "maxWinMultiple": 2.12,
          "ggrPer1000AtStake1": 22.721893
        },
        {
          "id": "likely-2",
          "name": "Likelier call, cash out after 2 right calls (auto play default)",
          "rtpPercent": 97.83432,
          "hitRatePercent": 48.38416,
          "netWinRatePercent": 48.38416,
          "sd": 1.095262,
          "volatility": "Low",
          "maxWinMultiple": 3.94,
          "ggrPer1000AtStake1": 21.656805
        },
        {
          "id": "likely-3",
          "name": "Likelier call, cash out after 3 right calls",
          "rtpPercent": 97.845138,
          "hitRatePercent": 32.992542,
          "netWinRatePercent": 32.992542,
          "sd": 1.52815,
          "volatility": "Medium",
          "maxWinMultiple": 8.54,
          "ggrPer1000AtStake1": 21.548615
        },
        {
          "id": "likely-5",
          "name": "Likelier call, cash out after 5 right calls",
          "rtpPercent": 97.923513,
          "hitRatePercent": 15.350162,
          "netWinRatePercent": 15.350162,
          "sd": 2.592094,
          "volatility": "Medium",
          "maxWinMultiple": 34.37,
          "ggrPer1000AtStake1": 20.76487
        },
        {
          "id": "likely-8",
          "name": "Likelier call, cash out after 8 right calls",
          "rtpPercent": 97.976069,
          "hitRatePercent": 4.871204,
          "netWinRatePercent": 4.871204,
          "sd": 5.132521,
          "volatility": "High",
          "maxWinMultiple": 256.9,
          "ggrPer1000AtStake1": 20.239308
        },
        {
          "id": "same-1",
          "name": "One Same call, then cash out (12.74x)",
          "rtpPercent": 98,
          "hitRatePercent": 7.692308,
          "netWinRatePercent": 7.692308,
          "sd": 3.39482,
          "volatility": "Medium",
          "maxWinMultiple": 12.74,
          "ggrPer1000AtStake1": 20
        }
      ]
    },
    {
      "id": "plinko",
      "name": "Plinko",
      "group": "Quick games",
      "category": "Instant: plinko",
      "launchUrl": "https://baizestudio.com/embed/plinko",
      "playUrl": "https://baizestudio.com/play/plinko",
      "sheetUrl": "https://baizestudio.com/for-casinos/plinko",
      "cover": "https://baizestudio.com/assets/cover-plinko.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/plinko/3x2-400.webp",
      "rtpPercent": 99,
      "rtpRangePercent": [
        99,
        99
      ],
      "houseEdgePercent": 1,
      "hitRatePercent": 100,
      "netWinRatePercent": 14.599609,
      "volatility": {
        "sd": 1.440998,
        "label": "Low",
        "range": "Low to High"
      },
      "maxWinMultiple": 1000,
      "ggrPer1000AtStake1": 10,
      "referenceMode": "12 rows, medium risk (default)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per drop."
      },
      "round": {
        "structure": "Single decision",
        "description": "Choose rows, risk and stake; one drop settles.",
        "seconds": 1.8,
        "roundsPerHour": 2000,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default board (12 rows, medium risk), drop. Stake 10. 12 rounds. Measured on the 2026-10-06 instant build (opus-instant/measure-rounds.mjs). 16 rows take about 0.2 s longer."
      },
      "does": "The player sets 8 to 16 rows of pegs and drops each chip with one of three buttons, low, medium or high risk; it goes left or right at every row into a bucket that pays its multiplier in that risk’s table.",
      "hook": "The plinko players already know, with exact maths: every one of the 27 boards returns exactly 99%, symmetric, with edges up to 1,000x, and every drop can be checked against its seeds.",
      "sessionFit": [
        "Quick sessions",
        "Single player",
        "Good to watch: the drop is the show"
      ],
      "placements": [
        "Crash and instant category",
        "Originals rail",
        "Promo free-play",
        "Streamer and creator campaigns"
      ],
      "features": [
        "All three risk tables in view, one drop button per risk",
        "8 to 16 rows: 27 pay tables",
        "Exactly 99% on every table (an exact 98% set is built too)",
        "Up to 1,000x on 16 rows at high risk",
        "Provably fair: the RGS seed scheme, with one-tap verify of any drop inside the game",
        "Auto play with stop rules, hidden in the UK profile",
        "Quick play and keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Canvas 2D, 60 fps on a 4x-throttled CPU, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "99% (default) and 98% are built: two sets of 27 exact pay tables, chosen per launch (?rtp=98) or per operator on the RGS. Each table returns exactly its RTP.",
      "ukProfile": true,
      "modes": [
        {
          "id": "r12-medium",
          "name": "12 rows, medium risk (default)",
          "rtpPercent": 99,
          "hitRatePercent": 100,
          "netWinRatePercent": 14.599609,
          "sd": 1.440998,
          "volatility": "Low",
          "maxWinMultiple": 37.5,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "r8-low",
          "name": "8 rows, low risk",
          "rtpPercent": 99,
          "hitRatePercent": 100,
          "netWinRatePercent": 28.90625,
          "sd": 0.682374,
          "volatility": "Low",
          "maxWinMultiple": 5.5,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "r16-low",
          "name": "16 rows, low risk",
          "rtpPercent": 99,
          "hitRatePercent": 100,
          "netWinRatePercent": 21.011353,
          "sd": 0.690721,
          "volatility": "Low",
          "maxWinMultiple": 16,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "r8-high",
          "name": "8 rows, high risk",
          "rtpPercent": 99,
          "hitRatePercent": 100,
          "netWinRatePercent": 28.90625,
          "sd": 2.72633,
          "volatility": "Medium",
          "maxWinMultiple": 29,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "r16-high",
          "name": "16 rows, high risk",
          "rtpPercent": 99,
          "hitRatePercent": 100,
          "netWinRatePercent": 21.011353,
          "sd": 7.35567,
          "volatility": "High",
          "maxWinMultiple": 1000,
          "ggrPer1000AtStake1": 10
        }
      ]
    },
    {
      "id": "limbo",
      "name": "Limbo",
      "group": "Quick games",
      "category": "Instant: target multiplier",
      "launchUrl": "https://baizestudio.com/embed/limbo",
      "playUrl": "https://baizestudio.com/play/limbo",
      "sheetUrl": "https://baizestudio.com/for-casinos/limbo",
      "cover": "https://baizestudio.com/assets/cover-limbo.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/limbo/3x2-400.webp",
      "rtpPercent": 99,
      "rtpRangePercent": [
        99,
        99
      ],
      "houseEdgePercent": 1,
      "hitRatePercent": 49.5,
      "netWinRatePercent": 49.5,
      "volatility": {
        "sd": 0.99995,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 1000000,
      "ggrPer1000AtStake1": 10,
      "referenceMode": "Target 2.00x (default)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per roll."
      },
      "round": {
        "structure": "Single decision",
        "description": "Set a target and stake; one roll settles.",
        "seconds": 0.78,
        "roundsPerHour": 4615,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default target (2.00x), roll. Stake 10. 12 rounds. Measured on the 2026-10-06 instant build (opus-instant/measure-rounds.mjs). The climb is longer for bigger results, up to 1.5 s."
      },
      "does": "The player names a target multiplier from 1.01x to 1,000,000x and one result is rolled; if it reaches the target, the stake is paid at the target.",
      "hook": "One number and one roll. Every target returns exactly 99%, the exact chance is shown before the roll, and the result never depends on the target.",
      "sessionFit": [
        "Quick sessions",
        "Single player",
        "Fast auto play"
      ],
      "placements": [
        "Crash and instant category",
        "Originals rail",
        "Promo free-play",
        "Tournaments on highest multiple"
      ],
      "features": [
        "Any target from 1.01x to 1,000,000x",
        "Exactly 99% at every target (an exact 98% build too)",
        "Drag the target on a log-scale rail or type it",
        "Provably fair: the RGS seed scheme, with one-tap verify of any roll inside the game",
        "Auto play with stop rules, hidden in the UK profile",
        "Quick play and keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "99% (default) and 98% are built (one constant). The 1,000,000x cap can be 10,000x or 100,000x instead; no cap changes any chance or the RTP.",
      "ukProfile": true,
      "modes": [
        {
          "id": "target-200",
          "name": "Target 2.00x (default)",
          "rtpPercent": 99,
          "hitRatePercent": 49.5,
          "netWinRatePercent": 49.5,
          "sd": 0.99995,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "target-101",
          "name": "Target 1.01x",
          "rtpPercent": 99,
          "hitRatePercent": 98.019802,
          "netWinRatePercent": 98.019802,
          "sd": 0.140712,
          "volatility": "Low",
          "maxWinMultiple": 1.01,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "target-1000",
          "name": "Target 10.00x",
          "rtpPercent": 99,
          "hitRatePercent": 9.9,
          "netWinRatePercent": 9.9,
          "sd": 2.98662,
          "volatility": "Medium",
          "maxWinMultiple": 10,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "target-10000",
          "name": "Target 100.00x",
          "rtpPercent": 99,
          "hitRatePercent": 0.99,
          "netWinRatePercent": 0.99,
          "sd": 9.9005,
          "volatility": "High",
          "maxWinMultiple": 100,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "target-100000000",
          "name": "Target 1,000,000x, the cap",
          "rtpPercent": 99,
          "hitRatePercent": 0.000099,
          "netWinRatePercent": 0.000099,
          "sd": 994.986945,
          "volatility": "Very high",
          "maxWinMultiple": 1000000,
          "ggrPer1000AtStake1": 10
        }
      ]
    },
    {
      "id": "dice",
      "name": "Dice",
      "group": "Quick games",
      "category": "Instant: dice",
      "launchUrl": "https://baizestudio.com/embed/dice",
      "playUrl": "https://baizestudio.com/play/dice",
      "sheetUrl": "https://baizestudio.com/for-casinos/dice",
      "cover": "https://baizestudio.com/assets/cover-dice.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/dice/3x2-400.webp",
      "rtpPercent": 99,
      "rtpRangePercent": [
        98.99032,
        99
      ],
      "houseEdgePercent": 1,
      "hitRatePercent": 49.5,
      "netWinRatePercent": 49.5,
      "volatility": {
        "sd": 0.99995,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 9900,
      "ggrPer1000AtStake1": 10,
      "referenceMode": "Roll over 50.50: 49.50% at 2.0000x (default)",
      "stake": {
        "min": 0.1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.10 to 100.00 per roll."
      },
      "round": {
        "structure": "Single decision",
        "description": "Set the line, side and stake; one roll settles.",
        "seconds": 0.78,
        "roundsPerHour": 4615,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Default line (roll over 50.50, 49.50%, 2.0000x), roll. Stake 10. 12 rounds. Measured on the 2026-10-06 instant build (opus-instant/measure-rounds.mjs)."
      },
      "does": "The player sets a payout first, which sets a win chance from 0.01% to 98%, then rolls with one of two buttons, under or over, each showing its line; both win zones are drawn on the 0 to 100 scale.",
      "hook": "Classic dice with four-decimal multipliers, so every one of 9,800 chances returns between 98.99% and 99% and never more, and every roll can be checked against its seeds.",
      "sessionFit": [
        "Quick sessions",
        "Single player",
        "Fast auto play"
      ],
      "placements": [
        "Crash and instant category",
        "Originals rail",
        "Promo free-play",
        "Cross-sell from the sportsbook between events"
      ],
      "features": [
        "Payout first: a slider, or a typed payout or chance",
        "Two roll buttons, under and over, each with its line; both win zones in view",
        "Payouts from 1.0102x to 9,900x, paid to four decimals",
        "Provably fair: the RGS seed scheme, with one-tap verify of any roll inside the game",
        "Auto play with stop rules, hidden in the UK profile",
        "Quick play and keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Flat 2D, light on low-end phones. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "99% (default) and 98% are built (one constant). Every chance returns at most the RTP and at least 0.01 points under it.",
      "ukProfile": true,
      "modes": [
        {
          "id": "over-5050",
          "name": "Roll over 50.50: 49.50% at 2.0000x (default)",
          "rtpPercent": 99,
          "hitRatePercent": 49.5,
          "netWinRatePercent": 49.5,
          "sd": 0.99995,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "chance-9800",
          "name": "98% chance at 1.0102x",
          "rtpPercent": 98.9996,
          "hitRatePercent": 98,
          "netWinRatePercent": 98,
          "sd": 0.141428,
          "volatility": "Low",
          "maxWinMultiple": 1.0102,
          "ggrPer1000AtStake1": 10.004
        },
        {
          "id": "chance-1000",
          "name": "10% chance at 9.9000x",
          "rtpPercent": 99,
          "hitRatePercent": 10,
          "netWinRatePercent": 10,
          "sd": 2.97,
          "volatility": "Medium",
          "maxWinMultiple": 9.9,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "chance-100",
          "name": "1% chance at 99.0000x",
          "rtpPercent": 99,
          "hitRatePercent": 1,
          "netWinRatePercent": 1,
          "sd": 9.850376,
          "volatility": "High",
          "maxWinMultiple": 99,
          "ggrPer1000AtStake1": 10
        },
        {
          "id": "chance-1",
          "name": "0.01% chance at 9,900x",
          "rtpPercent": 99,
          "hitRatePercent": 0.01,
          "netWinRatePercent": 0.01,
          "sd": 98.99505,
          "volatility": "Very high",
          "maxWinMultiple": 9900,
          "ggrPer1000AtStake1": 10
        }
      ]
    },
    {
      "id": "snip",
      "name": "Snip",
      "group": "Crash",
      "category": "Instant: crash, shared rounds",
      "launchUrl": "https://baizestudio.com/embed/snip",
      "playUrl": "https://baizestudio.com/play/snip",
      "sheetUrl": "https://baizestudio.com/for-casinos/snip",
      "cover": "https://baizestudio.com/assets/cover-snip.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/snip/3x2-400.webp",
      "rtpPercent": 97,
      "rtpRangePercent": [
        97,
        97
      ],
      "houseEdgePercent": 3,
      "hitRatePercent": 48.5,
      "netWinRatePercent": 48.5,
      "volatility": {
        "sd": 0.99955,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 10000,
      "ggrPer1000AtStake1": 30,
      "referenceMode": "Auto cash-out at 2.00x",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per bet, up to two bets per round."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "7 s to bet, then the multiplier climbs until the round ends; each player cashes out by hand or at an auto target before it does.",
        "seconds": 18.582671,
        "roundsPerHour": 194,
        "source": "server-clock",
        "estimate": false,
        "method": "Server round clock: 7 s betting, the climb (expected 8.1 s from the exact crash distribution; 0 s for an instant end, 76.8 s to the cap), then 3.5 s with the result (5 s after the cap)."
      },
      "does": "A cartoon bomb’s LED counter climbs with a shared multiplier. Each player cuts their wire to cash out at the number on the counter, by hand or at an auto target; when the bomb goes off, any bet still in is lost.",
      "hook": "Cutting a wire is a cash-out anyone understands at a glance, so rounds are easy to follow on a stream. The tick speeds up with the multiplier, not the risk, and the rules say so.",
      "sessionFit": [
        "Quick or long sessions",
        "Social: the whole room plays the same round",
        "Timed rounds"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Streamer and creator campaigns",
        "Tournaments on highest cash-out multiplier"
      ],
      "features": [
        "Cut-the-wire cash-out: Bet 1 owns the red wire, Bet 2 the blue, and a cut stamps DEFUSED with the multiplier",
        "Two bets per round, each with its own auto cash-out",
        "Half: take half the stake off at the current multiplier and leave the rest in",
        "Provably fair: a SHA-256 seed chain, with one-tap verify of any round inside the game",
        "Shared rounds on a server clock, with a live room feed",
        "Simulated demo players, always labelled Demo (off on request)",
        "Auto bet for up to 10 rounds, hidden in the UK profile",
        "Stream-safe mode hides amounts and keeps multipliers",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Real-time 3D (three.js) that lowers detail on slow devices; needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "97% (default), 96% and 98% are built. RTP is set per room, not per player, because everyone in a round sees the same crash point; Topple, Snip, Crash and Updraft share one room. The 10,000x top multiplier can be 1,000x or 5,000x instead; no cap changes the RTP.",
      "ukProfile": true,
      "modes": [
        {
          "id": "auto-150",
          "name": "Auto cash-out at 1.50x",
          "rtpPercent": 97,
          "hitRatePercent": 64.666667,
          "netWinRatePercent": 64.666667,
          "sd": 0.717008,
          "volatility": "Low",
          "maxWinMultiple": 1.5,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-200",
          "name": "Auto cash-out at 2.00x",
          "rtpPercent": 97,
          "hitRatePercent": 48.5,
          "netWinRatePercent": 48.5,
          "sd": 0.99955,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-1000",
          "name": "Auto cash-out at 10.00x",
          "rtpPercent": 97,
          "hitRatePercent": 9.7,
          "netWinRatePercent": 9.7,
          "sd": 2.959578,
          "volatility": "Medium",
          "maxWinMultiple": 10,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-10000",
          "name": "Auto cash-out at 100.00x",
          "rtpPercent": 97,
          "hitRatePercent": 0.97,
          "netWinRatePercent": 0.97,
          "sd": 9.800974,
          "volatility": "High",
          "maxWinMultiple": 100,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "cap",
          "name": "Hold to the 10,000x cap",
          "rtpPercent": 97,
          "hitRatePercent": 0.0097,
          "netWinRatePercent": 0.0097,
          "sd": 98.483801,
          "volatility": "Very high",
          "maxWinMultiple": 10000,
          "ggrPer1000AtStake1": 30
        }
      ]
    },
    {
      "id": "topple",
      "name": "Topple",
      "group": "Crash",
      "category": "Instant: crash, shared rounds",
      "launchUrl": "https://baizestudio.com/embed/topple",
      "playUrl": "https://baizestudio.com/play/topple",
      "sheetUrl": "https://baizestudio.com/for-casinos/topple",
      "cover": "https://baizestudio.com/assets/cover-topple.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/topple/3x2-400.webp",
      "rtpPercent": 97,
      "rtpRangePercent": [
        97,
        97
      ],
      "houseEdgePercent": 3,
      "hitRatePercent": 48.5,
      "netWinRatePercent": 48.5,
      "volatility": {
        "sd": 0.99955,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 10000,
      "ggrPer1000AtStake1": 30,
      "referenceMode": "Auto cash-out at 2.00x",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per bet, up to two bets per round."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "7 s to bet, then the multiplier climbs until the round ends; each player cashes out by hand or at an auto target before it does.",
        "seconds": 18.582671,
        "roundsPerHour": 194,
        "source": "server-clock",
        "estimate": false,
        "method": "Server round clock: 7 s betting, the climb (expected 8.1 s from the exact crash distribution; 0 s for an instant end, 76.8 s to the cap), then 3.5 s with the result (5 s after the cap)."
      },
      "does": "A stack of casino chips grows off a felt table as a shared multiplier climbs. Each player cashes out when they choose, by hand or at an auto target; when the stack topples, any bet still in is lost.",
      "hook": "Everyone decides when to stop on the same climb and the room sees who held on. The stack is as likely to fall at 50x as at 2x, and the rules say so.",
      "sessionFit": [
        "Quick or long sessions",
        "Social: the whole room plays the same round",
        "Timed rounds"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Streamer and creator campaigns",
        "Tournaments on highest cash-out multiplier"
      ],
      "features": [
        "A chip stack that grows one chip per 2% of multiplier, with your auto targets marked on it",
        "Two bets per round, each with its own auto cash-out",
        "Half: take half the stake off at the current multiplier and leave the rest in",
        "Provably fair: a SHA-256 seed chain, with one-tap verify of any round inside the game",
        "Shared rounds on a server clock, with a live room feed",
        "Simulated demo players, always labelled Demo (off on request)",
        "Auto bet for up to 10 rounds, hidden in the UK profile",
        "Stream-safe mode hides amounts and keeps multipliers",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Real-time 3D (three.js) that lowers detail on slow devices; needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "97% (default), 96% and 98% are built. RTP is set per room, not per player, because everyone in a round sees the same crash point; Topple, Snip, Crash and Updraft share one room. The 10,000x top multiplier can be 1,000x or 5,000x instead; no cap changes the RTP.",
      "ukProfile": true,
      "modes": [
        {
          "id": "auto-150",
          "name": "Auto cash-out at 1.50x",
          "rtpPercent": 97,
          "hitRatePercent": 64.666667,
          "netWinRatePercent": 64.666667,
          "sd": 0.717008,
          "volatility": "Low",
          "maxWinMultiple": 1.5,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-200",
          "name": "Auto cash-out at 2.00x",
          "rtpPercent": 97,
          "hitRatePercent": 48.5,
          "netWinRatePercent": 48.5,
          "sd": 0.99955,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-1000",
          "name": "Auto cash-out at 10.00x",
          "rtpPercent": 97,
          "hitRatePercent": 9.7,
          "netWinRatePercent": 9.7,
          "sd": 2.959578,
          "volatility": "Medium",
          "maxWinMultiple": 10,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-10000",
          "name": "Auto cash-out at 100.00x",
          "rtpPercent": 97,
          "hitRatePercent": 0.97,
          "netWinRatePercent": 0.97,
          "sd": 9.800974,
          "volatility": "High",
          "maxWinMultiple": 100,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "cap",
          "name": "Hold to the 10,000x cap",
          "rtpPercent": 97,
          "hitRatePercent": 0.0097,
          "netWinRatePercent": 0.0097,
          "sd": 98.483801,
          "volatility": "Very high",
          "maxWinMultiple": 10000,
          "ggrPer1000AtStake1": 30
        }
      ]
    },
    {
      "id": "crash",
      "name": "Crash",
      "group": "Crash",
      "category": "Instant: crash, shared rounds",
      "launchUrl": "https://baizestudio.com/embed/crash",
      "playUrl": "https://baizestudio.com/play/crash",
      "sheetUrl": "https://baizestudio.com/for-casinos/crash",
      "cover": "https://baizestudio.com/assets/cover-crash.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/crash/3x2-400.webp",
      "rtpPercent": 97,
      "rtpRangePercent": [
        97,
        97
      ],
      "houseEdgePercent": 3,
      "hitRatePercent": 48.5,
      "netWinRatePercent": 48.5,
      "volatility": {
        "sd": 0.99955,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 10000,
      "ggrPer1000AtStake1": 30,
      "referenceMode": "Auto cash-out at 2.00x",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per bet, up to two bets per round."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "7 s to bet, then the multiplier climbs until the round ends; each player cashes out by hand or at an auto target before it does.",
        "seconds": 18.582671,
        "roundsPerHour": 194,
        "source": "server-clock",
        "estimate": false,
        "method": "Server round clock: 7 s betting, the climb (expected 8.1 s from the exact crash distribution; 0 s for an instant end, 76.8 s to the cap), then 3.5 s with the result (5 s after the cap)."
      },
      "does": "The classic crash screen: a line climbs a dark grid with a shared multiplier while the axes rescale. Each player cashes out when they choose, by hand or at an auto target; when the line crashes, any bet still in is lost.",
      "hook": "The look players already know from crypto casinos, so there is nothing to learn: one line, one number, one button. Drawn in 2D, it loads in about half the bytes of the 3D crash games.",
      "sessionFit": [
        "Quick or long sessions",
        "Social: the whole room plays the same round",
        "Timed rounds"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Streamer and creator campaigns",
        "Tournaments on highest cash-out multiplier"
      ],
      "features": [
        "The classic graph: a line with a comet-trail tip on a rescaling grid, your auto targets as dashed lines and every cash-out in the room as a dot on the line",
        "Two bets per round, each with its own auto cash-out",
        "Half: take half the stake off at the current multiplier and leave the rest in",
        "Provably fair: a SHA-256 seed chain, with one-tap verify of any round inside the game",
        "Shared rounds on a server clock, with a live room feed",
        "Simulated demo players, always labelled Demo (off on request)",
        "Auto bet for up to 10 rounds, hidden in the UK profile",
        "Stream-safe mode hides amounts and keeps multipliers",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Canvas 2D drawn in code, no 3D library and no image files, about half the first load of the 3D crash games; needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "97% (default), 96% and 98% are built. RTP is set per room, not per player, because everyone in a round sees the same crash point; Topple, Snip, Crash and Updraft share one room. The 10,000x top multiplier can be 1,000x or 5,000x instead; no cap changes the RTP.",
      "ukProfile": true,
      "modes": [
        {
          "id": "auto-150",
          "name": "Auto cash-out at 1.50x",
          "rtpPercent": 97,
          "hitRatePercent": 64.666667,
          "netWinRatePercent": 64.666667,
          "sd": 0.717008,
          "volatility": "Low",
          "maxWinMultiple": 1.5,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-200",
          "name": "Auto cash-out at 2.00x",
          "rtpPercent": 97,
          "hitRatePercent": 48.5,
          "netWinRatePercent": 48.5,
          "sd": 0.99955,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-1000",
          "name": "Auto cash-out at 10.00x",
          "rtpPercent": 97,
          "hitRatePercent": 9.7,
          "netWinRatePercent": 9.7,
          "sd": 2.959578,
          "volatility": "Medium",
          "maxWinMultiple": 10,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-10000",
          "name": "Auto cash-out at 100.00x",
          "rtpPercent": 97,
          "hitRatePercent": 0.97,
          "netWinRatePercent": 0.97,
          "sd": 9.800974,
          "volatility": "High",
          "maxWinMultiple": 100,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "cap",
          "name": "Hold to the 10,000x cap",
          "rtpPercent": 97,
          "hitRatePercent": 0.0097,
          "netWinRatePercent": 0.0097,
          "sd": 98.483801,
          "volatility": "Very high",
          "maxWinMultiple": 10000,
          "ggrPer1000AtStake1": 30
        }
      ]
    },
    {
      "id": "updraft",
      "name": "Updraft",
      "group": "Crash",
      "category": "Instant: crash, shared rounds",
      "launchUrl": "https://baizestudio.com/embed/updraft",
      "playUrl": "https://baizestudio.com/play/updraft",
      "sheetUrl": "https://baizestudio.com/for-casinos/updraft",
      "cover": "https://baizestudio.com/assets/cover-updraft.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/updraft/3x2-400.webp",
      "rtpPercent": 97,
      "rtpRangePercent": [
        97,
        97
      ],
      "houseEdgePercent": 3,
      "hitRatePercent": 48.5,
      "netWinRatePercent": 48.5,
      "volatility": {
        "sd": 0.99955,
        "label": "Low",
        "range": "Low to Very high"
      },
      "maxWinMultiple": 10000,
      "ggrPer1000AtStake1": 30,
      "referenceMode": "Auto cash-out at 2.00x",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per bet, up to two bets per round."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "7 s to bet, then the multiplier climbs until the round ends; each player cashes out by hand or at an auto target before it does.",
        "seconds": 18.582671,
        "roundsPerHour": 194,
        "source": "server-clock",
        "estimate": false,
        "method": "Server round clock: 7 s betting, the climb (expected 8.1 s from the exact crash distribution; 0 s for an instant end, 76.8 s to the cap), then 3.5 s with the result (5 s after the cap)."
      },
      "does": "A striped hot-air balloon climbs from a meadow through cloud, sunset and stars as a shared multiplier rises. Every bet hangs under the basket as a parcel; each player releases theirs to cash out, by hand or at an auto target. When the balloon pops, any parcel still aboard is lost.",
      "hook": "Releasing a parcel on a little parachute is a cash-out anyone reads at a glance, and the room’s parachutes fill the sky as players drop out. The balloon climbs at one steady pace and the rules say the scenery shows height, not risk.",
      "sessionFit": [
        "Quick or long sessions",
        "Social: the whole room plays the same round",
        "Timed rounds"
      ],
      "placements": [
        "Crash and instant category",
        "New-games rail",
        "Streamer and creator campaigns",
        "Tournaments on highest cash-out multiplier"
      ],
      "features": [
        "Release-a-parcel cash-out: Bet 1 and Bet 2 hang as tagged parcels and float down on parachutes with their multiplier, under a LANDED stamp",
        "Two bets per round, each with its own auto cash-out",
        "Half: take half the stake off at the current multiplier and leave the rest in",
        "Provably fair: a SHA-256 seed chain, with one-tap verify of any round inside the game",
        "Shared rounds on a server clock, with a live room feed",
        "Simulated demo players, always labelled Demo (off on request)",
        "Auto bet for up to 10 rounds, hidden in the UK profile",
        "Stream-safe mode hides amounts and keeps multipliers",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Canvas 2D drawn in code, no 3D library and no image files, about half the first load of the 3D crash games; needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "97% (default), 96% and 98% are built. RTP is set per room, not per player, because everyone in a round sees the same crash point; Topple, Snip, Crash and Updraft share one room. The 10,000x top multiplier can be 1,000x or 5,000x instead; no cap changes the RTP.",
      "ukProfile": true,
      "modes": [
        {
          "id": "auto-150",
          "name": "Auto cash-out at 1.50x",
          "rtpPercent": 97,
          "hitRatePercent": 64.666667,
          "netWinRatePercent": 64.666667,
          "sd": 0.717008,
          "volatility": "Low",
          "maxWinMultiple": 1.5,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-200",
          "name": "Auto cash-out at 2.00x",
          "rtpPercent": 97,
          "hitRatePercent": 48.5,
          "netWinRatePercent": 48.5,
          "sd": 0.99955,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-1000",
          "name": "Auto cash-out at 10.00x",
          "rtpPercent": 97,
          "hitRatePercent": 9.7,
          "netWinRatePercent": 9.7,
          "sd": 2.959578,
          "volatility": "Medium",
          "maxWinMultiple": 10,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "auto-10000",
          "name": "Auto cash-out at 100.00x",
          "rtpPercent": 97,
          "hitRatePercent": 0.97,
          "netWinRatePercent": 0.97,
          "sd": 9.800974,
          "volatility": "High",
          "maxWinMultiple": 100,
          "ggrPer1000AtStake1": 30
        },
        {
          "id": "cap",
          "name": "Hold to the 10,000x cap",
          "rtpPercent": 97,
          "hitRatePercent": 0.0097,
          "netWinRatePercent": 0.0097,
          "sd": 98.483801,
          "volatility": "Very high",
          "maxWinMultiple": 10000,
          "ggrPer1000AtStake1": 30
        }
      ]
    },
    {
      "id": "midnight-felt",
      "name": "Midnight Felt",
      "group": "Slots",
      "category": "Slots: 243 ways with tumbles and free spins",
      "launchUrl": "https://baizestudio.com/embed/midnight-felt",
      "playUrl": "https://baizestudio.com/play/midnight-felt",
      "sheetUrl": "https://baizestudio.com/for-casinos/midnight-felt",
      "cover": "https://baizestudio.com/assets/cover-midnight-felt.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/midnight-felt/3x2-400.webp",
      "rtpPercent": 96.014353,
      "rtpRangePercent": [
        96.014353,
        96.095849
      ],
      "houseEdgePercent": 3.985647,
      "hitRatePercent": 23.732626,
      "netWinRatePercent": 11.042758,
      "volatility": {
        "sd": 11.534852,
        "label": "High",
        "range": "Medium to High"
      },
      "maxWinMultiple": 5000,
      "ggrPer1000AtStake1": 39.856467,
      "referenceMode": "One spin (default 96% maths)",
      "stake": {
        "min": 0.2,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.20 to 100.00 per spin on a fixed bet ladder; the bonus buy costs 65 times the bet."
      },
      "round": {
        "structure": "Spin with tumbles and a feature",
        "description": "One press spins; tumbles and any free spins play out on their own and the round settles once.",
        "seconds": 1.43,
        "roundsPerHour": 2517,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Bet 1.00 at normal pace, Spin pressed as soon as it is enabled, free spins started as soon as offered (opus-slots/qa/measure-round.mjs). 60 rounds. Measured on the 2026-10-05 slots build; the median spin has no win or a small one, so features (about one in 170) are not in the median."
      },
      "does": "Five reels and three rows of card-room symbols pay on 243 ways. Winning symbols tumble away for new ones, House chips are wild and multiply, and three Brass keys start free spins with a House multiplier that rises on every winning tumble and never resets.",
      "hook": "Every winning tumble can win again, and in free spins the House multiplier only goes up, so a feature can build from a slow start. Features arrive about once in 170 spins.",
      "sessionFit": [
        "Medium to long sessions",
        "Single player",
        "Good to watch: built for streams"
      ],
      "placements": [
        "Slots lobby",
        "New-games rail",
        "Tournaments on biggest single win",
        "Streamer and creator campaigns"
      ],
      "features": [
        "243 ways, tumbles paying x1, x2, x3 then x5",
        "Wild House chips with x2 and x3 multipliers",
        "Free spins with a House multiplier that never resets (up to x100)",
        "Bonus buy at 65x the bet with the same return as the base game",
        "Max win 5,000x the bet",
        "Auto play with stop rules",
        "Quick play, slam stop and keyboard play",
        "Resumes a feature after a reload"
      ],
      "devices": "Desktop and phone, portrait and landscape. WebGL2 reels with a Canvas fallback; symbol art loads after the first frame. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "96% (default), 94% and 92% are built and measured, each with its own PAR sheet: pay values change, reels and features do not.",
      "ukProfile": true,
      "modes": [
        {
          "id": "spin-96",
          "name": "One spin (default 96% maths)",
          "rtpPercent": 96.014353,
          "hitRatePercent": 23.732626,
          "netWinRatePercent": 11.042758,
          "sd": 11.534852,
          "volatility": "High",
          "maxWinMultiple": 5000,
          "ggrPer1000AtStake1": 39.856467
        },
        {
          "id": "buy-96",
          "name": "Bonus buy at 65x the bet",
          "rtpPercent": 96.095849,
          "hitRatePercent": 97.356982,
          "netWinRatePercent": 25.948082,
          "sd": 1.973209,
          "volatility": "Medium",
          "maxWinMultiple": 76.923077,
          "ggrPer1000AtStake1": 39.041512
        }
      ]
    },
    {
      "id": "mint-mark",
      "name": "Mint Mark",
      "group": "Slots",
      "category": "Slots: 7x7 cluster pays with tumbles, multiplier spots and free spins",
      "launchUrl": "https://baizestudio.com/embed/mint-mark",
      "playUrl": "https://baizestudio.com/play/mint-mark",
      "sheetUrl": "https://baizestudio.com/for-casinos/mint-mark",
      "cover": "https://baizestudio.com/assets/cover-mint-mark.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/mint-mark/3x2-400.webp",
      "rtpPercent": 95.970257,
      "rtpRangePercent": [
        95.9357,
        95.970257
      ],
      "houseEdgePercent": 4.029743,
      "hitRatePercent": 37.729644,
      "netWinRatePercent": 18.529771,
      "volatility": {
        "sd": 14.774025,
        "label": "High",
        "range": "Medium to High"
      },
      "maxWinMultiple": 5000,
      "ggrPer1000AtStake1": 40.297426,
      "referenceMode": "One spin (default 96% maths)",
      "stake": {
        "min": 0.2,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.20 to 100.00 per spin on a fixed bet ladder; the bonus buy costs 51 times the bet."
      },
      "round": {
        "structure": "Spin with tumbles and a feature",
        "description": "One press spins; tumbles and any free spins play out on their own and the round settles once.",
        "seconds": 1.77,
        "roundsPerHour": 2034,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Bet 1.00 at normal pace, Spin pressed as soon as it is enabled, free spins started as soon as offered (opus-slots/qa/measure-round.mjs). 60 rounds. Measured on the 2026-10-05 slots build; 7x7 reels and tumbles make a spin a little longer than Midnight Felt's, and features (about one in 100) are not in the median."
      },
      "does": "Seven reels and seven rows of die-struck coins, scales, dies and ingots pay in clusters of five or more. Winning clusters tumble away, and every position they covered is struck by the press: a second win there is x2, and each win after doubles it. Press seals start free spins where the plate is never cleared.",
      "hook": "Every win leaves a mark that makes the next win on that spot bigger, so a board can heat up in one spin, and in free spins it keeps heating up. Features arrive about once in 101 spins.",
      "sessionFit": [
        "Medium to long sessions",
        "Single player",
        "Good to watch: built for streams"
      ],
      "placements": [
        "Slots lobby",
        "New-games rail",
        "Tournaments on biggest single win",
        "Streamer and creator campaigns"
      ],
      "features": [
        "7x7 cluster pays, 5 or more touching, with tumbles",
        "Assay marks: struck spots double from x2 up to x16 (x32 in free spins), added up under a cluster",
        "Free spins keep every mark for the whole feature; press seals strike their spots too",
        "Bonus buy at 51x the bet with the same return as the base game",
        "Max win 5,000x the bet",
        "Auto play with stop rules",
        "Quick play, slam stop and keyboard play",
        "Resumes a feature after a reload"
      ],
      "devices": "Desktop and phone, portrait and landscape. WebGL2 reels with a Canvas fallback; flipbooks and the room load after the first frame. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "96% (default), 94% and 92% are built and measured, each with its own PAR sheet: pay values change, reels and features do not.",
      "ukProfile": true,
      "modes": [
        {
          "id": "spin-96",
          "name": "One spin (default 96% maths)",
          "rtpPercent": 95.970257,
          "hitRatePercent": 37.729644,
          "netWinRatePercent": 18.529771,
          "sd": 14.774025,
          "volatility": "High",
          "maxWinMultiple": 5000,
          "ggrPer1000AtStake1": 40.297426
        },
        {
          "id": "buy-96",
          "name": "Bonus buy at 51x the bet",
          "rtpPercent": 95.9357,
          "hitRatePercent": 99.738936,
          "netWinRatePercent": 20.296241,
          "sd": 2.654658,
          "volatility": "Medium",
          "maxWinMultiple": 98.039216,
          "ggrPer1000AtStake1": 40.642996
        }
      ]
    },
    {
      "id": "fennimore",
      "name": "Fennimore",
      "group": "Slots",
      "category": "Slots: 6x5 pays anywhere with tumbles, multiplier cards and free spins",
      "launchUrl": "https://baizestudio.com/embed/fennimore",
      "playUrl": "https://baizestudio.com/play/fennimore",
      "sheetUrl": "https://baizestudio.com/for-casinos/fennimore",
      "cover": "https://baizestudio.com/assets/cover-fennimore.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/fennimore/3x2-400.webp",
      "rtpPercent": 96.027788,
      "rtpRangePercent": [
        96.027788,
        96.090631
      ],
      "houseEdgePercent": 3.972212,
      "hitRatePercent": 32.170548,
      "netWinRatePercent": 6.899493,
      "volatility": {
        "sd": 16.142971,
        "label": "Very high",
        "range": "Medium to Very high"
      },
      "maxWinMultiple": 5000,
      "ggrPer1000AtStake1": 39.72212,
      "referenceMode": "One spin (default 96% maths)",
      "stake": {
        "min": 0.2,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.20 to 100.00 per spin on a fixed bet ladder; the bonus buy costs 99 times the bet."
      },
      "round": {
        "structure": "Spin with tumbles and a feature",
        "description": "One press spins; tumbles, the reveal and any free spins play out on their own and the round settles once.",
        "seconds": 1.61,
        "roundsPerHour": 2236,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Bet 1.00 at normal pace, Spin pressed as soon as it is enabled, free spins started as soon as offered (opus-slots/qa/measure-round.mjs). 40 rounds. Measured on the 2026-10-05 slots build; the median spin has no win or a small one, and features (about one in 420) and card reveals add time that is not in the median."
      },
      "does": "Six reels and five rows of a music-hall magic act pay for 8 or more of a symbol anywhere. Wins tumble, and Fennimore the magician throws trick cards onto the stage face down. When the tumbles stop he reveals them, their values add up and the win is multiplied. Four top hats start free spins, where every revealed card joins an Ovation that never goes down.",
      "hook": "The magician performs the feature: a flourish at his hat before a card lands, a reveal when the tumbles stop, and an Ovation that only rises in free spins. Features arrive about once in 422 spins and 5,000x is reached about once in 2.2 million spins.",
      "sessionFit": [
        "Medium to long sessions",
        "Single player",
        "Good to watch: built for streams"
      ],
      "placements": [
        "Slots lobby",
        "New-games rail",
        "Tournaments on biggest single win",
        "Streamer and creator campaigns"
      ],
      "features": [
        "6x5 pays anywhere for 8 or more, with tumbles",
        "Trick cards x2 to x500, revealed and added up when the tumbles stop",
        "Free spins with an Ovation total that never goes down and pays every win",
        "A character who performs the feature (tell, throw, reveal, reactions)",
        "Bonus buy at 99x the bet with the same return as the base game",
        "Max win 5,000x the bet, reachable",
        "Returns at or below the bet are never shown as wins",
        "Auto play with stop rules",
        "Quick play, slam stop and keyboard play",
        "Resumes a feature after a reload"
      ],
      "devices": "Desktop and phone, portrait and landscape. WebGL2 reels and character with a Canvas fallback; the character, flipbooks and the room load after the first frame. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "96% (default), 94% and 92% are built and measured, each with its own PAR sheet: pay values change, reels and features do not.",
      "ukProfile": true,
      "modes": [
        {
          "id": "spin-96",
          "name": "One spin (default 96% maths)",
          "rtpPercent": 96.027788,
          "hitRatePercent": 32.170548,
          "netWinRatePercent": 6.899493,
          "sd": 16.142971,
          "volatility": "Very high",
          "maxWinMultiple": 5000,
          "ggrPer1000AtStake1": 39.72212
        },
        {
          "id": "buy-96",
          "name": "Bonus buy at 99x the bet",
          "rtpPercent": 96.090631,
          "hitRatePercent": 99.82244,
          "netWinRatePercent": 18.720086,
          "sd": 2.691208,
          "volatility": "Medium",
          "maxWinMultiple": 50.505051,
          "ggrPer1000AtStake1": 39.093686
        }
      ]
    },
    {
      "id": "byte-street",
      "name": "Byte Street",
      "group": "Slots",
      "category": "Slots: 5x3 lines cash collector with a persistent tray, levels and free spins (pixel art)",
      "launchUrl": "https://baizestudio.com/embed/byte-street",
      "playUrl": "https://baizestudio.com/play/byte-street",
      "sheetUrl": "https://baizestudio.com/for-casinos/byte-street",
      "cover": "https://baizestudio.com/assets/cover-byte-street.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/byte-street/3x2-400.webp",
      "rtpPercent": 96.011412,
      "rtpRangePercent": [
        95.390283,
        96.011412
      ],
      "houseEdgePercent": 3.988588,
      "hitRatePercent": 32.838082,
      "netWinRatePercent": 7.392482,
      "volatility": {
        "sd": 18.342641,
        "label": "Very high",
        "range": "Medium to Very high"
      },
      "maxWinMultiple": 5000,
      "ggrPer1000AtStake1": 39.885877,
      "referenceMode": "One spin (default 96% maths)",
      "stake": {
        "min": 0.2,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "0.20 to 100.00 per spin on a fixed bet ladder; the bonus buy costs 102 times the bet."
      },
      "round": {
        "structure": "Spin with a feature",
        "description": "One press spins; the collect, the Pusher and any free spins play out on their own and the round settles once.",
        "seconds": 1.43,
        "roundsPerHour": 2517,
        "source": "measured",
        "estimate": false,
        "method": "Headless Chrome against a local server, game in a 1280x720 iframe, normal motion, every control pressed as soon as it was enabled (about 25 ms reaction), so rounds per hour is a ceiling with no thinking time. Round time = median time between consecutive settled rounds. Strategy: Bet 1.00 at normal pace, Spin pressed as soon as it is enabled, free spins started as soon as offered (opus-slots/qa/measure-round.mjs). 40 rounds. Measured on the 2026-10-06 Byte Street build; the median spin has no collect. A base drop-in rush adds about 2 s and a 10-spin feature about 40 s."
      },
      "does": "A pixel-art arcade slot on five reels and 20 lines. Tokens land with values from 1x to 500x the bet, and Nugget, a hamster on a soda-can rocket, is the wild who collects them all. Three Rockets start free spins: tokens that land with no Nugget roll into the Pusher, his next landing cashes it at the multiplier in force, and every four Nuggets Boost him to x2, x3, x10 with ten more spins.",
      "hook": "The cash collector players already know, with a twist they can read in one line: missed tokens are banked in the Pusher, not lost, and come back multiplied. Nugget flies the rush through every token, so the feature is a show. Features arrive about once in 183 spins and 5,000x is reached about once in 1.7 million spins.",
      "sessionFit": [
        "Short to long sessions",
        "Single player",
        "Good to watch: built for streams"
      ],
      "placements": [
        "Slots lobby",
        "New-games rail",
        "Tournaments on biggest single win",
        "Streamer and creator campaigns",
        "Retro and arcade themed promotions"
      ],
      "features": [
        "5x3, 20 lines, 3 of a kind (2 arcade cabinets) from the left",
        "Cash tokens 1x to 500x the bet, collected by the wild",
        "Base-game drop-in: the collector on reel 5 collects at x1",
        "The Pusher: tokens with no collector are banked and cashed at the next landing, at the multiplier then",
        "Fuel and Boost: every 4 collectors, x2, x3, x10 and +10 spins",
        "Bonus buy at 102x the bet (off in the UK profile)",
        "Max win 5,000x the bet, reachable",
        "Returns at or below the bet are never shown as wins",
        "Pixel art at whole-number scales, chiptune music and cues",
        "UK profile: no bonus buy, Quick play or auto play",
        "Auto play with stop rules",
        "Quick play, slam stop and keyboard play",
        "Resumes a feature after a reload"
      ],
      "devices": "Desktop and phone, portrait and landscape. A 320 x 180 pixel scene (180 x 320 upright) scaled by a whole number with nearest-neighbour filtering, so it stays crisp at every size; all art is about 50 KB. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "96% (default), 94% and 92% are built and measured, each with its own PAR sheet: pay values and the buy price change, reels, tokens and features do not.",
      "ukProfile": true,
      "modes": [
        {
          "id": "spin-96",
          "name": "One spin (default 96% maths)",
          "rtpPercent": 96.011412,
          "hitRatePercent": 32.838082,
          "netWinRatePercent": 7.392482,
          "sd": 18.342641,
          "volatility": "Very high",
          "maxWinMultiple": 5000,
          "ggrPer1000AtStake1": 39.885877
        },
        {
          "id": "buy-96",
          "name": "Bonus buy at 102x the bet",
          "rtpPercent": 95.390283,
          "hitRatePercent": 99.63868,
          "netWinRatePercent": 20.366649,
          "sd": 2.063966,
          "volatility": "Medium",
          "maxWinMultiple": 49.019608,
          "ggrPer1000AtStake1": 46.097175
        }
      ]
    },
    {
      "id": "blackjack",
      "name": "Blackjack",
      "group": "Shared tables",
      "category": "Table games: shared live-style table",
      "launchUrl": "https://baizestudio.com/embed/blackjack",
      "playUrl": "https://baizestudio.com/play/blackjack",
      "sheetUrl": "https://baizestudio.com/for-casinos/blackjack",
      "cover": "https://baizestudio.com/assets/cover-blackjack.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/blackjack/3x2-400.webp",
      "rtpPercent": 99.429612,
      "rtpRangePercent": [
        99.429612,
        99.429612
      ],
      "houseEdgePercent": 0.570388,
      "hitRatePercent": 52.365855,
      "netWinRatePercent": 43.286751,
      "volatility": {
        "sd": 1.145148,
        "label": "Low",
        "range": "Low"
      },
      "maxWinMultiple": 8,
      "ggrPer1000AtStake1": 5.70388,
      "referenceMode": "Best play (EV-optimal hit, stand, double and split)",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 opening bet; doubles and the split add stakes."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "Up to 15 s betting, a shared deal, a decision window of up to 20 s, then the dealer plays.",
        "seconds": 28.315588,
        "roundsPerHour": 127,
        "source": "server-clock",
        "estimate": true,
        "method": "Server round clock: up to 15 s betting (2 s after everyone seated has bet), 2.5 s deal, a decision window of up to 20 s that closes as soon as every seated hand has acted, the dealer reveal (expected length from the exact dealer odds) and 6 s result. The typical figure assumes about 2 s of decisions; it is an estimate, since the window depends on everyone seated."
      },
      "does": "Everyone at the table gets the same first two cards and dealer upcard, then each player hits, stands, doubles or splits their own hand.",
      "hook": "A shared deal that players can talk about, on a fixed round clock, with a low house edge for players who play well.",
      "sessionFit": [
        "Long sessions",
        "Social: everyone sees the same cards",
        "Timed rounds"
      ],
      "placements": [
        "Table games lobby",
        "Live casino lobby as a computer-dealt table",
        "Tournaments"
      ],
      "features": [
        "Shared rounds on a server clock",
        "Hit, stand, double, one split",
        "Round history",
        "Server-side dealing and demo wallet",
        "Other players shown at the table",
        "Auto-rebet",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Standard rules only (S17, 3:2, peek, one split, double any two). No rule variants are built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "best",
          "name": "Best play (EV-optimal hit, stand, double and split)",
          "rtpPercent": 99.429612,
          "hitRatePercent": 52.365855,
          "netWinRatePercent": 43.286751,
          "sd": 1.145148,
          "volatility": "Low",
          "maxWinMultiple": 8,
          "ggrPer1000AtStake1": 5.70388
        }
      ]
    },
    {
      "id": "roulette",
      "name": "Roulette",
      "group": "Shared tables",
      "category": "Table games: shared live-style table",
      "launchUrl": "https://baizestudio.com/embed/roulette",
      "playUrl": "https://baizestudio.com/play/roulette",
      "sheetUrl": "https://baizestudio.com/for-casinos/roulette",
      "cover": "https://baizestudio.com/assets/cover-roulette.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/roulette/3x2-400.webp",
      "rtpPercent": 97.297297,
      "rtpRangePercent": [
        97.297297,
        97.297297
      ],
      "houseEdgePercent": 2.702703,
      "hitRatePercent": 48.648649,
      "netWinRatePercent": 48.648649,
      "volatility": {
        "sd": 0.999635,
        "label": "Low",
        "range": "Low to High"
      },
      "maxWinMultiple": 36,
      "ggrPer1000AtStake1": 27.027027,
      "referenceMode": "Red, black, odd, even, 1 to 18, 19 to 36",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100 per bet, up to 100 per round in total."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "Up to 15 s betting, then one spin for the whole table.",
        "seconds": 31.5,
        "roundsPerHour": 114,
        "source": "server-clock",
        "estimate": false,
        "method": "Server round clock: up to 15 s betting (2 s after everyone seated has bet), 2.5 s deal, 8 s spin, 6 s result."
      },
      "does": "Players put chips anywhere on a single-zero layout before the clock runs out, then the whole room watches the same spin.",
      "hook": "A familiar game on a steady 31.5 second rhythm, with everyone watching the same ball.",
      "sessionFit": [
        "Long sessions",
        "Social: one wheel for everyone",
        "Timed rounds"
      ],
      "placements": [
        "Table games lobby",
        "Live casino lobby as a computer-run wheel",
        "Cross-sell from the sportsbook between events"
      ],
      "features": [
        "Shared rounds on a server clock",
        "Up to 20 bets per round",
        "Round history",
        "Server-side spin and demo wallet",
        "Win shown as the ball lands",
        "Hot and cold numbers over the last 100 spins",
        "Auto-rebet",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Single-zero wheel, standard payouts. No variants are built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "even",
          "name": "Red, black, odd, even, 1 to 18, 19 to 36",
          "rtpPercent": 97.297297,
          "hitRatePercent": 48.648649,
          "netWinRatePercent": 48.648649,
          "sd": 0.999635,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 27.027027
        },
        {
          "id": "dozen",
          "name": "A dozen or a column",
          "rtpPercent": 97.297297,
          "hitRatePercent": 32.432432,
          "netWinRatePercent": 32.432432,
          "sd": 1.404366,
          "volatility": "Low",
          "maxWinMultiple": 3,
          "ggrPer1000AtStake1": 27.027027
        },
        {
          "id": "straight",
          "name": "One number",
          "rtpPercent": 97.297297,
          "hitRatePercent": 2.702703,
          "netWinRatePercent": 2.702703,
          "sd": 5.837838,
          "volatility": "High",
          "maxWinMultiple": 36,
          "ggrPer1000AtStake1": 27.027027
        }
      ]
    },
    {
      "id": "baccarat",
      "name": "Baccarat",
      "group": "Shared tables",
      "category": "Table games: shared live-style table",
      "launchUrl": "https://baizestudio.com/embed/baccarat",
      "playUrl": "https://baizestudio.com/play/baccarat",
      "sheetUrl": "https://baizestudio.com/for-casinos/baccarat",
      "cover": "https://baizestudio.com/assets/cover-baccarat.webp",
      "thumbnail": "https://baizestudio.com/assets/thumbs/baccarat/3x2-400.webp",
      "rtpPercent": 98.936001,
      "rtpRangePercent": [
        85.883013,
        98.936001
      ],
      "houseEdgePercent": 1.063999,
      "hitRatePercent": 55.385349,
      "netWinRatePercent": 45.842792,
      "volatility": {
        "sd": 0.927235,
        "label": "Low",
        "range": "Low to Medium"
      },
      "maxWinMultiple": 9,
      "ggrPer1000AtStake1": 10.63999,
      "referenceMode": "Banker (pays 0.95 to 1)",
      "stake": {
        "min": 1,
        "max": 100,
        "stakesPerRound": 1,
        "currency": "DEMO",
        "note": "Whole credits, 1 to 100, one bet per round."
      },
      "round": {
        "structure": "Shared timed round",
        "description": "Up to 15 s betting, then one shared hand revealed card by card.",
        "seconds": 29.421281,
        "roundsPerHour": 122,
        "source": "server-clock",
        "estimate": false,
        "method": "Server round clock: up to 15 s betting (2 s after everyone seated has bet), 2.5 s deal, card-by-card reveal of 4 to 6 cards (expected length from the exact third-card odds), 6 s result."
      },
      "does": "Players back Player, Banker or Tie before the clock runs out, then one shared hand is dealt card by card under the standard third-card rules.",
      "hook": "Simple choices, a card-by-card reveal, and the same deal for everyone at the table.",
      "sessionFit": [
        "Long sessions",
        "Social: one deal for everyone",
        "Timed rounds"
      ],
      "placements": [
        "Table games lobby",
        "Live casino lobby as a computer-dealt table",
        "VIP and high-stakes sections once limits allow"
      ],
      "features": [
        "Shared rounds on a server clock",
        "Card-by-card reveal",
        "Round history",
        "Server-side dealing and demo wallet",
        "Squeeze: peel your side's cards",
        "Bead plate and big road",
        "Auto-rebet",
        "Keyboard play"
      ],
      "devices": "Desktop and phone, portrait and landscape. Needs a live connection to the Baize server. Fills any iframe from 320x480 up; checked at 1920x1080, 1280x720, 1024x768, 800x600, 844x390, 390x844 and 360x640.",
      "rtpVariants": "Standard payouts (Banker 0.95:1, Tie 8:1). No variants are built.",
      "ukProfile": false,
      "modes": [
        {
          "id": "banker",
          "name": "Banker (pays 0.95 to 1)",
          "rtpPercent": 98.936001,
          "hitRatePercent": 55.385349,
          "netWinRatePercent": 45.842792,
          "sd": 0.927235,
          "volatility": "Low",
          "maxWinMultiple": 1.95,
          "ggrPer1000AtStake1": 10.63999
        },
        {
          "id": "player",
          "name": "Player (pays 1 to 1)",
          "rtpPercent": 98.771859,
          "hitRatePercent": 54.157208,
          "netWinRatePercent": 44.614651,
          "sd": 0.951012,
          "volatility": "Low",
          "maxWinMultiple": 2,
          "ggrPer1000AtStake1": 12.281406
        },
        {
          "id": "tie",
          "name": "Tie (pays 8 to 1)",
          "rtpPercent": 85.883013,
          "hitRatePercent": 9.542557,
          "netWinRatePercent": 9.542557,
          "sd": 2.644217,
          "volatility": "Medium",
          "maxWinMultiple": 9,
          "ggrPer1000AtStake1": 141.16987
        }
      ]
    }
  ]
}
