Código-fonte de jogo de pingue-pongue: arquivos, física e campanha
Um jogo de tênis de mesa em 3D para navegador, aberto arquivo por arquivo: onde ficam física, pontuação, campanha e cenários, e o que mudar primeiro.

Se você precisa de código-fonte de jogo de pingue-pongue para hospedar e modificar, o Sunset Rally é um jogo de tênis de mesa em 3D para navegador, pronto, com campanha de nove partidas, três rivais controlados pelo computador, uma oficina e o projeto TypeScript completo, por US$ 39 no preço de lista. A pasta do jogo já vem compilada e sem minificação, então você pode subir primeiro e ler depois.
Jogo de esporte é mais difícil de adaptar do que parece, porque a graça está na física e nos controles, não nos menus. Este guia mostra onde cada uma dessas partes fica no projeto do Sunset Rally, o que dá para mudar com segurança e o que esta edição deixa de fora.
Como o jogo de tênis de mesa funciona
As partidas vão até sete pontos contra um rival do computador. O jogador move o ponteiro ou arrasta para controlar a raquete, e as rebatidas são automáticas. Para cima dá força, para o lado escolhe o canto, para baixo faz uma deixadinha, e quando a bola sobe é hora da cortada.
Uma assistência opcional, que o jogador liga e desliga durante a partida, ajuda a raquete a achar a altura da bola. Isso conta num site aberto ao público: quem joga pela primeira vez no celular ainda consegue devolver a bola.
São três rivais do computador, cada um com seu estilo: Capi, paciente; Nori, brincalhona; e Miso, preciso, nos níveis Fácil, Normal ou Difícil. No treino, o parceiro devolve todas as bolas. Depois da partida, um replay mostra de novo o ponto decisivo.
O que vem no código-fonte do jogo de pingue-pongue
- Uma pasta game/ pronta para hospedar, já compilada e sem minificação.
- O código-fonte do desenvolvedor em TypeScript, com a configuração do Vite e os recursos do jogo, em source/.
- Manuais ilustrados em inglês e português, com capturas reais.
- Fontes e arquivos de áudio incluídos no jogo.
- Avisos de licença de terceiros e histórico de versões.
A base é TypeScript, Three.js r184, Vite e WebGL2. Os arquivos incluem HTML, CSS, JavaScript, TypeScript e JSON. A interface vem em 14 idiomas: inglês, português, espanhol, francês, alemão, italiano, holandês, polonês, turco, russo, indonésio, japonês, coreano e chinês simplificado. Os manuais existem só em inglês e português.
O conteúdo em volta das partidas também faz parte do pacote: um circuito de nove partidas em três etapas, três cenários (o Jardim do pôr do sol, o Jardim de sakura e o Café à beira-mar) de manhã, à tarde, à noite ou na chuva, e uma oficina em que as moedas das vitórias compram cor, borracha, formato, cabo, madeira, fita da borda e adesivos da raquete, além de estilos de bola e de mesa.
Onde fica cada coisa no código
O manual liga cada parte do jogo a um arquivo. Esta é a lista para deixar aberta enquanto você trabalha:
- Campaign.ts: as nove partidas da campanha e as metas de estrelas.
- Places.ts: o visual de cada cenário.
- physics.ts: a física da bola e da raquete.
- match.ts: pontuação e regras da partida.
- i18n.ts: textos da interface em inglês e português; os demais idiomas ficam na pasta locales.
- styles.css: o estilo dos menus e das telas.
Cada partida da campanha vale até três estrelas: vencer, acertar os três cantos e fazer um rali de dez. São 27 estrelas, e concluir cada cenário rende um prêmio para a oficina. Como as condições das estrelas ficam num único arquivo da campanha, você deixa a campanha mais fácil ou mais difícil sem caçar nada no código.
O que mudar primeiro num template de pingue-pongue
Sugerimos esta ordem, do menor para o maior risco.
- Textos da interface e o nome do jogo, no i18n.ts e na pasta locales.
- Cores e telas, no styles.css.
- Estilos de raquete, bola e mesa da oficina, para o equipamento levar a sua marca.
- Visual dos cenários, no Places.ts.
- Partidas da campanha e metas de estrelas, no Campaign.ts.
- Física e pontuação, no physics.ts e no match.ts, só se você precisa de outra sensação de jogo.
O manual traz três regras que valem a pena. Mantenha estáveis os IDs de desbloqueio, os IDs de itens e as chaves de save, ou os jogadores perdem o que conquistaram. Faça backup antes de começar. Mude uma coisa de cada vez, para saber qual edição causou o quê.
White label é permitido: o seu nome e a sua logo, ou os do seu cliente, podem substituir os nossos.
Recompilar, hospedar e incorporar
Para jogar, nada precisa ser compilado. Suba o conteúdo de game/ para qualquer hospedagem HTTP(S) de arquivos estáticos, mantenha os caminhos relativos e abra o endereço. Não precisa de PHP, banco de dados nem conta.
Para mudar o código-fonte, você precisa de Node.js (o 24 LTS é o recomendado) e npm. Edite o TypeScript, recompile com o Vite e troque a pasta game/ hospedada pela saída nova.
O navegador precisa de JavaScript, módulos ES e WebGL2. Toque e mouse funcionam, e os controles se adaptam ao tamanho da tela. O desempenho depende do navegador e do aparelho, então teste nos celulares que os seus jogadores usam.
- Suba a pasta game/ para uma pasta de teste na sua hospedagem.
- Jogue uma partida num navegador de computador e outra no celular.
- Faça as mudanças de texto e estilo em source/ e recompile.
- Troque a pasta de teste inteira e jogue de novo.
- Leve para o endereço final.
O que esta edição não inclui
Esta edição é jogada contra o computador: campanha, partida livre e treino. Multijogador online, salas online, ranking online e contas na nuvem não fazem parte do pacote, e não há modo para dois jogadores. Não há SDK nem conta de anúncios, e apps nativos e hospedagem não estão incluídos.
O progresso fica no navegador do jogador: estrelas da campanha, resultados, estatísticas, replays e itens da oficina. Nenhum servidor ou conta é usado, então não há nada para manter depois do lançamento.
Se você precisa de modo online, SDK de portal, versão para loja de apps ou instalação no seu servidor, isso é um serviço à parte, com orçamento por projeto.
Pedir orçamento de trabalho sob medida
Licença, suporte e preço num parágrafo
Uma compra dá uma licença perpétua e não exclusiva para um produto final, seu ou de um cliente, que os jogadores podem usar de graça ou com monetização por anúncios. Você pode mudar o código, as artes e o áudio dentro desse produto, mas não pode revender nem compartilhar o template, o código-fonte ou os recursos isoladamente. O suporte dura 6 meses, ou 12 com a extensão no checkout, e cobre instalação, uso dos arquivos e correção de defeitos reproduzíveis; personalização, hospedagem e integração com SDKs ou portais têm orçamento à parte. O preço de lista é US$ 39; até 30 de novembro de 2026, uma promoção de Black Friday tira 15% de todos os templates, então o Sunset Rally sai por US$ 33,15, e a partir de 1º de dezembro os preços voltam ao de lista.
Perguntas frequentes sobre o Sunset Rally
Preciso compilar algo para usar este jogo de pingue-pongue?
Não. A pasta game/ já vem compilada. Suba o conteúdo para uma hospedagem de arquivos estáticos e abra o endereço. Node.js e npm só são necessários se você mudar o TypeScript e recompilar.
Tem modo para dois jogadores ou online?
Não. Esta edição é jogada contra o computador, na campanha, na partida livre e no treino.
Posso mudar a campanha e as metas de estrelas?
Sim. As partidas e as condições das estrelas ficam no Campaign.ts. Depois, recompile com Node.js.
Posso mudar o comportamento da bola?
Sim. A física fica no physics.ts e as regras de pontuação no match.ts. Mude uma coisa de cada vez e teste contra todos os rivais.
Funciona no celular?
Sim, com controles de toque que se adaptam à tela. É preciso WebGL2, e o desempenho depende do aparelho, então teste nos celulares do seu público.
Onde o progresso fica salvo?
No navegador do jogador. Nenhum servidor ou conta é usado.
Outros templates de esporte para comparar
Se você está montando uma área de esportes num site, dois outros templates combinam com o Sunset Rally. O Velvet Pool é um jogo de sinuca 8-ball com adversário do computador e modo para dois jogadores no mesmo aparelho, feito em JavaScript puro com WebGL2, por US$ 39 no preço de lista. O Puttide é um minigolfe em 3D com 30 buracos, feito com Three.js e Rapier, por US$ 39 no preço de lista. Os dois têm 14 idiomas na interface.
O Sunset Rally combina com portais e sites que querem um jogo de esporte com partidas curtas, estúdios que entregam um jogo com a marca de um cliente e desenvolvedores que querem um projeto TypeScript e Three.js legível para estudar ou ampliar. Se você precisa de dois jogadores no mesmo aparelho, o Velvet Pool tem esse modo e o Sunset Rally não.
Ver o Velvet Pool, jogo de sinuca 8-ball
Ver o Puttide, minigolfe em 3D
Comprar dois ou mais templates no mesmo pedido baixa cada licença: 5% com dois, 10% com três, 15% com quatro e 20% com cinco ou mais.
