The game studio for the agent internet. Build, monetize, and ship browser games. Phaser 2D, Three.js 3D, Play.fun monetization. Works with 40+ AI coding agents.
npx claudepluginhub opusgamelabs/game-creatorThe game studio for the agent internet. Build, monetize, and ship browser games with one command. Phaser 2D, Three.js 3D, Play.fun monetization. Works with 40+ AI coding agents.
Official prompts.chat marketplace - AI prompts, skills, and tools for Claude Code
Behavioral guidelines to reduce common LLM coding mistakes, derived from Andrej Karpathy's observations
Claude Code plugins for the Slidev presentation framework
Go from game idea to deployed, monetized browser game in minutes — not hours.
Tell your AI coding agent "make a space invaders game" and get a fully playable 2D or 3D browser game with pixel art, procedural audio, and automated QA. Deploy instantly to the web. Monetize with Play.fun. Share on Moltbook.
Works with 40+ AI coding agents — Claude Code, Cursor, Windsurf, Cline, and more via npx skills add.
Owner: OpusGameLabs
npx skills add OpusGameLabs/game-creator
Target a specific agent:
npx skills add OpusGameLabs/game-creator -a claude-code
npx skills add OpusGameLabs/game-creator -a cursor
npx skills add OpusGameLabs/game-creator -a codex
npx skills add OpusGameLabs/game-creator -a antigravity
# Build a complete 2D game (scaffold → pixel art → design → audio → deploy → monetize)
# QA subagent runs after every step (build, runtime, gameplay, architecture, visual)
/game-creator:make-game 2d my-game
# Build from a tweet
/game-creator:make-game https://x.com/user/status/123456
# Or run individual steps on an existing game:
/game-creator:add-assets # Replace shapes with pixel art sprites
/game-creator:design-game # Add visual polish (particles, juice, transitions)
/game-creator:add-audio # Add chiptune music and sound effects
/game-creator:add-feature jetpack # Add a gameplay feature
/game-creator:improve-game # Audit + implement highest-impact improvements
/game-creator:monetize-game # Register on Play.fun, add SDK, get monetized URL
/game-creator:review-game # Code review for architecture + best practices
/game-creator:qa-game # Add Playwright QA tests
/make-game is an orchestrator that delegates all code writing to subagents and runs a QA subagent after every code-modifying step:
Step 0 Parse args, create task list ← main thread
Step 1 Scaffold game from template ← code subagent → QA subagent
Step 1.5 Add pixel art sprites (2D only) ← code subagent → QA subagent
Step 2 Visual polish (particles, juice, transitions) ← code subagent → QA subagent
Step 3 Audio (Strudel.cc BGM + SFX) ← code subagent → QA subagent
Step 4 Deploy to here.now ← main thread (instant publish)
Step 5 Monetize with Play.fun ← main thread (interactive auth)
The QA subagent runs 5 phases per step: build check, runtime check (headless Chromium), gameplay verification (iterate client with game-specific actions), architecture validation, and visual review (Playwright MCP screenshots). If any phase fails, an autofix subagent patches the code and QA re-runs (up to 3 attempts per step).
Every game follows the same architecture, whether 2D or 3D:
src/
├── core/
│ ├── EventBus.js # Singleton pub/sub — all cross-module communication
│ ├── GameState.js # Centralized state with reset() for clean restarts
│ ├── Constants.js # Every magic number, color, timing, speed
│ └── GameConfig.js # Engine config (Phaser or Three.js)
├── scenes/ # Scene lifecycle (Phaser) or states (Three.js)
├── entities/ # Game objects (player, enemies, obstacles)
├── systems/ # Background, particles, spawners
├── sprites/ # Pixel art data (palette, matrices, tiles)
├── audio/ # Strudel.cc procedural audio
│ ├── AudioManager.js # Init, play, stop wrapper
│ ├── AudioBridge.js # Wires EventBus → AudioManager
│ ├── music.js # Background music patterns
│ └── sfx.js # Sound effect patterns
├── playfun.js # Play.fun SDK integration
└── main.js # Entry point + render_game_to_text() + advanceTime()
EventBus — Modules never import each other. All communication via pub/sub with domain:action event names.
GameState — Single source of truth. reset() gives a clean slate for restarts.
Constants — Zero hardcoded values in game logic. Sizes are proportional (GAME.WIDTH * ratio), with DPR-aware scaling for retina displays.
render_game_to_text() — Every game exposes window.render_game_to_text() returning a JSON string of current game state, so AI agents can read the game without interpreting pixels.