Jogo Multiplayer Feito no Fim de Semana com meu filho e Hospedado em Homelab Improvisado!
Olá, comunidade TabNews!
Estou muito empolgado em compartilhar um projeto de desenvolvimento que foi uma jornada especial com meu filho: criar um jogo de navegador multiplayer estilo Terraria. O objetivo era fazer algo divertido e testar os limites das ferramentas modernas.
O projeto não tem nenhuma pretensão profissional. A intenção aqui é mostrar o que se pode alcançar em pouco tempo, apenas com criatividade e as ferramentas certas atualmente.
✨ Foco no Gameplay e Diversão
A parte mais importante foi a experiência: o jogo já tem todas as mecânicas essenciais para o multiplayer de sobrevivência, garantindo horas de diversão e interação:
Voxel Sandbox: Construção, escavação e crafting de itens em um mundo persistente.
Ameaças e Desafios: Inclui PvP e PvE, com vilões variados e um Ciclo de Dia e Noite que afeta a dificuldade.
Interação Social: Chat em Tempo Real para coordenação e Esquema de Conquistas para guiar a exploração.
🛠️ A Tecnologia por Trás da Criação
Para dar vida a um escopo tão ambicioso em um único fim de semana, a chave foi a combinação de stacks modernas e IA.
🤖 1. Código e Agilidade (IA + Linguagens)
O código foi dividido entre Frontend e Backend:
Frontend (React): Usamos o React para toda a interface e lógica de game loop do lado do cliente.
Backend (Node.js): O Node.js gerencia o estado do mundo e a sincronia multiplayer via WebSockets.
Apoio da IA (Gemini 3): A velocidade foi exponencial graças ao Estúdio IA do Google com o Gemini 3. Ele foi fundamental para:
Gerar snippets de código complexos para a estrutura básica do React e Node.js.
Otimizar rotinas de culling no voxel rendering.
Criar Assets e Texturas iniciais, poupando tempo valioso.
🌐 2. Infraestrutura e Hospedagem (O Desafio do Homelab)
O desafio era hospedar um serviço multiplayer complexo em casa, e o Homelab foi a solução:
O Servidor: O jogo roda em meu Homelab — um notebook antigo transformado em servidor de experimentos.
Simplificação (Coolify): Uso o Coolify para simplificar toda a infraestrutura virtual (CI/CD e deployment).
Conexão Segura (Cloudflare Tunnel): Para expor o servidor de forma simples e segura, utilizo o Cloudflare Tunnel (parte da suíte Cloudflare Time) para fazer o link reverso entre o homelab e o DNS, sem precisar abrir portas no roteador.
📢 Desafios e Convite à Comunidade!
Apesar das ferramentas, ainda há desafios críticos no netcode e na infraestrutura:
Latência em Node.js e Cloudflare: O maior gargalo é garantir que a camada do Cloudflare e o Node.js consigam gerenciar a sincronia do mundo voxel e o PvP com baixa latência, usando a conexão de internet doméstica.
Nos divertimos muito fazendo isso e aprendemos demais.
Com a ajuda e feedback da comunidade de devs, quem sabe esse projeto de pai e filho não pode virar algo realmente profissional e de alta qualidade?
O jogo está online e jogável!
Link para jogar: https://terra.mvalabs.com.br/
Por favor, compartilhem a experiência de vocês e nos ajudem com dicas de gameplay:
O que está mais divertido? (Ex: O crafting, o PvP, ou o ciclo dia/noite?)
O que precisa ser melhorado na experiência do usuário? (Ex: UI, ritmo de jogo, spawn de inimigos).
E, claro, dicas técnicas e sugestões sobre a performance são bem vindas.
Obrigado a todos e bom coding!