127 lines
4.0 KiB
Markdown
127 lines
4.0 KiB
Markdown
# AI Native Visual RPG
|
||
|
||
一个以“AI 叙事 + 本地规则 + 像素演出”为核心的视觉 RPG 原型。
|
||
|
||
当前已经具备这些主要能力:
|
||
|
||
- 世界与角色选择
|
||
- AI 剧情推进与流式对话
|
||
- 战斗演出、NPC 战斗、切磋
|
||
- NPC 交易、送礼、求助、招募
|
||
- 宝藏交互
|
||
- 同伴跟随与战斗
|
||
- 游戏主流程内嵌的角色资产工坊、自定义世界实体编辑与角色形象编辑
|
||
- 自动存档与继续游戏
|
||
|
||
## 运行
|
||
|
||
前置条件:
|
||
|
||
- Node.js
|
||
|
||
安装依赖:
|
||
|
||
```bash
|
||
npm install
|
||
```
|
||
|
||
准备环境变量:
|
||
|
||
- 复制 `.env.example` 为 `.env.local`
|
||
- 填入 `LLM_API_KEY` / `ARK_API_KEY`
|
||
- 按需设置 `VITE_LLM_MODEL`
|
||
- 如需启用阿里云短信验证码登录,填写 `ALIYUN_SMS_ACCESS_KEY_ID`、`ALIYUN_SMS_ACCESS_KEY_SECRET`,并确认 `SMS_AUTH_PROVIDER="aliyun"`
|
||
- 本地联调短信登录时,建议将 `VITE_AUTH_ALLOW_DEV_GUEST` 设为 `false`,避免开发模式自动进入游客账号而跳过登录页
|
||
- 如需打印完整 prompt/output,可把 `VITE_LLM_DEBUG_LOG` 设为 `true`
|
||
|
||
启动开发环境:
|
||
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
补充说明:
|
||
|
||
- `npm run dev` 会同时启动 Vite 与 Express 后端,适合完整联调。
|
||
- 如果没有显式配置 `DATABASE_URL`,且本机 `PostgreSQL` 不可用,开发模式会自动回退到内存版 `pg-mem`,方便先跑通鉴权与存档主链。
|
||
- 如果只想单独启动前端页面,可使用 `npm run dev:web`。
|
||
|
||
构建生产包:
|
||
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
## 常用检查
|
||
|
||
类型检查:
|
||
|
||
```bash
|
||
npm run lint
|
||
```
|
||
|
||
编码检查:
|
||
|
||
```bash
|
||
npm run check:encoding
|
||
```
|
||
|
||
内容引用校验:
|
||
|
||
```bash
|
||
npm run check:data
|
||
```
|
||
|
||
编辑器 override 校验:
|
||
|
||
```bash
|
||
npm run check:overrides
|
||
```
|
||
|
||
关键内容 smoke 检查:
|
||
|
||
```bash
|
||
npm run check:smoke
|
||
```
|
||
|
||
一键内容检查:
|
||
|
||
```bash
|
||
npm run check:content
|
||
```
|
||
|
||
## 主要结构
|
||
|
||
主运行时:
|
||
|
||
- [src/App.tsx](/E:/Repos/Genarrative/src/App.tsx)
|
||
- [src/components/GameShell.tsx](/E:/Repos/Genarrative/src/components/GameShell.tsx)
|
||
- [src/hooks/useCombatFlow.ts](/E:/Repos/Genarrative/src/hooks/useCombatFlow.ts)
|
||
- [src/hooks/useStoryGeneration.ts](/E:/Repos/Genarrative/src/hooks/useStoryGeneration.ts)
|
||
|
||
主流程内嵌编辑能力:
|
||
|
||
- [src/components/CustomWorldEntityEditorModal.tsx](/E:/Repos/Genarrative/src/components/CustomWorldEntityEditorModal.tsx)
|
||
- [src/components/CustomWorldNpcVisualEditor.tsx](/E:/Repos/Genarrative/src/components/CustomWorldNpcVisualEditor.tsx)
|
||
- [src/components/CustomWorldRoleAssetStudioModal.tsx](/E:/Repos/Genarrative/src/components/CustomWorldRoleAssetStudioModal.tsx)
|
||
|
||
核心数据:
|
||
|
||
- [src/data/scenePresets.ts](/E:/Repos/Genarrative/src/data/scenePresets.ts)
|
||
- [src/data/characterPresets.ts](/E:/Repos/Genarrative/src/data/characterPresets.ts)
|
||
- [src/data/monsterPresets.ts](/E:/Repos/Genarrative/src/data/monsterPresets.ts)
|
||
- [src/data/npcInteractions.ts](/E:/Repos/Genarrative/src/data/npcInteractions.ts)
|
||
- [src/data/treasureInteractions.ts](/E:/Repos/Genarrative/src/data/treasureInteractions.ts)
|
||
|
||
## 文档入口
|
||
|
||
- [docs/README.md](/E:/Repos/Genarrative/docs/README.md):文档总入口,按主题分类后的导航页
|
||
- [docs/experience/README.md](/E:/Repos/Genarrative/docs/experience/README.md):项目开发经验、UI 交接、历史实现经验
|
||
- [docs/audits/README.md](/E:/Repos/Genarrative/docs/audits/README.md):工程审查、文本审计、专项审计
|
||
- [docs/planning/README.md](/E:/Repos/Genarrative/docs/planning/README.md):当前阶段优先级与推进顺序
|
||
- [docs/design/README.md](/E:/Repos/Genarrative/docs/design/README.md):玩法、关系、物品与对话设计
|
||
- [docs/technical/README.md](/E:/Repos/Genarrative/docs/technical/README.md):技术路线、服务端方案、外部产品拆解
|
||
- [docs/reference/README.md](/E:/Repos/Genarrative/docs/reference/README.md):Function 与脚本速查
|
||
- [docs/prd/](/E:/Repos/Genarrative/docs/prd/):PRD 与阶段计划,原样保留
|
||
- [UI_CODING_STANDARD.md](/E:/Repos/Genarrative/UI_CODING_STANDARD.md):UI 资产与编码规范
|