SPB Git forge

spb/spinza

Public
8commits 1branches 0releases
1.6 MBsize
maindefault branch
16 days agolast push
TypeScript 97.6% SQL 1.4% JavaScript 0.5%
3.9 KB · 71 lines typescript
Raw Blame History
1import { LINES_20, defineGame, scatterSym, sym, wildSym } from "@spinza/game-core";23/**4 * GAME 12 — ROYAL CIRCUIT5 * Luxury motorsport. 5×3, 20 paylines, Race Laps meter that opens the Pit-Stop6 * Bonus, Turbo wilds with a ×2/×3 boost, Chequered Flag free spins.7 */8export const royalCircuit = defineGame({9  slug: "royal-circuit",10  name: "Royal Circuit",11  version: "1.0.0",12  tagline: "Eight laps to the pit lane. Boost on every straight.",13  description:14    "Gold-trimmed hypercars scream around a night circuit built for royalty. Turbo Wilds carry a ×2 or ×3 boost that multiplies every line they complete, and each Lap Counter you collect moves you round the track; eight laps bring you into the Pit-Stop Bonus for three reveals worth up to 20× the bet each. Chequered Flags start the free spins.",15  theme: "luxury motorsport",16  tags: ["lines", "meter", "bonus", "multiplier-wilds", "free-spins"],17  grid: { reels: 5, rows: 3 },18  payModel: { type: "lines", lines: LINES_20 },19  rtp: 0.96,20  volatility: "medium",21  maxMultiplier: 3000,22  symbols: [23    wildSym("W", "Turbo Wild", [0, 1.8, 1.8, 1.8, 0], { shape: "bolt", color: "#ffd166", accent: "#ef4444", glow: 1 }),24    scatterSym("S", "Chequered Flag", 1.3, { shape: "flag", color: "#f8fafc", accent: "#111827", glow: 0.9 }),25    sym("LAP", "Lap Counter", "special", null, 0.9, { shape: "gauge", color: "#22d3ee", accent: "#ffffff", glow: 0.8 }, { kind: "charge" }),26    sym("P1", "Royal Hypercar", "premium", { 3: 60, 4: 225, 5: 750 }, 2.6, { shape: "crown", color: "#ffd166", accent: "#fff7d6", glow: 0.9 }),27    sym("H1", "Champion Helmet", "high", { 3: 30, 4: 90, 5: 300 }, 3.8, { shape: "helmet", color: "#ef4444", accent: "#fecaca", glow: 0.6 }),28    sym("H2", "Gold Trophy", "high", { 3: 22, 4: 75, 5: 225 }, 4.2, { shape: "trophy", color: "#f59e0b", accent: "#fef3c7", glow: 0.6 }),29    sym("M1", "Racing Tyre", "mid", { 3: 15, 4: 45, 5: 150 }, 5.5, { shape: "wheel", color: "#374151", accent: "#9ca3af", glow: 0.3 }),30    sym("M2", "Fuel Can", "mid", { 3: 12, 4: 38, 5: 120 }, 6, { shape: "barrel", color: "#10b981", accent: "#d1fae5", glow: 0.3 }),31    sym("L1", "Pit Wrench", "low", { 3: 7.5, 4: 22, 5: 75 }, 9, { shape: "valve", color: "#fbbf24", accent: "#fff7ed" }),32    sym("L2", "Traffic Cone", "low", { 3: 7.5, 4: 22, 5: 75 }, 9, { shape: "warning", color: "#ef4444", accent: "#ffffff" }),33    sym("L3", "Stopwatch", "low", { 3: 6, 4: 18, 5: 60 }, 10, { shape: "hourglass", color: "#22d3ee", accent: "#ffffff" }),34    sym("L4", "Grid Marker", "low", { 3: 6, 4: 18, 5: 60 }, 10, { shape: "code", color: "#e5e7eb", label: "P1" }),35  ],36  betDivisor: 20,37  wild: { id: "W", multiplier: { values: [2, 3], weights: [70, 30], combine: "multiply" } },38  scatter: { id: "S", triggers: { 3: 8, 4: 12, 5: 15 }, retrigger: true },39  meter: {40    id: "laps",41    name: "Race Laps",42    symbolId: "LAP",43    max: 8,44    onFull: { type: "pickBonus", bonusId: "pit-stop", label: "Pit-Stop Bonus" },45  },46  pickBonuses: [47    {48      id: "pit-stop",49      name: "Pit-Stop Bonus",50      cells: 8,51      picks: 3,52      prizes: { values: [1, 2, 3, 5, 10, 20], weights: [30, 25, 20, 15, 8, 2] },53    },54  ],55  presentation: {56    palette: { primary: "#ffd166", secondary: "#ef4444", glow: "#22d3ee", bg: "#07070a", surface: "#131318" },57    particles: "sparks",58    ambience: "race",59    frame: "carbon",60    backdrop: "track",61  },62  rules: [63    "Wins pay left to right on 20 fixed paylines, highest win per line.",64    "The Turbo Wild substitutes for every symbol except Chequered Flags and Lap Counters (reels 2–4) and carries a ×2 or ×3 boost; boosts on the same line multiply together.",65    "Every Lap Counter that lands adds one lap to the Race Laps meter. At 8 laps the Pit-Stop Bonus opens: 3 reveals from 8 cells worth 1× to 20× the bet.",66    "The lap meter keeps its progress between rounds and during free spins.",67    "3, 4 or 5 Chequered Flags award 8, 12 or 15 free spins with retriggers.",68    "Maximum win per round: 3,000× the bet.",69  ],70});71