É hora de parar de apenas jogar e começar a criar! O Geek Codes tem o prazer de anunciar a Maratona de Programação de Jogos Web, um curso intensivo e prático dividido em 7 módulos onde construiremos um clone do clássico Flappy Geek Bird do zero.

Se você sempre quis entender como jogos simples funcionam e dominar o trio fundamental do desenvolvimento web (HTML, CSS e JavaScript), esta maratona é para você!


🎯 O Que Vamos Aprender?

Nossa maratona é estruturada para levar o iniciante do conceito à funcionalidade completa, com um código prático e funcional em cada etapa. Você aprenderá a pensar como um desenvolvedor de jogos:

  1. Fundamentos do Jogo Web: Entender o papel do HTML como esqueleto, o CSS como aparência e o JavaScript como cérebro e motor do jogo.
  2. Lógica Essencial: Implementar a física do jogo, incluindo Gravidade e Pulo, essenciais para a jogabilidade.
  3. Detecção de Colisão: A matemática por trás do que faz o pássaro “bater” nos obstáculos (Tubos) usando o algoritmo de Bounding Box.
  4. Assincronicidade: Gerenciar tarefas demoradas (como criar tubos) sem travar o jogo, usando o poderoso Game Loop (com requestAnimationFrame).
  5. Organização Profissional: Usar Classes e Programação Orientada a Objetos (POO) para tornar o código limpo, reutilizável e escalável.
  6. Persistência de Dados: Implementar o High Score (Pontuação Máxima) usando o localStorage do navegador e, em seguida, integrá-lo a um Placar Global usando PHP e AJAX.

🗺️ O Plano de 7 Módulos

A maratona será lançada em 7 matérias sequenciais, cada uma focando em uma peça do nosso Flappy Geek Bird.

MóduloTema da MatériaO que Você Vai Construir/Aprender
Módulo 1HTML e o DOM: Criando a “Tela” do JogoA estrutura básica (<div id="game-container">) e como o JavaScript vê os elementos.
Módulo 2CSS Essencial: Posicionamento e EstilizaçãoO palco, o chão e a estilização dos Tubos (position: absolute/relative).
Módulo 3Eventos e o Loop de Jogo: Capturando a AçãoO motor do jogo (requestAnimationFrame) e a função Pulo (interação do usuário).
Módulo 4Movimento e Colisão: Fazendo as Coisas AconteceremA lógica de geração e movimento dos obstáculos e a detecção de Colisão.
Módulo 5Classes (POO Básico): Organizando PersonagensA refatoração do código para POO, criando a classe Bird para código limpo.
Módulo 6Persistência Local (localStorage): Salvando o High ScoreComo salvar o recorde do jogador diretamente no navegador.
Módulo 7Backend (PHP & AJAX): O High Score GlobalA conexão com o servidor para um placar global (comunicação Cliente-Servidor via fetch).

🚀 Por que o Flappy Geek Bird?

Escolhemos este projeto porque ele, apesar de simples, exige a aplicação prática de quase todos os conceitos fundamentais do desenvolvimento web e da lógica de jogos: gravidade, física básica, colisões e renderização.