• CasinoSportsMarkets
  • CASINO
      FavouritesRecent
        RacesNEW
        Gift
        Table ClassicsCrash & MultiplierStreak & RideInstantSlots
    • Journal
        All ArticlesMath of LuckJapan & History
    • Support
        FairnessAffiliateVIP ClubHelp Center
    • About Us
        CorporationPrivacy PolicyAML PolicyTerms of ServiceResponsible GamingSports Betting Rules
    CASINO SPORTS MARKETS
    VIP Club
    🍪
    We use cookies to improve your experience.
    By using our website, you agree to our use of cookies.
    JOURNAL › GAME NOTES
    遊 GAME NOTES花

    Designing Hanabi: a slot whose free spins build ×1, ×2, ×3, ×5 — and what its source file admits

    Illustration for “Designing Hanabi: a slot whose free spins build ×1, ×2, ×3, ×5 — and what its source file admits”
    Hanabi (花火) is a 5×3, ten-line festival slot whose every reel stop is one weighted draw from the committed seed pair. The nine symbols carry weights of 3, 2, 4, 5, 6, 8, 9, 12, 12 (61 in total), so a 祭 scatter lands on any given cell with probability 2/61 and three or more of them on a base spin — the free-spin trigger — happens on about 1 spin in 84, which is the “≈ 1 in 83” the engine header measured. The feature starts at 10 free spins, retriggers add 4 up to a cap of 22, and the win multiplier climbs through the feature: spins 1–2 pay ×1, 3–4 pay ×2, 5–7 pay ×3, and every spin from the eighth onward pays ×5. A round can never return more than ×2,000 the total bet. The header states the calibrated return as 96.1% with a 33.5% hit rate; those two figures come from the engine’s own three-million-round simulation, not from this article.
    BETKYO RESEARCHPUBLISHED 2026-09-03UPDATED 2026-09-269 MIN READHOW WE VERIFY →
    CONTENTS
    Nine numbers decide everythingOne spin in eighty-fourThe ladder: why the feature is shaped like a fireworkThe ceiling, and why it is thereWhat you can check, and what you still cannotFAQ

    Nine numbers decide everything

    A video slot is a claim about probability dressed as a machine. On most of them the claim cannot be inspected: the reel strips are proprietary, the weights are proprietary, and the return figure on the help screen is something you take on trust. Hanabi is built the other way round. Its reels are not strips at all — every one of the fifteen cells is an independent weighted draw — and the weights sit in a table at the top of the engine file.

    ENGINE-VERIFIEDhanabi/engine.ts, HANABI_SYMBOLS: 玉 SHELL (wild) weight 3; 祭 MATSURI (scatter) weight 2; 金魚 KINGYO weight 4, pays ×3 / ×10 / ×40 the total bet for 3 / 4 / 5 of a kind (pay100 = [300, 1000, 4000]); 提灯 CHOCHIN weight 5, ×2 / ×6 / ×25; 団扇 UCHIWA weight 6, ×1.5 / ×4 / ×15; 氷 KAKIGORI weight 8, ×1 / ×3 / ×10; 風鈴 FURIN weight 9, ×0.8 / ×2.5 / ×8; 麺 YAKISOBA weight 12, ×0.6 / ×1.6 / ×5; 鈴 SUZU weight 12, ×0.5 / ×1.2 / ×4. WEIGHT_TOTAL is the sum of the weights, 61; symAt(u) walks the table subtracting weights from u × 61.
    What each symbol is worth and how often a cell shows it — straight from the weight table
    SYMBOLWEIGHTCHANCE PER CELL3 / 4 / 5 OF A KIND (× TOTAL BET)
    玉 Shell (wild)34.92%substitutes for any paying symbol
    祭 Matsuri (scatter)23.28%×2 / ×5 / ×20 anywhere, and 3+ start free spins
    金魚 Kingyo46.56%×3 / ×10 / ×40
    提灯 Chōchin58.20%×2 / ×6 / ×25
    団扇 Uchiwa69.84%×1.5 / ×4 / ×15
    氷 Kakigōri813.11%×1 / ×3 / ×10
    風鈴 Fūrin914.75%×0.8 / ×2.5 / ×8
    麺 Yakisoba1219.67%×0.6 / ×1.6 / ×5
    鈴 Suzu1219.67%×0.5 / ×1.2 / ×4

    Chance per cell is weight ÷ 61. Line pays are read left to right on ten fixed lines; the wild counts as any paying symbol and the scatter breaks a line.

    Two things follow from the table that a help screen would never tell you. The rarest paying symbol is not the rarest thing on the reels — the scatter is, at two parts in sixty-one — and the two cheapest symbols together fill almost forty percent of every cell. That is the shape of every slot ever built; the difference is only that here the shape is printed.

    One spin in eighty-four

    Because every cell is independent, the free-spin trigger has a closed form. A cell is a scatter with probability 2/61; a base spin has fifteen cells; the feature starts when three or more of them are scatters. That is a binomial count, and it comes to 1.193% of spins, or one in 83.8.

    Scatter counts on a single base spin, 15 independent cells at p = 2/61
    SCATTERSPROBABILITYROUGHLYWHAT HAPPENS
    060.7%3 spins in 5nothing
    130.9%1 in 3nothing
    27.3%1 in 14nothing — two scatters pay nothing here
    31.075%1 in 93×2 the bet, and 10 free spins
    40.109%1 in 915×5 the bet, and 10 free spins
    5 or more0.0086%1 in 11,600×20 the bet, and 10 free spins

    The three feature rows sum to 1.193%, one spin in 83.8.

    ENGINE-VERIFIEDhanabi/engine.ts header: “Math calibrated by Monte Carlo (3M rounds, scratch harness mirrored this file): RTP 96.1%, hit rate 33.5%, free spins ≈ 1 in 83, win cap ×2000.” The 1-in-83 the engine measured and the 1-in-83.8 derived above from its own weights are the same number; the return and hit-rate figures are quoted from the header and were not recomputed for this article.

    It is worth pausing on that agreement. The engine’s author tuned the game by simulation and wrote the result in a comment. The weights that produced the simulation are in the same file. Anyone with a calculator can check that the two agree, and they do — which is the only reason this article is allowed to repeat the 96.1%. The Journal does not print a return figure the engine does not state, and it does not print one it cannot see the inputs for.

    Correction (2026-09-26). The return turned out to be cheap to check after all. Line wins are additive and every cell is an independent draw, so the expected pay of one line can be summed exactly over all 9⁵ weighted symbol sequences, the scatter pays are a binomial count, and the free-spin ladder is a small Markov chain. The exact return is 95.81%, not the 96.1% the header measured by simulation — three-tenths of a point of Monte Carlo noise. The in-game guide now states the exact figure. Every symbol and the whole feature are priced in Hanabi, priced exactly.

    The ladder: why the feature is shaped like a firework

    A free-spin feature in most slots is a flat bonus: ten spins, maybe a fixed multiplier. Hanabi’s is shaped. The multiplier applied to each free spin depends on which spin it is, and it climbs.

    ENGINE-VERIFIEDhanabi/engine.ts: HANABI_FS_START = 10, HANABI_FS_RETRIG = 4, HANABI_FS_CAP = 22; hanabiFsMult(i) = i < 2 ? 1 : i < 4 ? 2 : i < 7 ? 3 : 5, where i is the 0-based free-spin index; each free spin’s paid100 is its win100 × mult. A spin with three or more scatters inside the feature adds HANABI_FS_RETRIG spins, never past HANABI_FS_CAP.
    The multiplier by free spin, and what a feature is worth in multiplier terms
    FREE SPIN1–23–45–78 and later
    Multiplier on that spin×1×2×3×5
    Sum over a plain 10-spin feature24915 — total 30, an average of ×3.0 per spin
    Sum over a fully retriggered 22-spin feature24975 — total 90, an average of ×4.1 per spin

    A retrigger adds four spins to the end of the feature, where every spin already pays ×5. Retriggers are therefore worth far more than their spin count suggests.

    This is the design decision the game is named for. A firework does not deliver its payload evenly; it climbs, hangs, and ends in the finale. The ladder makes the last spins of a feature the ones that matter, so a feature that runs long is not merely longer but steeper — and a retrigger, which lands in the ×5 zone by construction, is the game’s real jackpot mechanism. A plain feature averages three times a base spin per spin. A maxed one averages more than four, with its last fifteen spins all at five.

    The same ladder is also what makes the feature honest to look at. Because the multiplier is a function of the spin index and nothing else, it cannot be steered: the engine does not decide to be generous, it applies a rule that is printed in one line. That is the same argument Pagoda’s ladder was built on — a climb that is a schedule, not a mood.

    The ceiling, and why it is there

    ENGINE-VERIFIEDhanabi/engine.ts: HANABI_WIN_CAP100 = 200_000 (“×2000 total-bet ceiling”); the round’s totalMult100 is Math.min(total, HANABI_WIN_CAP100) and the round is flagged capped when the raw total exceeded it.

    A ×5 multiplier on a five-of-a-kind kingyo line is already ×200 the bet from one line of one spin, and a fully retriggered feature has fifteen such spins on ten lines. The theoretical top of the distribution is therefore enormous and the cap of ×2,000 exists to make the game’s liability finite. A capped round is rare by construction — it needs the feature, the retriggers and several premium lines to coincide — but the flag is in the settlement so that a player who hits it can see that the cap, not the reels, set the number.

    The cap is the one place where the printed paytable and the paid amount can legitimately disagree, and the engine records the disagreement rather than hiding it. It is also the reason the return figure is quoted as a calibrated 96.1% rather than an exact one: the cap and the retrigger loop make a closed-form return impractical, so the author measured it.

    What you can check, and what you still cannot

    Every round of Hanabi replays from three values: the server seed committed before the bet, your client seed, and the round nonce. Cell k of the base spin is cursor k; free spin j reads cursors 15 + 15j through 29 + 15j. Feed those into the same weighted draw and you get the same grid, the same lines and the same feature, which is what the verification walkthrough does for a simpler game.

    • You can check the grid. Every symbol on every spin of every round is recomputable, and the weight table that produced it is public.
    • You can check the trigger rate. One in 83.8 is a binomial count from the weight table; it does not depend on trusting the header.
    • You cannot cheaply check the return. The 96.1% is a simulation result. The inputs to that simulation are all in the file, so the figure can be reproduced by anyone willing to run three million rounds — but it is a reproduction, not a proof, and the Journal quotes it as the engine’s number.

    That last line is the honest boundary of a design note like this one. A slot can publish its weights, its lines, its ladder and its cap and still owe the player one measured number. Hanabi’s author measured it, wrote it down next to the weights that produced it, and left both where they can be read. Tairyō’s paytable made the same bargain. It is a smaller promise than “fair”, and it is one that can be kept.

    遊Hanabi, with the weights in the source
    Ten lines, a ladder that climbs ×1 to ×5, and every reel stop recomputable from the committed seed
    Hanabi →
    FAQ

    What is the RTP of Hanabi?

    Exactly 95.81%, computed from the weights: 66.17% from line wins, 2.87% from scatter pays and 26.77% from the free-spin feature. The engine header’s 96.1% came from a three-million-round simulation and overstated it by about three-tenths of a point. About 33.5% of spins pay something.

    How often do Hanabi free spins trigger?

    On about one base spin in 84. Each of the fifteen cells is a 祭 scatter with probability 2/61, and three or more scatters on a spin start the feature; that binomial count is 1.193%, matching the engine’s measured “≈ 1 in 83”.

    How does the free-spin multiplier work?

    It depends only on which free spin it is: spins 1–2 pay ×1, 3–4 pay ×2, 5–7 pay ×3, and every spin from the eighth onward pays ×5. A plain ten-spin feature averages ×3 per spin; a fully retriggered 22-spin feature averages ×4.1 with its last fifteen spins all at ×5.

    How many free spins can you get?

    Ten to start; each retrigger (three or more scatters inside the feature) adds four, up to a cap of 22.

    What is the maximum win on Hanabi?

    ×2,000 the total bet. The engine settles the round at the smaller of the raw total and the cap, and flags a round that was capped.

    Can I verify a Hanabi spin?

    Yes. Every cell is one weighted draw from the committed server seed, your client seed and the nonce — base spin cursors 0–14, free spin j cursors 15+15j to 29+15j — using the public weight table, so the whole round replays from those three values.

    SOURCES & REFERENCES
    • Betkyo engine source: hanabi/engine.ts — HANABI_SYMBOLS weights and pays, HANABI_LINES, HANABI_SCATTER_PAY100, HANABI_FS_START / RETRIG / CAP, hanabiFsMult, HANABI_WIN_CAP100, and the header’s Monte Carlo calibration (RTP 96.1%, hit rate 33.5%, free spins ≈ 1 in 83, cap ×2000)
    • Scatter-trigger and per-cell probabilities in this article are exact binomial counts from the weight table (p = 2/61 over 15 cells); the return and hit-rate figures are the engine’s own and were not recomputed
    THE GAMES IN THIS ARTICLE
    Hanabi — rules & free play →Tairyō — rules & free play →
    研Betkyo Research — written by the team that builds these games. Every probability quoted in the Journal is derived from our engine source or a cited reference, never copied from another site. Figures are re-checked whenever the engines change.
    KEEP READING
    遊 GAME NOTES

    Designing Tairyō: what a slot’s paytable is actually promising you

    2026-08-07 · 8 MIN
    心 MIND & RESPONSIBILITY

    The near-miss effect: why almost winning feels like information

    2026-08-31 · 9 MIN
    遊 GAME NOTES

    Designing Pagoda’s ladder: a game with no bad button

    2026-07-24 · 8 MIN

    18+ · PLAY RESPONSIBLY · THE JOURNAL IS EDITORIAL CONTENT, NOT BETTING ADVICE

    Provably-fair original games, made in Tokyo. Play responsibly.
    Betkyo is owned and operated by Shirokane Interactive
    Contact us at support@betkyo.com.
    • YouTube
    • X
    • Instagram
    CCF Foundation · CertificationCCF-2026-0037Verify →CCF Labs · RNG/RTP CertifiedWC-2026-0512Verify →
    CASINO
    LobbyGame GuidesJournal
    SPORTS
    SportsbookLive·UpcomingMy BetsBetting Rules
    MARKETS
    All MarketsBTC ×1000·ETH ×1000SOL ×1000·XRP ×1000BNB ×1000·DOGE ×1000HYPE ×1000·ZEC ×1000XAU ×1000·XAG ×1000XPT ×1000·XPD ×1000COPPER ×1000
    SUPPORT
    FairnessAffiliate·VIP ClubHelp Center
    ABOUT US
    CorporationPrivacy·AMLTerms·Responsible Gaming
    © 2026 BETKYO · 18+····