← All docs

Fox Reel Studio Game Integration Guide

Version 2.0 · For operator casinos embedding Fox Reel Studio games.

This guide covers launching and embedding games. Wallet integration, authentication/signing, environments, and IP whitelisting are covered in the companion Integration Guide (INTEGRATION_GUIDE.md) — complete that first; game launches use the same signed API.


1. Game catalog

game_code Title Category
dice Dice Instant: roll over or under with an adjustable win chance (0.20–98%)
mines Mines Stateful: reveal gems on a 5×5 board avoiding 1–24 mines, cash out any time
flip Streak Flip Stateful double-or-nothing: each correct heads/tails call doubles, cash out any time
rocket Rocket Live crash: cash out before the multiplier crashes; optional server-guaranteed auto cash-out
ascent Ascent Original: set your own win chance each leap; landing compounds ×(1/p)
constellation Constellation Original: chart stars across a 36-star field avoiding hidden black holes
shark-dentist Jaws of Fortune Stateful: grab treasures from an 8-tooth board avoiding trap teeth
nuke-nope Nuke Nope! Stateful: defuse nukes with an automatic abort save or an armed Pardon
zenos-vault Zeno's Vault Original with self-triggered free spins
meteor-shower Meteor Shower Original: 20 meteors across eight multiplier zones, three gravity settings
exit-liquidity Exit Liquidity Original
liquidated Liquidated Original: pick long or short, set leverage, race take-profit against liquidation
vault-protocol Vault Protocol Original
rush-hour Rush Hour Stateful: hop the crow across traffic lanes, live odds per lane, per-hop helmet insurance, cash out after any safe landing
vault-breaker Vault Breaker Stateful: same lane-crossing math as Rush Hour, cat-burglar vault skin
checkmate Checkmate Slot: captures by real chess moves, multiplier squares, Endgame bonus
overgrowth Overgrowth Slot: spreading mycelium network on a 6×5 grid, multipliers to ×25
grumbolt Grumbolt's Feast Slot: 8+ anywhere, tumbles, Thunder Donut multipliers to ×100
sharkfather The Sharkfather Slot: 8+ anywhere, tumbles, Collectors and Cash Stacks to 500×
dillo Dillo the Kid Slot: 8+ anywhere, Dynamite and Gold Nuggets ×2 to ×100
ramageddon Ra-mageddon Slot: 8+ anywhere, sticky doubling Scarab Wilds, three bonus tiers
rigged RIGGED! Slot: 8+ anywhere, Prize Wheel multipliers to ×100 that stick in Rigged Spins
nine-tails Nine Tails Slot: 8+ anywhere, sticky Fox Mask Wilds collect Lantern Coins, three bonus tiers up to ×9 collects
bloomrot Bloomrot Slot: 6×5 cluster pays (5+), wins plant Seed Plots that grow into bloom coins, Snapjaw eats a column and spits multiplier seeds; Midnight Harvest / Overgrowth / Snapjaw Feast bonuses, Seed Hunt 3× and three buys, win cap 10,000×
djinn-duel Djinn Duel Slot: 6×5, 15,625 ways; two rival djinn VS symbols duel — both reels turn into giant wild reels carrying the sum of their multipliers; lamp wishes; Sandstorm / Thunder / Third Wish bonuses, Wish Hunt 3× and three buys, win cap 15,000×
kaiju-kitchen Kaiju Kitchen Slot: 6×5 cluster pays (5+) with tumbles; footprint wilds stay all spin and stomp the 3×3 around them, crushing taxis / helicopters / robots into cash and ×2/×3/×5 coins paid at the end of the tumbles; noodle bowls slurp a row's wilds into a row multiplier; Late Night Rush / Noodle Storm / Kaiju Feast bonuses, Stomp Hunt 3× and three buys (100× / 200× / 500×), win cap 10,000×
lucha-pollo Lucha Pollo Slot: 6×5, 8+ anywhere pays with tumbles; Top-Rope Slam turns a whole row + column into one high symbol, double slams leave x2–x5 cross wilds multiplying every win of the spin; Chair Shot wild reels; Mask Off pick game; Main Event / Tag Team / Championship Belt bonuses, Slam Hunt 3×, Top Rope 10× and three buys, win cap 20,000×
gutter-kong Gutter Kong Slot: 6×5, 20 fixed lines; a Strike Ball rolls a row from reel 1, upgrades every symbol a tier and flips pins into pin coins paid at the gutter; Pinhead's heckle; 10-pin Bonus Frame mini-game (strike ×10 / spare ×3); League Night / Perfect Game / Kong Bowl bonuses, Gutter Hunt 3×, Strike Spins 4× and three buys, win cap 12,500×
short-fuse Short Fuse Live crash: four risk modes, ladder exits, stash half, pad-fizzle shield, 98% RTP
skyline-jet Skyline Jet Live crash (skin of Short Fuse): same modes and math, jet over the city
riptide Riptide Turn-based ride: the value rises and falls with the tide, exact odds of both outcomes shown before every wave, cash out any time, 97% RTP on every strategy
crush-depth Crush Depth Turn-based dive (skin of Riptide): same math, diver on a sea scooter
coin-flip Coin Flip Instant heads/tails, 1.98×
test-game Integration Test Game Certification tool, not for players

The live list, with descriptions and thumbnails, is always GET /api/games (Section 1a). Every game supports free spins and the progressive bonus module. RTP is set per game within your contracted range (80–99%, default per game); GET /api/v1/games returns the RTP you run.

Stateful games (Mines, Streak Flip, Ascent, Constellation, Jaws of Fortune, Nuke Nope! and others) keep a round open across several player actions until the player cashes out or busts. Only one open round per player session. The round record shows the full board and every action, for dispute resolution.

New games are announced with their game_code, RTP range and volatility before release. Per-game bet limits (min and max bet) are yours to set in the portal; max win is set per contract. Bets outside the limits are rejected in-game with BET_LIMIT, never silently clamped.

test-game is a bare page that drives every wallet operation with a visible request and response log. Use it for certification and disable it in production from the portal's Games page.

1a. Games catalog (build your lobby)

Public, no auth. Safe to call straight from a lobby page:

GET https://api.foxreelstudio.com/api/games?operator=<your-operator-code>

200 → {
  "provider": "Fox Reel Studio",
  "count": 19,
  "games": [
    {
      "code": "dice",
      "title": "Dice",
      "description": "Roll over or under your target …",
      "category": "instant",
      "thumbnail": "https://lockeandcrow-games.s3.eu-west-1.amazonaws.com/thumbnails/dice.jpg",
      "rtp_default": 99.0,
      "features": ["provably-fair", "auto-bet", "free-spins"],
      "launch_code": "dice"
    }
  ]
}

Signed, from your backend. GET /api/v1/games returns the same games plus your rtp, min_bet, max_bet and max_win per game. Sign it like any other API call, with an empty body (Integration Guide §4 and §5a).

2. Launching a game

Your backend (never the browser — the call is HMAC-signed) requests a launch URL, then your frontend opens it:

POST /api/v1/launch          (signed; see Integration Guide §4)
{
  "player_id":  "your-stable-player-id",
  "game_code":  "dice",
  "currency":   "USD",          // optional, defaults to account currency
  "lang":       "en",           // optional
  "brand_code": "lucky-red"     // optional, if brands are registered
}

200 → { "status": "OK", "url": "https://…/launch/<token>" }

Rules:

3. Embedding

Open the launch URL as a full-page redirect or inside an iframe:

<iframe
  src="{launch_url}"
  style="width:100%; height:100%; border:0"
  allow="fullscreen"
></iframe>

4. Money display

All amounts on the wire are integer minor units (cents). In-game the player sees decimal amounts in the session currency. The balance shown in the game is authoritative from the wallet:

5. Free spins in games

When you award free spins (POST /api/v1/freespins/award, Integration Guide §7b) for a game, the game automatically:

  1. shows the player their remaining free spins and the fixed bet size,
  2. consumes spins before real money — no wallet debit occurs,
  3. credits wins through the normal wallet path.

No frontend work on your side. Awards are per-player per-game; unused spins expire at expires_at if set.

With the progressive bonus module ("mode": "bonus", Integration Guide §7b) every game additionally shows a gift icon in its top bar with a bonus drawer: claim popover on entry, remaining free bets and pot during play, wagering progress bar, rules ("Bonus Rules" info button) and the "Get bonus money" collect step. All of it lives inside the game iframe.

6. Provably fair (what to tell your players)

Every game is provably fair. In the game footer players can:

You may link to the verifier from your own fairness page. Each game's rules screen states how rolls map to outcomes (coin flip: roll < 50 = heads).

For disputes: give us the round_id (returned in every bet response and visible in the portal under Rounds). We can produce the complete round record — bet, win, roll, nonce, seeds — for any round, indefinitely.

7. In-game statuses your support team may hear about

Player experience Cause Who acts
"Insufficient funds" Wallet balance below bet Player deposits with you
"Bet limit" Bet outside your min/max You (portal, Games page)
"Limit reached" Player hit their daily loss limit (§7c) Player-set / RG policy
"Game unavailable" Game disabled on your account, or withdrawn You (portal, Games page) or Fox Reel Studio
"Session expired" 4h (or RG cap) elapsed Relaunch

8. Per-game certification checklist

Run on staging for each game before it is enabled in production:

When the checklist passes, enable the game in production from the portal's Games page, or ask us at [email protected].