A basement room behind a jazz club at two in the morning. Twenty objects land on a five-by-four table and ten lines pay from the left. When a Wild grows to fill its reel, someone steps onto it and puts ×2 to ×50 on every line that runs through it.
After Hours is a five-reel slot on the same server-authoritative core as the other titles. Four rows, ten lines read left to right, and one stake covers them all. The Wild stands in for everything, the Black Diamond included, and when filling its reel would pay more than the table as it lies, every Wild reel grows and a multiplier of ×2 to ×50 goes on each line through it. Four Bonus signs open free spins in which a Wild holds its reel. RTP is 96.5% on an ordinary press, and a round pays at most 1,500× the stake.
Set the stake and press SPIN. The whole round, free spins included if it opens them, is settled on the server before the first reel stops, and the client only plays it back. The reels stop in a ratchet from the left, and each of the ten lines is read from the first reel: three, four or five of an object in a row pay its row on the bill, and the further the run goes, the more it pays.
A Wild stands in for any object and joins the run beside it. When one lands, the table with that whole reel filled is priced next to the table as it landed, and the round pays the better of the two. If the grown table wins, every Wild reel fills at once, the wolf behind the bar makes his pass, and someone steps onto the reel: her at ×2 or ×3 most nights, him at ×5, ×8 or ×10, the two of them at ×15, ×25 or ×50. The multiplier goes on every line whose run passes through a grown reel. There is no failure case.
Four Bonus signs, one to a reel, open ten free spins, and all five open twelve. In the bonus a Wild holds its reel for every spin left, the first Wild's tier holds for the run, and a Level Up landing on a held reel moves that tier up a step. Three signs in a free spin add two more spins, four add five, five add eight, as often as they come. Every feature has its price on the sheet, from a doubled trigger at ×1.40 to the bonus itself at ×300.

Balance on the left, the TAKE in the centre, the sign over the table, and the wolf behind the bar. Stake, SPIN and BUY BONUS sit under the display, and the cost line under the button says exactly what the press debits.

A Wild landed on reel two, and filling that reel paid more than the table as it lay, so it grew top to bottom and the two of them stepped onto it at ×50, the top of the bill's multipliers. The sign reads the same figure: it goes on every run through that reel.

Three lines pay on one table, one of them five in a row, through a grown first reel with her on it at ×3. A line is read from the first reel, three, four or five in a row pay the object's row on the bill, and each of the ten lines is priced on its own before the take is summed.

The overlay waits for the player's press, the one input a round ever takes, and it explains the bonus with the game's own art: a Wild holds its reel, the Level Up raises the tier from bronze to silver to gold, and the multiplier is the tier's.

Free spin eight of twelve. Reel two holds a Wild and carries a HELD tag, and a Level Up has just landed on it, so the bonus's tier climbs a step, from her to him. Neither symbol pays on a line, and the sheet says so.

Wins past 10× the stake take over the screen and the figure climbs one tier at a time: A Big Take at ×10, A Grand Take at ×25, The Room Stands at ×60, The House Pays at ×150 and The Night Of Nights at ×400. The roll is presentation of a settled figure, and SKIP lands it at once.
Every round is committed before it opens and verifiable after it ends. Operators do not have to take our word for it, and neither do their players.
Before a round opens, the server publishes sha256(server_seed). That hash pins the crash point in place before the first bet is taken.
The round runs. crash_at derives from HMAC-SHA256(server_seed, client_seed:nonce), so neither side can steer the outcome mid-round.
After the bust, the server reveals server_seed. Anyone can rehash it, recompute crash_at, and confirm both match the record.
THE REFERENCE VERIFIER AND FULL DERIVATION SHIP WITH THE INTEGRATION DOCS.
$ rara verify --game afterhours --round 001042 # hash published before bets opened server_seed_hash sha256:9f2c71a84be…c30be81a client_seed afterhours-demo-7f3a nonce 001042 hmac = HMAC_SHA256(server_seed, client_seed + ":" + nonce) = 7c2e4d09aa61b8e2…10f4b90f h = int(hmac[0:8], 16) crash_at = max(1.00, floor(99 * 2^32 / (h + 1)) / 100) = 3.47x $ rara reveal --game afterhours --round 001042 server_seed 4b7dd21c09aae5…f133c2e9 sha256(server_seed) == server_seed_hash ok recompute(crash_at) == 3.47x ok verify == true
RaRa Studio is an independent game studio in Tbilisi, Georgia. Every title starts as a model: simulated, stress-tested, and documented before the art goes in. Spec sheets and verifiers are part of the product, and Vice Run is the first title through the pipeline.
Integration docs, the full math spec, and playable builds are available under NDA to operators, aggregators, and platforms.