Foguete do Milhão — Game Design Document (GDD)
Versão: 1.0 Data: 2026-04-03 Mercado: Paraná, Brasil (Regulação Lottopar) Referência Global: Aviator (Spribe) / Crash Game
1. Identificação
| Campo | Valor |
|---|---|
| Nome | Foguete do Milhão |
| Tipo | Crash Game (Exponential Curve) |
| RTP | 90-97% conforme denominação |
| Volatilidade | Extrema |
| Hit Frequency | 55% (alta) |
| Max Win | 1.000x+ |
2. Mecânica Core
2.1 Fluxo do Jogo
1. Foguete aparece na base (1.00x)
2. Multiplicador começa a crescer exponencialmente
1.05x → 1.10x → 1.20x → 1.50x → 2.00x → 3.00x → 5.00x → ...
3. Jogador clica "Sacar" em qualquer momento
4. Se acertou antes do CRASH, ganha multiplicador × aposta
5. Se CRASH antes de sacar, perde tudo
2.2 Curva Matemática
A curva de multiplicador segue função exponencial:
``` M(t) = e^(k·t) onde: - k = coeficiente de volatilidade - t = tempo em segundos - e = constante de Euler (~2.718)
Exemplo com k = 0.15: t=0s: 1.00x t=1s: 1.16x t=2s: 1.35x t=3s: 1.57x t=4s: 1.82x t=5s: 2.12x t=10s: 4.48x t=15s: 12.18x t=20s: 33.11x ```
2.3 Crash Point Generation
O ponto de crash é pré-determinado pelo servidor Lottopar:
```python def generate_crash_point(rtp_seed): """ Sorteia ponto de crash baseado no bilhete da Lottopar """ # RNG com seed do bilhete random.seed(rtp_seed)
# Distribuição de crashes:
# 55% crash antes de 2.00x (jogador perde)
# 30% crash entre 2.00x e 10.00x
# 10% crash entre 10.00x e 50.00x
# 5% crash acima de 50.00x (raro)
distribution = random.random() # 0.0 a 1.0
if distribution < 0.55:
crash_multiplier = random.uniform(1.01, 1.99)
elif distribution < 0.85:
crash_multiplier = random.uniform(2.00, 9.99)
elif distribution < 0.95:
crash_multiplier = random.uniform(10.00, 49.99)
else:
crash_multiplier = random.uniform(50.00, 1000.00)
return crash_multiplier
```
3. Paytable (Linhas de Pagamento)
Embora seja Crash Game, há "zonas" de pagamento:
1.00x - 1.50x: Base zone (1% ganho)
1.50x - 3.00x: Recovery (2-5x ganho)
3.00x - 10.00x: Profit zone (10-100x ganho)
10.00x+: Jackpot zone (100x+ ganho)
4. Jogabilidade
4.1 Controles
- Botão "Bet": Colocar aposta e iniciar foguete
- Botão "Cashout": Sacar ganhos
- Timing Crítico: Reflexo do jogador é testado
4.2 Sentimentos Desencadeados
- Adrenalina: Foguete subindo cria tensão
- Medo: A cada segundo, chance de crash cresce
- Ganância: Quanto mais alto, mais ganha (risco crescente)
- Raiva: Perder justo antes de sacar (psychological trick)
5. Integração Pool Finito
5.1 Fluxo com Lottopar
1. Jogador aposta R$ 1,00
2. VltCore envia para Lottopar
3. Lottopar retorna bilhete com "crash_point": 5.32x
4. VltCore gera curva que CRASHA em 5.32x
5. Foguete sobe, jogador pode sacar a qualquer momento
6. Se sacar antes: Ganha aposta × multiplicador no qual sacou
7. Se crash: Perde aposta
5.2 Segurança do Crash Point
```python def validate_crash_legitimacy(observed_crash, expected_crash): """ Validação que crash ocorreu no ponto esperado (protege contra cliente malicioso que tenta "trapacear") """ # O servidor valida que o cliente # não tentou sacar DEPOIS que o crash já ocorreu
if observed_crash > expected_crash:
# Fraud! Cliente está tentando pagar mais
return False
return True
```
6. Simulação Financeira (30 dias)
``` Aposta Média: R$ 5,00 Giros por Hora: 120 (rápido!) Horas Diárias: 12 Giros Mensais: 120 × 12 × 30 = 43.200 giros
Coin-In: 43.200 × R$ 5,00 = R$ 216.000 GGR (6%): R$ 12.960
Hit Frequency: 55% × 43.200 = 23.760 giros vencedores Tempo médio de sessão: 15-20 min (jogador perde tudo e vai embora) ```
7. Conformidade Lottopar
- [x] Seed aleatória por giro
- [x] Crash point pré-determinado
- [x] Validação servidor-cliente
- [x] RTP auditável
- [x] Max Win capped
Conclusão
Foguete do Milhão oferece experiência de Alto Risco / Rápida Ação que atrai jogadores diferentes de slots tradicionais. Tempo médio de sessão é curto (15-20 min) mas altamente viciante devido à natureza do jogo.
Data: 2026-04-03 Status: Pronto para Desenvolvimento