improve-game by opusgamelabs/game-creator
npx skills add https://github.com/opusgamelabs/game-creator --skill improve-game让你的游戏变得更好。此命令会对游戏玩法、视觉效果、代码质量、性能和玩家体验进行深度审查,然后实施影响最大的改进。你可以根据需要多次运行它——每次运行都会发现下一个最需要修复的问题。
改进当前目录中的游戏。如果 $ARGUMENTS 指定了重点领域(例如,"gameplay"、"visuals"、"performance"、"polish"、"game-over"),则提高该领域的权重,但仍需审查所有方面。
阅读整个游戏代码库以建立完整的认知:
package.json — 引擎、依赖项、脚本src/core/Constants.js — 所有配置值src/core/EventBus.js — 所有事件及其用法src/core/GameState.js — 状态结构和重置逻辑src/core/Game.js(或 )— 协调器和游戏循环广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
GameConfig.jssrc/scenes/ 或 src/systems/ 中的每个文件 — 游戏玩法逻辑src/entities/ 中的每个文件 — 游戏对象src/ui/ 中的每个文件 — 游戏结束、覆盖层src/audio/ 中的每个文件 — 音乐和音效index.html — 标记、覆盖层、样式、视口元标签src/systems/InputSystem.js — 输入处理、移动端支持(陀螺仪、虚拟摇杆、触摸)tests/ — 测试覆盖率和质量不要略读。完整阅读每个文件,以便在提出建议前全面理解。
按 1-5 分制(1 = 损坏/缺失,3 = 功能正常但基础,5 = 完善且完整)对每个领域进行评分。呈现诊断表格:
| 领域 | 评分 | 诊断 |
|---|---|---|
| 游戏手感 | 核心循环有趣吗?控制响应灵敏吗?难度是否递增? | |
| 视觉完善度 | 背景、颜色、粒子、动画、屏幕效果 | |
| 游戏结束与 UI | 游戏结束屏幕、过渡、重启流程、按钮 | |
| 音频 | 每个状态的背景音乐、每个动作的音效、音量平衡、静音切换 | |
| 代码架构 | EventBus、GameState、Constants、无循环依赖 | |
| 重启安全性 | GameState.reset() 是否完全清理?3 次重启是否一致?没有残留的监听器/计时器? | |
| 性能 | 增量时间限制、对象池、资源释放、无内存泄漏 | |
| 玩家体验 | 新手引导、反馈、难度曲线、可重玩性 | |
| 移动端支持 | 触摸输入、响应式布局、陀螺仪/虚拟摇杆、44px 触摸目标 | |
| Play.fun 安全区域 | 所有 UI 元素是否都在 SAFE_ZONE.TOP 以下(约 8% / 75px)?是否有内容被 Play.fun 小组件遮挡? | |
| 游戏玩法不变量 | 玩家可以得分吗?玩家可以死亡吗?游戏结束按钮是否显示文字?render_game_to_text() 是否返回有效的 JSON? | |
| 实体尺寸 | 角色是否足够大以便识别?角色驱动游戏需要占 GAME.WIDTH 的 12–15%。是否使用比例尺寸(GAME.WIDTH * ratio),而非固定像素? | |
| 测试覆盖率 | 启动、游戏玩法、计分、重启、视觉、性能测试 |
总体评分:X / 65
根据审查结果,按对玩家的影响程度,确定 前 5–8 项改进。对于每一项:
格式化为编号列表。将影响最大的项目放在前面。
向用户展示计划并询问要实施哪些改进。选项:
在实施之前,请等待用户选择。
对于每个选定的改进,遵循以下规则:
Constants.js。零硬编码值。domain:action 命名法将任何新事件添加到 EventBus.js。GameState.js 并正确重置。entities/,系统放在 systems/,UI 放在 ui/。Game.js 中注册新系统并管理其生命周期。实施每个改进后,运行 npm run build 以立即捕获错误。在继续下一个改进之前,修复所有构建错误。
所有改进实施完毕后:
npm run build — 确认构建成功且无错误npm test — 确认所有测试仍然通过npm run test:update-snapshots告诉用户发生了什么变化:
改进报告
评分:X/65 → Y/65(+Z 分)
已实施:
- [标题] — [一句话总结更改内容]
- [标题] — [一句话总结更改内容] ...
创建的文件: [列出新文件] 修改的文件: [列出更改的文件]
如何测试: 运行
npm run dev并尝试:
- [要寻找的具体内容]
- [要寻找的具体内容]
后续改进: 再次运行
/game-creator:improve-game以寻找下一批改进。
当 $ARGUMENTS 包含重点领域关键词时,提高以下特定检查的权重:
"gameplay" — 核心循环、控制、难度递进、敌人种类、能力提升、风险/回报、节奏、关卡设计
"visuals" — 加载 game-designer 技能并应用其完整的设计审查(背景、调色板、动画、粒子、过渡、排版、细节润色)
"performance" — 增量时间限制、对象池、几何体/材质释放、事件监听器清理、requestAnimationFrame 使用、绘制调用次数、纹理图集使用
"polish" — 屏幕震动、击中暂停、挤压/拉伸、缓动曲线、声音时机、按钮反馈、得分弹出、死亡动画、过渡平滑度
"game-over" — 游戏结束屏幕吸引力、重启流程、按钮样式、得分显示、最佳得分显示、动画。按钮文字必须可见 — 验证 createButton() 模式使用 Container + Graphics + Text(Graphics 在前,Text 在后,Container 可交互)。如果按钮标签不可见,则模式已损坏。注意:默认情况下游戏没有标题/菜单屏幕(Play.fun 处理界面框架)。仅在用户明确请求时才添加标题屏幕。得分 HUD 由 Play.fun 小组件处理 — 不要添加单独的游戏内得分显示。所有游戏结束 UI 必须在 SAFE_ZONE.TOP 以下。
"audio" — 加载 game-audio 技能。检查背景音乐覆盖(每个游戏状态都应有音乐)、音效覆盖(每个玩家动作都应有反馈)、音量混合、曲目间过渡平滑度
"mobile" — 触摸输入已实现(点击区域、虚拟摇杆或陀螺仪)、响应式画布(Phaser.Scale.FIT 或 CSS width:100%)、44px 最小触摸目标、用于移动的虚拟摇杆或点击区域、倾斜游戏的陀螺仪支持、无仅悬停交互、在移动视口(Pixel 5 模拟)上测试。阅读 InputSystem.js、所有场景/系统的 update() 方法、index.html 视口元标签以及 Constants.js 中的触摸目标尺寸。
"ux" — 新手引导(玩家知道该做什么吗?)、反馈(每个动作都有响应吗?)、难度曲线(太难/太容易吗?)、可重玩性(有再次游玩的理由吗?)
/improve-game
结果:深度审查 → 评分 38/65 → 确定前 6 项改进(难度递进、屏幕震动、更好的游戏结束、粒子效果、移动端触摸、重启安全性) → 询问实施哪些 → 实施选定的项目 → 评分提升至 52/65。
/improve-game gameplay
结果:提高游戏玩法检查的权重 → 发现敌人种类少且难度平缓 → 添加 3 种具有不同行为的敌人类型、渐进速度提升和基于得分的难度层级。
原因: 对共享系统(物理、计分)的更改产生了连锁反应。修复: 单独测试每项改进。每次更改后运行现有测试。如果更改破坏了核心游戏玩法,则恢复。
原因: 审查发现了 10 多个问题,并且全部同时实施。修复: 优先处理前 3-5 项改进。增量发布。每次更改后进行验证。
此命令专为迭代改进而设计。多次运行它:
- 第一次:修复最大的差距(缺失的功能、糟糕的用户体验)
- 第二次:添加润色(粒子、过渡、细节)
- 第三次:微调(难度曲线、时机、平衡)
每次运行都从上一次结束的地方开始 — 之前修复的领域评分会更高,从而浮现新的优先级。
对于针对性工作,请使用重点领域:
/game-creator:improve-game gameplay或/game-creator:improve-game visuals
每周安装次数
109
仓库
GitHub 星标数
26
首次出现
2026年2月21日
安全审计
安装于
claude-code85
opencode63
cursor61
gemini-cli61
github-copilot61
amp61
Make your game better. This command deep-audits gameplay, visuals, code quality, performance, and player experience, then implements the highest-impact improvements. Run it as many times as you want — each pass finds the next most impactful thing to fix.
Improve the game in the current directory. If $ARGUMENTS specifies a focus area (e.g., "gameplay", "visuals", "performance", "polish", "game-over"), weight that area higher but still audit everything.
Read the entire game codebase to build a complete picture:
package.json — engine, dependencies, scriptssrc/core/Constants.js — all configuration valuessrc/core/EventBus.js — all events and their usagesrc/core/GameState.js — state shape and reset logicsrc/core/Game.js (or GameConfig.js) — orchestrator and game loopsrc/scenes/ or src/systems/ — gameplay logicsrc/entities/ — game objectssrc/ui/ — game over, overlayssrc/audio/ — music and sound effectsindex.html — markup, overlays, styles, viewport metasrc/systems/InputSystem.js — input handling, mobile support (gyro, joystick, touch)tests/ — test coverage and qualityDon't skim. Read every file completely so you understand the full picture before making recommendations.
Rate each area on a 1–5 scale (1 = broken/missing, 3 = functional but basic, 5 = polished and complete). Present a diagnostic table:
| Area | Score | Diagnosis |
|---|---|---|
| Gameplay feel | Is the core loop fun? Are controls responsive? Does difficulty ramp? | |
| Visual polish | Backgrounds, colors, particles, animations, screen effects | |
| Game Over & UI | Game over screen, transitions, restart flow, buttons | |
| Audio | BGM for each state, SFX for each action, volume balance, mute toggle | |
| Code architecture | EventBus, GameState, Constants, no circular deps | |
| Restart safety | Does GameState.reset() fully clean up? 3 restarts identical? No stale listeners/timers? | |
| Performance | Delta capping, object pooling, disposal, no leaks |
Overall score: X / 65
From the audit, identify the top 5–8 improvements ranked by player impact. For each one:
Format as a numbered list. Put the highest-impact items first.
Present the plan to the user and ask which improvements to implement. Options:
Wait for the user to choose before implementing.
For each selected improvement, follow these rules:
Constants.js. Zero hardcoded values.EventBus.js using domain:action naming.GameState.js with proper reset.entities/, systems in systems/, UI in ui/.Game.js with proper lifecycle.After implementing each improvement, run npm run build to catch errors immediately. Fix any build errors before moving to the next improvement.
After all improvements are implemented:
npm run build — confirm clean build with no errorsnpm test if tests exist — confirm all tests still passnpm run test:update-snapshotsTell the user what changed:
Improvement report
Score: X/65 → Y/65 (+Z points)
Implemented:
- [Title] — [one-sentence summary of what changed]
- [Title] — [one-sentence summary of what changed] ...
Files created: [list new files] Files modified: [list changed files]
How to test: Run
npm run devand try:
- [specific thing to look for]
- [specific thing to look for]
Next improvements: Run
/game-creator:improve-gameagain to find the next batch.
When $ARGUMENTS includes a focus area keyword, weight these specific checks:
"gameplay" — core loop, controls, difficulty progression, enemy variety, power-ups, risk/reward, pacing, level design
"visuals" — load the game-designer skill and apply its full design audit (backgrounds, palette, animations, particles, transitions, typography, juice)
"performance" — delta capping, object pooling, geometry/material disposal, event listener cleanup, requestAnimationFrame usage, draw call count, texture atlas usage
"polish" — screen shake, hit pause, squash/stretch, easing curves, sound timing, button feedback, score popups, death animations, transition smoothness
"game-over" — game over screen appeal, restart flow, button styling, score display, best score display, animations. Button text must be visible — verify the createButton() pattern uses Container + Graphics + Text (Graphics first, Text second, Container interactive). If button labels are invisible, the pattern is broken. Note: games do not have title/menu screens by default (Play.fun handles the chrome). Only add a title screen if the user explicitly requests one. Score HUD is handled by the Play.fun widget — do not add a separate in-game score display. All game-over UI must be below SAFE_ZONE.TOP.
"audio" — load the game-audio skill. Check BGM coverage (every game state should have music), SFX coverage (every player action should have feedback), volume mixing, transition smoothness between tracks
"mobile" — touch input implemented (tap zones, virtual joystick, or gyroscope), responsive canvas (Phaser.Scale.FIT or CSS width:100%), 44px minimum touch targets, virtual joystick or tap zones for movement, gyroscope support for tilt games, no hover-only interactions, tested on mobile viewport (Pixel 5 emulation). Read InputSystem.js, all scene/system update() methods, index.html viewport meta, and Constants.js for touch target sizes.
"ux" — onboarding (does the player know what to do?), feedback (does every action have a response?), difficulty curve (is it too hard/easy?), replayability (is there a reason to play again?)
/improve-game
Result: Deep audit → scores 38/65 → identifies top 6 improvements (difficulty progression, screen shake, better game-over, particle effects, mobile touch, restart safety) → asks which to implement → implements selected → score rises to 52/65.
/improve-game gameplay
Result: Weights gameplay checks higher → finds enemy variety is low and difficulty is flat → adds 3 enemy types with distinct behaviors, progressive speed ramp, and score-based difficulty tiers.
Cause: Changes to shared systems (physics, scoring) have cascading effects. Fix: Test each improvement individually. Run existing tests after each change. Revert if a change breaks core gameplay.
Cause: Audit identified 10+ issues and all were implemented simultaneously. Fix: Prioritize top 3-5 improvements. Ship incrementally. Verify after each change.
This command is designed for iterative improvement. Run it multiple times:
- First pass: fix the biggest gaps (missing features, broken UX)
- Second pass: add polish (particles, transitions, juice)
- Third pass: fine-tune (difficulty curve, timing, balance)
Each run picks up where the last left off — previously fixed areas will score higher, surfacing new priorities.
For targeted work, use the focus area:
/game-creator:improve-game gameplayor/game-creator:improve-game visuals
Weekly Installs
109
Repository
GitHub Stars
26
First Seen
Feb 21, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
claude-code85
opencode63
cursor61
gemini-cli61
github-copilot61
amp61
Skills CLI 使用指南:AI Agent 技能包管理器安装与管理教程
43,100 周安装
| Player experience | Onboarding, feedback, difficulty curve, replayability |
| Mobile support | Touch input, responsive layout, gyro/joystick, 44px touch targets |
| Play.fun safe zone | All UI elements below SAFE_ZONE.TOP (~8% / 75px)? Nothing hidden behind Play.fun widget? |
| Gameplay invariants | Can the player score? Can the player die? Do game-over buttons show text? Does render_game_to_text() return valid JSON? |
| Entity sizing | Are characters large enough to read? Character-driven games need 12–15% of GAME.WIDTH. Proportional sizing (GAME.WIDTH * ratio), not fixed pixels? |
| Test coverage | Boot, gameplay, scoring, restart, visual, perf tests |