OhMyGame
OhMyGame is the open-source studio for making games with AI. Design, build, playtest, and publish games in one app, with your own model keys.
Play a 2D multiplayer shooter on PC or mobile, compete to get the most kills
Translation pending
AI summary · website content
GamesTypeScript · CSSGitHub @rogerio1982OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Arena shooter 2D multiplayer que roda no navegador (PC, Android, iPhone) sem instalação. Phaser 3 + TypeScript + Vite (cliente) · Node.js + Colyseus + WebSocket (servidor autoritativo).
npm install
npm run build && npm start # http://localhost:2567 (cliente e servidor juntos)
# ou, em desenvolvimento:
npm run dev:server # terminal 1 (porta 2567)
npm run dev:client # terminal 2 (http://localhost:5173)
Para testar no celular na mesma rede Wi-Fi, abra http://IP-DO-PC:2567 (após npm run build && npm start).
| PC | Celular |
|---|---|
| WASD/setas: mover | Joystick esquerdo: mover |
| Mouse: mirar · clique: atirar | Joystick direito: mirar; empurrar = atirar |
| Espaço: dash · R: recarregar · Esc: menu | Botões DASH e ↻; ⚙ abre o menu |
Som e efeitos: botão 🔊 (ou tecla M) liga/desliga o som; ⚙ (ou Esc, também no menu inicial) abre as opções: volume, sons de tiro, de movimento, de combate, efeitos visuais, seta de mira e vibração. Tudo fica salvo no aparelho.
Toques são multitoque (mover e atirar ao mesmo tempo); rolagem, zoom por pinça e toque duplo são bloqueados; HUD respeita a área segura (notch).
src/shared/sim.ts: regras, mapa e física (movimento/dash) usados pelo servidor e pela predição do cliente.src/server/ArenaRoom.ts: simulação a 30 Hz, tiros, dano, abates, respawn, fim/reinício de partida, reconexão (20 s), limite de taxa. O cliente só envia entradas; todo resultado é decidido no servidor, igual para PC e celular.src/client: Phaser (mundo), predição + reconciliação do jogador local, interpolação dos demais, HUD/controles em DOM, qualidade gráfica automática (reduz só efeitos, nunca regras).O servidor serve o cliente e o WebSocket na mesma porta/origem, então basta hospedar o container:
Dockerfile (render.yaml incluso). O domínio recebe HTTPS e o cliente usa WSS automaticamente.Variáveis: PORT (padrão 2567), KILL_LIMIT (padrão 15).
npm run test:smoke (com o servidor rodando; use KILL_LIMIT=4 para ser rápido): 2 bots jogam, valida tiros, abates, fim/reinício e reconexão.
Chrome e Edge (PC), Chrome (Android), Safari (iPhone): toque/multitoque, paisagem/retrato, tela cheia (não existe no iPhone; use "Adicionar à Tela de Início"), partida com PC + celular juntos, queda de Wi-Fi.
Gatos: kit "Free Cartoon Cat Defense Game Asset Kit" (Craftpix.net, licença gratuita da Craftpix). As folhas de sprites em public/cats/ foram geradas a partir dele; a pasta original do kit não vai para o deploy (.dockerignore).