Content
# Block Picker Real-Time Game
Um jogo em tempo real usando WebSockets onde jogadores humanos e agentes de IA competem para coletar blocos.
## 🎮 Funcionalidades
- **Servidor Node.js** com WebSockets para gerenciar o estado do jogo
- **Cliente Web** com HTML5 Canvas para visualização em tempo real
- **Agente IA** em Python que se conecta e joga automaticamente
- **Multiplayer** - múltiplos jogadores podem conectar simultaneamente
- **Tempo Real** - todas as ações são sincronizadas instantaneamente
## 🚀 Como Executar
### 1. Inicie o Servidor (OBRIGATÓRIO PRIMEIRO)
```bash
npm install
npm start
```
**IMPORTANTE**: Aguarde até ver a mensagem "🎮 Block Picker server running on http://localhost:3000" antes de prosseguir para o próximo passo.
### 2. Abra o Jogo no Navegador
Navegue para `http://localhost:3000` no seu navegador.
### 3. Execute o Agente de IA (APENAS APÓS O SERVIDOR ESTAR RODANDO)
**ATENÇÃO**: O servidor DEVE estar rodando antes de executar o agente, caso contrário você receberá erro "websocket error".
**Versão Node.js (recomendada para Bolt):**
```bash
cd agent
npm install
npm start
```
**Versão Python (para ambientes locais):**
```bash
cd agent
pip install -r requirements.txt
python agent_player.py
```
### ⚠️ Solução de Problemas
**Erro "websocket error" ou "Connection error":**
1. Verifique se o servidor está rodando (`npm start` no diretório raiz)
2. Aguarde a mensagem de confirmação do servidor
3. Só então execute o agente de IA
4. Se o problema persistir, reinicie o servidor e tente novamente
## 🎯 Como Jogar
- **Objetivo**: Colete os blocos vermelhos para aumentar sua pontuação
- **Controles**: Use as setas do teclado (ou WASD) para mover o quadrado verde
- **Regras**: Não é possível atravessar as paredes marrons nas bordas
## 🛠️ Tecnologias Utilizadas
- **Backend**: Node.js, Express, Socket.IO
- **Frontend**: HTML5 Canvas, CSS3, JavaScript
- **IA**: Python, python-socketio
- **Comunicação**: WebSockets para tempo real
## 📝 Arquitetura
```
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Cliente Web │ │ Servidor Node │ │ Agente IA │
│ (Navegador) │◄──►│ (WebSocket) │◄──►│ (Python) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
```
O servidor atua como hub central, mantendo o estado do jogo e sincronizando todos os participantes.
## 🔧 Configuração
- **Porta**: 3000 (configurável via variável de ambiente PORT)
- **FPS**: 10 (configurável no código do servidor)
- **Tamanho do Mapa**: 400x400 pixels (configurável)
## 🤝 Contribuindo
Sinta-se à vontade para contribuir com melhorias, correções ou novas funcionalidades!
Connection Info
You Might Also Like
awesome-mcp-servers
A collection of MCP servers.
git
A Model Context Protocol server for Git automation and interaction.
Appwrite
Build like a team of hundreds
TrendRadar
TrendRadar: Your hotspot assistant for real news in just 30 seconds.
oh-my-opencode
Background agents · Curated agents like oracle, librarians, frontend...
cc-switch
All-in-One Assistant for Claude Code, Codex & Gemini CLI across platforms.