back
visitor@sol-core:~$ls ./game-engines/

Game Engines

The game types organized by category — plus the code-relevant spots for integration & extension.

engines/instant.ts

Instant-Games

One click, instant result. Pure RNG, no intermediate state.

Coin Flip

You choose

Pick heads or tails, set your bet — one click.

What can happen

Right side: bet times ~1.96x (set by the game). Wrong side: bet lost.

Max payout

~1.96xLoss: 0x · winMultiplierBps (default 1.96x)

Dice

You choose

Pick a target number in the game's range (default 0–99.99) and bet over or under it.

What can happen

Hit: the riskier your pick, the higher the multiplier (small chance = big win). Miss: bet lost.

Max payout

~97x at 1% win chanceLoss: 0x · (1-edge)/winChance

Plinko

You choose

Drop the ball — or several at once if the game allows multi-shot (1/3/10/100 balls); rows and risk profile are set by the game.

What can happen

Each ball lands in a multiplier slot: edges pay big, the middle pays small — sometimes less than the bet. With several balls, each one resolves independently.

Max payout

~26x at high riskLoss: 0.2x-ish middle slots · edge slot of the paytable (rows/risk), per ball

Limbo

You choose

Set a target multiplier (e.g. 5x) — that's all.

What can happen

The round draws a number: at or above your target you win exactly your target, below it the bet is lost.

Max payout

up to level cap, e.g. 20x–1000xLoss: 0x · your target (capped by creator level)

Wheel

You choose

Spin the wheel — segments and odds are set by the game.

What can happen

One segment wins: each has its own multiplier, from 0x up to the game's top segment.

Max payout

creator-defined, e.g. 10x–50xLoss: 0x · top segment of the creator's paytable

Keno

You choose

Pick numbers from the game's pool.

What can happen

Numbers are drawn: the more of yours hit, the higher the payout — few hits pay nothing.

Max payout

biggest when all your picks hitLoss: 0x · paytable top tier (all picks hit), scaled to target RTP

Scratch

You choose

Buy a ticket — no choices needed.

What can happen

A prize from the game's prize table is revealed — from blank (bet lost) to the jackpot.

Max payout

creator-defined, e.g. 50xLoss: 0x · top prize of the creator's paytable

FortuneComing soon

— in preparation —

Custom SDKComing soon

— in preparation —

code: engine.settleInstant() · single HMAC draw

engines/interactive.ts

Interactive-Games

Multi-stage player decisions before resolution (cash-out moments).

Mines

You choose

Reveal tiles on the grid (size set by the game, default 5×5) — one per step, or pre-picked in a single bet.

What can happen

Every safe tile raises the multiplier; cash out any time. Hit a mine and the bet is lost.

Max payout

grows per safe pick; all safe tiles = auto-cashoutLoss: 0x · (1-edge)·prod(remaining/(remaining-mines)) per pick

Towers

You choose

Pick one column per floor (2–4 columns, set by the game — most run 3; the count can vary per floor). One column per floor hides a bomb.

What can happen

Every safe floor multiplies your bet; cash out any time. Hit the bomb and the bet is lost. Reach the top floor for the maximum.

Max payout

~x28 at 3 columns / 8 floorsLoss: 0x · (1-edge)·(columns/(columns-1))^levels

Pump

You choose

Pump the balloon — one button, again and again.

What can happen

Every pump grows the multiplier; cash out any time. The balloon bursts at a hidden point — then the bet is lost.

Max payout

~x16 at 1.15 growth / 20 pumpsLoss: 0x · growth^maxPumps

Hi-Lo

You choose

Guess if the next card (range set by the game, default 1–13) is higher or lower than the current one.

What can happen

Right guess: the multiplier grows (long-shot guesses grow it more); cash out any time. Wrong or tie: bet lost. The chain ends at the game's step limit.

Max payout

grows per correct guess, up to the game's step limitLoss: 0x · (1-edge)/winChance per step, compounding

Dice Ladder

You choose

Two dice (default) are rolled — guess whether the next roll's sum is higher or lower (optionally “exactly the same”). Unlike cards, sums are not equally likely: the middle comes up often, the edges rarely.

What can happen

Every correct guess grows the multiplier — the unlikelier the guess, the more it pays; cash out any time. Wrong or a tie loses the bet. The chain ends after the game's step limit.

Max payout

~x34.9 per step at 2 dice / 6 facesLoss: 0x · (1-edge)·faces^dice per step, compounding across steps

code: engine.stepState() · multiplier curve · commit per step

engines/table.ts

Table-Games

Classic table games with rule sets (cards/wheel), evaluated server-side.

Roulette

You choose

Place a classic bet: red/black, odd/even, 1–18/19–36, dozen, column or a single number.

What can happen

Fixed classic payouts: even-money bets pay 2x, dozen/column 3x, single number 36x. Miss: bet lost.

Max payout

36x on a single numberLoss: 0x · 36x (straight); RTP 97.3% (European) / 94.7% (American)

BlackjackComing soon

— in preparation —

code: rules/*.ts · deterministic evaluation

engines/slot.ts

Slot-Games

Reels with paytable & RTP configuration. Symbols are mapped from the draw.

Slots 3×3

You choose

Spin the reels — one bet, no other choices.

What can happen

The centre line decides: three equal symbols pay their triple value, two equal pay the pair value, otherwise the bet is lost.

Max payout

creator-defined, e.g. 25x–100xLoss: 0x · top triple of the creator's reel

Slots Modular

You choose

Spin the reels — one bet, no other choices.

What can happen

Up to 20 paylines pay 3/4/5-of-a-kind left-to-right (wild substitutes); 3+ scatters pay anywhere and can trigger free spins with a fixed multiplier (capped), when configured. All hits from one spin sum — otherwise the bet is lost.

Max payout

reference config: ~308x (conservative bound)Loss: 0x · lineCount·maxLinePay + scatterMax (conservative bound)

Slots 5×3Coming soon

— in preparation —

code: reelmap[] · paytable[] · RTP config

engines/pvp.ts

PvP-Games

Player versus player, pool from bets, the platform only takes the fee.

PvP CoinComing soon

— in preparation —

code: match/*.ts · escrow · winner-take-pool