Skip to content

Latest commit

 

History

History
56 lines (41 loc) · 2.51 KB

File metadata and controls

56 lines (41 loc) · 2.51 KB

STATUS - onde o projeto está agora

  • Versão: 2.0.0-alpha.223
  • Conteúdo jogável: 5 facções, 44 personagens, 13 mapas e 26 armas com GLB
  • Código do jogo: 37.852 linhas em 58 módulos JavaScript
  • Automação: 158 comandos npm, 233 scripts de avaliação e 58 scripts de pipeline

Bloco gerado por node tools/gen-docs.mjs. Fonte: package.json · CHARACTERS · MAPS · public/models/weapons · public/js · tools/

Produto

O jogo é um FPS de navegador em Three.js, servido como módulos ES nativos. O site, as rotas de API e as páginas públicas usam Astro e Vercel. O modo principal continua sendo single-player contra bots, com rodadas e captura de bandeiras.

O ranking está desligado por RANKING_ON. A telemetria anônima continua ativa e registra funil, performance, partidas, mapas, modos, personagens, armas e facções. O mapa público mostra presença aproximada por cidade e as cinco facções sem publicar IP.

Nas rotas de jogador, UID é a identidade estável, token autentica a sessão e nick é atributo de exibição. O fallback por nick + token existe apenas para a transição de clientes e banco antigos.

Fontes vivas

  • versão e histórico público: CHANGELOG.md e /changelog;
  • saúde de produção: /api/health e .github/workflows/prod-watch.yml;
  • dívida conhecida: KNOWN-BUGS.md e tools/eval/KNOWN-RED.json;
  • trabalho aberto e prioridade: issues do GitHub;
  • arquitetura e conflitos: tools/eval/ARCH.md e graphify-out/graph.json;
  • documentação publicada: docs/docs/ e o build versionado em public/docs/.

Antes de publicar

npm run docs:check
npm run arch:check
npm run check:fast
npm run build

Checks que exigem navegador ou produção ficam fora do ciclo rápido. Use eval:boot para a abertura do jogo, eval:site para as rotas e prod:coherence para o edge publicado.

Riscos que não devem ser escondidos

  • O schema e as migrations do Supabase são privados e precisam ser aplicados fora deste repositório; código novo deve tolerar banco atrasado e tornar a degradação observável.
  • Assets de áudio e parte dos decalques não estão no Git por procedência. O build precisa baixar os pacotes e assert:assets deve reprovar conteúdo incompleto.
  • O jogo ainda concentra bastante lógica em módulos grandes. Edite por símbolo, consulte o grafo antes de mudanças amplas e transforme regressões reproduzíveis em régua.