首款原生 AI 游戏引擎。用自然语言构建游戏,借助 AI 生成游戏资源,一键完成部署。
弦司游戏引擎是酷梓琪(Kuuzuki)生态下的游戏开发利器,它是一款完整的游戏引擎,内置 MCP 服务器,支持 AI 辅助游戏开发。你可以使用自然语言创建游戏,利用 AI 生成像素艺术资源,并自动部署到 itch.io 平台。
git clone kenji-ge
cd kenji-ge
bun install
bun run build
# 运行设置脚本
./scripts/setup-global.sh
此脚本会自动构建所有包并链接所有命令。 - 选项 B:手动设置 - 仅主命令:
# 从根目录执行
bun run build:packages
bun link
这样你就可以使用带有交互式菜单的 kenji-engine 命令。
- 选项 C:手动设置 - 单独工具:
# 先构建包
bun run build:packages
# 安装 TUI 编辑器(包含交互式菜单)
cd packages/tui-editor && bun link && cd ../..
# 安装基本 CLI
cd packages/cli && bun link && cd ../..
这样你就可以使用带有交互式菜单的 kenji-engine 命令。
链接完成后,你可以在任何位置使用交互式菜单:
kenji-ge
这将显示一个美观的菜单,提供以下选项:
该菜单会自动检测当前目录中的现有游戏项目,并提供相应的上下文选项。
运行 bun link 后,你可以全局使用以下命令:
kenji-ge - 交互式菜单(推荐)kenji-editor - 带有交互式菜单的 TUI 编辑器kenji-editor create - 创建新项目kenji-editor start - 启动 TUI 编辑器kenji-editor build - 构建项目kenji-editor deploy - 部署到 itch.io注意:基本 CLI 也提供 kenji-engine 命令,但推荐使用主交互式版本以获得最佳体验。
kenji-ge create my-pong-game --template pong
cd my-pong-game
bun install
bun run dev
index.html 即可查看你的游戏!cd my-pong-game
kenji mcp # 启动 MCP 服务器
kuuzuki # 将 AI 助手连接到弦司
与传统引擎(如 Unity、Godot、Phaser)不同,弦司游戏引擎从底层开始就为 AI 辅助开发而设计:
# 传统游戏开发
1. 手动编写代码
2. 使用外部工具创建资源
3. 手动调试和测试
4. 手动部署
# 弦司游戏引擎 + 酷梓琪工作流
1. "创建一个乒乓球游戏" # AI 生成完整游戏
2. "让球拍发光" # AI 添加视觉效果
3. "添加音效" # AI 生成并集成音频
4. "部署游戏到 itch.io" # AI 处理发布
git clone kenji-ge
cd kenji-ge
bun install
bun run build
# 运行设置脚本
./scripts/setup-global.sh
- **选项 B:手动设置 - 仅主命令**:
# 从根目录执行
bun run build:packages
bun link
- **选项 C:手动设置 - 单独工具**:
# 先构建包
bun run build:packages
# 安装 TUI 编辑器(包含交互式菜单)
cd packages/tui-editor && bun link && cd ../..
# 安装基本 CLI
cd packages/cli && bun link && cd ../..
// 创建游戏引擎实例
const engine = new GameEngine({
canvas: HTMLCanvasElement,
mode: "2d" | "3d",
targetFPS: number,
debug: boolean,
});
// 初始化引擎
await engine.initialize();
// 启动引擎
engine.start();
// 创建实体并添加组件
const entity = new Entity()
.addComponent(new Transform2D(x, y))
.addComponent(new Velocity2D(vx, vy))
.addComponent(new Sprite2D(texture));
// 将实体添加到游戏世界
engine.world.addEntity(entity);
kenji-ge/
├── packages/
│ ├── core/ # ECS 引擎核心
│ │ ├── src/
│ │ │ ├── ecs/ # 实体、组件、系统、世界
│ │ │ ├── rendering/ # Canvas2D 渲染器
│ │ │ ├── input/ # 输入管理
│ │ │ ├── audio/ # 音频系统
│ │ │ ├── components/ # 内置组件
│ │ │ ├── systems/ # 内置系统
│ │ │ └── utils/ # 实用工具
│ │ └── package.json
│ ├── pixel-art-generator/ # 资源生成
│ │ ├── src/
│ │ │ ├── generators/ # 特定游戏生成器
│ │ │ └── PixelArtGenerator.ts
│ │ └── package.json
│ ├── mcp-server/ # AI 集成
│ │ ├── src/
│ │ │ ├── server.ts # MCP 服务器
│ │ │ └── GameProjectManager.ts
│ │ └── package.json
│ ├── butler-deploy/ # 部署工具
│ │ └── src/
│ └── cli/ # 命令行工具
│ └── src/
├── package.json # 工作区配置
├── bunfig.toml # Bun 配置
└── .mcp.json # MCP 服务器配置
包含引擎初始化的基本游戏设置。
经典乒乓球游戏,包含:
打砖块游戏,包含:
const engine = new GameEngine({
canvas: HTMLCanvasElement,
mode: "2d" | "3d",
targetFPS: number,
debug: boolean,
});
await engine.initialize();
engine.start();
const entity = new Entity()
.addComponent(new Transform2D(x, y))
.addComponent(new Velocity2D(vx, vy))
.addComponent(new Sprite2D(texture));
engine.world.addEntity(entity);
const generator = new PixelArtGenerator();
const sprite = await generator.generateSprite({
type: "paddle",
width: 32,
height: 8,
colors: ["#FFFFFF"],
style: "retro",
});
bun run build # 构建所有包
bun run dev # 开发模式,监听文件变化
bun run clean # 清理构建产物
bun test # 运行测试
bun run mcp # 启动 MCP 服务器以进行 AI 集成
kenji-ge build my-game --target web
kenji-ge deploy my-game --itch-user username --itch-game game-slug
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
弦司 是更大的酷梓琪 AI 开发生态系统的一部分:
| 传统引擎 | 弦司游戏引擎 |
|---|---|
| 手动编码 | AI 辅助开发 |
| 外部资源工具 | 内置 AI 生成 |
| 复杂设置 | 零配置 |
| 陡峭的学习曲线 | 自然语言界面 |
| 手动部署 | 一键发布 |
🎮 由酷梓琪团队用心打造
弦司:AI 与游戏开发的完美结合