DOVION.io

Bastidores: um servidor de jogo sem NENHUMA dependência

· 3 min de leitura · pela tripulação do Dovion

Se você já botou o pé no dev web, conhece a piada: a pasta `node_modules` de um projeto moderno pesa mais do que uma foto da galáxia. Centenas de bibliotecas externas empilhadas, das quais ninguém sabe realmente o que todas fazem. Desenvolvendo nosso jogo em Node.js, pegamos o caminho oposto — e é um dos nossos orgulhos de dev: o servidor de Dovion roda sem NENHUMA dependência externa. Zero. Nem uma única biblioteca de terceiros no runtime.

Concretamente, o que isso quer dizer?

Quando um estúdio monta um servidor de jogo online, o reflexo é montar blocos prontos: uma biblioteca para WebSockets (a conexão em tempo real entre seu navegador e o servidor), outra para servir arquivos, outra para isso, outra para aquilo. É rápido no começo.

A gente escreveu tudo à mão. Inclusive o trecho mais intimidador: o próprio servidor WebSocket, ou seja, o protocolo que faz transitar em tempo real as posições dos navios, os tiros e os eventos entre o servidor e cada jogador. É o tipo de componente que 99% dos projetos importam sem pensar duas vezes. Preferimos entendê-lo até a última linha.

Por que se impor isso?

Não é (só) masoquismo. Essa escolha tem vantagens muito concretas:

O plano B para redes bloqueadas

Um exemplo concreto do que esse controle possibilita: certas redes — escolas, empresas — bloqueiam conexões WebSocket. Na maioria dos jogos, isso se traduz em uma tela de carregamento girando em falso. Como controlamos toda a nossa pilha de rede, pudemos construir um transporte de fallback via HTTP/SSE: se o WebSocket estiver bloqueado, o jogo muda automaticamente para essa rota alternativa, e você joga mesmo assim. Esse tipo de proteção é muito mais difícil de implementar quando a camada de rede é uma caixa-preta importada.

As desvantagens (porque existem)

Sendo honestos, essa filosofia tem um custo: o tempo. Escrever você mesmo o que outros importam em uma linha representa semanas a mais de trabalho, especificações técnicas para ler, casos complicados para tratar. É um luxo de projeto apaixonado e pequeno; uma equipe com deadlines comerciais provavelmente não poderia se dar a esse luxo. Não pretendemos que seja O método certo para todo mundo — é o nosso, e combina com nossa escala.

Essa filosofia do feito à mão vai além do servidor: o próprio mundo do jogo é desenhado pelo código, sem arquivos de imagem, como explicamos em os bastidores do visual estilo Ghibli. Resultado global: um jogo leve, que carrega rápido e roda até em máquinas modestas — a prova em Dovion em PC básico.

Todo esse trabalho invisível tem um único objetivo: que você clique e funcione. Verifique você mesmo: Jogar Dovion gratuitamente.

Pronto para zarpar? Dovion é grátis, sem download, no PC e no celular.

⚓ Jogar Dovion