Dragon Fusion — Documento de Design (GDD v1)

Versão inicial completa para guiar implementação sem perder foco. Baseado no conceito enviado e nas telas fornecidas (Home + Chocar Ovos).

Índice (11 seções principais)

  1. Visão do produto e pilares
  2. Telas e arquitetura de UX (baseado nas telas atuais)
  3. Mecânica principal de tabuleiro (match/drag/spawn)
  4. Sistema de pontuação, combos e dificuldade
  5. Sistema de ovos, incubação e chocagem
  6. Dragões, fusão, raridade e progressão
  7. Economia completa (soft/hard/items/pass)
  8. Meta-sistemas: missões, ranking, clã, eventos
  9. Conteúdo: 12 reinos e curva de fases
  10. LiveOps, telemetria, balanceamento e KPIs
  11. Regras de implementação, backlog e próximas decisões

1) Visão do produto e pilares

One-liner: Puzzle de combinação com ovos e evolução de dragões, onde estratégia de merge + progressão constante = sensação de poder sem pay-to-win.

Público: jogadores casuais/intermediários de mobile (sessões 3–10 min), com versão PC para retenção longa.

Pilares:

Clareza de jogada Progressão diária Coleção de dragões Justiça sem P2W Eventos semanais

2) Telas e arquitetura de UX (com base no que já existe)

2.1 Home (tela enviada)

  • Topo: energia, ouro, gemas, menu.
  • Lateral esquerda: No Ads, Gift/Timer, Event, Claim.
  • Lateral direita: Shop, Ranking, Quest, Clan.
  • Centro: ilha com dragão + baús/ovos (hub visual).
  • CTA principal: botão PLAY.
  • Rodapé: progresso de passe/baú/sazonal.

Conclusão: estrutura já está boa para F2P live game.

2.2 Chocar Ovos (tela enviada)

  • Fluxo claro: ovo → dragão.
  • Tempos e aceleradores visíveis (x2, x4).
  • Moedas e doação de clã aparecem na mesma tela.
  • Bottom nav funcional: coleção, melhorias, jogar, missões, clã.

Ajuste recomendado: diferenciar melhor “velocidade” vs “tempo final”, para evitar confusão de UX.

3) Mecânica principal de tabuleiro

3.1 Configuração base

3.2 Regras de match

CombinaçãoEfeitoUso tático
3 iguaisRemove peças e pontuaProgressão básica
4 iguaisGera Ovo Potente (linha)Limpar colunas/linhas críticas
5+ iguaisGera Ovo Lendário (área)Virada de fase difícil
CascataCombos automáticos em cadeiaMultiplicador de score

3.3 Spawn/RNG controlado

4) Pontuação, combos e dificuldade (com cálculos)

4.1 Fórmula de pontuação por jogada

score_total = (base_match + bonus_especial) * multiplicador_cascata * multiplicador_fase

4.2 Alvos de dificuldade

Se vitória cair abaixo do alvo por 2 versões seguidas: reduzir obstáculos, aumentar power-up drop, ou baixar pontuação-alvo.

5) Sistema de ovos, incubação e chocagem

5.1 Tempos base de chocagem

RaridadeTempo baseAcelerador sugerido
Comum2hx2 via vídeo (limitado)
Raro6hx2 via item/vídeo
Lendário24hx4 via item premium

5.2 Fórmula de aceleração

tempo_final = tempo_base / multiplicador

5.3 Fontes de ovo

6) Dragões, fusão e progressão

6.1 Escada de raridade

Comum → Raro → Épico → Lendário → Mítico

6.2 Regra de fusão

3 dragões iguais (mesma estrela/nível) = 1 dragão de tier acima

6.3 Stats de dragão (modelo)

StatEfeito
Power Elemental+% score em combos do elemento
Loot Luck+% chance de drop extra
Combo Amplifier+% multiplicador em cascata
UtilityReduz custo de energia ou tempo de incubação

6.4 Time ativo

7) Economia completa

7.1 Moedas

  • Ouro (soft): upgrades, compras básicas
  • Gema (hard): aceleração, ofertas premium, passe
  • Tokens de evento: loja temporária
  • Energia: entrada em fase (1 fase = 1 energia)

7.2 Fórmulas rápidas

  • regen_energia = +1 a cada 15 min
  • cap_energia = 5 inicial, expande até 20
  • preco_refresh = 20,40,80... gemas (escala diária)

7.3 Loja (não P2W)

8) Meta-sistemas: missões, ranking, clã, eventos

8.1 Missões

TipoExemploRecompensa
DiáriaComplete 5 fases; 10 combos 4+Ouro + XP Passe
SemanalFundir 10 dragões; concluir 25 fasesGemas + ovo raro
TemporadaObjetivos progressivos por 28 diasCosmético exclusivo

8.2 Ranking

8.3 Clã

8.4 Eventos (72h)

9) Conteúdo: 12 reinos, 7–14 fases por reino

9.1 Curva recomendada

9.2 Tipos de fase

9.3 Estrelas

10) LiveOps, telemetria e KPIs

10.1 Eventos a instrumentar

10.2 KPIs alvo (primeiro mês)

KPIMeta inicial
D1> 35%
D7> 12%
Crash Free> 99.2%
Sessões/dia2.5+
ARPDAUdefinir após soft launch

10.3 Ciclo de balance

Ciclo semanal: coletar dados → identificar gargalo (onboarding, fase, economia) → testar 1 variável por vez → validar impacto em D1/D7.

11) Implementação prática, backlog e decisões pendentes

11.1 Backlog Must/Should/Could

PrioridadeItens
MustTabuleiro 8x8, match 3/4/5, spawn seguro, score, 2 reinos, incubação básica, missões diárias, loja mínima
ShouldRanking semanal, clã básico, 1 evento de 72h, passe temporada V1
CouldSkins premium avançadas, sistema social expandido, modos alternativos de jogo

11.2 Decisões que você precisa fechar agora

  1. Será 100% retrato (portrait) em todas as telas?
  2. Energia inicial 5 ou 10?
  3. Passe temporada terá 28 ou 35 dias?
  4. Clã entra no MVP ou no patch 1?
  5. Qual tema do Reino 1 para amarrar arte + tutorial?

11.3 Critério de “pronto para soft launch”

12) GDD v1.1 técnico (Unity 6)

12.1 Estrutura de pastas sugerida

Assets/
  _Game/
    Art/
    Audio/
    Prefabs/
    Scenes/
      Boot.unity
      Home.unity
      Board.unity
      Hatchery.unity
    Scripts/
      Core/
      Gameplay/
      UI/
      Meta/
      Economy/
      Analytics/
      Save/
    Data/
      ScriptableObjects/
        Eggs/
        Dragons/
        Levels/
        Missions/
        Shop/
        SeasonPass/
  Addressables/

12.2 Classes principais (resumo)

ClasseResponsabilidade
GameBootstrapInicialização de serviços (save, analytics, economy, remote config)
BoardManagerGrid 8x8, valida swap, detecta match, cascata e reshuffle
TileRepresenta peça/ovo no tabuleiro (tipo, estado, posição)
MatchResolverResolve combinações, gera peças especiais e pontuação base
SpawnSystemSpawn com RNG controlado e anti-frustração
LevelDirectorObjetivos da fase, vitória/derrota e curva de dificuldade
ScoreSystemCalcula score final com multiplicadores
EnergySystemConsumo/regeneração de energia e limites
HatcherySystemIncubação, timers, aceleração por vídeo/item
DragonFusionSystemFusão 3-para-1, evolução e time ativo
MissionSystemDiárias/semanais/temporada com claim de recompensa
ShopSystemOferta de itens, bundles e validação de compra
SeasonPassSystemXP, trilha free/premium e resgate
SaveManagerPersistência local + cloud save (quando habilitado)
AnalyticsServiceEventos e parâmetros para BI/telemetria

12.3 ScriptableObjects (dados)

12.4 Ordem de implementação por sprint (8 semanas)

SprintFocoEntregável
1Core boardGrid, swap, match 3, queda, refill
2Regras avançadasMatch 4/5+, especiais, cascata, score
3Meta faseObjetivos, vitória/derrota, progressão de 10 fases
4Economia baseEnergia, recompensas, loja mínima
5Ovos/dragõesIncubação, chocagem, fusão 3-para-1
6Meta systemsMissões diárias/semanais, ranking básico
7LiveOps inicialPasse temporada v1 + evento 72h
8PolimentoPerf mobile, analytics completo, build soft launch

12.5 Regras técnicas obrigatórias

13) v1.2 — Diagrama de estados + contrato JSON de save (local, servidor, Firebase, Supabase)

13.1 Diagrama de estados de gameplay (alto nível)

Boot
 └─> Home
      ├─> BoardLoading
      │    └─> InLevel
      │         ├─> Paused
      │         │    └─> InLevel
      │         ├─> Victory
      │         │    └─> RewardFlow
      │         │         └─> Home
      │         └─> Defeat
      │              └─> RetryOrHome
      │                   ├─> InLevel
      │                   └─> Home
      ├─> Hatchery
      │    └─> Home
      ├─> Shop
      │    └─> Home
      ├─> Missions
      │    └─> Home
      └─> Clan
           └─> Home

13.2 Máquina de estado da fase (detalhado)

LevelInit -> PlayerTurn -> SwapResolve -> MatchResolve -> CascadeResolve -> ObjectiveCheck
   ^                                                                     |
   |---------------------------------------------------------------------|

ObjectiveCheck:
- if objectiveComplete -> Victory
- else if noMovesAvailable -> Reshuffle -> PlayerTurn
- else if outOfMovesOrTime -> Defeat
- else -> PlayerTurn

13.3 Contrato JSON — versão canônica de save

Use versionamento explícito e migração por versão. Nunca quebrar compatibilidade sem migrator.

{
  "schemaVersion": 3,
  "playerId": "uuid",
  "createdAt": "2026-03-09T20:00:00Z",
  "updatedAt": "2026-03-09T21:00:00Z",
  "profile": {
    "name": "Player",
    "level": 12,
    "xp": 18450,
    "vip": 0
  },
  "economy": {
    "gold": 125000,
    "gems": 340,
    "energy": {
      "current": 8,
      "max": 20,
      "regenSeconds": 900,
      "lastTickUnix": 1773086000
    }
  },
  "progress": {
    "currentKingdom": 3,
    "currentStage": 7,
    "starsByStage": {
      "K1-S1": 3,
      "K1-S2": 2
    },
    "bestScoreByStage": {
      "K1-S1": 15320
    }
  },
  "boardMeta": {
    "lastPlayedStageId": "K3-S7",
    "lastSeed": 843219,
    "tutorialStep": 5
  },
  "dragons": {
    "owned": [
      {"dragonId": "fire_whelp", "rarity": "common", "level": 7, "stars": 2, "count": 1}
    ],
    "activeTeam": ["fire_whelp", "wind_drake", "light_drake"]
  },
  "eggs": {
    "inventory": [
      {"eggId": "egg_fire_common", "qty": 3}
    ],
    "hatchingSlots": [
      {
        "slot": 1,
        "eggId": "egg_rare_water",
        "startUnix": 1773082000,
        "endUnix": 1773096400,
        "speedMultiplier": 2
      }
    ]
  },
  "missions": {
    "daily": [{"id": "d_combo_10", "progress": 6, "target": 10, "claimed": false}],
    "weekly": [{"id": "w_clear_25", "progress": 11, "target": 25, "claimed": false}],
    "seasonXp": 820
  },
  "seasonPass": {
    "seasonId": "S01",
    "premium": false,
    "claimedFree": [1,2,3],
    "claimedPremium": []
  },
  "shop": {
    "lastDailyRefreshUnix": 1773072000,
    "purchases": [{"sku": "bundle_starter", "qty": 1}]
  },
  "ads": {
    "rewardedToday": 4,
    "lastRewardUnix": 1773085800
  },
  "settings": {
    "sfx": 0.8,
    "music": 0.6,
    "language": "pt-BR",
    "haptics": true
  },
  "antiCheat": {
    "serverNonce": "abc123",
    "lastServerSyncUnix": 1773086400
  }
}

13.4 Regras de sincronização (single source of truth)

13.5 Backend genérico (servidor próprio)

EndpointMétodoObjetivo
/auth/loginPOSTIdentidade + token de sessão
/save/pullGETBaixar save atual
/save/pushPOSTEnviar delta/full save (validação server-side)
/economy/txnPOSTTransações atômicas (ouro/gema/item)
/iap/verifyPOSTValidar compra de loja (Google/Apple)

13.6 Firebase (opção)

// documento principal (Firestore)
players/{playerId}
  profile: {...}
  economy: {...}
  progress: {...}
  updatedAt: serverTimestamp

13.7 Supabase (opção)

tables:
- players(id, created_at, updated_at)
- player_profile(player_id, level, xp, vip)
- player_economy(player_id, gold, gems, energy_current, energy_max, last_tick)
- player_progress(player_id, kingdom, stage, stars_jsonb)
- player_inventory(player_id, item_id, qty)
- player_dragons(player_id, dragon_id, rarity, level, stars, count)
- player_missions(player_id, mission_id, progress, target, claimed)

13.8 Política offline/online recomendada