TypeScript 97.6%
SQL 1.4%
JavaScript 0.5%
1import { defineGame, scatterSym, sym, wildSym } from "@spinza/game-core";23/**4 * GAME 18 — REEL REACTOR5 * Nuclear energy lab. 5×3, 243 ways, Heat meter that rises on losing spins,6 * boosts the multiplier by band and triggers Meltdown spins at 100.7 */8export const reelReactor = defineGame({9 slug: "reel-reactor",10 name: "Reel Reactor",11 version: "1.0.0",12 tagline: "Every dead spin heats the core.",13 description:14 "Run a reactor that thrives on bad luck. Every non-winning spin adds heat and every win bleeds a little off; as the gauge climbs through its bands your wins are multiplied ×2, ×3 and ×5, and at 100 the core melts down into six Meltdown spins at ×3. Fusion Wilds carry their own ×2 or ×3 boost and Control Rods trigger regular free spins.",15 theme: "nuclear energy lab",16 tags: ["ways", "heat-meter", "multiplier-wilds", "free-spins"],17 grid: { reels: 5, rows: 3 },18 payModel: { type: "ways" },19 rtp: 0.96,20 volatility: "high",21 maxMultiplier: 5000,22 symbols: [23 wildSym("W", "Fusion Wild", [0, 2, 2, 2, 0], { shape: "atom", color: "#a3e635", accent: "#ffffff", glow: 1 }),24 scatterSym("S", "Control Rod", 1.2, { shape: "gauge", color: "#facc15", accent: "#ffffff", glow: 0.9 }),25 sym("P1", "Reactor Core", "premium", { 3: 18, 4: 54, 5: 180 }, 2.8, { shape: "orb", color: "#22c55e", accent: "#dcfce7", glow: 0.9 }),26 sym("H1", "Uranium Cell", "high", { 3: 12, 4: 30, 5: 90 }, 3.8, { shape: "barrel", color: "#a3e635", accent: "#ecfccb", glow: 0.6 }),27 sym("H2", "Plasma Coil", "high", { 3: 9, 4: 24, 5: 72 }, 4.2, { shape: "valve", color: "#38bdf8", accent: "#e0f2fe", glow: 0.6 }),28 sym("M1", "Cooling Tower", "mid", { 3: 6, 4: 15, 5: 42 }, 5.5, { shape: "drill", color: "#94a3b8", accent: "#e2e8f0", glow: 0.3 }),29 sym("M2", "Hazard Sign", "mid", { 3: 4.8, 4: 12, 5: 30 }, 6, { shape: "warning", color: "#facc15", accent: "#111827", glow: 0.3 }),30 sym("L1", "Isotope Alpha", "low", { 3: 2.4, 4: 6, 5: 15 }, 9, { shape: "letter", color: "#4ade80", label: "α" }),31 sym("L2", "Isotope Beta", "low", { 3: 2.4, 4: 6, 5: 15 }, 9, { shape: "letter", color: "#facc15", label: "β" }),32 sym("L3", "Isotope Gamma", "low", { 3: 1.8, 4: 4.8, 5: 12 }, 10, { shape: "letter", color: "#38bdf8", label: "γ" }),33 sym("L4", "Isotope Delta", "low", { 3: 1.8, 4: 4.8, 5: 12 }, 10, { shape: "letter", color: "#fb923c", label: "δ" }),34 ],35 betDivisor: 25,36 wild: { id: "W", multiplier: { values: [2, 3], weights: [75, 25], combine: "multiply" } },37 scatter: { id: "S", triggers: { 3: 8, 4: 10, 5: 12 }, retrigger: true },38 heat: {39 max: 100,40 gainOnLoss: 6,41 gainOnWin: -3,42 ladder: [1, 1, 2, 2, 3, 5],43 bandSize: 20,44 meltdown: { spins: 6, multiplier: 3, label: "Meltdown" },45 },46 presentation: {47 palette: { primary: "#a3e635", secondary: "#facc15", glow: "#22c55e", bg: "#050a04", surface: "#0c160a" },48 particles: "energy",49 ambience: "reactor",50 frame: "metal",51 backdrop: "reactor",52 },53 rules: [54 "Wins pay left to right on adjacent reels across 243 ways.",55 "The Fusion Wild substitutes for every symbol except the Control Rod (reels 2–4) and carries a ×2 or ×3 boost; boosts in the same win multiply together.",56 "Every non-winning spin adds 6 heat; every winning spin removes 3. Heat is kept between rounds.",57 "Heat bands multiply all wins: 0–39 ×1, 40–79 ×2, 80–99 ×3.",58 "At 100 heat the core melts down: 6 Meltdown spins at ×3, then the gauge resets to 0.",59 "3, 4 or 5 Control Rods award 8, 10 or 12 free spins with retriggers.",60 "Maximum win per round: 5,000× the bet.",61 ],62});63