mcpField
A
add-feature

add-feature

github.com/playableintelligence开发350983 次安装22 周前更新
代码仓库

关于 add-feature

add-feature 是一项游戏开发技能,可根据自然语言需求,按照游戏现有代码模式添加功能。它指导开发者为 Three.js 或 Phaser 项目规划、实现功能并验证构建。

主要功能

  1. 01检查游戏架构和现有模式
  2. 02规划模块、事件和状态变更
  3. 03实现功能并接入游戏
  4. 04检查构建和集成情况

适用场景

  1. 01为游戏添加强化道具
  2. 02加入计分机制
  3. 03沿用现有系统模式扩展玩法

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/playableintelligence/game-creator --skill add-feature

安装后在 Claude Code 中输入/add-feature确认已加载。

详细介绍

性能说明

  • 请花时间彻底完成
  • 质量比速度更重要
  • 不要跳过验证步骤

添加功能

为你的游戏添加一项新功能。只需用通俗的语言描述你想要什么,例如“添加一个二段跳强化道具”或“添加一个高分排行榜”,我们就会遵循游戏现有的模式来实现该功能。

说明

用户想要添加:$ARGUMENTS

第 1 步:了解代码库
  • 阅读 package.json,确定使用的引擎(Three.js 或 Phaser)
  • 阅读 src/core/Constants.js,了解现有配置
  • 阅读 src/core/EventBus.js,了解现有事件
  • 阅读 src/core/GameState.js,了解现有状态
  • 阅读 src/core/Game.js(或 GameConfig.js),了解现有系统的接线方式
  • 阅读现有场景和游戏玩法文件,了解已实现的内容
第 2 步:规划功能

编写代码前,用通俗的语言说明计划:

  1. 功能作用:从玩家的角度描述该功能
  2. 工作原理:列出将要创建的新文件、事件和设置
  3. 影响范围:列出需要稍作修改以接入该功能的现有文件

然后确定技术实现所需的内容:

  • 新模块文件及其在目录结构中的位置
  • 要添加到 Events 枚举中的新事件
  • 要添加到 Constants.js 的新常量
  • 要添加到 GameState.js 的新状态
  • 如何将其接入 Game 主控模块
第 3 步:实现

严格遵循以下规则:

  1. 在正确的 src/ 子目录中创建新模块
  2. 将所有新事件添加到 EventBus.js 的 Events 枚举中
  3. 将所有配置值添加到 Constants.js(不得硬编码任何值)
  4. 在 GameState.js 中添加任何新的状态域
  5. 将新系统接入 Game.js(导入、实例化并在循环中更新)
  6. 使用 EventBus 与所有其他系统通信
  7. 遵循项目中现有的代码风格和模式
第 4 步:验证
  • 运行 npm run build,确认没有错误
  • 确认该功能已集成,且不会破坏现有系统
  • 检查是否引入了循环依赖
  • 确保在适用情况下正确清理事件监听器
  • 用通俗的语言总结新增内容

故障排除

添加功能后游戏崩溃

原因: 新代码与现有的 EventBus 事件或 GameState 字段冲突。 解决方法: 检查 EventBus.js 中是否存在事件名称冲突。确保在 GameState.reset() 中为新状态字段设置默认值。

功能正常,但破坏了现有玩法

原因: 修改了共享常量或碰撞组。 解决方法: 添加新常量,而不是修改现有常量。完成修改后测试原有玩法。

输出

告诉用户:

  1. 该功能的作用(从玩家的角度)
  2. 创建或修改了哪些文件
  3. 如何测试——“运行 npm run dev 并尝试[具体操作]”

使用示例

添加强化道具
/add-feature add a speed boost power-up that spawns randomly

结果:创建 src/entities/PowerUp.js,向 EventBus 添加 POWER_UP 事件,向 Constants.js 添加生成时间和持续时间配置,并将其接入 Game.js。玩家拾取强化道具后,速度会加倍,持续 8 秒。

添加计分机制
/add-feature add combo multiplier that increases when you score quickly

结果:向 GameState 添加 comboMultiplier 和 comboTimer,在计分系统中创建连击逻辑,并添加用于更新 UI 的 COMBO_CHANGED 事件。

提示

你可以根据需要多次运行此命令,持续添加功能。每项新功能都会在上一项的基础上构建。

满意游戏玩法后,运行 /game-creator:design-game 来润色视觉效果,运行 /game-creator:add-audio 添加音乐和音效,或运行 /game-creator:review-game 进行全面质量检查。

评论

支持 Markdown