Sistema completo de redução de latência e otimização de conexão para jogos online, replicando funcionalidades de soluções como NoPing e ExitLag.
- Redução de Ping: Otimização automática de rotas para reduzir latência
- Multi-Conexão: Suporte a múltiplas rotas simultâneas
- Detecção Automática: Identificação automática de jogos em execução
- Interface Moderna: Cliente desktop com Electron + React
- Analytics: Métricas em tempo real e histórico
- Segurança: Criptografia TLS e conformidade com anti-cheat
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Cliente │ │ Backend API │ │ Node Servers │
│ (Electron) │◄──►│ (Node.js) │◄──►│ (Relay) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Native Agent │ │ PostgreSQL │ │ Game Servers │
│ (C++ WinDivert)│ │ Redis Cache │ │ (Destino) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
- Windows 10/11 (x64)
- Node.js 18+
- Docker Desktop
- Visual Studio Build Tools (para compilação C++)
- Git
git clone https://github.com/Projeto-Ping-Master/gaming-proxy.git
cd gaming-proxy# Instalar dependências do workspace
npm install
# Instalar dependências específicas
cd packages/backend && npm install
cd ../client && npm install
cd ../shared && npm install# Copie o arquivo de configuração
cp packages/backend/.env.example packages/backend/.env
# Edite as variáveis de ambiente necessárias
# - JWT_SECRET: Chave para tokens JWT
# - SMTP_*: Configurações de email
# - STRIPE_*: Chaves do Stripe# Iniciar PostgreSQL e Redis com Docker
docker-compose up -d
# Aguardar serviços ficarem prontos
# PostgreSQL: localhost:5432
# Redis: localhost:6379
# Adminer: http://localhost:8080cd packages/backend
# Gerar cliente Prisma
npm run db:generate
# Executar migrações
npm run db:migrate
# Popular com dados de teste
npm run db:seedcd packages/native-agent
# Baixar WinDivert (necessário para captura de tráfego)
# Baixe de: https://github.com/basil00/Divert/releases
# Extraia em: lib/WinDivert/
# Compilar agent
npm run build# Terminal 1: Backend API
cd packages/backend
npm run dev
# Terminal 2: Cliente Desktop
cd packages/client
npm run dev
# O cliente abrirá automaticamente em http://localhost:3001- Abra o cliente desktop
- Clique em "Criar Conta"
- Insira email e senha
- Verifique o email recebido
- Use suas credenciais para entrar
- O dashboard será exibido
- Abra seu jogo favorito
- No dashboard, clique "Otimizar Conexão"
- O sistema detectará automaticamente o jogo
- A otimização será aplicada transparentemente
- Acompanhe ping, jitter e packet loss em tempo real
- Visualize gráficos de performance
- Consulte histórico de sessões
- Valorant - Portas 7000-7009
- League of Legends - Portas 5000-5009
- Counter-Strike 2 - Portas 27015-27019
- Fortnite - Portas 9000-9004
- Apex Legends - Portas 37015-37017
- Call of Duty: Warzone - Portas 3074, 53, 88
- EA FC 24 - Portas 3659, 9565, 9570
- PUBG - Portas 7000-7002
# Backend (.env)
DATABASE_URL="postgresql://admin:admin123@localhost:5432/gaming_proxy"
REDIS_URL="redis://localhost:6379"
JWT_SECRET="a781f79d3622180f79695c46c685d8d75c64c9aedf7a5d6986fa1637"
SMTP_HOST="smtp.gmail.com"
SMTP_USER="[email protected]"
STRIPE_SECRET_KEY="sk_test_..."Para funcionalidade completa de verificação de email:
- Use Gmail com senha de app, ou
- Configure outro provedor SMTP
- Atualize variáveis SMTP_* no .env
Para pagamentos em modo de teste:
- Crie conta no Stripe Dashboard
- Obtenha chaves de teste
- Configure webhooks para
/api/v1/stripe/webhook
gaming-proxy/
├── packages/
│ ├── backend/ # API REST/GraphQL
│ ├── client/ # Cliente Electron + React
│ ├── shared/ # Types e utilitários
│ ├── native-agent/ # Agent C++ para captura
│ └── node-server/ # Servidor de relay
├── docker-compose.yml # PostgreSQL + Redis
└── package.json # Workspace root
# Desenvolvimento
npm run dev # Todos os serviços
npm run dev:backend # Apenas backend
npm run dev:client # Apenas cliente
# Build
npm run build # Build completo
npm run build:backend # Build backend
npm run build:client # Build cliente
# Testes
npm run test # Todos os testes
npm run typecheck # Verificação TypeScript
npm run lint # Linting- Logs:
packages/backend/logs/ - Health: http://localhost:3000/health
- Database: http://localhost:8080 (Adminer)
- DevTools: F12 no cliente
- Logs: Console do Electron
- Requer privilégios de administrador
- Logs: Console do terminal
O sistema foi projetado para ser compatível com sistemas anti-cheat:
- Não injeta código no processo do jogo
- Opera apenas em nível de rede (redirecionamento de tráfego)
- Usa WinDivert user-mode para captura transparente
- Não modifica memória ou arquivos do jogo
- Autenticação JWT com refresh tokens
- Senhas criptografadas com bcrypt
- TLS obrigatório em produção
- Rate limiting em todos os endpoints
- Logs anonimizados por padrão
- Redução de ping: 15-40ms em média
- Redução de jitter: 30-60%
- Melhoria de estabilidade: 85%+
- Overhead: <2ms adicional
- Métricas em tempo real via WebSocket
- Alertas automáticos para degradação
- Dashboard administrativo
- Integração Prometheus/Grafana
# AWS/Azure/GCP
- Load Balancer (HTTPS)
- EC2/VMs para backend (Auto Scaling)
- RDS PostgreSQL (Multi-AZ)
- ElastiCache Redis (Cluster)
- S3/Storage para logs e assets
- CDN para distribuição de arquivosDeploy de servidores relay em múltiplas regiões:
# Principais regiões
- São Paulo (BR)
- Virginia (US-East)
- California (US-West)
- Londres (EU-West)
- Singapura (APAC)# .github/workflows/deploy.yml
- Build automatizado
- Testes de integração
- Deploy gradual (blue-green)
- Monitoramento pós-deploy- Fork o projeto
- Crie sua feature branch (
git checkout -b feature/nova-funcionalidade) - Commit suas mudanças (
git commit -m 'Adiciona nova funcionalidade') - Push para a branch (
git push origin feature/nova-funcionalidade) - Abra um Pull Request
- Siga os padrões de código TypeScript/ESLint
- Adicione testes para novas funcionalidades
- Documente APIs e mudanças importantes
- Use commits semânticos
Este projeto está licenciado sob a licença MIT - veja o arquivo LICENSE para detalhes.
- WinDivert não encontrado: Baixe de https://github.com/basil00/Divert/releases
- Erro de permissão: Execute como Administrador
- Banco não conecta: Verifique se Docker está rodando
- Issues: https://github.com/Projeto-Ping-Master/gaming-proxy/issues
- Discord: [Servidor da Comunidade]
- Email: [email protected]
P: É seguro usar com jogos online? R: Sim, o sistema não modifica arquivos do jogo e opera apenas redirecionando tráfego de rede.
P: Funciona com todos os jogos? R: Funciona com a maioria dos jogos online. Lista de jogos testados na seção "Jogos Suportados".
P: Precisa ficar sempre ligado? R: Sim, o sistema precisa estar ativo durante as sessões de jogo para otimizar a conexão.
P: Quanto de internet usa? R: O overhead é mínimo, tipicamente <5% do tráfego original devido ao encapsulamento.
⭐ Se este projeto foi útil, considere dar uma estrela no GitHub!