Blackout Casino

Uma noite em Vegas.Dentro do seu servidor.

Uma experiência imersiva com jogos, economia integrada e atmosfera de cassino real.

Um cassino inteiro dentro do GTA RP, jogos, economia e a prova de cada jogada.

Dentro do jogoSuíte ou jogo avulsoPortuguês e inglês

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind CSS
  • Framer Motion
  • Lua
  • FiveM NUI
  • SQL
Blackout Casino

Uma noite em Vegas.Dentro do seu servidor.

Uma experiência imersiva com jogos, economia integrada e atmosfera de cassino real.

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind CSS
  • Framer Motion
  • Lua
  • FiveM NUI
  • SQL

Um cassino inteiro dentro do GTA RP, jogos, economia e a prova de cada jogada.

Dentro do jogoSuíte ou jogo avulsoPortuguês e inglês

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind CSS
  • Framer Motion
  • Lua
  • FiveM NUI
  • SQL

O que é

Um cassino de luxo, dentro do GTA RP.

O painel abre por cima da cidade, o jogador escolhe a mesa, o servidor decide a rodada e o prêmio volta para o saldo, na moeda do próprio servidor, sem sair do jogo.

  1. 01O painel abre no jogo
  2. 02O jogador escolhe a mesa
  3. 03O servidor decide a rodada
  4. 04O prêmio volta ao saldo

A escala

Por trás do luxo, engenharia de verdade.

Contado no código do produto: interface, servidor, ponte com o jogo e banco.

130.305

linhas de código

  • TypeScript
  • JavaScript
  • Lua
  • SQL
Interface
Next.js 16, React 19 e TypeScript: o lobby, as mesas, a verificação e os painéis de administração.
Servidor
JavaScript: regras, saldo, prêmio e auditoria de cada jogo, decididos longe da tela do jogador.
Ponte com o jogo
Lua: abre o cassino dentro do FiveM e conversa com o framework do servidor.
Banco
SQL: transações, rodadas, sementes e registros de auditoria, separados por jogo.

22

jogos no catálogo

  • Cassino
  • Arcade
  • PvP
  • Loja
  • Eventos
Cassino
Roleta, vinte e um, pôquer, dados, roleta brasileira, bingo e sinuca.
Arcade
Crash, caça-níquel, campo minado, plinko e jogo do bicho.
PvP
Batalha das caixas, cara ou coroa e jackpot.
Loja e Eventos
Caixas, upgrade, mercado e inventário; loteria, bônus diário e sorteios.

Cada jogo chega com identidade completa: card, logo em português e inglês, versão dourada e vídeo de abertura.

Como o cassino é entregue

A suíte inteira ou só os jogos que o servidor quer.

Suíte completa

Todos os jogos, administrados de um painel central.

  • Um login para a administração inteira
  • Configuração e auditoria de todos os jogos num lugar só

Jogo avulso

Só os jogos escolhidos, cada um com o seu próprio painel.

  • Painel, login e registro de auditoria por jogo
  • Abrir um painel não dá acesso aos outros
  • Um jogo novo entra sem mexer nos que já estão
  • Cena em vídeo em cada jogo

    Cada jogo abre com uma cena própria: a máquina acende, a mesa entra em quadro. O salão tem a luz e o som de um cassino de verdade.

  • Funciona no framework do servidor

    A ponte em Lua reconhece o framework do servidor e usa o adaptador certo. O mesmo pacote serve a todos eles.

    • vRP
    • ESX
    • QBCore
    • QBox

Provably fair

Ninguém precisa confiar. Dá para conferir.

Nos jogos do cassino, cada jogada traz a prova de que o resultado foi travado antes da aposta, e de que ninguém mexeu nele depois. É matemática, não promessa: quem confere é o próprio jogador.

  1. Antes da aposta

    O servidor tranca o resultado

    O servidor sorteia uma semente secreta e mostra só a impressão digital dela, o hash SHA-256. A partir daí ela não pode mudar: qualquer troca mudaria a impressão.

  2. Na aposta

    O jogador entra com a semente dele

    O jogador escreve a própria semente, ou fica com a que recebeu, e cada jogada ganha um número de ordem, o nonce. O servidor não decide sozinho.

  3. Na jogada

    As duas sementes viram o resultado

    O código da jogada sai do HMAC-SHA256 da semente do servidor com a semente do jogador e o nonce. É esse código que o jogo lê como carta, bola ou multiplicador.

  4. Na troca da semente

    A semente secreta é revelada

    Quando o jogador troca de semente, o servidor revela a anterior. O SHA-256 dela tem de ser a impressão mostrada antes, e com ela o jogador refaz todas as jogadas.

Recibo de uma jogada

código = HMAC-SHA256(semente do servidor, semente do jogador + nonce)

…

Confira você mesmo

A conta acontece aqui, no seu navegador. Faça algumas jogadas, troque a semente para revelá-la e depois mude um caractere dela: a prova falha na hora.

Compromisso · SHA-256 da semente do servidor…
Nonce#0
Jogadas desta semente

Nenhuma jogada ainda.

A janela Provably Fair da sinuca, com compromisso, semente do jogador e nonce
Dentro do produto, na sinuca: o compromisso antes do jogo, a semente do jogador, o número da jogada e a troca que revela a semente. Há também a aba para verificar jogadas antigas.
  • Prova em cada jogadaToda jogada verificável carrega o compromisso, as duas sementes e o nonce. O jogador confere o resultado sozinho, sem pedir nada a ninguém.
  • A mesma conta dos dois ladosO navegador do jogo e o servidor chegam ao mesmo resultado, byte a byte, com uma criptografia feita para rodar dentro do FiveM.
  • Auditoria que ficaCada semente revelada é arquivada no banco. Qualquer jogada antiga pode ser refeita e conferida, a qualquer momento.

Multiplayer

Não é jogo solo. É uma mesa cheia.

O cassino junta os jogadores do servidor na mesma mesa, e a mesa mora no servidor. Cada aposta, cada vez e cada resultado passam por ele: ninguém joga uma partida diferente da do vizinho.

  • Salas e mesas

    Salas e mesas compartilhadas

    O jogador cria a sala ou entra numa que já está aberta, escolhe o valor de entrada e espera os outros chegarem. O mesmo lobby serve aos jogos de mesa do cassino.

    • Criar sala
    • Entrar numa aberta
    • Valor de entrada
  • Partida sincronizada

    Todos veem a mesma jogada

    A vez de cada um, a jogada e o resultado passam pelo servidor e chegam iguais a toda a mesa. Na sinuca, a partida mais exigente, com física própria, o servidor refaz a tacada para conferir o resultado.

    • O servidor decide
    • Turno a turno
    • Resultado conferido
  • Do solo ao PvP

    Cada jogo no modo que ele pede

    Sozinho contra a casa, treino contra a máquina ou partida contra outros jogadores: o cassino tem os três, e cada jogo usa o que faz sentido para ele.

    • Solo
    • Contra a máquina
    • Jogador contra jogador

Tudo na moeda do servidor, quem define é o dono do servidor.

Por que é sistema

Seis decisões separam um cassino de uma tela bonita.

Nenhuma delas é efeito visual. São escolhas de engenharia lidas no código do produto.

  1. Resultado

    Calculado na tela≠Decidido no servidor

    A interface só mostra. Saldo, aposta, rodada e prêmio são decididos pelo servidor, e cada transação fica registrada.

    Servidor › transações
  2. Confiança

    Confie em mim≠Confira você mesmo

    O servidor publica o hash da semente antes da rodada e revela a semente depois: o jogador confere.

    Verificação da rodada
  3. Jogos

    Uma regra para todos≠Uma engine por jogo

    Cada jogo tem engine, tipos, tela e painel próprios. Um jogo novo entra sem mexer nos outros.

    Módulo de cada jogo
  4. Onde roda

    Um site à parte≠Dentro do jogo

    O cassino abre como painel flutuante sobre o GTA RP: o jogador entra, aposta e sai sem deixar a cidade.

    NUI do FiveM
  5. Servidor

    Um framework só≠Qualquer servidor

    A ponte em Lua detecta o framework e usa o adaptador de vRP, ESX, QBCore ou QBox.

    Ponte Lua
  6. Administração

    Uma senha para tudo≠Um cofre por jogo

    Login e auditoria separados por jogo, e senha administrativa que se renova sozinha, com teste próprio.

    Painel de cada jogo

As tecnologias

Do que é feito, peça por peça

O cassino tem duas metades: as telas que o jogador vê por cima do jogo e o servidor que decide cada rodada, longe da mão dele. Escolha uma peça para ver o que ela faz aqui e em que arquivo está.

15tecnologias, em 4 camadas

Tela

Servidor

Dados

Jogo

Dentro do jogo

Por dentro do cassino, tela por tela.

24 capturas do produto rodando: os cinco salões do lobby, a abertura cinematográfica de cada jogo, a partida em andamento e a janela que prova cada resultado. É o que o jogador vê, sem maquete.

O cassino · Abertura
Abertura

Tela 1 de 10: Abertura

Protótipo

Jogue antes de instalar. Direto no navegador.

Quatro jogos do cassino abertos para quem quiser sentir de perto: o mesmo painel, as mesmas regras e as mesmas cenas de abertura, rodando no navegador, sem servidor e sem instalar nada.

  • Roda no navegador, sem instalar e sem servidor
  • Carteira de demonstração com as mesmas taxas do painel no FiveM
  • Fichas de demonstração: nada de dinheiro real

Protótipo pronto

Jogo do Bicho

Escolha os animais, monte o bilhete na mesa e acompanhe o sorteio.

Tela cheia

O protótipo é uma demonstração: as fichas são de mentira e o saldo fica só neste navegador.