Kenji Engine

Kenji Engine

🚀 弦司游戏引擎(Kenji Engine)

首款原生 AI 游戏引擎。用自然语言构建游戏,借助 AI 生成游戏资源,一键完成部署。

弦司游戏引擎是酷梓琪(Kuuzuki)生态下的游戏开发利器,它是一款完整的游戏引擎,内置 MCP 服务器,支持 AI 辅助游戏开发。你可以使用自然语言创建游戏,利用 AI 生成像素艺术资源,并自动部署到 itch.io 平台。

🚀 快速开始

前提条件

安装步骤

  1. 克隆仓库
git clone  kenji-ge
cd kenji-ge
  1. 安装依赖
bun install
  1. 构建所有包
bun run build
  1. 使用 bun link 全局安装 CLI 工具
    • 选项 A:自动设置(推荐)
# 运行设置脚本
./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

这将显示一个美观的菜单,提供以下选项:

  • 🆕 创建新项目 - 通过模板交互式创建项目
  • 🎯 打开 TUI 编辑器 - 启动基于终端的可视化编辑器
  • 🔨 构建项目 - 为生产环境编译你的游戏
  • 🚀 部署项目 - 部署到 itch.io
  • 显示帮助 - 查看所有可用命令

该菜单会自动检测当前目录中的现有游戏项目,并提供相应的上下文选项。

链接后可用的命令

运行 bun link 后,你可以全局使用以下命令:

  • 主命令
    • kenji-ge - 交互式菜单(推荐)
  • TUI 编辑器命令
    • kenji-editor - 带有交互式菜单的 TUI 编辑器
    • kenji-editor create - 创建新项目
    • kenji-editor start - 启动 TUI 编辑器
    • kenji-editor build - 构建项目
    • kenji-editor deploy - 部署到 itch.io

注意:基本 CLI 也提供 kenji-engine 命令,但推荐使用主交互式版本以获得最佳体验。

创建你的第一个游戏

  1. 创建一个新的乒乓球游戏
kenji-ge create my-pong-game --template pong
cd my-pong-game
  1. 安装依赖
bun install
  1. 开始开发
bun run dev
  1. 在浏览器中打开: 在浏览器中打开 index.html 即可查看你的游戏!

使用酷梓琪进行 AI 辅助开发

  1. 启动弦司的 MCP 服务器并连接酷梓琪
cd my-pong-game
kenji mcp  # 启动 MCP 服务器
kuuzuki    # 将 AI 助手连接到弦司
  1. 使用自然语言命令
    • "为球拍和球生成像素艺术精灵"
    • "当球击中球拍时让球移动得更快"
    • "当球击中某物时添加粒子效果"
    • "创建一个道具系统"
    • "将游戏部署到 itch.io"

✨ 主要特性

🎮 核心游戏引擎

  • 实体组件系统(ECS) - 灵活的游戏对象架构
  • 内置组件 - Transform2D、Velocity2D、Sprite2D、Collider2D
  • 内置系统 - 移动、渲染、碰撞检测
  • Canvas2D 渲染器 - 像素级完美的 2D 渲染
  • 输入管理 - 键盘和鼠标输入处理
  • 音频系统 - 集成 Web Audio API
  • 资源管理 - 图像和画布资源加载

🎨 像素艺术生成

  • 程序生成精灵 - 按需生成游戏资源
  • 多种风格 - 复古、现代和简约风格
  • 特定游戏生成器 - 乒乓球、打砖块等
  • 零资源要求 - 无需外部艺术资源

🤖 原生 AI 开发

  • 内置 MCP 服务器 - 直接集成酷梓琪 AI 助手
  • 自然语言编码 - 例如 "让球更快"、"添加粒子效果"
  • AI 资源生成 - 使用 AI 生成精灵、声音和动画
  • 智能代码生成 - AI 创建游戏系统、组件和逻辑
  • 智能部署 - AI 处理 itch.io 发布和优化

🛠️ 开发工具

  • CLI 工具 - 用于项目管理的命令行界面
  • Bun 运行时 - 构建和工具链速度提升 10 - 100 倍
  • TypeScript - 严格类型和现代 ES 模块
  • 热重载 - 快速开发迭代

🚀 部署

  • Butler 集成 - 自动部署到 itch.io
  • Web 导出 - HTML5 游戏打包
  • 构建管道 - 优化生产构建

🤖 弦司的独特之处

首款原生 AI 游戏引擎

与传统引擎(如 Unity、Godot、Phaser)不同,弦司游戏引擎从底层开始就为 AI 辅助开发而设计:

  • 自然语言编程:例如 "让球更快"、"添加粒子效果"
  • 内置 MCP 服务器:直接集成酷梓琪 AI 助手
  • AI 资源生成:使用 AI 生成精灵、声音和动画
  • 智能代码生成:AI 创建游戏系统和组件
  • 智能部署:AI 处理优化和发布

适合现代开发者

  • 100% TypeScript:类型安全的游戏开发
  • Bun 驱动:闪电般快速的构建和运行时
  • ECS 架构:可扩展、可维护的游戏代码
  • 零配置:开箱即用

AI 辅助工作流

# 传统游戏开发
1. 手动编写代码
2. 使用外部工具创建资源
3. 手动调试和测试
4. 手动部署

# 弦司游戏引擎 + 酷梓琪工作流
1. "创建一个乒乓球游戏"           # AI 生成完整游戏
2. "让球拍发光"                   # AI 添加视觉效果
3. "添加音效"                     # AI 生成并集成音频
4. "部署游戏到 itch.io"           # AI 处理发布

📦 安装指南

  1. 克隆仓库
git clone  kenji-ge
cd kenji-ge
  1. 安装依赖
bun install
  1. 构建所有包
bun run build
  1. 使用 bun link 全局安装 CLI 工具
    • 选项 A:自动设置(推荐)
# 运行设置脚本
./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 服务器配置

游戏模板

空模板

包含引擎初始化的基本游戏设置。

乒乓球模板

经典乒乓球游戏,包含:

  • 两个球拍
  • 具有物理效果的球
  • 生成的像素艺术资源

打砖块模板(即将推出)

打砖块游戏,包含:

  • 球拍和球
  • 可破坏的砖块
  • 道具

API 参考

核心类

GameEngine
const engine = new GameEngine({
canvas: HTMLCanvasElement,
mode: "2d" | "3d",
targetFPS: number,
debug: boolean,
});

await engine.initialize();
engine.start();
Entity
const entity = new Entity()
.addComponent(new Transform2D(x, y))
.addComponent(new Velocity2D(vx, vy))
.addComponent(new Sprite2D(texture));

engine.world.addEntity(entity);
PixelArtGenerator
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               # 运行测试

MCP 服务器

bun run mcp            # 启动 MCP 服务器以进行 AI 集成

部署

Web 构建

kenji-ge build my-game --target web

部署到 itch.io

kenji-ge deploy my-game --itch-user username --itch-game game-slug

🤝 贡献指南

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 如有必要,添加测试
  5. 提交拉取请求

📄 许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。

🗺️ 路线图

阶段 1(当前)

  • ✅ 核心 ECS 引擎
  • ✅ 使用 Canvas2D 进行 2D 渲染
  • ✅ 像素艺术生成
  • ✅ MCP 服务器集成
  • ✅ CLI 工具
  • ✅ 乒乓球模板

阶段 2 - 增强 AI 功能

  • [ ] 高级 AI 代码生成(完整游戏系统)
  • [ ] AI 驱动的调试和优化
  • [ ] 自然语言资源修改
  • [ ] AI 生成的音效和音乐
  • [ ] 打砖块和平台游戏模板
  • [ ] 社区 AI 模型集成

阶段 3 - 高级引擎功能

  • [ ] 使用 Three.js + AI 辅助进行 3D 渲染
  • [ ] 具有 AI 匹配的多人网络
  • [ ] 带有 AI 建议的可视化编辑器
  • [ ] 使用 AI 分析进行性能优化
  • [ ] 跨平台部署(移动、桌面)
  • [ ] AI 驱动的游戏平衡和测试

🌟 弦司生态系统

弦司 是更大的酷梓琪 AI 开发生态系统的一部分:

  • 酷梓琪 - 用于开发的 AI 助手
  • 弦司 - 原生 AI 游戏引擎
  • MCP 集成 - 无缝的 AI 辅助开发
  • 社区模板 - AI 生成的游戏模板和资源

为何选择弦司?

传统引擎 弦司游戏引擎
手动编码 AI 辅助开发
外部资源工具 内置 AI 生成
复杂设置 零配置
陡峭的学习曲线 自然语言界面
手动部署 一键发布

🤝 支持与社区


🎮 由酷梓琪团队用心打造
弦司:AI 与游戏开发的完美结合

  • 0 关注
  • 0 收藏,33 浏览
  • system 提出于 2025-10-07 03:45

相似服务问题

相关AI产品