Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
opusgamelabs avatar

Quick Game

  • 446 installs
  • 305 repo stars
  • Updated May 25, 2026
  • opusgamelabs/game-creator

quick-game is an agent skill that scaffolds and implements a minimal playable 2D Phaser or 3D Three.js game prototype with core loop mechanics for developers testing game ideas before full production pipelines.

About

quick-game is an OpusGameLabs game-creator skill (version 1.3.0, MIT) that builds a playable game prototype without assets, design polish, audio, deploy, or monetize steps. Arguments accept 2d or 3d plus a kebab-case game name, or a tweet URL parsed via fetch-tweet to abstract a concept. The workflow copies templates/phaser-2d or templates/threejs-3d, runs npm install, starts a Vite dev server on port 3000, and launches a Task subagent implementing input, movement, fail condition, scoring, and restart via EventBus and GameState modules. Six spectacle events—SPECTACLE_ENTRANCE through SPECTACLE_NEAR_MISS—are wired for future juice layers. Developers reach for quick-game when saying quick game or fast prototype; use /viral-game for the full deploy-plus-monetize pipeline or /make-game for milestone-driven projects. Build verification runs npm run build with up to two retry passes.

  • Rapid playable scaffold from templates
  • Mechanics-first iteration loop
  • Low-friction game-creator setup
  • Early fun and scope checks
  • Short path from idea to demo

Quick Game by the numbers

  • 446 all-time installs (skills.sh)
  • +15 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #50 of 247 Game Development skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/opusgamelabs/game-creator --skill quick-game

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs446
repo stars305
Last updatedMay 25, 2026
Repositoryopusgamelabs/game-creator

How do you prototype a playable browser game fast?

Spin up a minimal playable game fast to test mechanics, art direction, or fun before investing in full production pipelines in game-creator.

Who is it for?

Game developers validating a single mechanic or fun hypothesis who want a shape-based playable browser prototype in minutes without art, audio, or deployment.

Skip if: Production game teams needing polished assets, Play.fun monetization, here.now deployment, or milestone-driven project management—use /viral-game or /make-game instead.

When should I use this skill?

The user says quick game, fast prototype, just get something playable, or provides a 2d/3d game name or tweet URL to turn into a minimal game.

What you get

Running Vite dev server with scaffolded Phaser or Three.js project, core gameplay loop, EventBus architecture, and verified npm run build output.

  • Scaffolded game project directory
  • Playable core loop on localhost dev server
  • Passing npm run build verification

By the numbers

  • Skill version 1.3.0 under MIT license from OpusGameLabs
  • Supports 2 engine templates: Phaser 2D and Three.js 3D
  • Wires 6 spectacle event hooks for future visual juice layers

Files

SKILL.mdMarkdownGitHub ↗

Performance Notes

  • Take your time to do this thoroughly
  • Quality is more important than speed
  • Do not skip validation steps

Quick Game (Fast Prototype)

Build a playable game prototype as fast as possible. This is /viral-game without the polish — just scaffold + implement the core loop. Get something on screen, then incrementally add layers with /add-assets, /design-game, /add-audio, /game-deploy, and /monetize-game.

What you'll get: 1. A scaffolded game project with clean architecture 2. Core gameplay — input, movement, scoring, fail condition, restart 3. A running dev server you can play immediately

What you skip (run these later if you want):

  • /add-assets — pixel art sprites (2D) or 3D models
  • /design-game — visual polish, particles, transitions
  • /add-audio — music and sound effects
  • /record-promo — promo video capture
  • /game-deploy — deploy to here.now
  • /monetize-game — Play.fun integration

Instructions

Step 0: Parse arguments

Parse $ARGUMENTS to determine the game concept:

Direct specification: [2d|3d] [game-name]

  • Engine: 2d (Phaser) or 3d (Three.js). If not specified, default to 2d.
  • Name: kebab-case. If not specified, ask the user.

Tweet URL: If arguments contain a tweet URL (x.com/*/status/*, twitter.com/*/status/*, fxtwitter.com/*/status/*): 1. Fetch the tweet using the fetch-tweet skill 2. Default to 2D 3. Creatively abstract a game concept from the tweet 4. Generate a kebab-case name 5. Tell the user what you'll build

Meshy API Key (3D only): If 3D, check for MESHY_API_KEY. If missing, ask the user (link to https://app.meshy.ai). Store for model generation.

Step 1: Scaffold + Implement

Infrastructure (main thread):

1. Locate the template directory — check ~/.claude/plugins/cache/local-plugins/game-creator/*/templates/ or templates/ relative to this plugin 2. Target directory: If inside the game-creator repo, create in examples/<game-name>/. Otherwise, create in ./<game-name>/. 3. Copy the template:

  • 2D: templates/phaser-2d/ → target
  • 3D: templates/threejs-3d/ → target

4. Update package.json name and index.html title 5. Run npm install 6. Start the dev server (npm run dev) in the background. Check port availability first — if 3000 is taken, try 3001, 3002, etc.

Game implementation (subagent via Task):

Launch a Task subagent with:

You are building a quick game prototype. Speed is the priority — get a playable core loop working.

>

Project path: <project-dir>
Engine: <2d|3d>
Game concept: <description>
Skill to load: phaser (2D) or threejs-game (3D)

>

Implement in this order:
1. Input (touch + keyboard from the start)
2. Player movement / core mechanic
3. Fail condition (death, collision, timer)
4. Scoring
5. Restart flow (GameState.reset() → clean slate)

>

Scope: 1 scene, 1 mechanic, 1 fail condition. Keep it tight.

>

Rules:
- All cross-module communication via EventBus
- All magic numbers in Constants.js
- No title screen — boot directly into gameplay
- No in-game score HUD — Play.fun widget handles score display
- Mobile-first input: touch + keyboard, use unified InputSystem pattern
- Import SAFE_ZONE from Constants.js — keep UI below SAFE_ZONE.TOP
- Minimum 7-8% canvas width for collectibles/hazards
- Character sizing: GAME.WIDTH * 0.12 to GAME.WIDTH * 0.15 for character-driven games
- Preserve the template's createButton() helper in GameOverScene — do NOT rewrite it
- Wire spectacle events: SPECTACLE_ENTRANCE, SPECTACLE_ACTION, SPECTACLE_HIT, SPECTACLE_COMBO, SPECTACLE_STREAK, SPECTACLE_NEAR_MISS
- Add isMuted to GameState for future audio support
- Ensure restart is clean — 3 restarts in a row should work identically

Step 2: Verify

After the subagent returns:

1. Run npm run build in the project directory to confirm no errors 2. If the build fails, fix the issues (up to 2 retries) 3. If Playwright MCP is available, navigate to the dev server, take a screenshot, and do a quick visual check

Example Usage

2D game

/quick-game 2d asteroid-dodge

Result: Copies Phaser template → implements player ship, asteroid spawning, collision death, score counter, restart flow → dev server running at localhost:3000 in ~2 minutes. Shapes only, no polish.

From tweet

/quick-game https://x.com/user/status/123456

Result: Fetches tweet → abstracts game concept → scaffolds and implements a playable prototype inspired by the tweet content.

Troubleshooting

Game scaffolds but won't start

Cause: Vite config or import paths incorrect. Fix: Verify vite.config.js has correct root. Check that main.js is referenced in index.html.

Missing core files

Cause: Scaffold skipped EventBus/GameState/Constants. Fix: Every game needs core/EventBus.js, core/GameState.js, core/Constants.js. Re-run scaffold or create manually.

Done

Tell the user:

Your game is running at http://localhost:<port>. Open it in a browser to play!

>

To keep building, run these commands:
- /add-assets — replace shapes with pixel art sprites
- /design-game — add visual polish (particles, gradients, juice)
- /add-audio — add music and sound effects
- /game-deploy — deploy to the web
- /monetize-game — add Play.fun integration

>

Or run /viral-game next time for the full one-shot pipeline (assets, polish, deploy, monetize all in one go).

Related skills

How it compares

Use quick-game for a fast mechanics-only prototype; choose /viral-game when the goal includes assets, deploy, and monetization in one pipeline.

FAQ

What engines does quick-game support?

quick-game defaults to 2D with Phaser by copying templates/phaser-2d, or 3D with Three.js via templates/threejs-3d when the user specifies 3d. Three.js mode optionally uses a MESHY_API_KEY for model generation.

What does quick-game skip compared to viral-game?

quick-game omits /add-assets pixel art, /design-game polish, /add-audio, /game-deploy to here.now, and /monetize-game Play.fun integration. viral-game runs the full one-shot pipeline including deploy and monetize.

What architecture does quick-game require?

quick-game preserves core/EventBus.js, core/GameState.js, and core/Constants.js in every scaffold. Cross-module communication uses EventBus, magic numbers live in Constants.js, and restart calls GameState.reset() for clean replays.

Game Developmentfrontendintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.